Meta-pacote para projetos Django
Project description
AVA Integration Metapackage
Meta-pacote Python que agrega todas as dependências necessárias para projetos Django do ecossistema de Integração AVA (Integrador, Painel e Gestor).
📦 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
Olhe o arquivo setup.py, atributo install_requires, 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.4.4
🔄 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.4
git push origin 6.0.4.4
# 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 PyPIDOCKERHUB_USERNAME- Usuário do Docker HubDOCKERHUB_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
- Edite
setup.pye ajuste as versões eminstall_requires - Teste localmente:
pip install -e .
- 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.4.4 .
🤝 Contribuindo
Contribuições são bem-vindas! Por favor:
- Crie um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/nova-dependencia) - Commit suas mudanças (
git commit -am 'Adiciona nova dependência X') - Push para a branch (
git push origin feature/nova-dependencia) - 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)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file avaintegration_metapackage-6.0.4.6.tar.gz.
File metadata
- Download URL: avaintegration_metapackage-6.0.4.6.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf7ea73243eecc0ea85deff1340009c88e12685d5d54201ebb7716c335294b1a
|
|
| MD5 |
4c2eee83d3132c5aac4faa6378cdf74e
|
|
| BLAKE2b-256 |
9d1125f9f3bd4b3f2954803f5511525a484781ca1eefd493c49f1bb3b84338c5
|
Provenance
The following attestation bundles were made for avaintegration_metapackage-6.0.4.6.tar.gz:
Publisher:
publish-pypi-and-docker.yml on cte-zl-ifrn/integration-avaintegration_metapackage
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
avaintegration_metapackage-6.0.4.6.tar.gz -
Subject digest:
bf7ea73243eecc0ea85deff1340009c88e12685d5d54201ebb7716c335294b1a - Sigstore transparency entry: 1287463075
- Sigstore integration time:
-
Permalink:
cte-zl-ifrn/integration-avaintegration_metapackage@90052b0e25dfd82eb2f17c0c744d1fe349434dc4 -
Branch / Tag:
refs/tags/6.0.4.6 - Owner: https://github.com/cte-zl-ifrn
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi-and-docker.yml@90052b0e25dfd82eb2f17c0c744d1fe349434dc4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file avaintegration_metapackage-6.0.4.6-py3-none-any.whl.
File metadata
- Download URL: avaintegration_metapackage-6.0.4.6-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b76fc07d11daf9478b6dcbde913b1dbb2215d19bd9f9175e26d9a93133b2db4
|
|
| MD5 |
837a95a1413485d9670bdf5eba041a97
|
|
| BLAKE2b-256 |
90794fedc42b04373c38cb2df112969ce3d0fc2a3a916542d41c26a9bd8d7ffc
|
Provenance
The following attestation bundles were made for avaintegration_metapackage-6.0.4.6-py3-none-any.whl:
Publisher:
publish-pypi-and-docker.yml on cte-zl-ifrn/integration-avaintegration_metapackage
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
avaintegration_metapackage-6.0.4.6-py3-none-any.whl -
Subject digest:
4b76fc07d11daf9478b6dcbde913b1dbb2215d19bd9f9175e26d9a93133b2db4 - Sigstore transparency entry: 1287463171
- Sigstore integration time:
-
Permalink:
cte-zl-ifrn/integration-avaintegration_metapackage@90052b0e25dfd82eb2f17c0c744d1fe349434dc4 -
Branch / Tag:
refs/tags/6.0.4.6 - Owner: https://github.com/cte-zl-ifrn
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi-and-docker.yml@90052b0e25dfd82eb2f17c0c744d1fe349434dc4 -
Trigger Event:
push
-
Statement type: