Пометка ресурсов - PullRequest
       14

Пометка ресурсов

0 голосов
/ 03 октября 2019

Пытаясь создать 10 подсетей по 5 в каждой азе, я хочу, чтобы эти подсети имели уникальные теги (например, 1.Web-Prod-WebApp-Private1, 2.Web-Prod-WebApp-Private2 3.Web-Prod-DB-Private1, 4.Web-Prod-DB-Private2) аналогично таблицам маршрутизации и отдельным NACl

Мой код помечает только ресурсы с одинаковыми именами, например, будут названы все 10 подсетей: Test-Subnet - все маршрутизируемые таблицы будутnamed: Test-RouteTable

ожидается 10 подсетей и маршрут с уникальными именами `

import cdk = require('@aws-cdk/core');
import ec2 = require('@aws-cdk/aws-ec2');
import logs = require("@aws-cdk/aws-logs");
import iam = require('@aws-cdk/aws-iam');
import s3 = require('@aws-cdk/aws-s3');
import { Tag } from '@aws-cdk/core';

export class test extends cdk.Stack {

constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {

super(scope, id, props);
Tag.add(this, 'Name','Test-VPC', {
  includeResourceTypes: ['AWS::EC2::VPC'],
  priority: 300,
})
Tag.add(this, 'Name','Test-Subnet', {
  includeResourceTypes: ['AWS::EC2::Subnet'],
  priority: 300,
})
Tag.add(this, 'Name','Test-RouteTable', {
  includeResourceTypes: ['AWS::EC2::RouteTable'],
  priority: 300,
})
Tag.add(this, 'Name','Test-InternetGateway', {
  includeResourceTypes: ['AWS::EC2::InternetGateway'],
  priority: 300,
})
Tag.add(this, 'Name','Test-NatGateway', {
  includeResourceTypes: ['AWS::EC2::NatGateway'],
  priority: 300,
})
Tag.add(this, 'Name','Test-EIP', {
  includeResourceTypes: ['AWS::EC2::EIP'],
  priority: 300,
})
const vpc = new ec2.Vpc(this, 'VPC', {

  cidr:"10.20.0.0/16",
  maxAzs: 2,
  subnetConfiguration: [
    {
      cidrMask: 24,
      name: 'Web-Prod-WebApp-Private',
      subnetType: ec2.SubnetType.PRIVATE
    },

    {
      cidrMask: 24,
      name: 'Web-Prod-DB-Private-',
      subnetType: ec2.SubnetType.PRIVATE,
    },

    {
      cidrMask: 24,
      name: 'Web-Prod-AD-Private-',
      subnetType: ec2.SubnetType.PRIVATE,
    },

    {
      cidrMask: 24,
      name: 'Web-Prod-ELB-Public-',
      subnetType: ec2.SubnetType.PUBLIC,
    },

    {
      cidrMask: 24,
      name: 'Web-Prod-NAT-Public-',
      subnetType: ec2.SubnetType.PUBLIC,
    }

  ]

})


}
const app = new cdk.App();
app.synth();`
...