autograder .cli .courses .admin .email
Send an email to course users.
usage: python3 -m autograder.cli.courses.admin.email [-h] [--version]
[--server SERVER]
[--user USER]
[--pass PASS]
[--course COURSE]
[--dry-run] [--to TO]
[--cc CC] [--bcc BCC]
--subject SUBJECT
[--body BODY] [--html]
[--testing-mode]
Send an email to course users.
options:
-h, --help show this help message and exit
--version show program's version number and exit
command-specific options:
--server SERVER The URL of the autograder server to communicate with.
--user USER The email of the user making this request.
--pass PASS The password of the user making this request.
--course COURSE The ID of the course to make this request to.
--dry-run Do not commit/finalize the operation, just do all the
steps and state what the result would look like.
--to TO A list of email addresses. Accepts course user
references. Course user references may be specified in
four ways: 1) Email address of the requested user, 2)
"*" to request all users in the course, 3) "" (e.g., student, grader) to request all course
users with that role, and 4) any of the previous
options preceded by a minus sign (e.g.,
"-alice@test.edulinq.org", "-student") to exclude that
user or role from the request.
--cc CC A list of email addresses. Accepts course user
references.
--bcc BCC A list of email addresses. Accepts course user
references.
--subject SUBJECT The email subject.
--body BODY The email body. (default: None)
--html Indicates the email body contains HTML.
testing options:
--testing-mode Run as if a test is being run (default: False).
1""" 2Send an email to course users. 3""" 4 5import argparse 6import sys 7 8import edq.util.json 9 10import autograder.api.courses.admin.email 11import autograder.cli.parser 12 13def run_cli(args: argparse.Namespace) -> int: 14 """ Run the CLI. """ 15 16 config = args._config_info.application_config 17 18 result = autograder.api.courses.admin.email.send(config, exit_on_error = True) 19 print(edq.util.json.dumps(result, indent = 4)) 20 21 return 0 22 23def main() -> int: 24 """ Get a parser, parse the args, and call run. """ 25 26 return run_cli(_get_parser().parse_args()) 27 28def _get_parser() -> argparse.ArgumentParser: 29 """ Get a parser for this operation. """ 30 31 parser = autograder.cli.parser.get_parser( 32 __doc__.strip(), 33 autograder.api.courses.admin.email.API_PARAMS) 34 35 return parser 36 37if (__name__ == '__main__'): 38 sys.exit(main())
def
run_cli(args: argparse.Namespace) -> int:
14def run_cli(args: argparse.Namespace) -> int: 15 """ Run the CLI. """ 16 17 config = args._config_info.application_config 18 19 result = autograder.api.courses.admin.email.send(config, exit_on_error = True) 20 print(edq.util.json.dumps(result, indent = 4)) 21 22 return 0
Run the CLI.
def
main() -> int:
24def main() -> int: 25 """ Get a parser, parse the args, and call run. """ 26 27 return run_cli(_get_parser().parse_args())
Get a parser, parse the args, and call run.