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.

Observação: O design baseado em plug-in é uma oferta Beta que está sujeita a alterações e atualmente oferece suporte apenas ao plug-in da AWS e ao plug-in do Google Cloud Platform (GCP).

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.

Mapeamentos de imagens

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.

Arrastar auxiliares de alocação 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.

Arrastando um recurso do EC2 para a tela

8. Associe o recurso aos auxiliares

No código do EC2, o usuário adiciona associações que 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: bnixInstance
      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 design, linhas pontilhadas conectam o recurso aos auxiliares depois que o usuário adiciona as associações.

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: bnixInstance
      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.