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


Python TerraformRunner._get_outputs方法代碼示例

本文整理匯總了Python中webhook2lambda2sqs.terraform_runner.TerraformRunner._get_outputs方法的典型用法代碼示例。如果您正苦於以下問題:Python TerraformRunner._get_outputs方法的具體用法?Python TerraformRunner._get_outputs怎麽用?Python TerraformRunner._get_outputs使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在webhook2lambda2sqs.terraform_runner.TerraformRunner的用法示例。


在下文中一共展示了TerraformRunner._get_outputs方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: get_base_url

# 需要導入模塊: from webhook2lambda2sqs.terraform_runner import TerraformRunner [as 別名]
# 或者: from webhook2lambda2sqs.terraform_runner.TerraformRunner import _get_outputs [as 別名]
def get_base_url(config, args):
    """
    Get the API base url. Try Terraform state first, then
    :py:class:`~.AWSInfo`.

    :param config: configuration
    :type config: :py:class:`~.Config`
    :param args: command line arguments
    :type args: :py:class:`argparse.Namespace`
    :return: API base URL
    :rtype: str
    """
    try:
        logger.debug('Trying to get Terraform base_url output')
        runner = TerraformRunner(config, args.tf_path)
        outputs = runner._get_outputs()
        base_url = outputs['base_url']
        logger.debug("Terraform base_url output: '%s'", base_url)
    except Exception:
        logger.info('Unable to find API base_url from Terraform state; '
                    'querying AWS.', exc_info=1)
        aws = AWSInfo(config)
        base_url = aws.get_api_base_url()
        logger.debug("AWS api_base_url: '%s'", base_url)
    if not base_url.endswith('/'):
        base_url += '/'
    return base_url
開發者ID:jantman,項目名稱:webhook2lambda2sqs,代碼行數:29,代碼來源:runner.py

示例2: get_base_url

# 需要導入模塊: from webhook2lambda2sqs.terraform_runner import TerraformRunner [as 別名]
# 或者: from webhook2lambda2sqs.terraform_runner.TerraformRunner import _get_outputs [as 別名]
def get_base_url(dir_path):
    """
    get the base url to the API
    """
    os.chdir(dir_path)
    conf = Config(os.path.join(dir_path, 'config.json'))
    tf_runner = TerraformRunner(conf, 'terraform')
    outs = tf_runner._get_outputs()
    return outs['base_url']
開發者ID:waffle-iron,項目名稱:webhook2lambda2sqs,代碼行數:11,代碼來源:conftest.py

示例3: test_get_outputs_0point7plus

# 需要導入模塊: from webhook2lambda2sqs.terraform_runner import TerraformRunner [as 別名]
# 或者: from webhook2lambda2sqs.terraform_runner.TerraformRunner import _get_outputs [as 別名]
 def test_get_outputs_0point7plus(self):
     expected = {
         'base_url': 'https://ljgx260ix7.execute-api.us-east-1.ama/bar/',
         'arn': 'arn:aws:iam::1234567890:role/foo',
         'foobar': 'foo = bar = baz.w32'
     }
     resp = json.dumps(expected) + "\n"
     with patch('%s._validate' % pb):
         cls = TerraformRunner(self.mock_config(), 'terraform-bin')
         cls.tf_version = (0, 7, 0)
     with patch('%s.logger' % pbm, autospec=True) as mock_logger:
         with patch('%s._run_tf' % pb, autospec=True) as mock_run:
             mock_run.return_value = resp
             res = cls._get_outputs()
     assert res == expected
     assert mock_run.mock_calls == [call(cls, 'output', cmd_args=['-json'])]
     assert mock_logger.mock_calls == [
         call.debug('Running: terraform output'),
         call.debug('Terraform outputs: %s', expected)
     ]
開發者ID:AndrewFarley,項目名稱:webhook2lambda2sqs,代碼行數:22,代碼來源:test_terraform_runner.py

示例4: test_get_outputs_pre0point7

# 需要導入模塊: from webhook2lambda2sqs.terraform_runner import TerraformRunner [as 別名]
# 或者: from webhook2lambda2sqs.terraform_runner.TerraformRunner import _get_outputs [as 別名]
 def test_get_outputs_pre0point7(self):
     resp = "base_url = https://ljgx260ix7.execute-api.us-east-1.ama/bar/\n"
     resp += "arn = arn:aws:iam::1234567890:role/foo\n"
     resp += "foobar = foo = bar = baz.w32\n\n"
     expected = {
         'base_url': 'https://ljgx260ix7.execute-api.us-east-1.ama/bar/',
         'arn': 'arn:aws:iam::1234567890:role/foo',
         'foobar': 'foo = bar = baz.w32'
     }
     with patch('%s._validate' % pb):
         cls = TerraformRunner(self.mock_config(), 'terraform-bin')
         cls.tf_version = (0, 6, 16)
     with patch('%s.logger' % pbm, autospec=True) as mock_logger:
         with patch('%s._run_tf' % pb, autospec=True) as mock_run:
             mock_run.return_value = resp
             res = cls._get_outputs()
     assert res == expected
     assert mock_run.mock_calls == [call(cls, 'output')]
     assert mock_logger.mock_calls == [
         call.debug('Running: terraform output'),
         call.debug('Terraform outputs: %s', expected)
     ]
開發者ID:AndrewFarley,項目名稱:webhook2lambda2sqs,代碼行數:24,代碼來源:test_terraform_runner.py

示例5: get_api_id

# 需要導入模塊: from webhook2lambda2sqs.terraform_runner import TerraformRunner [as 別名]
# 或者: from webhook2lambda2sqs.terraform_runner.TerraformRunner import _get_outputs [as 別名]
def get_api_id(config, args):
    """
    Get the API ID from Terraform, or from AWS if that fails.

    :param config: configuration
    :type config: :py:class:`~.Config`
    :param args: command line arguments
    :type args: :py:class:`argparse.Namespace`
    :return: API Gateway ID
    :rtype: str
    """
    try:
        logger.debug('Trying to get Terraform rest_api_id output')
        runner = TerraformRunner(config, args.tf_path)
        outputs = runner._get_outputs()
        depl_id = outputs['rest_api_id']
        logger.debug("Terraform rest_api_id output: '%s'", depl_id)
    except Exception:
        logger.info('Unable to find API rest_api_id from Terraform state;'
                    ' querying AWS.', exc_info=1)
        aws = AWSInfo(config)
        depl_id = aws.get_api_id()
        logger.debug("AWS API ID: '%s'", depl_id)
    return depl_id
開發者ID:jantman,項目名稱:webhook2lambda2sqs,代碼行數:26,代碼來源:runner.py


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