def setUp(self): self.orlo_client = OrloClient( uri='http://localhost:7767' )
def main(): parser = argparse.ArgumentParser() parser.add_argument('--version', '-v', action='version', version='%(prog)s {}'.format(__version__)) parser.add_argument('--uri', '-u', dest='uri', default=config.get('client', 'uri'), help="Address of orlo server") parser.add_argument('--debug', '-d', help='Enable debug logging', action='store_true') parser.add_argument( '--insecure', '-I', action='store_true', default=False if config.getboolean('client', 'verify_ssl') else True, help='Do not verify SSL/TLS connections') subparsers = parser.add_subparsers(dest='object') pp_package = argparse.ArgumentParser(add_help=False) pp_package.add_argument( 'package', help='ID of the package to operate on', ) pp_release = argparse.ArgumentParser(add_help=False) pp_release.add_argument( 'release', help='ID of the release to operate on', ) pp_create_release = argparse.ArgumentParser(add_help=False) pp_create_release.add_argument( '-p', '--platform', help='Platforms field value', nargs='+', dest='platforms', required=True, ) pp_create_release.add_argument( '-u', '--user', help='Username field value', required=True, ) pp_create_release.add_argument( '-t', '--team', help='Team field value', required=False ) pp_create_release.add_argument( '-r', '--references', help='References field value', nargs='+', ) pp_create_release.add_argument( '-n', '--note', help='Note field value', ) pp_list = argparse.ArgumentParser(add_help=False) pp_list.add_argument( 'filter', nargs='*', help="Filters in the form parameter=value. See " "http://orlo.readthedocs.io/en/latest/rest.html#get--releases " "for valid parameters" ) pp_list.add_argument( '-p', '--packages', action='store_true', help="By default we list releases, this switches to listing " "packages instead" ) pp_list.add_argument( '-i', '--id-only', action='store_true', help="Only print id values, not full release json" ) pp_info = argparse.ArgumentParser(add_help=False) pp_info.add_argument('field', help='Field to report on', choices=('users', 'teams', 'packages', 'platforms')) pp_info.add_argument('--name', help='The subject or field entry, e.g if ' 'field is user, name could be "alex"') pp_info.add_argument('--platform', help='Platform to filter on.') pp_stats = argparse.ArgumentParser(add_help=False) pp_stats.add_argument('--field', help='Field to report on', choices=('user', 'team', 'package', 'platform')) pp_stats.add_argument('--name', help='The subject or field entry, e.g if ' 'field is user, name could be "alex"') pp_stats.add_argument('--platform', help='Platform to filter on.') pp_stats.add_argument('--time-before', metavar='TIME', help='Filter by releases started before this time') pp_stats.add_argument('--time-after', metavar='TIME', help='Filter by releases started after this time' '(both time-before and time-after filter on the ' '"stime" [start time] field).') pp_versions = argparse.ArgumentParser(add_help=False) pp_versions.add_argument('--platform', help='Platform to filter on') pp_create_package = argparse.ArgumentParser(add_help=False) pp_create_package.add_argument('name', help='Package name') pp_create_package.add_argument('version', help='Package version') subparsers.add_parser( 'create-release', help='Create a release', parents=[pp_create_release] ).set_defaults(func=action_create_release) subparsers.add_parser( 'create-package', help='Create a package', parents=[pp_release, pp_create_package] ).set_defaults(func=action_create_package) subparsers.add_parser( 'get-release', help='Fetch a release by ID', parents=[pp_release] ).set_defaults(func=action_get_release) subparsers.add_parser( 'get-package', help='Fetch a package by id', parents=[pp_package] ).set_defaults(func=action_get_package) subparsers.add_parser( 'start', help='Start a package', parents=[pp_package] ).set_defaults(func=action_start) subparsers.add_parser( 'stop', help='Stop a package', parents=[pp_package] ).set_defaults(func=action_stop) subparsers.add_parser( 'list', help='List releases, filters optional', parents=[pp_list] ).set_defaults(func=action_list) subparsers.add_parser( 'stats', help='Fetch release stats', parents=[pp_stats] ).set_defaults(func=action_stats) subparsers.add_parser( 'info', help='Fetch release info', parents=[pp_info] ).set_defaults(func=action_info) subparsers.add_parser( 'versions', help='Fetch current package versions', parents=[pp_versions] ).set_defaults(func=action_versions) args = parser.parse_args() if args.debug: logger.setLevel(logging.DEBUG) logger.debug(args) client = OrloClient( uri=args.uri, verify_ssl=False if args.insecure else True, ) args.func(client, args)
def setUp(self): self.orlo = OrloClient(self.URI)