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


TypeScript core.NameUtils类代码示例

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


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

示例1:

 toTest.clusters.forEach((cluster: any) => {
   const clusterName: string = NameUtils.getClusterName(
     cluster.application,
     cluster.stack,
     cluster.freeFormDetails,
   );
   if (clusterName === stage.cluster && cluster.account === stage.credentials && cluster.region === region) {
     regionFound = true;
   }
 });
开发者ID:emjburns,项目名称:deck,代码行数:10,代码来源:cfTargetImpedance.validator.ts

示例2: if

 stagesToTest.forEach(toTest => {
   if (toTest.type === 'deploy' && toTest.clusters && toTest.clusters.length) {
     toTest.clusters.forEach((cluster: any) => {
       const clusterName: string = NameUtils.getClusterName(
         cluster.application,
         cluster.stack,
         cluster.freeFormDetails,
       );
       if (clusterName === stage.cluster && cluster.account === stage.credentials && cluster.region === region) {
         regionFound = true;
       }
     });
   } else if (
     toTest.type === 'cloneServerGroup' &&
     NameUtils.getClusterName(toTest.application, toTest.stack, toTest.freeFormDetails) === stage.cluster &&
     toTest.region === region
   ) {
     regionFound = true;
   }
 });
开发者ID:emjburns,项目名称:deck,代码行数:20,代码来源:cfTargetImpedance.validator.ts

示例3: convertNetworkLoadBalancerForEditing

  public convertNetworkLoadBalancerForEditing(
    loadBalancer: IAmazonApplicationLoadBalancer,
  ): IAmazonNetworkLoadBalancerUpsertCommand {
    const applicationName = NameUtils.parseLoadBalancerName(loadBalancer.name).application;

    // Since we build up toEdit as we go, much easier to declare as any, then cast at return time.
    const toEdit: IAmazonNetworkLoadBalancerUpsertCommand = {
      availabilityZones: undefined,
      isInternal: loadBalancer.isInternal,
      region: loadBalancer.region,
      loadBalancerType: 'network',
      cloudProvider: loadBalancer.cloudProvider,
      credentials: loadBalancer.account || loadBalancer.credentials,
      listeners: [],
      targetGroups: [],
      name: loadBalancer.name,
      regionZones: loadBalancer.availabilityZones,
      securityGroups: [],
      subnetType: loadBalancer.subnetType,
      vpcId: undefined,
    };

    if (loadBalancer.elb) {
      const elb = loadBalancer.elb as INetworkLoadBalancerSourceData;
      toEdit.securityGroups = elb.securityGroups;
      toEdit.vpcId = elb.vpcid || elb.vpcId;

      // Convert listeners
      if (elb.listeners) {
        toEdit.listeners = elb.listeners.map(listener => {
          const certificates: IALBListenerCertificate[] = [];
          if (listener.certificates) {
            listener.certificates.forEach(cert => {
              const certArnParts = cert.certificateArn.split(':');
              const certParts = certArnParts[5].split('/');
              certificates.push({
                certificateArn: cert.certificateArn,
                type: certArnParts[2],
                name: certParts[1],
              });
            });
          }

          (listener.defaultActions || []).forEach(action => {
            if (action.targetGroupName) {
              action.targetGroupName = action.targetGroupName.replace(`${applicationName}-`, '');
            }
          });

          // Remove the default rule because it already exists in defaultActions
          listener.rules = (listener.rules || []).filter(l => !l.default);
          listener.rules.forEach(rule => {
            (rule.actions || []).forEach(action => {
              if (action.targetGroupName) {
                action.targetGroupName = action.targetGroupName.replace(`${applicationName}-`, '');
              }
            });
            rule.conditions = rule.conditions || [];
          });

          // Sort listener.rules by priority.
          listener.rules.sort((a, b) => (a.priority as number) - (b.priority as number));

          return {
            protocol: listener.protocol,
            port: listener.port,
            defaultActions: listener.defaultActions,
            certificates,
            rules: listener.rules || [],
            sslPolicy: listener.sslPolicy,
          };
        });
      }

      // Convert target groups
      if (elb.targetGroups) {
        toEdit.targetGroups = elb.targetGroups.map((targetGroup: any) => {
          return {
            name: targetGroup.targetGroupName.replace(`${applicationName}-`, ''),
            protocol: targetGroup.protocol,
            port: targetGroup.port,
            targetType: targetGroup.targetType,
            healthCheckProtocol: targetGroup.healthCheckProtocol,
            healthCheckPort: targetGroup.healthCheckPort,
            healthCheckTimeout: targetGroup.healthCheckTimeoutSeconds,
            healthCheckInterval: targetGroup.healthCheckIntervalSeconds,
            healthyThreshold: targetGroup.healthyThresholdCount,
            unhealthyThreshold: targetGroup.unhealthyThresholdCount,
            attributes: {
              deregistrationDelay: Number(targetGroup.attributes['deregistration_delay.timeout_seconds']),
            },
          };
        });
      }
    }
    return toEdit;
  }
开发者ID:mizzy,项目名称:deck,代码行数:97,代码来源:loadBalancer.transformer.ts


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