Apresentando uma experiência de IDE local aprimorada para o AWS Step Functions | Cloud Computing

Apresentando uma experiência de IDE local aprimorada para o AWS Step Functions | Cloud Computing

Este post foi escrito por Ben Freiberg, arquiteto sênior de soluções.

O AWS Step Functions apresenta uma experiência de IDE local aprimorada para simplificar a criação de máquinas de estado. O Workflow Studio agora está disponível no Visual Studio Code (VS Code) por meio da extensão AWS Toolkit. Com essa integração, os desenvolvedores podem criar e editar máquinas de estado em seu IDE local usando a mesma experiência poderosa de criação visual encontrada no console da AWS.

O Step Functions é um serviço visual de fluxo de trabalho que ajuda os desenvolvedores a usar os serviços da AWS para criar aplicativos distribuídos, automatizar processos, orquestrar microsserviços e criar pipelines de dados e aprendizado de máquina (ML).

Os clientes escolhem o Step Functions para criar fluxos de trabalho que envolvem vários serviços, como AWS Lambda, AWS Fargate, Amazon Bedrock e integrações de API HTTP. Os desenvolvedores criam esses fluxos de trabalho como máquinas de estado por meio do console da AWS usando o Workflow Studio ou como código usando a Amazon States Language (ASL), uma linguagem específica de domínio baseada em JSON. Os desenvolvedores mantêm suas definições de fluxos de trabalho junto com o aplicativo e o código de infraestrutura como código (IaC). Agora, os criadores têm ainda mais recursos para criar e testar seu fluxo de trabalho no VS Code que corresponde à mesma experiência do console da AWS.

Simplificando o desenvolvimento do fluxo de trabalho local

O Workflow Studio integrado fornece aos desenvolvedores uma experiência perfeita para criar fluxos de trabalho do Step Functions em seu IDE local. Você usará a mesma tela usada no console da AWS para arrastar e soltar estados para criar seus fluxos de trabalho. Conforme você modifica visualmente o fluxo de trabalho, a definição de ASL é atualizada automaticamente, para que você possa se concentrar na lógica comercial em vez da sintaxe. A integração do Workflow Studio oferece a mesma abordagem intuitiva e visual para projetar máquinas de estado que o console da AWS, sem mudar o contexto.

Começando

Para usar a experiência atualizada do IDE, verifique se você tem o AWS Toolkit com pelo menos a versão 3.49.0 instalado como uma extensão do VS Code.

AWS Toolkit extension in VS Code which can be updated.

Figura 1: Atualização do AWS Toolkit disponível

Depois de instalar a extensão do AWS Toolkit, você pode começar a criar com o Workflow Studio abrindo uma definição de máquina de estado. Você pode usar um arquivo de definição do seu espaço de trabalho local ou usar o AWS Explorer para baixar uma definição de máquina de estado existente da nuvem. A integração com o VS Code oferece suporte às definições de ASL nos formatos JSON e YAML. (Observação: os arquivos devem terminar em .asl.json, asl.yml ou .asl.yaml para que o Workflow Studio abra automaticamente o arquivo.) Ao trabalhar com arquivos YAML, o Workflow Studio converte a definição em JSON para edição e, em seguida, converte novamente em YAML antes de salvar.

A sample state machine in Workflow Studio with Design mode open.

Figura 2: Modo de design no Workflow Studio

O Workflow Studio no VS Code é compatível com os modos Design e Código. O modo de design fornece uma interface gráfica para criar e inspecionar seus fluxos de trabalho. No modo Código, você pode usar um editor de código integrado para visualizar e editar a definição da Amazon States Language (ASL) dos seus fluxos de trabalho. Você sempre pode voltar à edição baseada em texto selecionando o link Retornar ao editor padrão no canto superior direito do Workflow Studio, conforme mostrado na tela a seguir.

A sample state machine in Workflow Studio with Code mode open.

Figura 3: Modo de código no Workflow Studio

Para abrir o Workflow Studio no VS Code manualmente, você pode usar a ação “Open with Workflow Studio” na parte superior de um arquivo de definição de fluxo de trabalho ou o ícone no canto superior direito do painel do editor. Ambas as opções são destacadas na tela a seguir. Além disso, você pode usar o menu de contexto do arquivo para abrir o Workflow Studio no painel do explorador de arquivos.

A asl file in the default editor showing the different ways to open Workflow Studio.

Figura 4: Integrações do Workflow Studio no editor

As edições feitas no Workflow Studio são automaticamente sincronizadas com o arquivo subjacente como alterações não salvas. Para manter suas alterações, você deve salvá-las do Workflow Studio ou do editor de arquivos. Da mesma forma, todas as alterações feitas no arquivo local são sincronizadas com o Workflow Studio ao serem salvas.

O Workflow Studio está ciente das substituições de definições, então você pode até mesmo editar fluxos de trabalho que foram integrados às suas ferramentas de IaC, como o AWS CloudFormation ou o AWS Cloud Development Kit (CDK). As substituições de definições são um recurso do CloudFormation que permite adicionar referências dinâmicas em sua definição de fluxo de trabalho a um valor que você fornece em seu modelo de IaC.

AWSTemplateFormatVersion: "2010-09-09"
Description: "State machine with Definition Substitutions"
Resources:
MyStateMachine:
Type: AWS::StepFunctions::StateMachine
Properties:
StateMachineName: HelloWorld-StateMachine
DefinitionS3Location:
Bucket: amzn-s3-demo-bucket
Key: state-machine-definition.json
DefinitionSubstitutions:
TableName: DemoTable

Em seguida, você pode usar as Substituições de Definição na definição de sua máquina de estados.

"Write message to DynamoDB": {
"Type": "Task",
"Resource": "arn:aws:states:::dynamodb:putItem",
"Next": "Remove message from SQS queue",
"Arguments": {
"TableName": "${TableName}",
"Item": {
... omitted for brevity ...
}
},
"Output": "{% $states.input %}"
}

O código define um estado de tarefa do Step Functions que grava uma mensagem no DynamoDB usando a operação putItem. A sintaxe de substituição ${tableName} permite um nome de tabela dinâmico do DynamoDB que pode ser passado como parâmetro quando a máquina de estado é executada.

Teste e implantação

A integração do Workflow Studio oferece suporte ao teste de um único estado por meio da API TestState do Step Functions. Com a API TestState, você pode testar um estado na nuvem a partir do seu IDE local sem criar uma máquina de estado ou atualizar uma máquina de estado existente. Com o poder dos testes granulares localizados, você pode criar e depurar alterações em estados individuais sem precisar invocar toda a máquina de estados. Por exemplo, você pode refinar o processamento de entrada ou saída ou atualizar a lógica condicional em um estado de escolha sem sair do IDE.

Testando um estado

  1. Abra qualquer arquivo de definição de máquina de estado no Workflow Studio
  2. Selecione um estado na tela ou na guia de código
  3. Abra o painel Inspetor no lado direito, se ainda não estiver aberto A DynamoDB PutItem opened in the Workflow Studio inspector panel with the Arguments showing a Definition Substitution..
    Figura 5: Argumentos de um estado individual
  4. Selecione o botão Test State na parte superior
  5. Selecione sua função do IAM e adicione a entrada. Certifique-se de que a função tenha as permissões necessárias para usar a API TestState
  6. Se seu estado contiver alguma substituição de definição, você verá uma seção adicional na qual poderá substituí-la por seus valores específicos.
  7. Selecione Start Test

Modal popup of the TestState with a role selected and showing the entered value of a Definition Substitution.

Figura 6: Configuração do TestState com uma substituição de definição

Depois que o teste for bem-sucedido, você poderá publicar seu fluxo de trabalho a partir do IDE usando o AWS Toolkit. Você também pode usar ferramentas de IaC, como o AWS Serverless Application Model, o AWS CDK ou o CloudFormation, para implantar sua máquina de estado.

Conclusão

A Step Functions está introduzindo uma experiência aprimorada de IDE local para simplificar o desenvolvimento de fluxos de trabalho usando o VS Code IDE e o AWS Toolkit. Isso simplifica o ciclo de código-teste-implantação-depuração e oferece aos desenvolvedores uma integração perfeita do Workflow Studio. Ao combinar o design visual do fluxo de trabalho com o poder de um IDE completo, os desenvolvedores agora podem criar fluxos de trabalho do Step Functions com mais eficiência.

Para começar, instale o AWS Toolkit for Visual Studio Code e visite o guia do usuário sobre a integração do Workflow Studio. Encontre exemplos práticos, melhores práticas e recursos úteis para a AWS sem servidor em Serverless Land.

Este blog é uma tradução do conteúdo original em inglês (link aqui).

Biografia do Tradutor

Rodrigo Peres é Arquiteto de Soluções na AWS, com mais de 20 anos de experiência trabalhando com arquitetura de soluções, desenvolvimento de sistemas e modernização de sistemas legados.

Biografia do Revisor

Daniel Abib é arquiteto de soluções sênior na AWS, com mais de 25 anos trabalhando com gerenciamento de projetos, arquiteturas de soluções escaláveis, desenvolvimento de sistemas e CI/CD, microsserviços, arquitetura Serverless & Containers e segurança. Ele trabalha apoiando clientes corporativos, ajudando-os em sua jornada para a nuvem.

https://www.linkedin.com/in/danielabib/

Compartilhe essa publicação, clicando nos botões abaixo:

Sobre Redação

Portal Direto Noticias - Imparcial, Transparente e Direto | https://diretonoticias.com.br | Notícias de Guarapari, ES e Brasil. Ative as notificações ao entrar e torne-se um seguidor. Caso prefira receber notícias por email, inscreva-se em nossa Newsletter, ou em nossas redes:

Veja Também

Empresas estão virando bancos – e você precisa entender o por quê

Empresas estão virando bancos – e você precisa entender o por quê

Nos últimos anos, grandes empresas de diferentes setores passaram a oferecer serviços financeiros, transformando-se, na prática, em bancos. Sky, Magalu, Vivo e Mercado Livre são apenas alguns exemplos de companhias que decidiram ampliar sua atuação e incluir soluções financeiras em seus ecossistemas. Mas por que tantas empresas estão seguindo esse caminho? 1. A busca por novas fontes de receita O

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *