本文整理匯總了Python中disco_aws_automation.DiscoAWS.config方法的典型用法代碼示例。如果您正苦於以下問題:Python DiscoAWS.config方法的具體用法?Python DiscoAWS.config怎麽用?Python DiscoAWS.config使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類disco_aws_automation.DiscoAWS
的用法示例。
在下文中一共展示了DiscoAWS.config方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: run
# 需要導入模塊: from disco_aws_automation import DiscoAWS [as 別名]
# 或者: from disco_aws_automation.DiscoAWS import config [as 別名]
def run():
"""Parses command line and dispatches the commands"""
config = read_config()
args = docopt(__doc__)
configure_logging(args["--debug"])
env = args["--environment"] or config.get("disco_aws", "default_environment")
pipeline_definition = []
if args["--pipeline"]:
with open(args["--pipeline"], "r") as f:
reader = csv.DictReader(f)
pipeline_definition = [line for line in reader]
aws = DiscoAWS(config, env)
if config.has_option('test', 'env'):
test_env = config.get('test', 'env')
test_aws = DiscoAWS(config, test_env)
else:
test_aws = aws
deploy = DiscoDeploy(
aws, test_aws, DiscoBake(config, aws.connection),
pipeline_definition=pipeline_definition,
test_hostclass=aws.config('hostclass', 'test'),
test_user=aws.config('user', 'test'),
test_command=aws.config('command', 'test'),
ami=args.get("--ami"), hostclass=args.get("--hostclass"),
allow_any_hostclass=args["--allow-any-hostclass"])
if args["test"]:
deploy.test(dry_run=args["--dry-run"])
elif args["update"]:
deploy.update(dry_run=args["--dry-run"])
elif args["list"]:
missing = "-" if len(pipeline_definition) else ""
if args["--tested"]:
for (_hostclass, ami) in deploy.get_latest_tested_amis().iteritems():
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
elif args["--untested"]:
for (_hostclass, ami) in deploy.get_latest_untested_amis().iteritems():
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
elif args["--failed"]:
for (_hostclass, ami) in deploy.get_latest_failed_amis().iteritems():
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
elif args["--testable"]:
for ami in deploy.get_test_amis():
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
elif args["--updatable"]:
for ami in deploy.get_update_amis():
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
elif args["--failures"]:
failures = deploy.get_failed_amis()
for ami in failures:
print("{} {:40} {}".format(
ami.id, ami.name.split()[0], deploy.get_integration_test(ami.name.split()[0]) or missing))
sys.exit(1 if len(failures) else 0)