Skip to main content

AVA Integration Metapackage

PARA USO APENAS no IFRN, USE apenas neste sentido.

Project : License pre-commit Docs

Publish: Publish Python Docker

Meta-pacote Python 3.14 que agrega todas as dependências necessárias para projetos Django 6.0 do ecossistema AVA do IFRN (Integrador AVA, Painel AVA, Gestor AVA e Leitor EaD).

📦 O que é um metapackage?

Um metapackage é um pacote Python que não contém código próprio, mas declara um conjunto de dependências. Ao instalar o metapackage, todas as suas dependências são instaladas automaticamente, garantindo:

  • ✅ Versionamento unificado de dependências entre projetos
  • ✅ Consistência entre ambientes de desenvolvimento, teste e produção
  • ✅ Simplificação do gerenciamento de dependências
  • ✅ Sincronização automática via imagem Docker base

Tecnologias

Django Python PostgreSQL Redis Docker Gunicorn Sentry

Olhe o arquivo pyproject.toml, atributo dependencies, para conhecer as demais bibliotecas.

🚀 Instalação

Via PyPI

pip install avaintegration_metapackage

Via Docker

A imagem Docker base já inclui o metapackage instalado:

FROM ctezlifrn/avaintegrationbase:6.0.8.40

🔄 Workflow de CI/CD

# 1. Atualize a versão no setup.py (será sobrescrita pela tag)
# 2. Crie e envie a tag
git tag 6.0.4.13
git push origin 6.0.4.13

# 3. O GitHub Action irá:
#    - Atualizar setup.py com a versão da tag
#    - Publicar no PyPI
#    - Aguardar 60s para propagação
#    - Construir imagem Docker instalando o pacote do PyPI
#    - Publicar imagem no Docker Hub

Secrets necessários no GitHub

Configure os seguintes secrets no repositório:

  • PYPI_API_TOKEN - Token de API do PyPI
  • DOCKERHUB_USERNAME - Usuário do Docker Hub
  • DOCKERHUB_TOKEN - Token de acesso do Docker Hub

🛠️ Desenvolvimento

Estrutura do projeto

metapackage/
├── .github/
│   ├── docker/
│   │   └── Dockerfile          # Dockerfile para imagem base
│   └── workflows/
│       └── publish-pypi-and-docker.yml
├── avaintegration_metapackage/
│   └── __init__.py             # Versão do pacote
├── setup.py                    # Configuração e dependências
├── Dockerfile                  # Dockerfile de desenvolvimento
└── README.md

Atualizando dependências

  1. Edite setup.py e ajuste as versões em install_requires

  2. Teste localmente:

    pip install -e .
    
  3. Faça commit e crie uma nova tag

Testando localmente

# Build do pacote
python -m build

# Instalação local
pip install dist/avaintegration_metapackage-*.whl

# Teste da imagem Docker
docker build -t avaintegrationbase:test -f .github/docker/Dockerfile \
  --build-arg PACKAGE_VERSION=6.0.8.40 .

🤝 Contribuindo

Contribuições são bem-vindas! Por favor:

  1. Crie um fork do projeto
  2. Crie uma branch para sua feature (git checkout -b feature/nova-dependencia)
  3. Commit suas mudanças (git commit -am 'Adiciona nova dependência X')
  4. Push para a branch (git push origin feature/nova-dependencia)
  5. Abra um Pull Request

📞 Suporte

Para questões ou problemas, abra uma issue no repositório do projeto.


Mantido por: IFRN - Diretoria de Educação a Distância (DEAD)

Metadata

Release files for avaintegration-metapackage 6.0.8.45

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for avaintegration-metapackage 6.0.8.45
File Size Uploaded
avaintegration_metapackage-6.0.8.45.tar.gz 5.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for avaintegration-metapackage 6.0.8.45
File Interpreter ABI Platform
avaintegration_metapackage-6.0.8.45-py3-none-any.whl Python 3 none any Details

Total release size: 11.8 kB

Release files / avaintegration_metapackage-6.0.8.45.tar.gz

Download URL avaintegration_metapackage-6.0.8.45.tar.gz
Size 5.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e7e281aa782756a7d01c32f09e6de999a38c0bff1b02a68ed861d723078f2b2a
BLAKE2b-256 checksum
How to use checksums
fcf4d097dbd21fd107150346448850b08aade5c5a91e95c923c053849970420e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.

Transparency log

Release files / avaintegration_metapackage-6.0.8.45-py3-none-any.whl

Download URL avaintegration_metapackage-6.0.8.45-py3-none-any.whl
Size 6.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
42e2b3017ad12d2785fe150b7cb5a39b1470c47c24df40c29e457d9a9f8c48a5
BLAKE2b-256 checksum
How to use checksums
7c8518f82722a06408cbda44ba0d0ca87a9097917423232083f8eb6fb0b51ab1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 5, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page