Skip to main content

Worker Automate HUB é uma aplicação para automatizar rotinas de RPA nos ambientes Argenta.

Project description

Application Template Repository

Este repositório tem como objetivo servir como base para qualquer projeto novo dentro das empresas SIM.

Pastas:

  • [.github] - Arquivos com workflows de automações de build, deploy e publish de artefatos (separado em diferentes tipos de aplicações e diferentes estratégias de versionamento).
  • [Docker] - Arquivos Dockerfile padrões da empresa para build das aplicações (separados em stack que são trabalhadas na empresa).
  • [gitignore] - Arquivos .gitignore padrões da empresa para evitar o versionamento de arquivos e pastas no Github (separados em stack que são trabalhadas na empresa).
  • [K8S] - Arquivos YAML utilizados para deploy da imagem docker final da aplicação dentro do ambiente Kubernetes da empresa (separado em diferentes tipos de aplicações e diferentes estratégias de versionamento).

Padrão de entrega de APIs

Esse padrão pode ser seguido em todas linguagens.

Endpoint de Health

Deve ser criado um endpoint para verificar o status da API e conferir rapidamente se ela não está com algum problema, como por exemplo conexão com banco de dados. Este endpoint deve ser público

Exemplo de retorno de positivo:

{
  "healthy": true,
  "report": {
    "lucid": {
      "displayName": "Database",
      "health": {
        "healthy": true,
        "message": "All connections are healthy"
      },
      "meta": [
        {
          "connection": "pg",
          "message": "Connection is healthy",
          "error": null
        }
      ]
    }
  }
}

Exemplo de falha com conexão com banco:

{
  "healthy": false,
  "report": {
    "lucid": {
      "displayName": "Database",
      "health": {
        "healthy": false,
        "message": "One or more connections are not healthy"
      },
      "meta": [
        {
          "connection": "pg",
          "message": "Unable to reach the database server",
          "error": {
            "name": "KnexTimeoutError",
            "sql": "SELECT 1 + 1 AS result"
          }
        }
      ]
    }
  }
}

Padronização de Rotas

Cada API deve possui um path próprio para as rotas de seus endpoints. N|Solid

Exemplo:

  • API Pagamento
https://localhost:1234/pagamento/health

Variáveis de Ambiente

Todas variáveis críticas devem ser armazenadas dentro do arquivo separado para poderem ser alteradas sem afetar o funcionamento da aplicação durante o processo de deploy.

Exemplo: Arquivo .env em APIs com Nodejs

Tratamento de Exceptions

Todos erros retornados pela API devem ser tratados para assim evitar que os retornos contenham informações internas sobre a aplicação.

Segurança

Todas as APIs devem implementar alguma técnologia de autenticação em seus endpoints, ou seja, não podem ser públicas. Priorizar a utilização de métodos ja implementados pelo time da empresa (caso tenha dúvida consulte o responsável técnico do seu projeto)

Entrega Final

A entrega final de todos artefatos devem ser uma imagem docker, ou seja, deve ser disponibilizado no repositório de cada projeto um dockerfile e um .dockerignore para fazer o processo de build do projeto em questão.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

worker_automate_hub-0.2.1b0.tar.gz (2.5 kB view hashes)

Uploaded Source

Built Distribution

worker_automate_hub-0.2.1b0-py3-none-any.whl (3.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page