provision: Don't run create_realm_internal_bots management command.

We essentially stop running create_realm_internal_bots during
every provisioing and move its operations to run from populate db.
In fact to speed things up a bit we actually make populate db call the
funcs which create_realm_internal_bots calls behind the scenes.

Fixes: #9467.
This commit is contained in:
Aditya Bansal
2018-05-23 09:16:30 +05:30
parent d343f25cc6
commit 8cfb437677
3 changed files with 7 additions and 4 deletions

View File

@@ -384,8 +384,6 @@ def main(options):
else: else:
print("No need to run `manage.py compilemessages`.") print("No need to run `manage.py compilemessages`.")
run(["./manage.py", "create_realm_internal_bots"]) # Creates realm internal bots if required.
run(["scripts/lib/clean-unused-caches"]) run(["scripts/lib/clean-unused-caches"])
version_file = os.path.join(UUID_VAR_PATH, 'provision_version') version_file = os.path.join(UUID_VAR_PATH, 'provision_version')

View File

@@ -2036,7 +2036,7 @@ class SubscriptionAPITest(ZulipTestCase):
set([user1.id, user2.id, self.test_user.id]) set([user1.id, user2.id, self.test_user.id])
) )
self.assertEqual(len(add_peer_event['users']), 18) self.assertEqual(len(add_peer_event['users']), 19)
self.assertEqual(add_peer_event['event']['type'], 'subscription') self.assertEqual(add_peer_event['event']['type'], 'subscription')
self.assertEqual(add_peer_event['event']['op'], 'peer_add') self.assertEqual(add_peer_event['event']['op'], 'peer_add')
self.assertEqual(add_peer_event['event']['user_id'], self.user_profile.id) self.assertEqual(add_peer_event['event']['user_id'], self.user_profile.id)
@@ -2067,7 +2067,7 @@ class SubscriptionAPITest(ZulipTestCase):
# We don't send a peer_add event to othello # We don't send a peer_add event to othello
self.assertNotIn(user_profile.id, add_peer_event['users']) self.assertNotIn(user_profile.id, add_peer_event['users'])
self.assertEqual(len(add_peer_event['users']), 18) self.assertEqual(len(add_peer_event['users']), 19)
self.assertEqual(add_peer_event['event']['type'], 'subscription') self.assertEqual(add_peer_event['event']['type'], 'subscription')
self.assertEqual(add_peer_event['event']['op'], 'peer_add') self.assertEqual(add_peer_event['event']['op'], 'peer_add')
self.assertEqual(add_peer_event['event']['user_id'], user_profile.id) self.assertEqual(add_peer_event['event']['user_id'], user_profile.id)

View File

@@ -17,6 +17,7 @@ from zerver.lib.actions import STREAM_ASSIGNMENT_COLORS, check_add_realm_emoji,
from zerver.lib.bulk_create import bulk_create_streams, bulk_create_users from zerver.lib.bulk_create import bulk_create_streams, bulk_create_users
from zerver.lib.cache import cache_set from zerver.lib.cache import cache_set
from zerver.lib.generate_test_data import create_test_data from zerver.lib.generate_test_data import create_test_data
from zerver.lib.onboarding import create_if_missing_realm_internal_bots
from zerver.lib.upload import upload_backend from zerver.lib.upload import upload_backend
from zerver.lib.url_preview.preview import CACHE_NAME as PREVIEW_CACHE_NAME from zerver.lib.url_preview.preview import CACHE_NAME as PREVIEW_CACHE_NAME
from zerver.lib.user_groups import create_user_group from zerver.lib.user_groups import create_user_group
@@ -212,6 +213,10 @@ class Command(BaseCommand):
] ]
create_users(zulip_realm, zulip_outgoing_bots, create_users(zulip_realm, zulip_outgoing_bots,
bot_type=UserProfile.OUTGOING_WEBHOOK_BOT, bot_owner=aaron) bot_type=UserProfile.OUTGOING_WEBHOOK_BOT, bot_owner=aaron)
# Add the realm internl bots to each realm.
create_if_missing_realm_internal_bots()
# TODO: Clean up this initial bot creation code # TODO: Clean up this initial bot creation code
Service.objects.create( Service.objects.create(
name="test", name="test",