Para o seguinte exemplo simples baseado em plug-in no Automation Assembler, os auxiliares de processamento e imagem controlam o posicionamento e o SO guest de uma máquina virtual.
1. Adicionar infraestrutura de conta e zona
O usuário adiciona uma conta de nuvem da AWS com zonas de nuvem us-east-1 e us-west-2. O usuário marca as zonas region-east
e region-west
, respectivamente.
2. Adicionar infraestrutura de mapeamento de imagem
O usuário adiciona um mapa de imagem ubuntu
, que aponta para imagens com diferentes identificadores, dependendo da zona.
3. Adicione o projeto
O usuário cria um projeto. No projeto, em Provisionamento, o usuário adiciona as duas zonas.
4. Inicie um design
No Automation Assembler, na guia Design, o usuário inicia um novo design a partir de uma tela em branco.
5. Adicione auxiliares à tela
O usuário arrasta um auxiliar de processamento e um auxiliar de imagem para a tela.
6. Configurar auxiliares
No código para os auxiliares, o usuário adiciona a imagem ubuntu
e uma tag de restrição correspondente para region-west
. No fluxo de trabalho clássico, essas propriedades teriam sido adicionadas diretamente ao recurso em si.
Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west
7. Adicione o recurso de máquina virtual à tela
O usuário arrasta um recurso EC2 da AWS para a tela. Observe que não é o recurso (Classic)
. Os recursos mais novos têm um prefixo especial quando vistos no código.
8. Associe o recurso aos auxiliares
Na tela de criação, o usuário cria uma conexão começando no auxiliar de alocação e terminando na instância do EC2 para adicionar associações de propriedade. Essas associações de propriedades fazem referência à infraestrutura anterior, conforme definido pelos auxiliares. O termo selected
faz parte da associação porque o auxiliar está fazendo a seleção.
Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: db-demo account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
Na tela de criação, as linhas pontilhadas conectam o recurso aos auxiliares.
9. Modelo concluído
O exemplo concluído usa o seguinte código. Observe que o usuário pode ter configurado a infraestrutura de mapeamento de tipo e feito uso de um auxiliar de sabor também, em vez de adicionar diretamente o instance_type: t1.micro
ao recurso EC2.
formatVersion: 1 inputs: {} resources: Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: db-demo account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
As propriedades nativas do EC2 do AWS podem ser configuradas a partir daqui. Caso contrário, o modelo concluído estará pronto para testar e implantar.