Script para verificar (sim, infelizmente é necessário) se os registros de ponto foram feitos no sistema de ponto eletrônico.
A ideia é que esse script seja uma function triggada por um evento de pub/sub que, por sua vez, seja usado por um scheduler todo dia às 10:30am de segunda-feira à sexta-feira (use 30 10 * * 0-5 como cron notation).
10am-10:30am foi o horário que eu entendi que seria (mais ou menos) o momento de sincronizar os registros nos relógios.
-
Crie um projeto Google Cloud, caso já não tenha um, e defina dois secrets no Secret Manager:
-
CLOCKBOT_AUTH: Devem ser suas credenciais usadas para fazer login no formato<usuário>:<senha> -
CLOCKBOT_DISCORD_TOKEN: Deve ser o token de acesso do bot do Discord.
Esses valores serão acessados como variáveis de ambiente no ambiente Cloud Run. Para testar localmente, exporte as variáveis, com os mesmos nomes, com valores válidos.
-
-
Clone o projeto:
-
SSH:
git clone [email protected]:lucasvmigotto/clockbot.git
-
HTTPS:
git clone https://github.com/lucasvmigotto/clockbot.git
-
-
Crie uma cópia do arquivo
.env.examplee renomeie para.env.Preencha os campos faltantes com valores válidos
-
Inicie a function:
functions-framework --target main --signature-type event
-
Use o script
trigger.pypara simular uma chamada pub/sub cloud event:python trigger.py
-
Exportar as dependências para
requirements.txtuv export \ --format requirements-txt \ --output-file ./requirements.txt \ --no-hashes \ --no-dev -
Abrir um terminal dentro do devcontainer:
docker exec -it $(docker container ls -aqf 'name=clockbot') bash
- Adicionar instruções e comandos para deploy com
gcloud; - Enviar, quando houverem erros, o relatório em PDF exportado dentro do sistema;
- Criar storage para receber espelhos de ponto e, caso haja erros, criar PDF para anexo com comprovantes;
- Definir política de limpeza e deleção de arquivos dado determinado período transcorrido;