@abler/ats-front-resources-api
TypeScript icon, indicating that this package has built-in type declarations

4.3.0-components • Public • Published

ats-front-resources-api

Pré requisito

Clone do projeto

Escolha uma pasta onde vai ficar o projeto e execute o seguinte comando

git clone git@github.com:Abler-Recrutamento-Digital/ats-front-resources-api.git

Clone será feito por SSH

Comandos de instalação e configuração

Dentro da pasta do projeto, executar os seguintes comandos:

yarn add @abler/ats-front-resources-api

Obs: Este pacote é responsável por fornecer a lógica de negócios e os recursos de infraestrutura para os projetos ATS Frontend da Abler.

yarn
yarn link
rake candidate_setup

Obs: se algo deu errado, exclua a pasta~/.ats/ats-front-candidate/

rake company_setup

Obs: se algo deu errado, exclua a pasta~/.ats/ats-front-company/

Compilar e acessar o projeto

Na pasta do projeto, executar o seguinte comando:

Pra compilar a área de empresas:

yarn dev-company

Pra compilar a área de candidatos:

yarn dev-candidate

Acessar ambientes:

Para o acesso a plataforma de empresas será necessário uma configuração a mais que será mostrado no passo seguinte

Passos para acessar a plataforma de empresas

Vamos utilizar o Nubank como exemplo, mas pode ser feito com qualquer uma.

  • Primeiro deve acessar a plataforma admin com o seu login que criou quando fez a configuração do monolito.

  • Após faz o login deve ir na opção funcionalidades(quinta opção da sidebar).

  • Procurar a opção "Nova plataforma de empresas" e clicar em configurar

  • Na seção empresas configuradas, inserir o texto Nubank e clicar no botão de Adicionar

Após esses passos vc conseguirá acessar a plataforma pelo link http://nubank.lvh.localhost:3002/app/sign-in, mas para fazer o login é necessário alterar a senha de um usuário e isso será feito da seguinte forma:

  • Acessar a pasta do monolito e rodar o comando rails c

  • Acessar informações do primeiro usuário do nubank -> Company.find(402).company_users.first. É utilizado o 402 pois, é o código do Nubank na plataforma.

  • Alterar a senha do primeiro usuário do nubank -> Company.find(402).company_users.first.update_attribute('password', 'nova-senha')

Agora irá conseguir fazer o login no link http://nubank.lvh.localhost:3002/app/sign-in utilizando o e-mail admin@nubank.com.br e a senha que alterou no passo anterior.

Outros comandos

Configure o servidor e instale as dependências:

yarn setup

Inicie o servidor de API:

yarn server

Para fazer build do código:

yarn build

Vincule o pacote local:

yarn link

Executar o lint:

yarn lint

Execute todos os testes:

yarn test

Gerador de código:

yarn plop

Publicar código do pacote:

yarn publish

Outros comandos do ambiente de desenvolvimento:

rake

Estrutura de pastas e arquivos

Aqui está descrita a estrutura de pastas adotada para este pacote.

├── src                                       - Folder with source
│   ├── Application                           - Folder with implementation of bounded context abstraction
|   │   └── Bounded Context                   - Folder with delimited context name
|   │       └── Version                       - Folder with delimited context version application
|   │           └── Domain                    - Folder with domain name
│   ├── BoundedContext                        - Folder with bounded context abstraction
|   │   └── Bounded Context                   - Folder with delimited context name
|   │       └── Domain                        - Folder with domain name
|   │           ├── Use Case                  - Folder with domain use cases
|   │           │   └── Command.ts            - Implementing a use case command
|   │           └── Repository.ts             - Abstract domain repository
│   ├── Domain                                - Folder with domain layer
|   │   ├── Aggregate                         - Folder with domain aggregates
|   │   ├── Authentication                    - Folder with domain authentication
|   │   └── Entity                            - Folder with domain entity
|   │   └── ValueObject                       - Folder with domain value objects
│   └── Infrastructure                        - Folder with infrastructure layer
|       ├── Assets                            - Folder with assets files
|       ├── DataMapper                        - Folder with data mappers from api
|       ├── Nuxt                              - Folder with nuxt UI implmentation
|       ├── Support                           - Folder with support classes
|       └── Vue                               - Folder with vue tools consuming application layer
├── tools                                     - Folder with required projects and tools
|   ├── client                                - Folder with client applications
|   ├── plop                                  - Folder with plop
|   │   ├── Templates                         - Folder with plop templates
|   │   └── plopfile.ts                       - Plop config
|   └── server                                - Folder with Application layouts
|       ├── .env                              - Ats-monolith env
|       ├── backend.backup                    - Ats-monolith backup
|       └── docker-compose.yml                - Docker-composer with required containers
├── .eslintignore                             - Eslint ignore files
├── .eslintrc.js                              - EsLint config file
├── .gitignore                                - Git ignore files
├── .npmignore                                - Npm ignore files
├── *.d.ts                                    - Types config from typescript
├── jest.config.js                            - Test config
├── package.json                              - Dependencies and scripts
├── Rakefile                                  - Rake tasks
├── README.md                                 - This file
├── tsconfig.json                             - Typescript configuration
└── yarn.lock                                 - Dependencies lock versions

Instruções de deploy

Requisitos:

  • Permissão no github para fazer push dev e master/main
  • Ter um usuário no npmjs (solicitar ao Guizão))
  • Atenção: Todos os testes e lint devem passar, caso contrário, o CI/CD falhará

Passos:

  • yarn publish - Isso solicitará a nova versão do projeto. Será necessário usar o usuário npmjs e uma senha de uso único que será enviada para o seu e-mail da Abler
  • git push - Para definir a nova versão no repositório Github
  • yarn client-upgrade-resources - Ele obterá a última versão do pacote de recursos e definirá os projetos e enviará para dev
    • Se for necessário atualizar apenas um projeto. Usar candidate-upgrade-resources ou company-upgrade-resources
  • Deploy em produção Abrir Pull Request de dev para master no projeto de candidatos e projeto de empresa

Dependencies (43)

Dev Dependencies (32)

Package Sidebar

Install

npm i @abler/ats-front-resources-api

Weekly Downloads

1,074

Version

4.3.0-components

License

MIT

Unpacked Size

24.1 kB

Total Files

18

Last publish

Collaborators

  • vitor.alves99
  • matiasleites
  • ovini
  • dhouglas
  • renang
  • ablerdev