示例#1
0
    def create_configuration_template(self, application, template, 
                                      environment_id = None, solution_stack = None, 
                                      source_configuration = None,
                                      option_settings = None,
                                      option_remove = None,
                                      template_specification = None,
                                      description = None):
        request = Request()
        request.set_operation('CreateConfigurationTemplate')
        request.set_app_name(application)
        request.set_template(template)

        if environment_id is not None:
            request.set_env_id(environment_id)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if source_configuration is not None:
            request.set_source_configuration(source_configuration)
        if option_settings is not None: 
            request.set_option_settings(option_settings)
        if option_remove is not None: 
            request.set_options_to_remove(option_remove)
        if template_specification is not None: 
            request.set_template_specification(template_specification)
        if description is not None: 
            request.set_description(description)
        
        response = self.call(request)

        result = response['CreateConfigurationTemplateResponse']['CreateConfigurationTemplateResult']
        request_id = response['CreateConfigurationTemplateResponse']\
            ['ResponseMetadata']['RequestId']
                
        configuration = ConfigurationSettingsDescription.from_json(result)
        return Response(request_id, configuration)
示例#2
0
    def describe_configuration_options(self, 
                                       application_name = None, 
                                       environment_name = None, 
                                       template = None,
                                       solution_stack = None,
                                       options = None,
                                       ):
        request = Request()
        request.set_operation('DescribeConfigurationOptions')
        if application_name is not None:
            request.set_app_name(application_name)
        if environment_name is not None:
            request.set_env_name(environment_name)
        if template is not None:
            request.set_template(template)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if options is not None and len(options) > 0:
            request.set_options(options)
        
        try:    
            response = self.call(request)
        except:
            raise

        options = response['DescribeConfigurationOptionsResponse']\
            ['DescribeConfigurationOptionsResult']['Options']
        request_id = response['DescribeConfigurationOptionsResponse']\
            ['ResponseMetadata']['RequestId']

        option_descriptions = set()
        for option in options:
            option_descriptions.add(ConfigurationOptionDescription.from_json(option))
        return Response(request_id, option_descriptions)
示例#3
0
    def create_configuration_template(self, application, template, 
                                      environment_id = None, solution_stack = None, 
                                      source_configuration = None,
                                      option_settings = None,
                                      option_remove = None,
                                      template_specification = None,
                                      description = None):
        request = Request()
        request.set_operation(u'CreateConfigurationTemplate')
        request.set_app_name(application)
        request.set_template(template)

        if environment_id is not None:
            request.set_env_id(environment_id)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if source_configuration is not None:
            request.set_source_configuration(source_configuration)
        if option_settings is not None: 
            request.set_option_settings(option_settings)
        if option_remove is not None: 
            request.set_options_to_remove(option_remove)
        if template_specification is not None: 
            request.set_template_specification(template_specification)
        if description is not None: 
            request.set_description(description)
        
        response = self.call(request)

        result = response[u'CreateConfigurationTemplateResponse'][u'CreateConfigurationTemplateResult']
        request_id = response[u'CreateConfigurationTemplateResponse']\
            [u'ResponseMetadata'][u'RequestId']
                
        configuration = ConfigurationSettingsDescription.from_json(result)
        return Response(request_id, configuration)
示例#4
0
    def describe_configuration_options(self, 
                                       application_name = None, 
                                       environment_name = None, 
                                       template = None,
                                       solution_stack = None,
                                       options = None,
                                       ):
        request = Request()
        request.set_operation(u'DescribeConfigurationOptions')
        if application_name is not None:
            request.set_app_name(application_name)
        if environment_name is not None:
            request.set_env_name(environment_name)
        if template is not None:
            request.set_template(template)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if options is not None and len(options) > 0:
            request.set_options(options)
        
        try:    
            response = self.call(request)
        except:
            raise

        options = response[u'DescribeConfigurationOptionsResponse']\
            [u'DescribeConfigurationOptionsResult'][u'Options']
        request_id = response[u'DescribeConfigurationOptionsResponse']\
            [u'ResponseMetadata'][u'RequestId']

        option_descriptions = set()
        for option in options:
            option_descriptions.add(ConfigurationOptionDescription.from_json(option))
        return Response(request_id, option_descriptions)
示例#5
0
    def create_environment(self,
                           application,
                           environment,
                           cname_prefix=None,
                           template=None,
                           solution_stack=None,
                           version_label=None,
                           option_settings=None,
                           option_remove=None,
                           template_specification=None,
                           description=None):
        if (template is None and solution_stack is None) \
            or (template is not None and solution_stack is not None):
            raise AttributeError(
                'Must specify either solution stack or template.')

        request = Request()
        request.set_operation('CreateEnvironment')
        request.set_app_name(application)
        request.set_env_name(environment)

        if cname_prefix is not None:
            request.set_cname(cname_prefix)
        if template is not None:
            request.set_template(template)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if version_label is not None:
            request.set_version_label(version_label)
        if option_settings is not None:
            request.set_option_settings(option_settings)
        if option_remove is not None:
            request.set_options_to_remove(option_remove)
        if template_specification is not None:
            request.set_template_specification(template_specification)
        if description is not None:
            request.set_description(description)

        try:
            response = self.call(request)
        except AwsServiceException as ex:
            if ex.code.lower() == AwsErrorCode.InvalidParameterValue.lower()\
                and _re.search(Strings.ENV_EXIST_RE, ex.message):
                raise AlreadyExistException(ex)
            raise

        result = response['CreateEnvironmentResponse'][
            'CreateEnvironmentResult']
        request_id = response['CreateEnvironmentResponse']\
            ['ResponseMetadata']['RequestId']

        return Response(request_id, EnvironmentDescription.from_json(result))
示例#6
0
    def create_environment(self,
                           application,
                           environment,
                           cname_prefix=None,
                           template=None,
                           solution_stack=None,
                           version_label=None,
                           option_settings=None,
                           option_remove=None,
                           template_specification=None,
                           description=None,
                           tier=None):
        request = Request()
        request.set_operation('CreateEnvironment')
        request.set_app_name(application)
        request.set_env_name(environment)

        if cname_prefix is not None:
            request.set_cname(cname_prefix)
        if template is not None:
            request.set_template(template)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if version_label is not None:
            request.set_version_label(version_label)
        if option_settings is not None:
            request.set_option_settings(option_settings)
        if option_remove is not None:
            request.set_options_to_remove(option_remove)
        if template_specification is not None:
            request.set_template_specification(template_specification)
        if description is not None:
            request.set_description(description)
        if tier is not None:
            request.set_tier(tier)

        try:
            response = self.call(request)
        except AwsServiceException as ex:
            if ex.code.lower() == AwsErrorCode.InvalidParameterValue.lower()\
                and _re.search(Strings.ENV_EXIST_RE, ex.message):
                raise AlreadyExistException(ex)
            raise

        result = response['CreateEnvironmentResponse'][
            'CreateEnvironmentResult']
        request_id = response['CreateEnvironmentResponse']\
            ['ResponseMetadata']['RequestId']

        return Response(request_id, EnvironmentDescription.from_json(result))
示例#7
0
    def create_configuration_template(
        self,
        application,
        template,
        environment_id=None,
        solution_stack=None,
        source_configuration=None,
        option_settings=None,
        option_remove=None,
        template_specification=None,
        description=None,
    ):

        if (environment_id is None and solution_stack is None and source_configuration is None) or (
            environment_id is not None and source_configuration is not None
        ):
            raise AttributeError("Template source combination is invalid.")

        request = Request()
        request.set_operation("CreateConfigurationTemplate")
        request.set_app_name(application)
        request.set_template(template)

        if environment_id is not None:
            request.set_env_id(environment_id)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if source_configuration is not None:
            request.set_source_configuration(source_configuration)
        if option_settings is not None:
            request.set_option_settings(option_settings)
        if option_remove is not None:
            request.set_options_to_remove(option_remove)
        if template_specification is not None:
            request.set_template_specification(template_specification)
        if description is not None:
            request.set_description(description)

        response = self.call(request)

        result = response["CreateConfigurationTemplateResponse"]["CreateConfigurationTemplateResult"]
        request_id = response["CreateConfigurationTemplateResponse"]["ResponseMetadata"]["RequestId"]

        configuration = ConfigurationSettingsDescription.from_json(result)
        return Response(request_id, configuration)
示例#8
0
    def describe_configuration_options(self,
                                       application_name=None,
                                       environment_name=None,
                                       template=None,
                                       solution_stack=None,
                                       version_label=None,
                                       options=None,
                                       option_remove=None,
                                       template_specification=None):
        request = Request()
        request.set_operation('DescribeConfigurationOptions')
        if application_name is not None:
            request.set_app_name(application_name)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if environment_name is not None:
            request.set_env_name(environment_name)
        if template is not None:
            request.set_template(template)
        if version_label is not None:
            request.set_version_label(version_label)
        if options is not None:
            request.set_options(options)
        if option_remove is not None:
            request.set_options_to_remove(option_remove)
        if template_specification is not None:
            request.set_template_specification(template_specification)

        try:
            response = self.call(request)
        except:
            raise

        options = response['DescribeConfigurationOptionsResponse']\
            ['DescribeConfigurationOptionsResult']['Options']
        request_id = response['DescribeConfigurationOptionsResponse']\
            ['ResponseMetadata']['RequestId']

        option_descriptions = list()
        for option in options:
            option_descriptions.append(
                ConfigurationOptionDescription.from_json(option))
        return Response(request_id, option_descriptions)
    def describe_configuration_options(self, 
                                       application_name = None, 
                                       environment_name = None, 
                                       template = None,
                                       solution_stack = None,
                                       version_label = None,
                                       options = None, 
                                       option_remove = None,
                                       template_specification = None):
        request = Request()
        request.set_operation('DescribeConfigurationOptions')
        if application_name is not None:
            request.set_app_name(application_name)
        if solution_stack is not None:
            request.set_solution_stack(solution_stack)
        if environment_name is not None:
            request.set_env_name(environment_name)
        if template is not None:
            request.set_template(template)
        if version_label is not None:
            request.set_version_label(version_label)
        if options is not None:
            request.set_options(options)
        if option_remove is not None: 
            request.set_options_to_remove(option_remove)
        if template_specification is not None: 
            request.set_template_specification(template_specification)     
        
        try:    
            response = self.call(request)
        except:
            raise

        options = response['DescribeConfigurationOptionsResponse']\
            ['DescribeConfigurationOptionsResult']['Options']
        request_id = response['DescribeConfigurationOptionsResponse']\
            ['ResponseMetadata']['RequestId']

        option_descriptions = list()
        for option in options:
            option_descriptions.append(ConfigurationOptionDescription.from_json(option))
        return Response(request_id, option_descriptions)