當前位置: 首頁>>代碼示例>>Python>>正文


Python DiscoAWS.config方法代碼示例

本文整理匯總了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)
開發者ID:Angakkuit,項目名稱:asiaq-aws,代碼行數:67,代碼來源:disco_deploy.py


注:本文中的disco_aws_automation.DiscoAWS.config方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。