当前位置: 首页>>代码示例>>Python>>正文


Python Template.add_resource方法代码示例

本文整理汇总了Python中troposphere.Template.add_resource方法的典型用法代码示例。如果您正苦于以下问题:Python Template.add_resource方法的具体用法?Python Template.add_resource怎么用?Python Template.add_resource使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在troposphere.Template的用法示例。


在下文中一共展示了Template.add_resource方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: main

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
def main():
    vpc = ec2.VPC('MyVPC',
                  CidrBlock='10.0.0.0/16')
    subnet = ec2.Subnet('MySubnet',
                        AvailabilityZone='ap-southeast-2a',
                        VpcId=Ref(vpc),
                        CidrBlock='10.0.1.0/24')
    template = Template()
    sns_topic = SNS(template)
    single_instance_config = SingleInstanceConfig(
        keypair='INSERT_YOUR_KEYPAIR_HERE',
        si_image_id='ami-53371f30',
        si_instance_type='t2.micro',
        vpc=Ref(vpc),
        subnet=Ref(subnet),
        is_nat=True,
        instance_dependencies=vpc.title,
        public_hosted_zone_name=None,
        iam_instance_profile_arn=None,
        sns_topic=sns_topic,
        availability_zone='ap-southeast-2a',
        ec2_scheduled_shutdown=None,
        owner='[email protected]'
    )
    SingleInstance(title='nat1',
                   template=template,
                   single_instance_config=single_instance_config
                   )

    template.add_resource(vpc)
    template.add_resource(subnet)
    print(template.to_json(indent=2, separators=(',', ': ')))
开发者ID:GeoscienceAustralia,项目名称:amazonia,代码行数:34,代码来源:test_sys_single_nat.py

示例2: __init__

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
class CFLab:
    '''
    Class creates VPC/Subnets/ELB/ASG for Cloudformation lab
    '''

    def __init__(self, config_dictionary):
        '''
        Method initializes the DevDeploy class and composes the CloudFormation template to deploy the solution
        @param config_dictionary [dict] collection of keyword arguments for this class implementation
        '''
        self.globals                    = config_dictionary.get('globals', {})
        self.template_args              = config_dictionary.get('template', {})

        self.template                   = Template()
        self.template.description       = self.globals.get('description', '')

        #create VPC, EC2
        self.vpc_generator = VPCGenerator(self.template_args)
        self.ec2_generator = EC2Generator(
            self.template_args,
            self.vpc_generator.vpc,
            self.vpc_generator.subnets
        )

        for resource in self.vpc_generator.resources:
            self.template.add_resource(resource)

        for resource in self.ec2_generator.resources:
            self.template.add_resource(resource)

        for output in self.ec2_generator.outputs:
            self.template.add_output(output)
开发者ID:DualSpark,项目名称:lab-cloudformation,代码行数:34,代码来源:lab.py

示例3: test_simple_table

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_simple_table(self):
     serverless_table = SimpleTable(
         "SomeTable"
     )
     t = Template()
     t.add_resource(serverless_table)
     t.to_json()
开发者ID:cigan1,项目名称:troposphere,代码行数:9,代码来源:test_serverless.py

示例4: sceptre_handler

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
def sceptre_handler(sceptre_user_data):

    t = Template()

    vpc = t.add_resource(VPC(
        "VirtualPrivateCloud",
        CidrBlock=sceptre_user_data["cidr_block"],
        InstanceTenancy="default",
        EnableDnsSupport=True,
        EnableDnsHostnames=True,
    ))

    igw = t.add_resource(InternetGateway(
        "InternetGateway",
    ))

    t.add_resource(VPCGatewayAttachment(
        "IGWAttachment",
        VpcId=Ref(vpc),
        InternetGatewayId=Ref(igw),
    ))

    t.add_output(Output(
        "VpcId",
        Description="New VPC ID",
        Value=Ref(vpc)
    ))

    return t.to_json()
开发者ID:TWinsnes,项目名称:sceptre,代码行数:31,代码来源:vpc_sud.py

示例5: main

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
def main():
    vpc = ec2.VPC('MyVPC',
                  CidrBlock='10.0.0.0/16')
    subnet = ec2.Subnet('MySubnet',
                        AvailabilityZone='ap-southeast-2a',
                        VpcId=Ref(vpc),
                        CidrBlock='10.0.1.0/24')
    template = Template()
    single_instance_config = SingleInstanceConfig(
        keypair='INSERT_YOUR_KEYPAIR_HERE',
        si_image_id='ami-dc361ebf',
        si_instance_type='t2.micro',
        vpc=Ref(vpc),
        subnet=Ref(subnet),
        instance_dependencies=vpc.title,
        public_hosted_zone_name=None,
        sns_topic=None,
        is_nat=False,
        iam_instance_profile_arn=None,
        availability_zone='ap-southeast-2a'
    )
    SingleInstance(title='jump',
                   template=template,
                   single_instance_config=single_instance_config
                   )

    template.add_resource(vpc)
    template.add_resource(subnet)
    print(template.to_json(indent=2, separators=(',', ': ')))
开发者ID:GeoscienceAustralia,项目名称:geodesy-domain-model,代码行数:31,代码来源:test_sys_single_jump.py

示例6: render

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
def render(context):
    secgroup = ec2_security(context)
    instance = ec2instance(context)

    template = Template()
    template.add_resource(secgroup)
    template.add_resource(instance)

    keyname = template.add_parameter(Parameter(KEYPAIR, **{
        "Type": "String",
        "Description": "EC2 KeyPair that enables SSH access to this instance",
    }))
    
    cfn_outputs = outputs()

    if context['project']['aws'].has_key('rds'):
        map(template.add_resource, rdsinstance(context))
        cfn_outputs.extend([
            mkoutput("RDSHost", "Connection endpoint for the DB cluster", (RDS_TITLE, "Endpoint.Address")),
            mkoutput("RDSPort", "The port number on which the database accepts connections", (RDS_TITLE, "Endpoint.Port")),])
    
    if context['project']['aws'].has_key('ext'):
        map(template.add_resource, ext_volume(context))

    if context['hostname']: # None if one couldn't be generated
        template.add_resource(external_dns(context))
        template.add_resource(internal_dns(context))        
        cfn_outputs.extend([
            mkoutput("DomainName", "Domain name of the newly created EC2 instance", Ref(R53_EXT_TITLE)),
            mkoutput("IntDomainName", "Domain name of the newly created EC2 instance", Ref(R53_INT_TITLE))])

    map(template.add_output, cfn_outputs)
    return template.to_json()
开发者ID:elife-anonymous-user,项目名称:builder,代码行数:35,代码来源:trop.py

示例7: test_s3_filter

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_s3_filter(self):
     t = Template()
     t.add_resource(
         Function(
             "ProcessorFunction",
             Handler='process_file.handler',
             CodeUri='.',
             Runtime='python3.6',
             Policies='AmazonS3FullAccess',
             Events={
                 'FileUpload': S3Event(
                     'FileUpload',
                     Bucket="bucket",
                     Events=['s3:ObjectCreated:*'],
                     Filter=Filter(S3Key=S3Key(
                         Rules=[
                             Rules(Name="prefix", Value="upload/"),
                             Rules(Name="suffix", Value=".txt"),
                         ],
                     ))
                 )
             }
         )
     )
     t.to_json()
开发者ID:cigan1,项目名称:troposphere,代码行数:27,代码来源:test_serverless.py

示例8: test_mutualexclusion

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_mutualexclusion(self):
     t = Template()
     t.add_resource(FakeAWSObject(
         'fake', callcorrect=True, singlelist=[10])
     )
     with self.assertRaises(ValueError):
         t.to_json()
开发者ID:gscalise,项目名称:troposphere,代码行数:9,代码来源:test_basic.py

示例9: test_api_no_definition

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_api_no_definition(self):
     serverless_api = Api(
         "SomeApi",
         StageName='test',
     )
     t = Template()
     t.add_resource(serverless_api)
     t.to_json()
开发者ID:cloudtools,项目名称:troposphere,代码行数:10,代码来源:test_serverless.py

示例10: test_no_required

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_no_required(self):
     stack = Stack(
         "mystack",
     )
     t = Template()
     t.add_resource(stack)
     with self.assertRaises(ValueError):
         t.to_json()
开发者ID:3dsorcery,项目名称:troposphere,代码行数:10,代码来源:test_opsworks.py

示例11: test_s3_bucket_accelerate_configuration

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
    def test_s3_bucket_accelerate_configuration(self):
        t = Template()
        ac = AccelerateConfiguration(AccelerationStatus="Enabled")

        b = Bucket("s3Bucket", AccelerateConfiguration=ac)
        t.add_resource(b)
        output = t.to_json()
        self.assertIn('"AccelerationStatus": "Enabled"', output)
开发者ID:Arvoreen,项目名称:troposphere,代码行数:10,代码来源:test_s3.py

示例12: _generate_template

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
def _generate_template(tms=1, within_vpc=False):
    t = Template()

    t.add_description(FLINK_TEMPLATE_DESCRIPTION)
    t.add_version(FLINK_TEMPLATE_VERSION)
    t.add_metadata({'LastUpdated': datetime.datetime.now().strftime('%c')})

    # mappings
    mappings.add_mappings(t)

    # parameters
    parameters.add_parameters(t)

    vpc = None
    subnet_pri = None
    subnet_pub = None
    if within_vpc:
        # networking resources
        vpc, subnet_pri, subnet_pub = _define_vpc(t)

    # security groups
    sg_ssh = t.add_resource(securitygroups.ssh(
        parameters.ssh_location, vpc))

    sg_jobmanager = t.add_resource(securitygroups.jobmanager(
        parameters.http_location, vpc))

    sg_taskmanager = t.add_resource(securitygroups.taskmanager(None, vpc))

    jobmanager = t.add_resource(instances.jobmanager(
        0,
        [Ref(sg_ssh), Ref(sg_jobmanager)],
        within_vpc,
        subnet_pub
    ))

    prefix = "JobManager00"
    t.add_output(outputs.ssh_to(jobmanager, prefix))
    t.add_output(Output(
        "FlinkWebGui",
        Description="Flink web interface",
        Value=Join("", [
            'http://', GetAtt(jobmanager, "PublicDnsName"), ':8081'
        ])
    ))

    for index in range(0, tms):
        i = t.add_resource(instances.taskmanager(
            index,
            jobmanager,
            [Ref(sg_ssh), Ref(sg_taskmanager)],
            within_vpc,
            subnet_pri
        ))
        prefix = "TaskManager%2.2d" % index
        t.add_output(outputs.ssh_to(i, prefix, bastion=jobmanager))

    return t.to_json()
开发者ID:psmiraglia,项目名称:cloudformation-flink,代码行数:60,代码来源:templates.py

示例13: test_yaml_long_form

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_yaml_long_form(self):
     t = Template()
     t.add_resource(WaitCondition(
         "MyWaitCondition", Timeout=30, Handle=Sub(cond_string)))
     self.assertEqual(cond_normal, t.to_yaml())
     self.assertEqual(cond_long, t.to_yaml(long_form=True))
     self.assertEqual(cond_long, t.to_yaml(False, True))
     self.assertEqual(cond_clean, t.to_yaml(clean_up=True))
     self.assertEqual(cond_clean, t.to_yaml(True))
开发者ID:Arvoreen,项目名称:troposphere,代码行数:11,代码来源:test_yaml.py

示例14: test_required_api_definitionuri

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_required_api_definitionuri(self):
     serverless_api = Api(
         "SomeApi",
         StageName='test',
         DefinitionUri='s3://bucket/swagger.yml',
     )
     t = Template()
     t.add_resource(serverless_api)
     t.to_json()
开发者ID:cigan1,项目名称:troposphere,代码行数:11,代码来源:test_serverless.py

示例15: test_required_api_definitionbody

# 需要导入模块: from troposphere import Template [as 别名]
# 或者: from troposphere.Template import add_resource [as 别名]
 def test_required_api_definitionbody(self):
     serverless_api = Api(
         "SomeApi",
         StageName='test',
         DefinitionBody=self.swagger,
     )
     t = Template()
     t.add_resource(serverless_api)
     t.to_json()
开发者ID:cigan1,项目名称:troposphere,代码行数:11,代码来源:test_serverless.py


注:本文中的troposphere.Template.add_resource方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。