Artefacten en verificatie uitgaven

Deze pagina vermeldt artefacten in uitgaven van Weblate en onderhouden distributiekanalen en legt uit hoe de artefacten te verifiëren die gepubliceerde handtekeningen, attesten en SBOM’s bevatten. Voor ondersteunde versies en dekking van beveiligingsupdates, bekijk Uitgaven en ondersteunde versies. Voor monitoren van afhankelijkheden en scannen van kwetsbaarheden in containers, bekijk Afhankelijkheden.

Inventarisatie artefacten uitgaven

Kanalen van Weblate voor uitgaven en onderhouden distributies zijn gepubliceerd op verscheidene kanalen. Deze inventarisatie vermeldt de door deze opslagruimte beschreven artefacten en waar bewijs over hun publicatie wordt onderhouden. Voor artefacten die worden onderhouden in aan Weblate toebehorende kind-opslagruimten, vermeldt de tabel de opslagruimte waar de informatie voor bouw en uitgaveautomatisering is opgeslagen.

Artefact of kanaal

Eigendom opslagruimte of locatie

Doel publiceren

Bewijs opslagruimte

Opmerkingen

Bronuitgaven en GitHub uitgavedelen

WeblateOrg/weblate

GitHub uitgaven

.github/workflows/setup.yml, scripts/create-release, scripts/prepare-release en Weblate uitgeven

Uitgavedelen bevatten Python-distributiearchieven, opmerkingen voor de uitgave en de SBOM voor de uitgave.

Python-pakket

pyproject.toml, setup.py en MANIFEST.in

weblate

De distributiewerkstroom bouwt, valideert, ondertekent en publiceert het pakket met PyPI vertrouwd publiceren.

De metadata voor het pakket en afhankelijkheden worden in deze opslagruiimte onderhouden.

Docker-schijfkopieën

Weblate Docker opslagruimte

Docker Hub en GitHub Packages Docker register

Weblate Dockerfile, Weblate Docker-schijfkopie werkstroom, Weblate Docker container CI werkstroom, Installeren met Docker, Weblate uitgeven en security.yaml

De werkstroom bouwt multi-architectuurschijfkopieën, voert testen voor containers uit, scant met Anchore en Trivy en publiceert naar Docker Hub en GitHub Packages. Verzamelde gepubliceerde schijfkopieën worden ondertekend met Cosign en de bouw publiceert BuildKit SBOM en beheerattesten.

Kubernetes Helm-grafiek

Weblate Helm opslagruimte

Weblate Helm opslagruimte eindpunt en Artifact Hub

Weblate Helm-grafiek, Weblate Helm uitgave werkstroom, Weblate Helm test werkstroom, Weblate Helm werkstroom beoordelen afhankelijkheid en Installeren op Kubernetes

De werkstroom grafiek uitgave gebruikt Helm chart-releaser voor wijzigingen onder charts/**. Grafiek testlints en installeert de grafiek. Ondertekenen van grafiek, beheer van de grafiek en bewijs voor SBOM van de grafiek werden niet in de geïnspecteerde werkstromen voor Helm gevonden.

Documentatie

docs/, docs/conf.py en .readthedocs.yml

Weblate documentatie

.github/workflows/docs.yml en .readthedocs.yml

Instellingen voor Read the Docs worden niet opgeslagen in deze opslagruimte.

Weblate Client-pakket en uitgaven

Weblate Client opslagruimte

wlc en Weblate Client GitHub uitgaven

Weblate Client distributie werkstroom, Weblate Client metadata en Weblate Client

De werkstroom bouwt en valideert artefacten voor bron en wiel, publiceert naar PyPI met vertrouwd publiceren, maakt GitHub-uitgaven voor tags, voegt pakketten SBOM-bestanden toe aan GitHub-uitgaven en maakt pakketbeheer en attesten voor SBOM.

Weblate Client Docker-schijfkopie

Weblate Client opslagruimte

Weblate Client Docker schijfkopie en Weblate Client GHCR register

Weblate Client Dockerfile, Weblate Client Docker werkstroom en Weblate Client

De werkstroom bouwt multi-architectuurschijfkopieën, voert testen uit voor de schijfkopie voor de opdrachtregel-cliënt, scant met Anchore en Trivy en publiceert naar Docker Hub en GitHub Packages. Verzamelde gepubliceerde schijfkopieën worden ondertekend met Cosign, CycloneDX image SBOM’s worden gemaakt met Syft en schijfbeheer en SBOM-attesten worden gepusht naar de registers.

De bestanden voor het ontwikkelen van Docker in dev-docker/ en de fuzzing containerdefinities in .clusterfuzzlite/ zijn infrastructuur voor ontwikkeling en testen, geen uitgave-artefacten voor productie.

Bestanden van Docker Compose, inclusief de Weblate Docker Compose opslagruimte en lokale voorbeelden voor overschrijven, zijn voorbeelden van configuraties van uitrollen in plaats van uitgave-artefacten. Operators passen ze gewoonlijk aan voor hun eigen uitrollen en Weblate primair door het selecteren of ophalen van tags voor de Docker-schijfkopie. Ze worden niet gedekt door de uitgavehandtekeningen, SBOM’s of argumenten voor beheer op deze pagina.

Software materiaallijst

Weblate bevat een Software Bill of Material (SBOM) in de indeling CycloneDX voor uitgegeven versies. De SBOM is beschikbaar als een geversioneerd bestand weblate-<version>-sbom.cdx.json in de GitHub release assets en is ook bijgesloten bij de herkomst van de uitgave met GitHub artefact-attesten. Dit kan worden gebruikt om de afhankelijkheden na te kijken voor problemen met beveiliging of conformiteit met de licentie.

De uitgave SBOM legt document-niveaumetadata vast voor de CISA 2025-minimumelementen, inclusief de auteur van SBOM, softwareproducer, programma’s voor maken, tijdstempel, context van maken en identiteit van het Weblate-uitgaveonderdeel. Details over afhankelijkheid van onderdelen worden weggelaten door het ecosysteem van SBOM-generatoren die bij de uitgave worden gebruikt. Python-onderdeelslicentie en volledigheid van de hash zijn daarom afhankelijk van de ondersteuning van CycloneDX export in uv.

Verifiëren van artefacten van uitgaven

De Weblate-uitgavewerkstroom publiceert verificatiemateriaal voor de Weblate Python-brondistributie en wiel in GitHub uitgavedelen. Uitgavedelen omvatten de pakketarchieven, Sigstore-handtekeningenbundels, opmerkingen voor uitgaven en de SBOM voor de uitgave. Dezelfde pakketarchieven worden geüpload naar PyPI met vertrouwd publiceren, maar de Sigstore-handtekeningenbundels worden niet geüpload naar PyPI, omdat de uitgavewerkstroom voor het publiceren bestanden verwijdert die niet worden geaccepteerd door PyPI.

Verifieer de bestanden die zijn gedownload van GitHub-uitgavedelen als u de gepubliceerde handtekeningen, attesten en SBOM nodig hebt. Bestanden van het PyPi-pakket kunnen worden vergeleken met de overeenkomende uitgavedelen op bestandsnaam en samenvatting.

Handtekeningen van uitgaven

Pakketarchieven van Weblate zijn cryptografisch ondertekend met Sigstore handtekeningen. De handtekeningenbundels zijn gekoppeld aan de uitgave op GitHub naast de getekende bestanden .tar.gz en .whl.

Verificatie kan worden uitgevoerd met het sigstore-pakket. Het volgende voorbeeld verifieert het wiel van de uitgave 5.4; pas de versie en bestandsnamen aan voor de uitgave die u wilt controleren:

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

Attesten voor uitgave

De uitgavewerkstroom maakt twee soorten GitHub artefact attesten voor de pakketarchieven:

  • Attesten voor bouwbeheer gegenereerd door .github/workflows/setup.yml met actions/attest-build-provenance.

  • SBOM-attesten gegenereerd door .github/workflows/setup.yml met actions/attest met de CycloneDX uitgave-SBOM.

De attesten kunnen worden geverifieerd met gh. Het volgende voorbeeld controleert het attest voor bouwbeheer voor het wiel van 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

Gebruik het CycloneDX predicaattype om het SBOM-attest te verifiëren dat is verbonden aan hetzelfde pakketartefact:

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 en controlesommen

De uitgave-SBOM is een JSON-bestand van CycloneDX, genaamd weblate-<version>-sbom.cdx.json en is verbonden met de GitHub-uitgavedelen. Het SBOM-attest is verbonden met de pakketarchieven, niet aan het SBOM-bestand als een afzonderlijk uitgaveartefact.

Weblate publiceert momenteel geen afzonderlijk manifest voor controlesommen, zoals SHA256SUMS voor uitgave-artefacten.

Andere kanalen voor uitgaven

De inventarisatie van uitgave-artefacten bevat momenteel geen identificatiehandtekeningen, SBOM’s of beheersattesten voor Helm grafieken. De verificatie-instructies in dit gedeelte zijn van toepassing op Weblate Python-uitgaveartefacten, gepubliceerd door deze opslagruimte. Docker-schijfkopie en Weblate Client metadata voor supply-chain worden gepubliceerd door hun eigen opslagruimten.