mirror of
https://github.com/zulip/zulip.git
synced 2025-11-04 14:03:30 +00:00
Django 1.10: Use add_argument for options in BaseCommand.
This commit is contained in:
@@ -6,15 +6,16 @@ import pytz
|
|||||||
|
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
from typing import Any
|
from typing import Any
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.lib.statistics import activity_averages_during_day
|
from zerver.lib.statistics import activity_averages_during_day
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = "Generate statistics on user activity for a given day."
|
help = "Generate statistics on user activity for a given day."
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + \
|
def add_arguments(self, parser):
|
||||||
(make_option('--date', default=None, action='store',
|
# type: (CommandParser) -> None
|
||||||
help="Day to query in format 2013-12-05. Default is yesterday"),)
|
parser.add_argument('--date', default=None, action='store',
|
||||||
|
help="Day to query in format 2013-12-05. Default is yesterday")
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ from __future__ import print_function
|
|||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.models import Recipient, Message
|
from zerver.models import Recipient, Message
|
||||||
from zerver.lib.timestamp import timestamp_to_datetime
|
from zerver.lib.timestamp import timestamp_to_datetime
|
||||||
import datetime
|
import datetime
|
||||||
@@ -73,11 +73,12 @@ def compute_stats(log_level):
|
|||||||
logging.info("%15s | %s%%" % (client, round(100. * total_counts[client] / grand_total, 1)))
|
logging.info("%15s | %s%%" % (client, round(100. * total_counts[client] / grand_total, 1)))
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
option_list = BaseCommand.option_list + \
|
|
||||||
(make_option('--verbose', default=False, action='store_true'),)
|
|
||||||
|
|
||||||
help = "Compute statistics on MIT Zephyr usage."
|
help = "Compute statistics on MIT Zephyr usage."
|
||||||
|
|
||||||
|
def add_arguments(self, parser):
|
||||||
|
# type: (CommandParser) -> None
|
||||||
|
parser.add_argument('--verbose', default=False, action='store_true')
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
level = logging.INFO
|
level = logging.INFO
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ from typing import Any, Dict
|
|||||||
from zerver.lib.statistics import seconds_usage_between
|
from zerver.lib.statistics import seconds_usage_between
|
||||||
|
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.models import UserProfile
|
from zerver.models import UserProfile
|
||||||
import datetime
|
import datetime
|
||||||
from django.utils.timezone import utc
|
from django.utils.timezone import utc
|
||||||
@@ -52,12 +52,12 @@ Usage: python manage.py analyze_user_activity [--realm=zulip.com] [--date=2013-0
|
|||||||
By default, if no date is selected 2013-09-10 is used. If no realm is provided, information
|
By default, if no date is selected 2013-09-10 is used. If no realm is provided, information
|
||||||
is shown for all realms"""
|
is shown for all realms"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('--realm', action='store'),
|
# type: (CommandParser) -> None
|
||||||
make_option('--date', action='store', default="2013-09-06"),
|
parser.add_argument('--realm', action='store')
|
||||||
make_option('--duration', action='store', default=1, type=int,
|
parser.add_argument('--date', action='store', default="2013-09-06")
|
||||||
help="How many days to show usage information for"),
|
parser.add_argument('--duration', action='store', default=1, type=int,
|
||||||
)
|
help="How many days to show usage information for")
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from optparse import make_option
|
|||||||
|
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.lib.actions import create_stream_if_needed, bulk_add_subscriptions
|
from zerver.lib.actions import create_stream_if_needed, bulk_add_subscriptions
|
||||||
from zerver.models import UserProfile, get_realm, get_user_profile_by_email
|
from zerver.models import UserProfile, get_realm, get_user_profile_by_email
|
||||||
@@ -13,25 +13,32 @@ from zerver.models import UserProfile, get_realm, get_user_profile_by_email
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = """Add some or all users in a realm to a set of streams."""
|
help = """Add some or all users in a realm to a set of streams."""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-d', '--domain',
|
# type: (CommandParser) -> None
|
||||||
dest='domain',
|
parser.add_argument(
|
||||||
type='str',
|
'-d', '--domain',
|
||||||
help='The name of the realm in which you are adding people to streams.'),
|
dest='domain',
|
||||||
make_option('-s', '--streams',
|
type=str,
|
||||||
dest='streams',
|
help='The name of the realm in which you are adding people to streams.')
|
||||||
type='str',
|
|
||||||
help='A comma-separated list of stream names.'),
|
parser.add_argument(
|
||||||
make_option('-u', '--users',
|
'-s', '--streams',
|
||||||
dest='users',
|
dest='streams',
|
||||||
type='str',
|
type=str,
|
||||||
help='A comma-separated list of email addresses.'),
|
help='A comma-separated list of stream names.')
|
||||||
make_option('-a', '--all-users',
|
|
||||||
dest='all_users',
|
parser.add_argument(
|
||||||
action="store_true",
|
'-u', '--users',
|
||||||
default=False,
|
dest='users',
|
||||||
help='Add all users in this realm to these streams.'),
|
type=str,
|
||||||
)
|
help='A comma-separated list of email addresses.')
|
||||||
|
|
||||||
|
parser.add_argument(
|
||||||
|
'-a', '--all-users',
|
||||||
|
dest='all_users',
|
||||||
|
action="store_true",
|
||||||
|
default=False,
|
||||||
|
help='Add all users in this realm to these streams.')
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (**Any) -> None
|
# type: (**Any) -> None
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from typing import Any, Callable, Optional
|
|||||||
from zerver.models import get_user_profile_by_id
|
from zerver.models import get_user_profile_by_id
|
||||||
from zerver.lib.rate_limiter import client, max_api_calls, max_api_window
|
from zerver.lib.rate_limiter import client, max_api_calls, max_api_window
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
|
|
||||||
@@ -17,13 +17,13 @@ class Command(BaseCommand):
|
|||||||
|
|
||||||
Usage: ./manage.py [--trim] check_redis"""
|
Usage: ./manage.py [--trim] check_redis"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-t', '--trim',
|
# type: (CommandParser) -> None
|
||||||
dest='trim',
|
parser.add_argument('-t', '--trim',
|
||||||
default=False,
|
dest='trim',
|
||||||
action='store_true',
|
default=False,
|
||||||
help="Actually trim excess"),
|
action='store_true',
|
||||||
)
|
help="Actually trim excess")
|
||||||
|
|
||||||
def _check_within_range(self, key, count_func, trim_func=None):
|
def _check_within_range(self, key, count_func, trim_func=None):
|
||||||
# type: (str, Callable[[], int], Optional[Callable[[str, int], None]]) -> None
|
# type: (str, Callable[[], int], Optional[Callable[[str, int], None]]) -> None
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ import sys
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = """Checks your Zulip Voyager Django configuration for issues."""
|
help = """Checks your Zulip Voyager Django configuration for issues."""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + ()
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
for (setting_name, default) in settings.REQUIRED_SETTINGS:
|
for (setting_name, default) in settings.REQUIRED_SETTINGS:
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from optparse import make_option
|
|||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.lib.actions import Realm, do_create_realm, set_default_streams
|
from zerver.lib.actions import Realm, do_create_realm, set_default_streams
|
||||||
from zerver.models import RealmAlias, can_add_alias, get_realm_by_string_id
|
from zerver.models import RealmAlias, can_add_alias, get_realm_by_string_id
|
||||||
|
|
||||||
@@ -20,36 +20,44 @@ class Command(BaseCommand):
|
|||||||
|
|
||||||
Usage: python manage.py create_realm --string_id=acme --name='Acme'"""
|
Usage: python manage.py create_realm --string_id=acme --name='Acme'"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-d', '--domain',
|
# type: (CommandParser) -> None
|
||||||
dest='domain',
|
parser.add_argument('-d', '--domain',
|
||||||
type='str',
|
dest='domain',
|
||||||
help='The domain for the realm.'),
|
type=str,
|
||||||
make_option('-s', '--string_id',
|
help='The domain for the realm.')
|
||||||
dest='string_id',
|
|
||||||
type='str',
|
parser.add_argument('-s', '--string_id',
|
||||||
help="A short name for the realm. If this installation uses subdomains, this will be used as the realm's subdomain."),
|
dest='string_id',
|
||||||
make_option('-n', '--name',
|
type=str,
|
||||||
dest='name',
|
help="A short name for the realm. If this "
|
||||||
type='str',
|
"installation uses subdomains, this will be "
|
||||||
help='The user-visible name for the realm.'),
|
"used as the realm's subdomain.")
|
||||||
make_option('--corporate',
|
|
||||||
dest='org_type',
|
parser.add_argument('-n', '--name',
|
||||||
action="store_const",
|
dest='name',
|
||||||
const=Realm.CORPORATE,
|
type=str,
|
||||||
help='Is a corporate org_type'),
|
help='The user-visible name for the realm.')
|
||||||
make_option('--community',
|
|
||||||
dest='org_type',
|
parser.add_argument('--corporate',
|
||||||
action="store_const",
|
dest='org_type',
|
||||||
const=Realm.COMMUNITY,
|
action="store_const",
|
||||||
default=None,
|
const=Realm.CORPORATE,
|
||||||
help='Is a community org_type. Is the default.'),
|
help='Is a corporate org_type')
|
||||||
make_option('--deployment',
|
|
||||||
dest='deployment_id',
|
parser.add_argument('--community',
|
||||||
type='int',
|
dest='org_type',
|
||||||
default=None,
|
action="store_const",
|
||||||
help='Optionally, the ID of the deployment you want to associate the realm with.'),
|
const=Realm.COMMUNITY,
|
||||||
)
|
default=None,
|
||||||
|
help='Is a community org_type. Is the default.')
|
||||||
|
|
||||||
|
parser.add_argument('--deployment',
|
||||||
|
dest='deployment_id',
|
||||||
|
type=int,
|
||||||
|
default=None,
|
||||||
|
help='Optionally, the ID of the deployment you '
|
||||||
|
'want to associate the realm with.')
|
||||||
|
|
||||||
def validate_domain(self, domain):
|
def validate_domain(self, domain):
|
||||||
# type: (str) -> None
|
# type: (str) -> None
|
||||||
|
|||||||
@@ -4,26 +4,26 @@ from __future__ import print_function
|
|||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.models import get_realm, Message, Realm, Stream, Recipient
|
from zerver.models import get_realm, Message, Realm, Stream, Recipient
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
import time
|
import time
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
default_cutoff = time.time() - 60 * 60 * 24 * 30 # 30 days.
|
def add_arguments(self, parser):
|
||||||
|
# type: (CommandParser) -> None
|
||||||
|
default_cutoff = time.time() - 60 * 60 * 24 * 30 # 30 days.
|
||||||
|
parser.add_argument('--domain',
|
||||||
|
dest='domain',
|
||||||
|
type=str,
|
||||||
|
help='The domain whose public streams you want to dump.')
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
parser.add_argument('--since',
|
||||||
make_option('--domain',
|
dest='since',
|
||||||
dest='domain',
|
type=int,
|
||||||
type='str',
|
default=default_cutoff,
|
||||||
help='The domain whose public streams you want to dump.'),
|
help='The time in epoch since from which to start the dump.')
|
||||||
make_option('--since',
|
|
||||||
dest='since',
|
|
||||||
type='int',
|
|
||||||
default=default_cutoff,
|
|
||||||
help='The time in epoch since from which to start the dump.')
|
|
||||||
)
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ from __future__ import print_function
|
|||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
|
|
||||||
from django.core.management import call_command
|
from django.core.management import call_command
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from django.db import connection
|
from django.db import connection
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
||||||
@@ -29,18 +29,19 @@ import a database dump from one or more JSON files.
|
|||||||
|
|
||||||
Usage: python2.7 manage.py import [--destroy-rebuild-database] [--import-into-nonempty] <export path name> [<export path name>...]"""
|
Usage: python2.7 manage.py import [--destroy-rebuild-database] [--import-into-nonempty] <export path name> [<export path name>...]"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('--destroy-rebuild-database',
|
# type: (CommandParser) -> None
|
||||||
dest='destroy_rebuild_database',
|
parser.add_argument('--destroy-rebuild-database',
|
||||||
default=False,
|
dest='destroy_rebuild_database',
|
||||||
action="store_true",
|
default=False,
|
||||||
help='Destroys and rebuilds the databases prior to import.'),
|
action="store_true",
|
||||||
make_option('--import-into-nonempty',
|
help='Destroys and rebuilds the databases prior to import.')
|
||||||
dest='import_into_nonempty',
|
|
||||||
default=False,
|
parser.add_argument('--import-into-nonempty',
|
||||||
action="store_true",
|
dest='import_into_nonempty',
|
||||||
help='Import into an existing nonempty database.'),
|
default=False,
|
||||||
)
|
action="store_true",
|
||||||
|
help='Import into an existing nonempty database.')
|
||||||
|
|
||||||
def new_instance_check(self, model):
|
def new_instance_check(self, model):
|
||||||
# type: (Model) -> None
|
# type: (Model) -> None
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from typing import Any
|
|||||||
from argparse import ArgumentParser
|
from argparse import ArgumentParser
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.lib.actions import bulk_remove_subscriptions
|
from zerver.lib.actions import bulk_remove_subscriptions
|
||||||
from zerver.models import Realm, UserProfile, get_realm, get_stream, \
|
from zerver.models import Realm, UserProfile, get_realm, get_stream, \
|
||||||
@@ -15,25 +15,29 @@ from zerver.models import Realm, UserProfile, get_realm, get_stream, \
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = """Remove some or all users in a realm from a stream."""
|
help = """Remove some or all users in a realm from a stream."""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-d', '--domain',
|
# type: (CommandParser) -> None
|
||||||
dest='domain',
|
parser.add_argument('-d', '--domain',
|
||||||
type='str',
|
dest='domain',
|
||||||
help='The name of the realm in which you are removing people.'),
|
type=str,
|
||||||
make_option('-s', '--stream',
|
help='The name of the realm in which you are '
|
||||||
dest='stream',
|
'removing people.')
|
||||||
type='str',
|
|
||||||
help='A stream name.'),
|
parser.add_argument('-s', '--stream',
|
||||||
make_option('-u', '--users',
|
dest='stream',
|
||||||
dest='users',
|
type=str,
|
||||||
type='str',
|
help='A stream name.')
|
||||||
help='A comma-separated list of email addresses.'),
|
|
||||||
make_option('-a', '--all-users',
|
parser.add_argument('-u', '--users',
|
||||||
dest='all_users',
|
dest='users',
|
||||||
action="store_true",
|
type=str,
|
||||||
default=False,
|
help='A comma-separated list of email addresses.')
|
||||||
help='Remove all users in this realm from this stream.'),
|
|
||||||
)
|
parser.add_argument('-a', '--all-users',
|
||||||
|
dest='all_users',
|
||||||
|
action="store_true",
|
||||||
|
default=False,
|
||||||
|
help='Remove all users in this realm from this stream.')
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ settings.RUNNING_INSIDE_TORNADO = True
|
|||||||
from zerver.lib.tornado_ioloop_logging import instrument_tornado_ioloop
|
from zerver.lib.tornado_ioloop_logging import instrument_tornado_ioloop
|
||||||
instrument_tornado_ioloop()
|
instrument_tornado_ioloop()
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand, CommandError
|
from django.core.management.base import BaseCommand, CommandError, CommandParser
|
||||||
from django.http import HttpRequest, HttpResponse
|
from django.http import HttpRequest, HttpResponse
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
import sys
|
import sys
|
||||||
@@ -53,16 +53,21 @@ def handle_callback_exception(callback):
|
|||||||
app_log.error("Exception in callback %r", callback, exc_info=True)
|
app_log.error("Exception in callback %r", callback, exc_info=True)
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
option_list = BaseCommand.option_list + (
|
|
||||||
make_option('--nokeepalive', action='store_true',
|
|
||||||
dest='no_keep_alive', default=False,
|
|
||||||
help="Tells Tornado to NOT keep alive http connections."),
|
|
||||||
make_option('--noxheaders', action='store_false',
|
|
||||||
dest='xheaders', default=True,
|
|
||||||
help="Tells Tornado to NOT override remote IP with X-Real-IP."),
|
|
||||||
)
|
|
||||||
help = "Starts a Tornado Web server wrapping Django."
|
help = "Starts a Tornado Web server wrapping Django."
|
||||||
args = '[optional port number or ipaddr:port]\n (use multiple ports to start multiple servers)'
|
|
||||||
|
def add_arguments(self, parser):
|
||||||
|
# type: (CommandParser) -> None
|
||||||
|
parser.add_argument('addrport', nargs="?", type=str,
|
||||||
|
help='[optional port number or ipaddr:port]\n '
|
||||||
|
'(use multiple ports to start multiple servers)')
|
||||||
|
|
||||||
|
parser.add_argument('--nokeepalive', action='store_true',
|
||||||
|
dest='no_keep_alive', default=False,
|
||||||
|
help="Tells Tornado to NOT keep alive http connections.")
|
||||||
|
|
||||||
|
parser.add_argument('--noxheaders', action='store_false',
|
||||||
|
dest='xheaders', default=True,
|
||||||
|
help="Tells Tornado to NOT override remote IP with X-Real-IP.")
|
||||||
|
|
||||||
def handle(self, addrport, **options):
|
def handle(self, addrport, **options):
|
||||||
# type: (str, **bool) -> None
|
# type: (str, **bool) -> None
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ from optparse import make_option
|
|||||||
|
|
||||||
from django.test import Client
|
from django.test import Client
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
@@ -22,16 +22,19 @@ Example:
|
|||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-f', '--fixture',
|
# type: (CommandParser) -> None
|
||||||
dest='fixture',
|
parser.add_argument('-f', '--fixture',
|
||||||
type='str',
|
dest='fixture',
|
||||||
help='The path to the fixture you\'d like to send into Zulip'),
|
type=str,
|
||||||
make_option('-u', '--url',
|
help='The path to the fixture you\'d like to send '
|
||||||
dest='url',
|
'into Zulip')
|
||||||
type='str',
|
|
||||||
help='The url on your Zulip server that you want to post the fixture to'),
|
parser.add_argument('-u', '--url',
|
||||||
)
|
dest='url',
|
||||||
|
type=str,
|
||||||
|
help='The url on your Zulip server that you want '
|
||||||
|
'to post the fixture to')
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (*Any, **str) -> None
|
# type: (*Any, **str) -> None
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ from __future__ import print_function
|
|||||||
|
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.models import get_realm
|
from zerver.models import get_realm
|
||||||
from zerver.lib.actions import set_default_streams
|
from zerver.lib.actions import set_default_streams
|
||||||
@@ -26,16 +26,18 @@ python manage.py set_default_streams --domain=foo.com --streams="foo,bar,baz wit
|
|||||||
python manage.py set_default_streams --domain=foo.com --streams=
|
python manage.py set_default_streams --domain=foo.com --streams=
|
||||||
"""
|
"""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-d', '--domain',
|
# type: (CommandParser) -> None
|
||||||
dest='domain',
|
parser.add_argument('-d', '--domain',
|
||||||
type='str',
|
dest='domain',
|
||||||
help='The name of the existing realm to which to attach default streams.'),
|
type=str,
|
||||||
make_option('-s', '--streams',
|
help='The name of the existing realm to which to '
|
||||||
dest='streams',
|
'attach default streams.')
|
||||||
type='str',
|
|
||||||
help='A comma-separated list of stream names.'),
|
parser.add_argument('-s', '--streams',
|
||||||
)
|
dest='streams',
|
||||||
|
type=str,
|
||||||
|
help='A comma-separated list of stream names.')
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (*Any, **str) -> None
|
# type: (*Any, **str) -> None
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ from optparse import make_option
|
|||||||
import logging
|
import logging
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.lib import utils
|
from zerver.lib import utils
|
||||||
from zerver.models import UserMessage, get_user_profile_by_email
|
from zerver.models import UserMessage, get_user_profile_by_email
|
||||||
@@ -18,29 +18,33 @@ class Command(BaseCommand):
|
|||||||
help = """Sets user message flags. Used internally by actions.py. Marks all
|
help = """Sets user message flags. Used internally by actions.py. Marks all
|
||||||
Expects a comma-delimited list of user message ids via stdin, and an EOF to terminate."""
|
Expects a comma-delimited list of user message ids via stdin, and an EOF to terminate."""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-r', '--for-real',
|
# type: (CommandParser) -> None
|
||||||
dest='for_real',
|
parser.add_argument('-r', '--for-real',
|
||||||
action='store_true',
|
dest='for_real',
|
||||||
default=False,
|
action='store_true',
|
||||||
help="Actually change message flags. Default is a dry run."),
|
default=False,
|
||||||
make_option('-f', '--flag',
|
help="Actually change message flags. Default is a dry run.")
|
||||||
dest='flag',
|
|
||||||
type='string',
|
parser.add_argument('-f', '--flag',
|
||||||
help="The flag to add of remove"),
|
dest='flag',
|
||||||
make_option('-o', '--op',
|
type=str,
|
||||||
dest='op',
|
help="The flag to add of remove")
|
||||||
type='string',
|
|
||||||
help="The operation to do: 'add' or 'remove'"),
|
parser.add_argument('-o', '--op',
|
||||||
make_option('-u', '--until',
|
dest='op',
|
||||||
dest='all_until',
|
type=str,
|
||||||
type='string',
|
help="The operation to do: 'add' or 'remove'")
|
||||||
help="Mark all messages <= specific usermessage id"),
|
|
||||||
make_option('-m', '--email',
|
parser.add_argument('-u', '--until',
|
||||||
dest='email',
|
dest='all_until',
|
||||||
type='string',
|
type=str,
|
||||||
help="Email to set messages for"),
|
help="Mark all messages <= specific usermessage id")
|
||||||
)
|
|
||||||
|
parser.add_argument('-m', '--email',
|
||||||
|
dest='email',
|
||||||
|
type=str,
|
||||||
|
help="Email to set messages for")
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from typing import Any
|
|||||||
|
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.lib.actions import do_change_enable_digest_emails
|
from zerver.lib.actions import do_change_enable_digest_emails
|
||||||
from zerver.models import Realm, UserProfile, get_realm, get_user_profile_by_email
|
from zerver.models import Realm, UserProfile, get_realm, get_user_profile_by_email
|
||||||
@@ -13,16 +13,18 @@ from zerver.models import Realm, UserProfile, get_realm, get_user_profile_by_ema
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = """Turn off digests for a domain or specified set of email addresses."""
|
help = """Turn off digests for a domain or specified set of email addresses."""
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-d', '--domain',
|
# type: (CommandParser) -> None
|
||||||
dest='domain',
|
parser.add_argument('-d', '--domain',
|
||||||
type='str',
|
dest='domain',
|
||||||
help='Turn off digests for all users in this domain.'),
|
type=str,
|
||||||
make_option('-u', '--users',
|
help='Turn off digests for all users in this domain.')
|
||||||
dest='users',
|
|
||||||
type='str',
|
parser.add_argument('-u', '--users',
|
||||||
help='Turn off digests for this comma-separated list of email addresses.'),
|
dest='users',
|
||||||
)
|
type=str,
|
||||||
|
help='Turn off digests for this comma-separated '
|
||||||
|
'list of email addresses.')
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (**str) -> None
|
# type: (**str) -> None
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ from optparse import make_option
|
|||||||
import sys
|
import sys
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
|
|
||||||
from zerver.models import get_realm
|
from zerver.models import get_realm
|
||||||
from zerver.lib.create_user import random_api_key
|
from zerver.lib.create_user import random_api_key
|
||||||
@@ -16,21 +16,18 @@ from zilencer.models import Deployment
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = """Create a deployment and accompanying realm."""
|
help = """Create a deployment and accompanying realm."""
|
||||||
|
|
||||||
option_list = CreateRealm.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('--no-realm',
|
# type: (CommandParser) -> None
|
||||||
dest='no_realm',
|
parser.add_argument('--no-realm',
|
||||||
action='store_true',
|
dest='no_realm',
|
||||||
default=False,
|
action='store_true',
|
||||||
help='Do not create a new realm; associate with an existing one.' + \
|
default=False,
|
||||||
' In this case, only the domain and URLs need to be specified.'),
|
help='Do not create a new realm; associate with '
|
||||||
make_option('-a', '--api-url',
|
'an existing one. In this case, only the '
|
||||||
dest='api',
|
'domain and URLs need to be specified.')
|
||||||
type='str'),
|
|
||||||
make_option('-w', '--web-url',
|
|
||||||
dest='web',
|
|
||||||
type='str'),
|
|
||||||
|
|
||||||
)
|
parser.add_argument('-a', '--api-url', dest='api', type=str)
|
||||||
|
parser.add_argument('-w', '--web-url', dest='web', type=str)
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ from __future__ import absolute_import
|
|||||||
from __future__ import division
|
from __future__ import division
|
||||||
from __future__ import print_function
|
from __future__ import print_function
|
||||||
|
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from django.utils.timezone import now
|
from django.utils.timezone import now
|
||||||
|
|
||||||
from django.contrib.sites.models import Site
|
from django.contrib.sites.models import Site
|
||||||
@@ -55,62 +55,72 @@ def create_streams(realms, realm, stream_list):
|
|||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
help = "Populate a test database"
|
help = "Populate a test database"
|
||||||
|
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('-n', '--num-messages',
|
# type: (CommandParser) -> None
|
||||||
|
parser.add_argument('-n', '--num-messages',
|
||||||
dest='num_messages',
|
dest='num_messages',
|
||||||
type='int',
|
type=int,
|
||||||
default=600,
|
default=600,
|
||||||
help='The number of messages to create.'),
|
help='The number of messages to create.')
|
||||||
make_option('--extra-users',
|
|
||||||
|
parser.add_argument('--extra-users',
|
||||||
dest='extra_users',
|
dest='extra_users',
|
||||||
type='int',
|
type=int,
|
||||||
default=0,
|
default=0,
|
||||||
help='The number of extra users to create'),
|
help='The number of extra users to create')
|
||||||
make_option('--huddles',
|
|
||||||
|
parser.add_argument('--huddles',
|
||||||
dest='num_huddles',
|
dest='num_huddles',
|
||||||
type='int',
|
type=int,
|
||||||
default=3,
|
default=3,
|
||||||
help='The number of huddles to create.'),
|
help='The number of huddles to create.')
|
||||||
make_option('--personals',
|
|
||||||
|
parser.add_argument('--personals',
|
||||||
dest='num_personals',
|
dest='num_personals',
|
||||||
type='int',
|
type=int,
|
||||||
default=6,
|
default=6,
|
||||||
help='The number of personal pairs to create.'),
|
help='The number of personal pairs to create.')
|
||||||
make_option('--threads',
|
|
||||||
|
parser.add_argument('--threads',
|
||||||
dest='threads',
|
dest='threads',
|
||||||
type='int',
|
type=int,
|
||||||
default=10,
|
default=10,
|
||||||
help='The number of threads to use.'),
|
help='The number of threads to use.')
|
||||||
make_option('--percent-huddles',
|
|
||||||
|
parser.add_argument('--percent-huddles',
|
||||||
dest='percent_huddles',
|
dest='percent_huddles',
|
||||||
type='float',
|
type=float,
|
||||||
default=15,
|
default=15,
|
||||||
help='The percent of messages to be huddles.'),
|
help='The percent of messages to be huddles.')
|
||||||
make_option('--percent-personals',
|
|
||||||
|
parser.add_argument('--percent-personals',
|
||||||
dest='percent_personals',
|
dest='percent_personals',
|
||||||
type='float',
|
type=float,
|
||||||
default=15,
|
default=15,
|
||||||
help='The percent of messages to be personals.'),
|
help='The percent of messages to be personals.')
|
||||||
make_option('--stickyness',
|
|
||||||
|
parser.add_argument('--stickyness',
|
||||||
dest='stickyness',
|
dest='stickyness',
|
||||||
type='float',
|
type=float,
|
||||||
default=20,
|
default=20,
|
||||||
help='The percent of messages to repeat recent folks.'),
|
help='The percent of messages to repeat recent folks.')
|
||||||
make_option('--nodelete',
|
|
||||||
|
parser.add_argument('--nodelete',
|
||||||
action="store_false",
|
action="store_false",
|
||||||
default=True,
|
default=True,
|
||||||
dest='delete',
|
dest='delete',
|
||||||
help='Whether to delete all the existing messages.'),
|
help='Whether to delete all the existing messages.')
|
||||||
make_option('--test-suite',
|
|
||||||
|
parser.add_argument('--test-suite',
|
||||||
default=False,
|
default=False,
|
||||||
action="store_true",
|
action="store_true",
|
||||||
help='Whether to delete all the existing messages.'),
|
help='Whether to delete all the existing messages.')
|
||||||
make_option('--replay-old-messages',
|
|
||||||
|
parser.add_argument('--replay-old-messages',
|
||||||
action="store_true",
|
action="store_true",
|
||||||
default=False,
|
default=False,
|
||||||
dest='replay_old_messages',
|
dest='replay_old_messages',
|
||||||
help='Whether to replace the log of old messages.'),
|
help='Whether to replace the log of old messages.')
|
||||||
)
|
|
||||||
|
|
||||||
def handle(self, **options):
|
def handle(self, **options):
|
||||||
# type: (**Any) -> None
|
# type: (**Any) -> None
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ from typing import Any, Dict
|
|||||||
|
|
||||||
from django.http import HttpRequest, HttpResponse
|
from django.http import HttpRequest, HttpResponse
|
||||||
from optparse import make_option
|
from optparse import make_option
|
||||||
from django.core.management.base import BaseCommand
|
from django.core.management.base import BaseCommand, CommandParser
|
||||||
from zerver.models import get_user_profile_by_email, UserMessage
|
from zerver.models import get_user_profile_by_email, UserMessage
|
||||||
from zerver.views.messages import get_old_messages_backend
|
from zerver.views.messages import get_old_messages_backend
|
||||||
import cProfile
|
import cProfile
|
||||||
@@ -50,9 +50,9 @@ def profile_request(request):
|
|||||||
return ret
|
return ret
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
option_list = BaseCommand.option_list + (
|
def add_arguments(self, parser):
|
||||||
make_option('--email', action='store'),
|
# type: (CommandParser) -> None
|
||||||
)
|
parser.add_argument('--email', action='store')
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
# type: (*Any, **Any) -> None
|
# type: (*Any, **Any) -> None
|
||||||
|
|||||||
Reference in New Issue
Block a user