Pular para conteúdo

Instrucao tecnica implantacao preliminar 0.7.05.x

Projeto eCosif 05/2026

Instrução Técnica de Implantação

versão: 0.7.05.20260528x

versão documento data responsável
0.7.05.20260528x 28/05/2026 José Augusto de Lima Pereira

Modelo de entrega ao cliente

O cliente não recebe os fontes do projeto. A entrega é feita por:

  • imagens Docker para módulos ECS (angular, auth, masterdata, moviments, querys, reports, compliance)

  • pacote ZIP para ecosif-automations executado em AWS Lambda

Não há build no cliente (mvn, npm, etc.). O processo é configuração de ambiente, deploy dos artefatos e integração com AWS.

Referências de infraestrutura no repositório:

  • url: https://files.disoft.com.br/
    pasta: itau-ecosif/0_7_05_X/aws/example/

Indice

Modelo de entrega ao cliente 2

  1. Introdução e versões 5

1.1 Versões dos módulos (release 0.7.05) 5

  1. Arquitetura geral e mapeamento de URLs 6

2.1 Diagrama de alto nível (fluxo utilizador e APIs) 6

2.2 Diagrama de dependências entre módulos (preliminar) 6

2.3 Domínio único (produção) 6

2.4 Automations no fluxo 7

2.5 Componentes 7

2.6 Sequencia de ações — caminho imediato 8

  1. Pré-requisitos e criação do banco de dados 9

3.1 Pré-requisitos gerais 9

3.2 Criação do banco (exemplo SQL) 9

  1. Variáveis de ambiente (visão geral) 10

4.1 Compartilhadas 10

4.2 Referência operacional 10

  1. ecosif-angular (frontend) 11

5.1 Função e tecnologia 11

5.2 Variáveis de ambiente 11

Variáveis opcionais recomendadas (ecosif-angular) 11

5.3 Passo a passo de implantação (ecosif-angular) 12

  1. ecosif-auth 13

6.1 Função e tecnologia 13

6.2 Variáveis de ambiente 13

Variáveis opcionais recomendadas (ecosif-auth) 13

6.3 Passo a passo de implantação (ecosif-auth) 14

  1. ecosif-masterdata 15

7.1 Função e tecnologia 15

7.2 Variáveis de ambiente 15

Variáveis opcionais recomendadas (ecosif-masterdata) 15

7.3 Passo a passo de implantação (ecosif-masterdata) 16

  1. ecosif-moviments 17

8.1 Função e tecnologia 17

8.2 Variáveis de ambiente 17

Variáveis opcionais recomendadas (ecosif-moviments) 17

8.3 Passo a passo de implantação (ecosif-moviments) 18

  1. ecosif-querys 19

9.1 Função e tecnologia 19

9.2 Variáveis de ambiente 19

Variáveis opcionais recomendadas (ecosif-querys) 19

9.3 Passo a passo de implantação (ecosif-querys) 20

  1. ecosif-reports 21

10.1 Função e tecnologia 21

10.2 Variáveis de ambiente 21

Variáveis opcionais recomendadas (ecosif-reports) 21

10.3 Passo a passo de implantação (ecosif-reports) 22

  1. ecosif-compliance 23

11.1 Função e tecnologia 23

11.2 Variáveis de ambiente 23

Variáveis opcionais recomendadas (ecosif-compliance) 23

11.3 Passo a passo de implantação (ecosif-compliance) 24

  1. ecosif-automations (Lambda + SQS) 25

12.1 Função e tecnologia 25

12.2 Variáveis de ambiente 25

Variáveis opcionais recomendadas (ecosif-automations) 26

12.3 Passo a passo de implantação (ecosif-automations) 26

  1. Implementação na AWS (ECS, API Gateway, Lambda, SQS) 28

13.1 ECS + API Gateway (módulos HTTP) 28

13.2 Domínio e certificado 28

13.3 Automations 28

1. Introdução e versões

O eCosif é um ecossistema com frontend Angular e APIs backend para autenticação, cadastros, lançamentos, consultas, relatórios, conformidade e automação de importação.

1.1 Versões dos módulos (release 0.7.05)

Módulo Versão Artefato
ecosif-angular 0.7.05.202605286 disoft/ecosif-angular:0.7.05.202605286
ecosif-auth 0.7.05.202605281 disoft/ecosif-auth:0.7.05.202605281
ecosif-masterdata 0.7.05.202605281 disoft/ecosif-masterdata:0.7.05.202605281
ecosif-moviments 0.7.05.202605281 disoft/ecosif-moviments:0.7.05.202605281
ecosif-querys 0.7.05.202605281 disoft/ecosif-querys:0.7.05.202605281
ecosif-reports 0.7.05.202605281 disoft/ecosif-reports:0.7.05.202605281
ecosif-compliance 0.7.05.202605280 disoft/ecosif-compliance:0.7.05.202605280
ecosif-automations 0.7.05.202605280 ZIP Lambda ***

*** nota:
Link download: https://files.disoft.com.br/
Caminho Interno: itau-ecosif/0_7_05_X/aws/lambda/ecosif_automations_0_7_05_202605280.zip

2. Arquitetura geral e mapeamento de URLs

2.1 Diagrama de alto nível (fluxo utilizador e APIs)

2.2 Diagrama de dependências entre módulos (preliminar)

2.3 Domínio único (produção)

Exemplo: https://app.ecosif.banco.com.br

Path Serviço Runtime
/ ecosif-angular ECS/Nginx
/ecosif-auth ecosif-auth ECS/Spring Boot
/ecosif-masterdata ecosif-masterdata ECS/Spring Boot
/ecosif-moviments ecosif-moviments ECS/Spring Boot
/ecosif-querys ecosif-querys ECS/Spring Boot
/ecosif-reports ecosif-reports ECS/Spring Boot
/ecosif-compliance ecosif-compliance ECS/Flask

2.4 Automations no fluxo

O ecosif-automations não expõe rota HTTP pública via ECS/API Gateway. O fluxo ocorre por:

  • upload de arquivo no bucket S3

  • Lambda import

  • filas SQS (entries, consolidation.fifo, consolidation-defer)

  • Lambdas entries e consolidation

2.5 Componentes

2.6 Sequencia de ações — caminho imediato

Cenário típico quando \`IMPORT\_DEFER\_ENABLED=false\` e \`CONSOLIDATION\_DEFER\_ENABLED=false\`

3. Pré-requisitos e criação do banco de dados

3.1 Pré-requisitos gerais

  • PostgreSQL 12+

  • AWS: ECS, ECR, API Gateway, ACM, Lambda, SQS, S3, Secrets Manager

  • domínio e certificado TLS

  • chave JWT única para serviços Java (AUTH_TOKEN_SECRET)

  • AWS CLI autenticado para operações de deploy

3.2 Criação do banco (exemplo SQL)

CREATE DATABASE ecosif  
  WITH ENCODING = 'UTF8'  
  LC\_COLLATE = 'pt\_BR.UTF-8'  
  LC\_CTYPE = 'pt\_BR.UTF-8'  
  TEMPLATE = template0;  

-- conectar: \\c ecosif  

CREATE USER ecosif\_auth WITH PASSWORD '\<senha-auth\>';  
GRANT ALL PRIVILEGES ON DATABASE ecosif TO ecosif\_auth;  
GRANT ALL ON SCHEMA public TO ecosif\_auth;  

CREATE USER ecosif\_masterdata WITH PASSWORD '\<senha-masterdata\>';  
GRANT CONNECT ON DATABASE ecosif TO ecosif\_masterdata;  
GRANT USAGE ON SCHEMA public TO ecosif\_masterdata;  

CREATE USER ecosif\_moviments WITH PASSWORD '\<senha-moviments\>';  
GRANT CONNECT ON DATABASE ecosif TO ecosif\_moviments;  
GRANT USAGE ON SCHEMA public TO ecosif\_moviments;  

CREATE USER ecosif\_querys WITH PASSWORD '\<senha-querys\>';  
GRANT CONNECT ON DATABASE ecosif TO ecosif\_querys;  
GRANT USAGE ON SCHEMA public TO ecosif\_querys;  

CREATE USER ecosif\_reports WITH PASSWORD '\<senha-reports\>';  
GRANT CONNECT ON DATABASE ecosif TO ecosif\_reports;  
GRANT USAGE ON SCHEMA public TO ecosif\_reports;  

CREATE USER ecosif\_compliance WITH PASSWORD '\<senha-compliance\>';  
GRANT CONNECT ON DATABASE ecosif TO ecosif\_compliance;  
GRANT USAGE ON SCHEMA public TO ecosif\_compliance;

Observação: ecosif-auth deve subir primeiro com Flyway para criar/atualizar schema.

4. Variáveis de ambiente (visão geral)

4.1 Compartilhadas

Variável Uso
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Conexão banco
AUTH_TOKEN_SECRET JWT compartilhado entre serviços Java
ECOSIF_CORS CORS das APIs
HIBERNATE_DDL_AUTO Política Hibernate
ECOSIF_LOGMODE_*, ECOSIF_LOGSHOW, LOG_FORMAT Logging

4.2 Referência operacional

As tabelas detalhadas por módulo estão nos release notes em:

5. ecosif-angular (frontend)

5.1 Função e tecnologia

  • Função: Interface web (login, cadastros, lançamentos, consultas, relatórios e administração).

  • Stack: Angular, TypeScript, CoreUI, Bootstrap, Nginx (servir estáticos).

  • Versão: 0.7.05.202605286 (disoft/ecosif-angular:0.7.05.202605286).

5.2 Variáveis de ambiente

Definir na task/contentor do frontend. O entrypoint usa-as para gerar window.env / config.json. Com domínio único, as bases das APIs são paths relativos.

Variável Como utilizar O que faz
ECOSIF_ANGULAR_API_AUTH_URL /ecosif-auth Base URL do auth.
ECOSIF_ANGULAR_API_MASTERDATA_URL /ecosif-masterdata Base do masterdata.
ECOSIF_ANGULAR_API_MOVIMENTS_URL /ecosif-moviments Base do moviments.
ECOSIF_ANGULAR_API_QUERYS_URL /ecosif-querys Base do querys.
ECOSIF_ANGULAR_API_REPORTS_URL /ecosif-reports Base do reports.
ECOSIF_ANGULAR_API_COMPLIANCE_URL /ecosif-compliance Base do compliance.
ECOSIF_ENABLE_RUNTIME true em produção Indicador de ambiente.
ECOSIF_ANGULAR_HIDE_ADMIN_MENU true (prod) Esconde menu Ferramentas Administrativas.
ECOSIF_ANGULAR_PORT 80 Porta Nginx no contentor.

Variáveis opcionais recomendadas (ecosif-angular)

Variável Como utilizar O que faz
ECOSIF_ANGULAR_DEBUG true/false Ativa logs/comportamentos de debug no frontend.
ECOSIF_ANGULAR_AUTH_TOKEN token fixo (quando aplicável) Token default para cenários específicos de integração.
ECOSIF_PAGINATION_SIZE ex.: 100 Tamanho padrão de paginação na UI.
ECOSIF_API_BASE_URL URL absoluta, se necessário Base global para APIs quando não usar apenas paths relativos.
ECOSIF_AZURE_CLIENT_ID, ECOSIF_AZURE_TENANT_ID, ECOSIF_AZURE_AUTHORITY valores do Entra ID Habilita autenticação Microsoft/Entra ID.

5.3 Passo a passo de implantação (ecosif-angular)

  1. Obter a imagem Docker do registo (ex.: ECR).

  2. Configurar variáveis de ambiente na task definition (ECS) ou no contentor.

  3. Executar o contentor (porta HTTP do Nginx) e validar health check /health.

  4. Expor o serviço na raiz (path /) no API Gateway ou ALB.

  5. Validar: abrir https://\<domínio> e verificar login.

6. ecosif-auth

6.1 Função e tecnologia

  • Função: Autenticação, emissão e validação de JWT.

  • Stack: Java 17, Spring Boot, Flyway, PostgreSQL.

  • Versão: 0.7.05.202605281 (disoft/ecosif-auth:0.7.05.202605281).

6.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_AUTH_PORT 8080 Porta HTTP do serviço.
ECOSIF_AUTH_CONTEXT_PATH /ecosif-auth Context path para API Gateway/ALB.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Endpoint e credenciais do PostgreSQL Conexão JDBC.
AUTH_TOKEN_SECRET Secret forte e compartilhado Chave JWT (deve ser igual nos módulos Java).
TOKEN_EXPIRATION Ex.: 86400000 Expiração do token em ms.
ECOSIF_CORS URL do frontend Origens permitidas no CORS.
HIBERNATE_DDL_AUTO validate Política de schema Hibernate em produção.
ECOSIF_FLYWAY_ENABLED true na primeira subida Executa migrações Flyway.
ECOSIF_LOGSHOW true/false Habilita saída de logs adicionais.

Variáveis opcionais recomendadas (ecosif-auth)

Variável Como utilizar O que faz
LOG_FORMAT default/json Formato de log no runtime.
ECOSIF_LOGMODE_ROOT, ECOSIF_LOGMODE_SPRING, ECOSIF_LOGMODE_HIBERNATE_SQL, ECOSIF_LOGMODE_HIBERNATE ex.: INFO Níveis de log por categoria.
AUTH2_CLIENT_ID, AUTH2_SECRET credenciais OAuth2 Integração opcional com OAuth2 social/corporativo.
SPRING_AUTOCONFIGURE_EXCLUDE classe de auto-config Ajusta boot de OAuth2 quando necessário.

6.3 Passo a passo de implantação (ecosif-auth)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis na task ECS; segredos via Secrets Manager.

  3. Subir o serviço ECS com Flyway ativo na primeira execução.

  4. Configurar health check: /ecosif-auth/actuator/health.

  5. Mapear /ecosif-auth e /ecosif-auth/{proxy+} no API Gateway.

7. ecosif-masterdata

7.1 Função e tecnologia

  • Função: Gestão de dados mestres (empresas, filiais, fundos e entidades base).

  • Stack: Java 17, Spring Boot, PostgreSQL.

  • Versão: 0.7.05.202605281 (disoft/ecosif-masterdata:0.7.05.202605281).

7.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_MASTERDATA_PORT 8080 Porta HTTP do serviço.
ECOSIF_MASTERDATA_CONTEXT_PATH /ecosif-masterdata Context path da API.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Endpoint e credenciais do PostgreSQL Conexão JDBC.
AUTH_TOKEN_SECRET Mesmo valor do auth Validação JWT.
TOKEN_EXPIRATION Ex.: 86400000 Expiração de token.
ECOSIF_CORS URL frontend CORS do módulo.
HIBERNATE_DDL_AUTO validate Política de schema.
ECOSIF_LOGSHOW true/false Ativa logs adicionais.

Variáveis opcionais recomendadas (ecosif-masterdata)

Variável Como utilizar O que faz
LOG_FORMAT default/json Formato de saída de logs.
ECOSIF_LOGMODE_ROOT, ECOSIF_LOGMODE_SPRING, ECOSIF_LOGMODE_HIBERNATE_SQL, ECOSIF_LOGMODE_HIBERNATE ex.: INFO Níveis de log por categoria.
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION, AWS_S3_BUCKET quando necessário Integração opcional com S3.

7.3 Passo a passo de implantação (ecosif-masterdata)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis de ambiente da task ECS.

  3. Subir serviço ECS após ecosif-auth disponível.

  4. Configurar health check /ecosif-masterdata/actuator/health.

  5. Mapear /ecosif-masterdata e /ecosif-masterdata/{proxy+}.

8. ecosif-moviments

8.1 Função e tecnologia

  • Função: Processamento de lançamentos e movimentações contábeis.

  • Stack: Java 17, Spring Boot, PostgreSQL.

  • Versão: 0.7.05.202605281 (disoft/ecosif-moviments:0.7.05.202605281).

8.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_MOVIMENTS_PORT 8080 Porta HTTP do serviço.
ECOSIF_MOVIMENTS_CONTEXT_PATH /ecosif-moviments Context path da API.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Endpoint e credenciais do PostgreSQL Conexão JDBC.
AUTH_TOKEN_SECRET Mesmo valor do auth Validação JWT.
TOKEN_EXPIRATION Ex.: 86400000 Expiração de token.
ECOSIF_CORS URL frontend CORS do módulo.
HIBERNATE_DDL_AUTO validate Política de schema.
ECOSIF_LOGSHOW true/false Ativa logs adicionais.
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION, AWS_S3_BUCKET Quando houver integração de arquivos Integração S3/AWS.

Variáveis opcionais recomendadas (ecosif-moviments)

Variável Como utilizar O que faz
ECOSIF_ENVIRONMENT dev/hml/qas/prd Identificação de ambiente na aplicação.
LOG_FORMAT default/json Formato de logs.
ECOSIF_LOGMODE_ROOT, ECOSIF_LOGMODE_SPRING, ECOSIF_LOGMODE_HIBERNATE_SQL, ECOSIF_LOGMODE_HIBERNATE ex.: INFO Níveis de log por categoria.

8.3 Passo a passo de implantação (ecosif-moviments)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis de ambiente da task ECS.

  3. Subir serviço ECS após auth e masterdata.

  4. Configurar health check /ecosif-moviments/actuator/health.

  5. Mapear /ecosif-moviments e /ecosif-moviments/{proxy+}.

9. ecosif-querys

9.1 Função e tecnologia

  • Função: Consultas e leitura de dados operacionais/contábeis.

  • Stack: Java 17, Spring Boot, PostgreSQL.

  • Versão: 0.7.05.202605281 (disoft/ecosif-querys:0.7.05.202605281).

9.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_QUERYS_PORT 8080 Porta HTTP do serviço.
ECOSIF_QUERYS_CONTEXT_PATH /ecosif-querys Context path da API.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Endpoint e credenciais do PostgreSQL Conexão JDBC.
AUTH_TOKEN_SECRET Mesmo valor do auth Validação JWT.
TOKEN_EXPIRATION Ex.: 86400000 Expiração de token.
ECOSIF_CORS URL frontend CORS do módulo.
HIBERNATE_DDL_AUTO validate Política de schema.
ECOSIF_LOGSHOW true/false Ativa logs adicionais.

Variáveis opcionais recomendadas (ecosif-querys)

Variável Como utilizar O que faz
LOG_FORMAT default/json Formato de logs.
ECOSIF_LOGMODE_ROOT, ECOSIF_LOGMODE_SPRING, ECOSIF_LOGMODE_HIBERNATE_SQL, ECOSIF_LOGMODE_HIBERNATE ex.: INFO Níveis de log por categoria.
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION, AWS_S3_BUCKET quando necessário Integração opcional com AWS/S3.

9.3 Passo a passo de implantação (ecosif-querys)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis de ambiente na task ECS.

  3. Subir serviço ECS após moviments.

  4. Configurar health check /ecosif-querys/actuator/health.

  5. Mapear /ecosif-querys e /ecosif-querys/{proxy+}.

10. ecosif-reports

10.1 Função e tecnologia

  • Função: Geração e disponibilização de relatórios.

  • Stack: Java 17, Spring Boot, PostgreSQL.

  • Versão: 0.7.05.202605281 (disoft/ecosif-reports:0.7.05.202605281).

10.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_REPORTS_PORT 8080 Porta HTTP do serviço.
ECOSIF_REPORTS_CONTEXT_PATH /ecosif-reports Context path da API.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD Endpoint e credenciais do PostgreSQL Conexão JDBC.
AUTH_TOKEN_SECRET Mesmo valor do auth Validação JWT.
TOKEN_EXPIRATION Ex.: 86400000 Expiração de token.
ECOSIF_CORS URL frontend CORS do módulo.
HIBERNATE_DDL_AUTO validate Política de schema.
ECOSIF_LOGSHOW true/false Ativa logs adicionais.
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION, AWS_S3_BUCKET Quando houver bucket de relatórios Integração S3/AWS.

Variáveis opcionais recomendadas (ecosif-reports)

Variável Como utilizar O que faz
LOG_FORMAT default/json Formato de logs.
ECOSIF_LOGMODE_ROOT, ECOSIF_LOGMODE_SPRING, ECOSIF_LOGMODE_HIBERNATE_SQL, ECOSIF_LOGMODE_HIBERNATE ex.: INFO Níveis de log por categoria.

10.3 Passo a passo de implantação (ecosif-reports)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis de ambiente na task ECS.

  3. Subir serviço ECS após querys.

  4. Configurar health check /ecosif-reports/actuator/health.

  5. Mapear /ecosif-reports e /ecosif-reports/{proxy+}.

11. ecosif-compliance

11.1 Função e tecnologia

  • Função: Execução de regras e validações de conformidade.

  • Stack: Python, Flask, Gunicorn, PostgreSQL.

  • Versão: 0.7.05.202605280 (disoft/ecosif-compliance:0.7.05.202605280).

11.2 Variáveis de ambiente

Variável Como utilizar O que faz
ECOSIF_COMPLIANCE_PORT 8021 (ou 8080) Porta HTTP do serviço.
ECOSIF_COMPLIANCE_CONTEXT /ecosif-compliance Context path da API.
ECOSIF_DB_SERVER, ECOSIF_DB_PORT, ECOSIF_DB_LOGIN, ECOSIF_DB_USER, ECOSIF_DB_PASSWORD Endpoint e credenciais banco Conexão do módulo compliance.
ECOSIF_CORS URL frontend CORS do módulo.
ECOSIF_RUNTIME_ENVIRONMENT dev/hml/qas/prd Ambiente de execução.
ECOSIF_LOGMODE_ROOT INFO Nível de log principal.
ECOSIF_DEBUG_MODE false Debug da aplicação.

Variáveis opcionais recomendadas (ecosif-compliance)

Variável Como utilizar O que faz
ECOSIF_HOST_ADDRESS 0.0.0.0 Endereço de bind do serviço.
ECOSIF_SESSION_TIMEOUT ex.: 30 Timeout de sessão da aplicação.
POSTGRES_HOST, POSTGRES_PORT, POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD aliases de conexão Pode substituir ECOSIF_DB_* conforme entrypoint.

11.3 Passo a passo de implantação (ecosif-compliance)

  1. Obter imagem Docker do registo.

  2. Configurar variáveis de ambiente na task ECS.

  3. Subir task/service do compliance.

  4. Configurar health check /health.

  5. Mapear /ecosif-compliance e /ecosif-compliance/{proxy+}.

  6. No frontend, definir ECOSIF_ANGULAR_API_COMPLIANCE_URL=/ecosif-compliance.

12. ecosif-automations (Lambda + SQS)

12.1 Função e tecnologia

  • Função: Processamento da importação IPL e consolidação por pipeline assíncrono.

  • Stack: Python em AWS Lambda, SQS, S3 e Secrets Manager.

  • Versão: 0.7.05.202605280 (pacote ZIP em https://ftp.disoft.com.br/ecosif/aws/).

O ecosif-automations não roda como ECS Service em produção AWS.

12.2 Variáveis de ambiente

Variável Como utilizar O que faz
APP_ENV dev/hml/qas/prd Ambiente lógico do automations.
AWS_REGION, AWS_DEFAULT_REGION Ex.: us-west-1 Região de operação dos serviços AWS.
AWS_S3_BUCKET, AWS_S3_BUCKET_NAME Bucket de importação Origem/destino de arquivos da automação.
AWS_SQS_ENTRIES_QUEUE_URL URL da fila entries Encadeia processamento de entries.
AWS_SQS_CONSOLIDATION_QUEUE_URL URL da fila FIFO de consolidação Encadeia consolidação final.
AWS_SQS_CONSOLIDATION_DEFER_QUEUE_URL URL da fila defer Suporte à consolidação diferida.
ECOSIF_API_BASE_URL URL base interna das APIs Comunicação com módulos HTTP do ecossistema.
ECOSIF_API_URL_MODE alb (ex.) Modo de composição de URLs.
ECOSIF_DB_SECRET ARN de secret de banco Credenciais de BD por segredo.
ECOSIF_AUTOMATIONS_SERVICE_SECRET ARN de secret de serviço Segredo de autenticação interna do módulo.
CT32_MASTER_KEY CT32.LD Arquivo de referência obrigatório para importação.
CONSOLIDATION_DEFER_ENABLED false Ativa/desativa defer.
CONSOLIDATION_DEBOUNCE_SEC, CONSOLIDATION_MAX_WAIT_SEC 60 Janela de consolidação diferida.
CONSOLIDATION_WINDOW_TABLE, CONSOLIDATION_LOCK_TABLE nomes por ambiente Controle de janela e lock de consolidação.

Variáveis opcionais recomendadas (ecosif-automations)

Variável Como utilizar O que faz
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN usar quando não houver role IAM Credenciais explícitas para SDK AWS.
AWS_S3_ERROR_FILES_FOLDER, AWS_S3_IMPORTED_FILES_FOLDER, AWS_S3_REPORTS_DETAILS_FOLDER ajustar prefixes conforme operação Organização de arquivos e relatórios detalhados no bucket.
LAMBDA_RUNTIME, LAMBDA_TIMEOUT, LAMBDA_MEMORY_SIZE documentação operacional por ambiente Referência de runtime para padronização dos handlers.

12.3 Passo a passo de implantação (ecosif-automations)

  1. Baixar o pacote da release:
export ZIP\_URL="https://ftp.disoft.com.br/ecosif/aws/ecosif-automations-0.7.05.202605280.zip"  
export ZIP\_FILE="ecosif-automations-0.7.05.202605280.zip"  
curl -fL "$ZIP\_URL" -o "$ZIP\_FILE"  
unzip -t "$ZIP\_FILE"
  1. Criar filas SQS e DLQ:
export AWS\_REGION=us-west-1  
export ACCOUNT\_ID=123456789012  
export PROJECT=ecosif  
export ENV=dev  
export PREFIX="$\{PROJECT\}-$\{ENV\}-automations"  

aws sqs create-queue --region "$AWS\_REGION" --queue-name "$\{PREFIX\}-entries-dlq"  
aws sqs create-queue --region "$AWS\_REGION" --queue-name "$\{PREFIX\}-consolidation-dlq"  
aws sqs create-queue --region "$AWS\_REGION" --queue-name "$\{PREFIX\}-consolidation-defer-dlq"
  1. Criar Lambdas:
aws lambda create-function \\  
  --region "$AWS\_REGION" \\  
  --function-name "$\{PROJECT\}-$\{ENV\}-automations-import" \\  
  --runtime python3.11 \\  
  --handler src.handlers.import\_handler.lambda\_handler \\  
  --zip-file "fileb://$\{ZIP\_FILE\}" \\  
  --role "arn:aws:iam::$\{ACCOUNT\_ID\}:role/ecosif-$\{ENV\}-lambda-execution-role" \\  
  --timeout 120 \\  
  --memory-size 512 \\  
  --environment file://import-env.json
  1. Repetir criação para entries e consolidation com os handlers corretos.

  2. Mapear filas para Lambdas:

aws lambda create-event-source-mapping \\  
  --region "$AWS\_REGION" \\  
  --function-name "$\{PROJECT\}-$\{ENV\}-automations-entries" \\  
  --event-source-arn "\<entries-queue-arn\>" \\  
  --batch-size 1 \\  
  --enabled
  1. Repetir o mapeamento para consolidation.

  2. Configurar trigger S3 (opcional/recomendado):

aws lambda add-permission \\  
  --region "$AWS\_REGION" \\  
  --function-name "$\{PROJECT\}-$\{ENV\}-automations-import" \\  
  --statement-id "allow-s3-invoke-import" \\  
  --action "lambda:InvokeFunction" \\  
  --principal s3.amazonaws.com \\  
  --source-arn "arn:aws:s3:::ecosif-$\{ENV\}-import-$\{ACCOUNT\_ID\}"
  1. Validar funções e logs:
aws lambda get-function-configuration --region "$AWS\_REGION" --function-name "$\{PROJECT\}-$\{ENV\}-automations-import"  
aws logs tail "/aws/lambda/$\{PROJECT\}-$\{ENV\}-automations-import" --follow --region "$AWS\_REGION"

13. Implementação na AWS (ECS, API Gateway, Lambda, SQS)

13.1 ECS + API Gateway (módulos HTTP)

  • um serviço ECS por módulo HTTP

  • roteamento por path no API Gateway para ALB/integração de cada serviço

  • TLS final no domínio customizado do API Gateway (ACM)

13.2 Domínio e certificado

  1. Criar certificado ACM (validação DNS)

  2. Criar domínio customizado no API Gateway

  3. Associar API e stage

  4. Configurar DNS (Route53 ou externo)

13.3 Automations

  • executar Lambda + SQS + S3

  • sem ECS Service

  • usar template de referência ou comandos CLI do item 12