Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
123e731
feat/models: adiciona models e enums para anexo
kv-aliaga Sep 20, 2026
1d74491
feat/conn: adiciona método de conexão com o banco postgres
kv-aliaga Sep 21, 2026
6f0b477
feat/redis: implementa conexão do redis usando pool
kv-aliaga Sep 21, 2026
c91533f
feat/enums: adiciona novas categorias e status como enums, e define e…
kv-aliaga Sep 21, 2026
571b748
feat/validation: implementa validadores para tipos de arquivos, inclu…
kv-aliaga Sep 21, 2026
f9518da
fix/validacao: corrige verificação de extensão de arquivo e ajusta ti…
kv-aliaga Sep 21, 2026
de9ab5e
fix/anexo: ajusta importação de enums e permite valores nulos para ca…
kv-aliaga Sep 21, 2026
89ebc38
feat/postgres: refatora conexão do banco de dados com context manager
kv-aliaga Sep 21, 2026
3ec3f99
feat/schemas: adiciona classes AnexoForm e UploadJob para manipulação…
kv-aliaga Sep 21, 2026
06693c0
feat/anexos: implementa rota para criação e processamento de anexos, …
kv-aliaga Sep 21, 2026
9e70463
feat/fila: adiciona serviço de fila para uploads utilizando Redis com…
kv-aliaga Sep 21, 2026
8908313
feat/anexos: adiciona autenticação de usuário na criação de anexos, i…
kv-aliaga Sep 21, 2026
4db6d61
feat/autenticacao: adiciona service para obter usuário autenticado vi…
kv-aliaga Sep 21, 2026
d03e605
refactor/schemas: transforma AnexoForm em uma classe simples, removen…
kv-aliaga Sep 21, 2026
f59c97a
refactor/schemas: utiliza Field para alias em UsuarioAutenticado e aj…
kv-aliaga Sep 21, 2026
2194d08
refactor/anexos: atualiza a função de tratamento de erros para regist…
kv-aliaga Sep 21, 2026
a264e0b
feat/cloudinary: adiciona serviço para upload de arquivos ao Cloudina…
kv-aliaga Sep 22, 2026
6b28cba
feat/jobs: implementa serviço para processar uploads de arquivos, inc…
kv-aliaga Sep 22, 2026
4447416
feat/api: cria a aplicação FastAPI e integra o roteador de anexos par…
kv-aliaga Sep 22, 2026
8f0abcd
test: adiciona testes para validação de anexos, processamento de uplo…
kv-aliaga Sep 22, 2026
327d0b6
refactor/tests: remove espaços em branco desnecessários nos testes de…
kv-aliaga Sep 22, 2026
060650b
feat/api: adiciona tratamento de erros personalizados na API e atuali…
kv-aliaga Sep 22, 2026
793a67f
refactor(worker): substitui SpawnWorker por WindowsSimpleWorker e imp…
kv-aliaga Sep 23, 2026
dde35fb
refactor/schemas: modifica a classe UploadJob para incluir id_usuario…
kv-aliaga Sep 23, 2026
32cca45
refactor/jobs: atualiza a função de processamento de uploads para inc…
kv-aliaga Sep 23, 2026
785b3d7
feat/api: adiciona novos endpoints para upload e recuperação de anexo…
kv-aliaga Sep 23, 2026
f64b029
feat/api: adiciona endpoint para consultar o processamento de anexos …
kv-aliaga Sep 23, 2026
7752c48
refactor/api: move lógica de processamento e consulta de anexos para …
kv-aliaga Sep 23, 2026
f5a7fbb
refactor: ajusta formatação e remove espaços em branco desnecessários…
kv-aliaga Sep 23, 2026
3bff18d
chore: remove arquivo temporário .tmp_arquivo.pdf do repositório
kv-aliaga Sep 23, 2026
206c672
fix: corrige formatação de link no README e ajusta a URL da API no mó…
kv-aliaga Sep 23, 2026
23b88f8
fea/yml: ajusta a lógica de autenticação para melhorar a segurança e …
kv-aliaga Sep 23, 2026
082f886
chore/image: atualiza a imagem do contêiner para acta-import-api e aj…
kv-aliaga Sep 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
DB_URL=postgresql://usuario:senha@localhost:5432/nome_do_banco

CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=

ACTA_PG_API_URL=https://acta-pg-api.onrender.com/api/v1
ACTA_IA_TOKEN=defina-um-token-interno

REDIS_HOST=localhost
REDIS_PORT=6379
74 changes: 74 additions & 0 deletions .github/workflows/build-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: build-image

on:
push:
branches: [main]

permissions:
contents: read
packages: write
pull-requests: read

jobs:
publicar:
runs-on: ubuntu-latest

steps:
- name: baixar código
uses: actions/checkout@v4

- name: preparar docker builds
uses: docker/setup-buildx-action@v3

- name: entrar no GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: construir e publicar imagem
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: ghcr.io/appacta/acta-import-api:sha-${{ github.sha }}
labels: |
org.opencontainers.image.source=https://github.com/AppActa/acta-import-api
org.opencontainers.image.revision=${{ github.sha }}

- name: baixar manifests do platform
uses: actions/checkout@v4
with:
repository: AppActa/acta-platform
ref: main
token: ${{ secrets.ACTA_PLATFORM_TOKEN }}

- name: atualizar imagem no platform
shell: bash
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMMIT_AUTHOR: ${{ github.event.head_commit.author.name }}
PUSHED_AT: ${{ github.event.head_commit.timestamp }}
run: |
pull_request=$(gh api "repos/${GITHUB_REPOSITORY}/commits/${GITHUB_SHA}/pulls" --jq '.[0].html_url' 2>/dev/null || true)
pull_request=${pull_request:-"não identificada"}

commit_author="${COMMIT_AUTHOR}"
commit_author=${commit_author:-"não identificado"}

pushed_at="${PUSHED_AT}"
pushed_at=${pushed_at:-"não informado"}

sed -i "s|^\([[:space:]]*image: ghcr.io/appacta/acta-import-api\).*$|\1:sha-${GITHUB_SHA}|" apps/import-api.yaml
git diff --quiet -- apps/import-api.yaml && exit 0

git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add apps/import-api.yaml
git commit -m "chore: atualizar imagem de acta-import-api" -m "PR: ${pull_request}
SHA: ${GITHUB_SHA}
Autor do commit: ${commit_author}
Usuário do push: ${GITHUB_ACTOR}
Data do push: ${pushed_at}"
git push origin main
34 changes: 34 additions & 0 deletions .github/workflows/validacao.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: validacao

on:
pull_request:
branches: [main]
push:
branches: [main]

permissions:
contents: read

jobs:
validar:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: '3.12'
cache: pip

- name: instalar dependencias
run: |
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
python -m pip install pytest==9.1.1

- name: validar sintaxe
run: python -m compileall -q main.py worker.py app

- name: executar testes
run: python -m pytest -q -p no:cacheprovider
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.env
docs/
*.pyc
tests/.*/
16 changes: 16 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
FROM python:3.12-slim

WORKDIR /app

ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1

COPY requirements.txt .
RUN python -m pip install --no-cache-dir -r requirements.txt

COPY main.py worker.py ./
COPY app ./app

EXPOSE 8000

CMD ["sh", "-c", "exec uvicorn main:app --host 0.0.0.0 --port ${PORT:-8000}"]
Loading
Loading