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


Python constants.ParameterSource类代码示例

本文整理汇总了Python中scli.constants.ParameterSource的典型用法代码示例。如果您正苦于以下问题:Python ParameterSource类的具体用法?Python ParameterSource怎么用?Python ParameterSource使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: execute

    def execute(self, parameter_pool):

        func_matrix = []
        # Loop over default settings
        for name, _, to_file in CredentialFileParameters:
            if not parameter_pool.has(name):
                continue
            elif ParameterSource.is_ahead(ParameterSource.Terminal, parameter_pool.get_source(name)):
                continue
            else:
                func_matrix.append((None, name, to_file))

        # Loop over current branch settings
        cur_branch = (
            parameter_pool.get_value(ParameterName.CurrentBranch)
            if parameter_pool.has(ParameterName.CurrentBranch)
            else None
        )
        if cur_branch and ParameterSource.is_ahead(
            parameter_pool.get_source(ParameterName.Branches), ParameterSource.ConfigFile
        ):
            branch_setting = parameter_pool.get_value(ParameterName.Branches)[cur_branch]
            for name, _, to_file in CredentialFileParameters:
                if not name in branch_setting:
                    continue
                else:
                    func_matrix.append((cur_branch, name, to_file))

        if len(func_matrix) < 1:
            log.info(u"Skipped updating credential file as credentials are not changed.")
            return

        location = config_file.default_aws_credential_file_location()
        # Create directory if needed
        try:
            config_file.create_directory(config_file.default_aws_credential_file_path())
            config_file.write_aws_credential_file(location, parameter_pool, func_matrix)
        except BaseException as ex:
            log.error(
                u'Encountered error when creating AWS Credential file at "{0}", because {1}.'.format(location, ex)
            )
            return

        else:
            log.info(WriteAwsCredentialFileOpMessage.Succeed.format(location))
            prompt.result(WriteAwsCredentialFileOpMessage.Succeed.format(location))

            parameter_pool.put(
                Parameter(ParameterName.AwsCredentialFile, location, ParameterSource.OperationOutput), True
            )

            ret_result = OperationResult(self, None, None, None)
            return ret_result
开发者ID:Maxim-Filimonov,项目名称:dotfiles,代码行数:53,代码来源:file_operations.py

示例2: _generate_service_endpoint

 def _generate_service_endpoint(self, pool):
     ''' 
     Generate EB service endpoint from region if not presents, or overwrite
     if specified region has higher priority.
     '''
     if pool.has(ParameterName.Region) and \
         (not pool.has(ParameterName.ServiceEndpoint) \
          or ParameterSource.is_ahead(pool.get_source(ParameterName.Region), 
                                      pool.get_source(ParameterName.ServiceEndpoint))\
          or not pool.has(ParameterName.DevToolsEndpoint) \
          or ParameterSource.is_ahead(pool.get_source(ParameterName.Region), 
                                      pool.get_source(ParameterName.DevToolsEndpoint))):
         
         region = pool.get(ParameterName.Region)
         eb_utils.generate_endpoint(pool, region.value, region.source)
开发者ID:Sammons-Archive,项目名称:Resources,代码行数:15,代码来源:terminal_operations.py

示例3: ask_environment_tier

 def ask_environment_tier(cls, parameter_pool):
     # Skip if user supplies environment tier string as CLI arguments, or already by terminal
     if parameter_pool.has(ParameterName.EnvironmentTier) \
         and ParameterSource.is_ahead(parameter_pool.get_source(ParameterName.EnvironmentTier),
                                      ParameterSource.ConfigFile):
         serialized_tier = parameter_pool.get_value(ParameterName.EnvironmentTier, False).to_serialized_string()
         print(TerminalPromptSettingParameterMessage[ParameterName.EnvironmentTier].\
               format(serialized_tier))
         return
     
     original_value = parameter_pool.get_value(ParameterName.EnvironmentTier)
     append_message = u'' if original_value is None \
         else TerminalMessage.CurrentValue.format(original_value.to_serialized_string())
     print(TerminalPromptAskingMessage[ParameterName.EnvironmentTier].\
           format(append_message))
     
     # TODO replace with call to list tiers API once it is created
     tiers = BeanstalkTerminal.ENVIRONMENT_TIERS
     serialized_tiers = [tier.to_serialized_string() for tier in tiers]
     tier_index = cls.single_choice(serialized_tiers, 
                                     TerminalMessage.AvailableEnvironmentTier, None,
                                     original_value is not None)
     
     value = tiers[tier_index] if tier_index is not None else original_value
     tier = Parameter(ParameterName.EnvironmentTier, value, ParameterSource.Terminal)
     parameter_pool.put(tier, True)
开发者ID:anavaino,项目名称:aws-devtool,代码行数:26,代码来源:beanstalk_terminal.py

示例4: ask_solution_stack

 def ask_solution_stack(cls, parameter_pool):
     
     # Skip if user supplies solution stack string as CLI arguments, or already by terminal
     if parameter_pool.has(ParameterName.SolutionStack) \
         and ParameterSource.is_ahead(parameter_pool.get_source(ParameterName.SolutionStack),
                                      ParameterSource.ConfigFile):
         print(TerminalPromptSettingParameterMessage[ParameterName.SolutionStack].\
               format(parameter_pool.get_value(ParameterName.SolutionStack)))
         return            
     
     original_value = parameter_pool.get_value(ParameterName.SolutionStack) \
         if parameter_pool.has(ParameterName.SolutionStack) else None
     append_message = u'' if original_value is None \
         else TerminalMessage.CurrentValue.format(original_value)        
     print(TerminalPromptAskingMessage[ParameterName.SolutionStack].\
           format(append_message))
     
     stacks = api_wrapper.retrieve_solution_stacks(parameter_pool)
     stack_index = cls.single_choice(stacks, 
                                     TerminalMessage.AvailableSolutionStack, None,
                                     original_value is not None)
     
     value = stacks[stack_index] if stack_index is not None else original_value
     stack = Parameter(ParameterName.SolutionStack, value, ParameterSource.Terminal)
     parameter_pool.put(stack, True)
开发者ID:basilbeltran,项目名称:bashitol,代码行数:25,代码来源:beanstalk_terminal.py

示例5: put

 def put(self, param, force = False):
     ''' 
     Add new parameter to pool.
     When new parameter is not presented in pool or force is set to True, new
     parameter will be always added/updated to pool. Otherwise, it will be 
     only updated to pool when source of new parameter has higher priority 
     than the one in pool.          
     '''
     if not isinstance(param, Parameter):
         raise AttributeError("Cannot add item that's not instance of Parameter.")
     if param.name not in self._pool \
         or force\
         or ParameterSource.is_ahead(param.source, self._pool[param.name].source):
         self._pool[param.name] = param
开发者ID:basilbeltran,项目名称:bashitol,代码行数:14,代码来源:parameter.py

示例6: _generate_service_endpoint

 def _generate_service_endpoint(self, pool):
     ''' 
     Generate EB service endpoint from region if not presents, or overwrite
     if specified region has higher priority.
     '''
     if pool.has(ParameterName.Region) and \
         (not pool.has(ParameterName.ServiceEndpoint) or \
          ParameterSource.is_ahead(pool.get_source(ParameterName.Region), 
                                  pool.get_source(ParameterName.ServiceEndpoint))):
         region = pool.get(ParameterName.Region)
         log.info(u'Generate service endpoint from region "{0}".'.format(region.value))
         pool.put(Parameter(ParameterName.ServiceEndpoint, 
                             ServiceEndpoint[region.value], 
                             region.source))        
开发者ID:basilbeltran,项目名称:bashitol,代码行数:14,代码来源:terminal_operations.py

示例7: ask_region

    def ask_region(cls, parameter_pool):
        original_value = parameter_pool.get_value(ParameterName.Region) \
            if parameter_pool.has(ParameterName.Region) else None
        
        original_source = parameter_pool.get_source(ParameterName.Region) \
            if parameter_pool.has(ParameterName.Region) else None
        
        if original_value is not None and \
            ParameterSource.is_ahead(original_source, ParameterSource.Terminal):
            print(TerminalPromptSettingParameterMessage[ParameterName.Region].\
                      format(ServiceRegionName[original_value]))            
            region_value = original_value
        else:
            append_message = u'' if original_value is None \
                else TerminalMessage.CurrentValue.format(ServiceRegionName[original_value])        
            print TerminalPromptAskingMessage[ParameterName.Region].format(append_message)
            
            region_name_list = list()
            for region in AvailableServiceRegion:
                region_name_list.append(ServiceRegionName[region])
            region_index = cls.single_choice(region_name_list, 
                                              TerminalMessage.AvailableRegion, 
                                              None,
                                              original_value is not None)
            
            region_value = AvailableServiceRegion[region_index] \
                if region_index is not None else original_value
            region = Parameter(ParameterName.Region, 
                               misc.to_unicode(region_value), 
                               ParameterSource.Terminal)
            parameter_pool.put(region, True)

        # Set service endpoint if not specified as CLI arguments
        cls._set_parameter_value(parameter_pool, 
                                 ParameterName.ServiceEndpoint, 
                                 misc.to_unicode(ServiceEndpoint[region_value]), 
                                 ParameterSource.Terminal)

            
        # Set RDS endpont and snippet if not specified as CLI arguments
        cls._set_parameter_value(parameter_pool, 
                                 ParameterName.RdsEndpoint, 
                                 RdsEndpoint[region_value], 
                                 ParameterSource.Terminal)
        cls._set_parameter_value(parameter_pool, 
                                 ParameterName.RdsSnippetUrl, 
                                 RdsDefault.get_snippet_url(region_value), 
                                 ParameterSource.Terminal)
开发者ID:basilbeltran,项目名称:bashitol,代码行数:48,代码来源:service_terminal.py

示例8: ask_service_endpoint

    def ask_service_endpoint(cls, parameter_pool):
        endpoint_source = parameter_pool.get_source(ParameterName.ServiceEndpoint)\
            if parameter_pool.has(ParameterName.ServiceEndpoint) else None
        region_source = parameter_pool.get_source(ParameterName.Region)\
            if parameter_pool.has(ParameterName.Region) else None
        
        if region_source is None:
            cls.ask_region(parameter_pool)
        
        if endpoint_source is not None \
            and not ParameterSource.is_ahead(region_source, endpoint_source):
            return

        endpoint = Parameter(ParameterName.ServiceEndpoint, 
                             ServiceEndpoint[parameter_pool.get_value(ParameterName.Region, False)], 
                             region_source)
        parameter_pool.put(endpoint, False)
开发者ID:anavaino,项目名称:aws-devtool,代码行数:17,代码来源:service_terminal.py

示例9: ask_region

    def ask_region(cls, parameter_pool):
        original_value = parameter_pool.get_value(ParameterName.Region) \
            if parameter_pool.has(ParameterName.Region) else None
        
        original_source = parameter_pool.get_source(ParameterName.Region) \
            if parameter_pool.has(ParameterName.Region) else None
        
        if original_value is not None and \
            ParameterSource.is_ahead(original_source, ParameterSource.Terminal):
            print(TerminalPromptSettingParameterMessage[ParameterName.Region].\
                      format(ServiceRegionName[original_value]))            
            region_value = original_value
        else:
            append_message = u'' if original_value is None \
                else TerminalMessage.CurrentValue.format(ServiceRegionName[original_value])        
            print TerminalPromptAskingMessage[ParameterName.Region].format(append_message)
            
            region_name_list = list()
            for region in AvailableServiceRegion:
                region_name_list.append(ServiceRegionName[region])
            region_index = cls.single_choice(region_name_list, 
                                              TerminalMessage.AvailableRegion, 
                                              None,
                                              original_value is not None)
            
            region_value = AvailableServiceRegion[region_index] \
                if region_index is not None else original_value
            region = Parameter(ParameterName.Region, 
                               misc.to_unicode(region_value), 
                               ParameterSource.Terminal)
            parameter_pool.put(region, True)

        # Set RDS service endpoints if not specified as CLI arguments
        log.info(u'Generate RDS endpoint from region "{0}".'.format(region_value))
        eb_utils.generate_endpoint(parameter_pool, region_value, ParameterSource.Terminal)
        # Set RDS endpont and snippet if not specified as CLI arguments
        log.info(u'Generate RDS snippet URL from region "{0}".'.format(region_value))
        rds_utils.generate_endpoint(parameter_pool, region_value, ParameterSource.Terminal)
开发者ID:JoaoVasques,项目名称:aws-devtool,代码行数:38,代码来源:service_terminal.py

示例10: execute

    def execute(self, parameter_pool):
        
        func_matrix = []        
        for param in CredentialFileParameters:
            if not parameter_pool.has(param[0]):
                continue
            elif ParameterSource.is_ahead(ParameterSource.Terminal,\
                                        parameter_pool.get_source(param[0])):
                continue
            else:
                func_matrix.append((param[0], param[2]))
        
        if len(func_matrix) < 1:
            log.info('Skipped updating credential file as credentials are not changed.')
            return 

        location = config_file.default_aws_credential_file_location()        
        # Create directory if needed
        try:
            config_file.create_directory(config_file.default_aws_credential_file_path())
            config_file.write_aws_credential_file(location, parameter_pool, func_matrix)
        except BaseException as ex:
            log.error('Encountered error when creating AWS Credential file at "{0}", because {1}.'.\
                      format(location, ex))
            return
        
        else:
            log.info(WriteAwsCredentialFileOpMessage.Succeed.format(location))
            prompt.result(WriteAwsCredentialFileOpMessage.Succeed.format(location))
            
            parameter_pool.put(Parameter(ParameterName.AwsCredentialFile,
                                         location,
                                         ParameterSource.OperationOutput),
                               True)
            
            ret_result = OperationResult(self, None, None, None)
            return ret_result
开发者ID:basilbeltran,项目名称:bashitol,代码行数:37,代码来源:file_operations.py

示例11: execute

    def execute(self, parameter_pool):
        current_branch, _ = shell_utils.get_working_branch(False)
        parameter_pool.put(Parameter(ParameterName.CurrentBranch,
                                     current_branch,
                                     ParameterSource.ConfigFile))
        if current_branch:
            log.info(u'Current working branch is "{0}".'.format(current_branch))
            branch_pool = _copy.deepcopy(parameter_pool)
            
            # Fill branch environment parameter values
            branches = parameter_pool.get_value(ParameterName.Branches)
            for key in EbConfigFile.BranchSectionKeys | EbConfigFile.BranchSectionHiddenKeys:
                if branches and current_branch in branches.keys() \
                    and key in branches[current_branch].keys():
                    # Copy parameter if current branch has corresponding setting
                    branch_pool.put(Parameter(key,
                                                 branches[current_branch][key],
                                                 ParameterSource.ConfigFile))
                else:
                    # TODO: we will leave following parameter if not presents in branch, since
                    # we are not asking for them for now but they are required in terminal
                    if not key in (ParameterName.ApplicationName,
                                   ParameterName.Region,
                                   ParameterName.ServiceEndpoint,
                                   ParameterName.DevToolsEndpoint):  
                        branch_pool.remove(key)
            branch_pool.put(Parameter(ParameterName.DefaultEnvironmentName,
                                      parameter_pool.get_value(ParameterName.EnvironmentName, False),
                                      ParameterSource.ConfigFile))

            
            # Call terminal
            copy = BeanstalkTerminal.ask_branch(branch_pool)
            
            # Create mapping and branch-environment section
            if branches is None:
                parameter_pool.put(Parameter(ParameterName.Branches,
                                             dict(),
                                             ParameterSource.Terminal))
            branches = parameter_pool.get_value(ParameterName.Branches, False)
            branches[current_branch] = dict()
            source = ParameterSource.ConfigFile
            for key in EbConfigFile.BranchSectionKeys | EbConfigFile.BranchSectionHiddenKeys:
                if branch_pool.has(key):
                    branches[current_branch][key] = branch_pool.get_value(key, False)
                    if ParameterSource.is_ahead(branch_pool.get_source(key), source):
                        source = branch_pool.get_source(key)
                else:
                    # Copy parameter if not exists in branch
                    if parameter_pool.has(key): 
                        branches[current_branch][key] = parameter_pool.get_value(key, False)
            parameter_pool.update(ParameterName.Branches, source=source)
            
            # Copy over optionsetting file
            if copy:
                default_option_file = parameter_pool.get_value(ParameterName.OptionSettingFile, False)
                branch_option_file = branches[current_branch][ParameterName.OptionSettingFile]
                log.debug(u'Copying optionsettings file from {0} to {1}.'.format(default_option_file,
                                                                         branch_option_file))
                shell_utils.copy_file(default_option_file, branch_option_file, True)
                config_file.set_access_permission(branch_option_file, True)

            # Fill [branch] section
            if parameter_pool.get_value(ParameterName.BranchMapping) is None:
                parameter_pool.put(Parameter(ParameterName.BranchMapping,
                                             dict(),
                                             ParameterSource.Terminal))
            branch_mapping = parameter_pool.get_value(ParameterName.BranchMapping, False)
            branch_mapping[current_branch] = branch_pool.get_value(ParameterName.EnvironmentName, False)
            
        else:
            # local repository does not have branch committed yet.
            msg = TerminalMessage.NoBranchToRegister
            log.error(msg)
            prompt.error(msg)      
开发者ID:Sammons-Archive,项目名称:Resources,代码行数:75,代码来源:terminal_operations.py

示例12: _set_parameter_value

 def _set_parameter_value(cls, parameter_pool, name, value, source, force = False):
     # Set parameter value if not specified as before with higher priority
     if parameter_pool.has(name) \
             and Source.is_ahead(parameter_pool.get_source(name), Source.Terminal):
         value = parameter_pool.get_value(name, False)
     else:
         parameter_pool.put(Parameter(name, value, source), force)
     
     prompt.info(TerminalPromptSettingParameterMessage[name].format(value))        
开发者ID:Gbuomprisco,项目名称:step-elastic-beanstalk-deploy,代码行数:9,代码来源:base.py


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