@captalys-platform/datadog-production-kit

1.1.3 • Public • Published

Datadog Production Kit

Conjunto de pacotes para implementar o Datadog em um projeto front-end do time de Engenharia de Interfaces na Captalys.

Este pacote faz parte do kit de dependências de produção.

Kit de dependências

Os kits de dependências foram criados para centralizar os pacotes utilizados nos projetos de front-end e facilitar a atualização de versão dos mesmos, além de reduzir o dependency hell, que acontece quando pacotes diferentes dependem de um mesmo pacote, mas em versões diferentes. Isso cria um ciclo onde um upgrade pode resolver um problema de compatibilidade, mas criar outro, que se resolvido, volta a causar o primeiro problema. Centralizando as bibliotecas, conseguimos mapear e rastrear melhor qual versão podemos manter das dependências para que a aplicação siga estável.


Utilização

Instalando as dependências

Para instalar os pacotes, rodar na raiz do projeto:

npm install @captalys-platform/datadog-production-kit

ou

yarn @captalys-platform/datadog-production-kit

Importante: Todos os kits devem ser instalados na mesma versão para evitar incompatibilidades.

Como configurar o serviço com Typescript e ESLint

Basta adicionar a seguinte regra dentro do objeto rules do arquivo .eslintrc.js:

module.exports = {
  rules: {
    'import/no-extraneous-dependencies': [
      'error',
      {
        devDependencies: true,
        packageDir: [
          './', 
          'node_modules/@captalys-platform/datadog-production-kit/'
        ]
      },
    ],
  },
};

No caso de um monorepo, deve-se atentar se a biblioteca foi instalada para todo o workspace ou apenas para um projeto específico, alterando o caminho acima de acordo com a localização correta da instalação da biblioteca. No caso de caminhos complexos, recomenda-se utilizar a biblioteca path:

const path = require('path');

module.exports = {
  rules: {
    'import/no-extraneous-dependencies': [
      'error',
      {
        devDependencies: true,
        packageDir: [
          path.resolve(__dirname),
          path.resolve(__dirname, '..', '..', 'node_modules/@captalys-platform/datadog-production-kit'),
        ],
      },
    ],
  },
};

Desenvolvimento

Fluxo de desenvolvimento

  1. Partindo da branch staging, criamos uma nova branch com o comando git checkout -b <nome-da-nova-branch>

    ⚠️ Lembrando que o nome da branch deve conter o prefixo da atividade que estamos fazendo, podendo ser fix, que representa a correção de um bug, feature que representa a adição de uma nova funcionalidade ou housekeeping, que representa alguma refatoração de código. Após o prefixo, adicionamos o character /, seguido do número da atividade gerado pelo Jira.

    Exemplo: fix/INTJOV-140

  2. Após o desenvolvimento é necessário realizar o commit. É recomendável utilizar o comando git add -p, que ajudará a selecionar as porções de códigos referentes à cada commit.

  3. Após selecionar as porções de código, utilizar o comando git commit -m <titulo-do-commit>. Repita a operação até que todo o código esteja dentro de algum commit.

  4. Antes de finalizar, executar yarn log para gerar o changelog, preenchendo as informações referentes às mudanças realizadas. Ao finalizar, realize o commit do arquivo de log utilizando git add . e git commit -m <titulo-do-commit>.

  5. Quando todos os commit estiverem prontos, subir a tarefa no repositório remoto com o comando git push origin <nome-da-branch>.

    ℹ️ Para mais informações sobre boas práticas no uso do Git, clique aqui

  6. Abrir um Pull Request (PR) para staging. Para isso, basta utilizar o link gerado no final do processo do comando anterior ou seguir os passos do seguinte link.

    ⚠️ Não se esqueça de utilizar o template definido no campo description, preencha todos os campos e indique duas pessoas para realizar o code review.

Style-guide

O guia de estilos deste projeto pode ser encontrado neste link.

Tarefas e prioridades

O board de tarefas pode ser encontrado nesse link. As tarefas geralmente são ordenadas por ordem de prioridade, considerando o topo como mais prioritárias. Entretanto é importante estar atento na propriedade prioridade de cada tarefa e nas reuniões de planejamento para estar atento às prioridades do projeto.


Dúvidas

Caso persistam as dúvidas, é possível buscar por informações na documentação do confluence.

Licença

© 2022 Captalys - Todos os direitos reservados.

Readme

Keywords

none

Package Sidebar

Install

npm i @captalys-platform/datadog-production-kit

Weekly Downloads

0

Version

1.1.3

License

ISC

Unpacked Size

6.58 kB

Total Files

12

Last publish

Collaborators

  • poligono
  • laos