dg:Workflow: mudanças entre as edições
m (→Aprovação) |
Sem resumo de edição |
||
Linha 1: | Linha 1: | ||
= | == Ingestão == | ||
* Devido à ''hardcoding'', qualquer base <code>ingest</code> [https://github.com/digital-guard/preserv/blob/main/src/ingest-step1-ini.sql#L21 depende] da <code>dl05s_main</code>. | |||
* Vamos usar apenas a base <code>ingest1</code>, e não adulterar mais nada no servidor. | |||
* É possível trocar <code>ingest1</code> por outra com os devidos cuidados e parametrizações. | |||
=== Preparo do ambiente e da base === | |||
=== Gerar os arquivos | <syntaxhighlight lang="sh">cd /var/gits/_a4a/pg_pubLib-v1 | ||
git pull | |||
cd /var/gits/_dg/preserv/src | |||
git pull | |||
make fix_permissions # vai solicitar sudor | |||
make # vai listar as opções | |||
make ini_ingest pg_db=ingest1 # cria base ingest1</syntaxhighlight> | |||
=== Preparo do processo de ingestão === | |||
<syntaxhighlight lang="sh"> | |||
make fix_permissions # vai solicitar sudor | |||
cd /var/gits/_dg/preserv-BR/src | |||
git pull | |||
make # vai listar as opções | |||
make all # copia makefile inicial em todos pacotes de dados | |||
cd /var/gits/_dg/preserv-BR/data/ | |||
ls # vamos seguir a ordem alfabética | |||
</syntaxhighlight> | |||
=== Exemplo do pk42.01 === | |||
Verificando a situação no filesystem: | |||
<syntaxhighlight lang="sh">make fix_permissions # vai solicitar sudor | |||
cd /var/gits/_dg/preserv-BR/data/ | |||
ls AC/RioBranco/_pk0042.01/ | |||
grep "^42" donor.csv | |||
grep ",42,1" donatedPack.csv | |||
pushd AC/RioBranco/_pk0042.01/ | |||
more sha256sum.txt | |||
grep file make_conf.yaml | |||
# ... até aqui foi só conferir se batem IDs, hashes e títulos | |||
more make_conf.yaml | |||
# detectamos problemas por ser antigo: falta licença, faltam file sizes, etc. | |||
make me # para a ingest indicada em commomFirst.yaml ou make me pg_db=ingestXX para uma ingest diferente. | |||
# Idem para qualquer target em preserv-BR | |||
# .. responder senhas ENTERs etc. | |||
make all_layers | |||
make all_joins # se existir a necessidade.</syntaxhighlight> | |||
=== Exemplo do pk0004.01 (OpenStreetMap) === | |||
<syntaxhighlight lang="sh">make fix_permissions # vai solicitar sudor | |||
pushd /var/gits/_dg/preserv-BR/data/_pk0004.01 | |||
ls _pk0004.01/ | |||
grep "^4," donor.csv | |||
grep ",4,1" donatedPack.csv | |||
pushd _pk0004.01/ | |||
more sha256sum.txt | |||
grep file make_conf.yaml | |||
# ... até aqui foi só conferir se batem IDs, hashes e títulos | |||
more make_conf.yaml | |||
# detectamos problemas por ser antigo: falta licença, faltam file sizes, etc. | |||
make me # para a ingest indicada em commomFirst.yaml ou make me pg_db=ingestXX para uma ingest diferente. | |||
# caso falte file sizes: | |||
make wget_files orig=/tmp/pg_io/tmpfolder | |||
make insert_size orig=/tmp/pg_io/tmpfolder | |||
rm -rf /tmp/pg_io/tmpfolder | |||
make openstreetmap # executar antes da ingestão, apenas uma vez. | |||
# .. responder senhas ENTERs etc. | |||
make all_layers | |||
</syntaxhighlight> | |||
== Publicação == | |||
=== Gerar os arquivos publicáveis === | |||
Para gerar os arquivos que serão publicados no respectivo ''preservCutGeo'' do país: | Para gerar os arquivos que serão publicados no respectivo ''preservCutGeo'' do país: | ||
Linha 26: | Linha 110: | ||
<syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src | <syntaxhighlight lang="sh">pushd /var/gits/_dg/preserv/src | ||
make to_donated_packcomponent pg_db=ingestXX pg_datalake=dl05s_main</syntaxhighlight> | make to_donated_packcomponent pg_db=ingestXX pg_datalake=dl05s_main</syntaxhighlight> | ||
=== Aprovação === | === Aprovação === | ||
Linha 37: | Linha 121: | ||
make approved_donated_packcomponent id=ZZ pg_datalake=dl05s_main</syntaxhighlight> | make approved_donated_packcomponent id=ZZ pg_datalake=dl05s_main</syntaxhighlight> | ||
Nesse momento, os novos dados fazem parte das estátisticas disponibilizadas em API. Também, listas disponibilizadas no site addressforall e em documentações podem ser atualizadas. | Nesse momento, os novos dados fazem parte das estátisticas disponibilizadas em API. Também, listas disponibilizadas no site addressforall e em documentações podem ser atualizadas. | ||
== Licenças == | |||
Executar o target <code>make insert_license</code> utiliza os dados de [http://git.digital-guard.org/licenses digital-guard/licenses] para gerar no respectivo ''make_conf.yaml'' o seguinte, por exemplo: | |||
<pre>license_evidences: | |||
definition: [ODbL-1.0, odbl, http://www.opendefinition.org/licenses/odc-odbl]</pre> | |||
onde <code>definition:</code> equivale a <code>[name, family, url]</code> conforme discutido em https://github.com/digital-guard/preserv/issues/32 | |||
Manualmente, inserir <code>file</code> e <code>uri_evidency</code>, conforme discutido em https://github.com/digital-guard/preserv/issues/19: | |||
<pre> file: f0cbf591bda09880dc27cdbfcf4ee45189eb1e2c3742800c066f0b5576d81744.zip | |||
uri_evidency: http://web.archive.org/web/20211012105347/https://www.openstreetmap.org/copyright</pre> | |||
onde <code>file</code> indica o ''sha256'' do arquivo compactado contendo as evidencias e <code>uri_evidency</code> indica o ''sha256.eml'' ou ''archive.org/url'' como discutido aqui https://github.com/digital-guard/preserv/issues/32#issuecomment-998347112. | |||
Resultando em: | |||
<pre>license_evidences: | |||
definition: [ODbL-1.0, odbl, http://www.opendefinition.org/licenses/odc-odbl] | |||
file: f0cbf591bda09880dc27cdbfcf4ee45189eb1e2c3742800c066f0b5576d81744.zip | |||
uri_evidency: http://web.archive.org/web/20211012105347/https://www.openstreetmap.org/copyright</pre> | |||
Exemplo utilizado em https://github.com/digital-guard/preserv-CO/blob/main/data/_pk0004.01/make_conf.yaml | |||
== Gerar README.md == | |||
Template em ptbr: https://github.com/digital-guard/preserv/blob/main/src/maketemplates/readme_ptbr.mustache | |||
Template em es: https://github.com/digital-guard/preserv/blob/main/src/maketemplates/readme_es.mustache | |||
A seguir exemplo fictício de make_conf.yaml para gerar um README.md do pacote. Reparar nas chaves: <code>comments, comment, test_evidence, standardized_fields, other_fields, other_files e to-do</code>. | |||
Informações extras ou que não se encaixam nas referidas chaves devem ser incluídas num arquivo ''attachment.md'', que terá seu conteúdo anexado ao final do README.md numa seção chamada ''anexo''. | |||
<syntaxhighlight lang="yaml">pack_id: 81.1 | |||
pkversion: 001 | |||
schemaId_input: | |||
schemaId_template: | |||
codec:descr_encode: srid=31983 | |||
files: | |||
- | |||
p: 1 | |||
file: d9cddc63f7782d250fc80f0572b9fb884ee7ec1911e19deea4381a4ad5d0a172.zip | |||
name: Bairros | |||
comments: Comentários sobre o arquivo, se houver. | |||
size: 1234 | |||
layers: | |||
geoaddress: | |||
subtype: ext | |||
method: shp2sql | |||
file: 1 | |||
sql_select: ['gid', 'numnovo as hnum', 'cod_log', 'geom'] | |||
orig_filename: pg_renumeracoes | |||
comments: Comentários referente ao layer, se houver. | |||
test_evidence: endereço da imagem de evidencia do layer. | |||
# dados relevantes, padronizados | |||
standardized_fields: | |||
- | |||
name: nome do campo ou combinação de campos | |||
standard: 'nome padronizado, por exemplo: hnum' | |||
comment: comentários sobre o campo, se houver. | |||
# dados relevantes, NÃO padronizados, se houver | |||
other_fields: | |||
- | |||
name: nome do campo ou combinação de campos | |||
comment: comentários sobre o campo, se houver. | |||
comments: Comentários gerais sobre os dados, sobre o pacote, etc, se houver. | |||
test_evidence: endereço da imagem de evidencia de todos os dados. | |||
# outros arquivos que podem ser úteis | |||
other_files: | |||
- | |||
p: 2 | |||
file: pg_div_municipio.zip | |||
name: pg_div_municipio | |||
format: shp | |||
comment: Arquivo com a divisa territorial de guarulhos e vizinhos. | |||
# Lista de tarefas | |||
to-do: | |||
- Tarefa 1.</syntaxhighlight> | |||
=== Como gerar === | |||
Exemplo de geração de README.md: | |||
<pre>pushd /var/gits/_dg/preserv-BR/src | |||
make all | |||
pushd /var/gits/_dg/preserv-BR/data/AC/RioBranco/_pk0042.01 | |||
make readme pg_db=ingest99 | |||
popd | |||
popd</pre> | |||
=== Exemplos: === | |||
* https://github.com/digital-guard/preserv-BR/tree/main/data/SP/SaoPaulo/_pk0033.01 | |||
* https://github.com/digital-guard/preserv-BR/tree/main/data/AC/RioBranco/_pk0042.01 | |||
* https://github.com/digital-guard/preserv-BR/tree/main/data/SP/Atibaia/_pk0021.01 | |||
* https://github.com/digital-guard/preserv-BR/tree/main/data/ES/CachoeiroItapemirim/_pk0091.01 | |||
== Diagrama == | == Diagrama == |