Artefactos de lançamento e verificação¶
Esta página lista os artefactos de lançamento do Weblate e canais de distribuição mantidos e explica como verificar os artefactos que incluem assinaturas publicadas, certificados, e SBOMs. Para versões suportadas e cobertura de atualizações de segurança, veja Publicações e versões suportadas. Para monitorização de dependências e análise de vulnerabilidade de contentor, veja Dependências.
Inventário de artefactos de lançamento¶
O Weblate lança e mantém canais de distribuição que são publicados através de vários canais. Este inventário lista os artefactos descritos por este repositório e onde a sua evidência de lançamento é mantida. Para artefactos mantidos em repositórios irmãos pertencentes ao Weblate, a tabela cita o repositório onde se encontra a automatização da compilação e de lançamento.
Artefacto ou canal |
Repositório ou local de propriedade |
Alvo de publicação |
Evidência do repositório |
Notaa |
|---|---|---|---|---|
Lançamentos fonte e recursos de lançamento GitHub |
|
|
Recursos de lançamento incluem arquivos de distribuição Python, notas de lançamento, e o SBOM de lançamento. |
|
Pacote Python |
|
O fluxo de trabalho de distribuição compila, valida, assina e publica o pacote através do sistema de publicação fiável do PyPI. |
Os metadados do pacote e dependências são mantidos neste repositório. |
|
Imagens Docker |
Weblate Dockerfile, Weblate Docker image workflow, Weblate Docker container CI workflow, Instalar utilizando Docker, Criando lançamento do Weblate, e |
O fluxo de trabalho compila imagens de múltiplas arquiteturas, executa testes de contentor, analisa com Anchore e Trivy, e publica para o Docker Hub e GitHub Packages. Resumos de imagens publicadas são assinadas com Cosign, e o compilador publica BuildKit SBOM e certificados de proveniência. |
||
Gráfico Kubernetes Helm |
Weblate Helm chart, Weblate Helm release workflow, Weblate Helm test workflow, Weblate Helm dependency review workflow, e Instalar no Kubernetes |
O fluxo de trabalho de lançamento de gráfico utiliza o lançador de gráficos Helm em mudanças sob |
||
Documentação |
|
|
Definições de projeto que podem ser lidos na Documentação não são armazenados neste repositório. |
|
Pacote Weblate Client e publicações |
Weblate Client distribution workflow, Weblate Client metadata, e Cliente Weblate |
O fluxo de trabalho complica e valida artefactos fonte e de roda, publica para o PyPI usando publicação fiável, cria lançamentos GitHub para etiquetas, anexa os ficheiros de pacote SBOM aos lançamentos GitHub, e cria a proveniência de pacote e certificados SBOM. |
||
Imagem Docker do Weblate Client |
Weblate Client Dockerfile, Weblate Client Docker workflow, e Cliente Weblate |
O fluxo de trabalho compila imagens de multi arquitetura, testa a imagem de cliente da linha de comandos, analisa com o Anchore e Trivy, e publica-as para o Docker Hub e GitHub Packages. Resumos de imagens publicados são assinados com o Cosign, imagens SBOM CycloneDX são gerados com Syft, e proveniência de imagem e certificados SBOM são enviados para os registos. |
Os ficheiros de desenvolvimento Docker em dev-docker/ e as definições aproximadas de contentor em .clusterfuzzlite/ são infraestrutura de desenvolvimento e teste, e não artefactos de lançamento de produção.
Ficheiros Compose do Docker, incluindo o Weblate Docker Compose repository e exemplos de sobrescrita locais, são exemplos de configurações de implementação em vez dos artefactos de lançamento. Operadores tipicamente adaptam-nos para as suas próprias implementações e atualização o Weblate primariamente ao selecionar ou buscar as etiquetas de imagem Docker. Eles não são cobertos por assinaturas de lançamento, SBOMs, ou declarações de proveniência nesta página.
Lista de materiais de software¶
O weblate publica uma Lista de Material de Software (SBOM) usando o formato ClycloneDX para versões lançadas. O SBOM está disponível enquanto ficheiro com versão weblate-<version>-sbom.cdx.json nos GitHub release assets e também está anexado na proveniência de lançamento usando certificados de artefacto GitHub. Isto pode ser usado para rever as dependências por motivos de segurança ou conformidade com a licença.
Os registos SBOM desta versão documentam os metadados ao nível do documento relativos aos elementos mínimos exigidos pela CISA para 2025, incluindo o autor SBOM, o produtor do software, ferramentas de geração, registo de data e hora, contexto de geração, e lançamento de componentes de identitade Weblate. Detalhes de dependência de componente são emitidos pelos gerados SBOM de ecossistema usados durante o lançamento. A licença do componente Python e a integridade do hash dependem, portanto, do suporte à exportação do CycloneDX em uv.
Verificar artefactos de lançamento¶
O fluxo de trabalho de lançamento do Weblate publica material de verificação para a distribuição da fonte do Weblate Python e traz GitHub release assets. Os recursos lançados incluem os pacotes de arquivos, pacotes de assinaturas Sigstore, notas de lançamento, e o SBOM de lançamento. Os mesmos pacotes de arquivos são lançados para o PyPI usando publicação confiada, mas os conjuntos de ficheiros Sigstore não são carregados para o PyPI porque o fluxo de trabalho de lançamento remove ficheiros não aceites pelo PyPI antes da publicação.
Verifique os ficheiros descarregados a partir de recursos publicados no GitHub quando precisa de assinaturas publicadas, certificados, e SBOM. Ficheiros de pacote PyPI podem ser comparados aos recursos publicados no GitHub por nome de ficheiro e resumo.
Assinaturas de lançamento¶
Os pacotes de arquivos Weblate são criptograficamente assinados usando assinaturas Sigstore. Os conjuntos de assinaturas são anexados ao lançamento GitHub ao lado dos ficheiros assinados .tar.gz and .whl.
A verificação pode ser feita usando o pacote sigstore. O seguinte exemplo verifica a roda do lançamento 5.4; ajuste a versão e os nomes de ficheiros para o lançamento que está a verificar:
sigstore verify github \
--cert-identity https://github.com/WeblateOrg/weblate/.github/workflows/setup.yml@refs/tags/weblate-5.4 \
--bundle Weblate-5.4-py3-none-any.whl.sigstore \
Weblate-5.4-py3-none-any.whl
Declarações de lançamentos¶
O fluxo de trabalho de lançamento cria dois tipos de GitHub artifact attestations para os arquivos de pacote:
Compile certificados de proveniência gerados por
.github/workflows/setup.ymlusando actions/attest-build-provenance.Certificados SBOM gerados por
.github/workflows/setup.ymlusando actions/attest com o CycloneDX que publica SBOM.
Os certificados podem ser verificados usando gh. Os seguintes exemplos verificam o certificado de proveniência de compilação para a roda 5.4:
gh attestation verify Weblate-5.4-py3-none-any.whl \
--repo WeblateOrg/weblate \
--source-ref refs/tags/weblate-5.4 \
--signer-workflow WeblateOrg/weblate/.github/workflows/setup.yml
Utilize o tipo de predicado CycloneDX para verificar a certificação SBOM anexada ao mesmo artefacto do pacote:
gh attestation verify Weblate-5.4-py3-none-any.whl \
--repo WeblateOrg/weblate \
--source-ref refs/tags/weblate-5.4 \
--signer-workflow WeblateOrg/weblate/.github/workflows/setup.yml \
--predicate-type https://cyclonedx.org/bom
SBOM e somas de verificação¶
O SBOM da versão é um ficheiro JSON do CycloneDX com o nome weblate-<version>-sbom.cdx.json e está anexado aos recursos da versão no GitHub. O certificado do SBOM está anexado aos arquivos do pacote, e não ao ficheiro SBOM como um artefacto de lançamento separado.
O Weblate atualmente não publica manifesto com soma de verificação separada tal como SHA256SUMS para artefactos de lançamento.
Outros canais de lançamento¶
O inventário de lançamento de artefacto atualmente não identifica assinaturas, SBOMs, ou certificados de proveniência para os gráficos Helm. As instruções de verificação nesta secção aplicam-se aos artefactos de lançamento Weblate Python publicados por este repositório. Os metadados da cadeia de abastecimento de imagem de docker Weblate Client é publicada pelos respetivos repositórios proprietários.