Skip to content

Commit

Permalink
incluindo doc sobre a configuracao do ambiente
Browse files Browse the repository at this point in the history
  • Loading branch information
esteerlino committed Apr 8, 2024
1 parent 4bc8068 commit 391cff8
Show file tree
Hide file tree
Showing 4 changed files with 152 additions and 12 deletions.
7 changes: 2 additions & 5 deletions docs/_sidebar.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,11 @@
- [Backlog do Produto](/visao_geral/backlog.md)
- [Roadmap do Produto](/visao_geral/roadmap.md)

<!--- [Dados Necessários](/visao_geral/dados_necessarios.md)-->
**Ambiente**

- [Configurando o ambiente](/ambiente/configuracao_ambiente.md)

<!--**Produto**
- [Backlog do Produto](/produto/backlog.md)
- [Mínimo Produto Viável](/produto/mvp.md)
- [Roadmap](/produto/roadmap.md)
- [Protótipo Visual](/produto/prototipo-visual.md)-->

**Equipe**
Expand Down
145 changes: 145 additions & 0 deletions docs/ambiente/configuracao_ambiente.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
# Configurando o ambiente

## Introdução
Este documento foi criado pelo Giulio em parceria com a nossa equipe, responsável pela evolução do Querido Diário.

O QD usa podman para sua infra. Para criar um ambiente onde todos os containers dos repos possam se comunicar, vamos começar montando um ambiente que possibilite toda essa integração.

## Repositório do querido-diario-data-processing

1. Execute

```
make build
```
2. No Makefile, mude a variável FULL_PROJECT para true
3. Execute

```
make setup
```
4. Para resolver o problema com o Apache Tike, execute os comandos abaixo:
```
podman image rm --force localhost/okfn-brasil/querido-diario-apache-tika-server
podman pull ghcr.io/okfn-brasil/querido-diario-apache-tika-server:latest
make apache-tika-server
```

#### Agora o pod foi criado, assim como vários recursos como Opensearch, Postgres e Minio. Porém, eles ainda estão vazios. Vamos populá-los.

## Repositório do querido-diario(raspadores)

1. Copie local.env do repo querido-diario para .env
2. Configure o ambiente de desenvolvimento do repo querido-diario
```
python3 -m venv .venv
source .venv/bin/activate
pip install --no-deps -r data\_collection/requirements-dev.txt
sudo apt-get install pre-commit
```
3. Execute um raspador no repo querido-diario, por exemplo
```
scrapy crawl rn_natal -a start_date=2024-03-01
```
4. Execute no repo querido-diario-data-processing
```
make re-run
```

#### Agora temos arquivos, tabelas e índices populados. Podemos habilitar a API.

## Repositório do querido-diario-api

1. Execute
```
make build
```
2. Execute
```
make re-run
```

#### Com a API disponível, podemos iniciar o backend local

## Repositório do querido-diario-backend

1. Configure o ambiente de desenvolvimento do repo querido-diario-backend
```
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements-dev.txt
python -m cli setup --pod-name querido-diario --migrate --superuser
```
2. Faça o cadastro do superuser como pedido.

#### Com o backend disponível, o frontend que usa API e backend locais também pode ser configurado.

## Repositório do querido-diario-frontend

1. Aplique esse patch no repo querido-diario-frontend

```
diff --git a/src/app/constants.ts b/src/app/constants.ts
index 97c93b5..7e38851 100644
--- a/src/app/constants.ts
+++ b/src/app/constants.ts
@@ -1 +1 @@
-export const API = 'https://queridodiario.ok.org.br/api';
\ No newline at end of file
+export const API = 'http://localhost:8080';
diff --git a/src/app/services/gazette/gazette.service.ts b/src/app/services/gazette/gazette.service.ts
index 723f629..16948b2 100644
--- a/src/app/services/gazette/gazette.service.ts
+++ b/src/app/services/gazette/gazette.service.ts
@@ -77,7 +77,7 @@ export class GazetteService {
queryParams = { ...queryParams, size: pagination.size, offset: pagination.offset };
const encodedQueryString = new URLSearchParams(queryParams).toString();
- const url = new URL( /api/gazettes?${encodedQueryString}${territoryQuery} , https://queridodiario.ok.org.br ).toString();
+ const url = new URL( /gazettes?${encodedQueryString}${territoryQuery} , http://localhost:8080 ).toString();
return this.http.get<GazetteResponse>(url).pipe(
map((res: GazetteResponse) => {
diff --git a/src/app/services/utils/index.ts b/src/app/services/utils/index.ts index f952336..b6164c8 100644
--- a/src/app/services/utils/index.ts
+++ b/src/app/services/utils/index.ts
@@ -1 +1 @@
-export const educationApi = 'https://backend-api.queridodiario.ok.org.br/api/';
+export const educationApi = 'http://localhost:8000/api/';
```

2. Execute o ambiente de desenvolvimento
```
Pronto! Agora o ambiente está todo configurado.
# Usando o ambiente
Algumas maneiras úteis de usar o ambiente de desenvolvimento:
1. Quer acessar o banco postgres para ver registros de diários oficiais, usuários do backend, etc.?<br>
Execute "make shell-database" no repo querido-diario-data-processing e estará na linha de comando psql.
2. Quer acessar o motor de busca para ver os índices textuais de diários e excertos temáticos?<br>
Execute "curl -k -u admin:admin -X GET "localhost:9200/\_cat/indices?v&pretty=true"
> Outros endpoints funcionarão igualmente de acordo com a documentação do opensearch.
3. Quer acessar o sistema de arquivos para ver onde foram baixados?<br>
Acesse localhost:9000 com as credenciais localizadas no envvars do repo querido-diario- data-processing.
4. Quer baixar mais arquivos de diários e processá-los?<br>
Execute outro scrapy crawl no repo querido-diario e então execute make re-run no querido-diario-data-processing novamente.
5. No frontend o live reload está habilitado e na API e backend não. Como checar as mudanças?<br>
Na API, execute make re-run novamente. No backend, execute python -m cli setup -- pod-name querido-diario.
6. Como acessar a documentação da API?<br>
Acesse localhost:8080/docs.
7. Como acessar o painel de admin do backend?<br>
Acesse localhost:8000/api/admin com as credenciais de superuser criadas anteriormente.
## Histórico de versão
| Versão | Data | Descrição | Responsáveis | Revisor |
| :----: | :--------: | :---------------------------------------: | :------------------------------------------------------------------------------------------: | :---------------------------------------------: |
| 1.0 | 08/04/2024 | Criação da estrutura do documento | [Ester Lino](https://github.com/esteerlino) | [Raissa Oliveira](https://github.com/raissamsoliveira) |
12 changes: 5 additions & 7 deletions docs/visao_geral/backlog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,15 @@ Este documento mostra as funcionalidades propostas no projeto, descrevendo-as de

| Épico | Funcionalidade | História de Usuário |
| :---: | :--------: | :--------------------------------------- |
| **(E1)** Downloads | **(F1)** Fazer download de excertos para arquivo .csv | **(US-1)** *Eu, como usuário, gostaria de selecionar os excertos que aparecem a partir da minha busca para fazer o download no Portal Educação.* |
| | | **(US-2)** *Eu, como jornalista, gostaria de selecionar os excertos que aparecem a partir da minha busca para fazer o download.* |
| | **(F2)** Fazer download de arquivos .txt agregados | **(US-3)** *Eu, como desenvolvedor, gostaria de ter um ponto de acesso na API para listagem de URLs de arquivos de diários agregados e compactados por data e localidade.* |
| | | **(US-4)** *Eu, como usuário, gostaria de baixar arquivos agregados de um período (ano) por localização (cidade e estado).* |
| | | **(US-5)** *Eu, como jornalista, gostaria de baixar arquivos agregados de um período (ano) por localização (cidade e estado) no Portal Educação.* |

| **(E1)** Downloads | **(F1)**<br> Fazer download de excertos para arquivo .csv | <p align="justify">**(US-1)** *Eu, como usuário, gostaria de selecionar os excertos que aparecem a partir da minha busca para fazer o download no Portal Educação.* |
| | | <p align="justify">**(US-2)** *Eu, como jornalista, gostaria de selecionar os excertos que aparecem a partir da minha busca para fazer o download.*</p> |
| | **(F2), (F3) e (F4)**<br> Fazer download de arquivos .txt agregados | <p align="justify">**(US-3)** *Eu, como usuário, gostaria de baixar arquivos agregados de um período (ano) por localização (cidade e estado).</p>* |


## Histórico de Versão

| Versão | Data | Descrição | Responsáveis | Revisor |
| :----: | :--------: | :---------------------------------------: | :------------------------------------------------------------------------------------------: | :---------------------------------------------: |
| 1.0 | 04/04/2024 | Criação da página "Backlog do Produto" | [Cristian Furtado](https://github.com/csafurtado) e [Pedro Cabeceira](https://github.com/pkbceira03) | [Wildemberg Sales](https://github.com/wildemberg-sales) |
| 1.1 | 04/04/2024 | Correção de US's do artefato | [Wildemberg Sales](https://github.com/wildemberg-sales) | [Cristian Furtado](https://github.com/csafurtado) |
| 1.1 | 04/04/2024 | Correção de US's do artefato | [Wildemberg Sales](https://github.com/wildemberg-sales) | [Cristian Furtado](https://github.com/csafurtado) |
| 1.2 | 08/04/2024 | Correção de US's | [Ester Lino](https://github.com/esteerlino), [Wildemberg Sales](https://github.com/wildemberg-sales) | [Cristian Furtado](https://github.com/csafurtado) |
Empty file.

0 comments on commit 391cff8

Please sign in to comment.