Mettre à jour Tobby en zone isolée
Tobby se met à jour par son propre canal (R-25), exactement comme la base de vulnérabilités : une nouvelle version est une recipe que votre site cuisine et signe, portée par le flux miroir standard, et déployée par une personne. Rien dans Tobby ne cherche une version plus récente, et rien n’en installe une de lui-même (NFR-019).
Ce que publie une release
Section intitulée « Ce que publie une release »Depuis la v0.6.0, chaque release publie trois artefacts prêts pour une recipe, signés sans clé par le workflow de release et couverts par une provenance SLSA :
| Artefact | Référence | Type dans la recipe |
|---|---|---|
| image conteneur (amd64, arm64) | ghcr.io/tobby-fetch/tobby-fetch:vX.Y.Z |
ContainerImage |
| chart Helm de référence | ghcr.io/tobby-fetch/charts/tobby:X.Y.Z |
HelmChart |
| binaires statiques (linux et windows, amd64 et arm64) | ghcr.io/tobby-fetch/binaries/tobby:vX.Y.Z |
FileSet — un index, un fichier par plateforme, identique octet pour octet à l’asset de la release |
examples/tobby.yaml
est la recipe qui les emporte, avec des digests à remplacer.
La cuisiner, la signer avec votre chaîne
Section intitulée « La cuisiner, la signer avec votre chaîne »- En zone connectée, vérifiez la release comme l’indique la page de
vérification d’une release :
cosign verifysur l’image, le chart et l’index des binaires, etslsa-verifiersur la provenance. - Copiez
examples/tobby.yaml, fixezmetadata.versionet les trois versions, et remplacez chaque digest par celui qu’indiquent les notes de release (oucrane digest <ref>:<version>). - Signez la recipe cuisinée avec votre clé de qualification et publiez-la dans votre cookbook. La destination fait confiance à ses propres trust roots : une recipe signée par la seule clé du projet y est refusée — Tobby ne signe rien, et votre site admet une release de Tobby comme n’importe quel contenu (invariant n° 1).
- Ajoutez-la au Retriever de la zone, à côté de
tobby-system.
La transporter, la déployer
Section intitulée « La transporter, la déployer »- Synchronisez l’instance miroir (
tobby sync --wait) : la nouvelle version est écrite sur le support avec tout le reste. - Côté isolé,
tobby media verifyla montre poussable — ou bloquée sur sa signature si elle n’a pas été signée par une clé de confiance de la zone — ettobby media importla pousse dans la registry de zone. - Déployez-la vous-même :
helm upgradeavec le chart et l’image désormais dans la registry de zone, ou extrayez le binaire de votre plateforme du FileSet et remplacez celui de l’hôte. Lisez d’abord le changelog de la release : une version mineure peut demander un changement de configuration.
Ne garder que certaines plateformes
Section intitulée « Ne garder que certaines plateformes »platforms peut ne garder que les binaires que votre zone exécute.
L’index traverse alors partiel (FR-022) : c’est l’index d’origine, à son
digest épinglé, qui liste des enfants que le support ne porte pas. La
registry de Tobby l’accepte et sert les plateformes qui ont traversé
(FR-042). Une registry de zone tierce qui valide les membres d’un index en
refuse un partiel, et une zone isolée ne peut pas le compléter en allant
chercher le reste : si c’est le cas de la vôtre, gardez les quatre
plateformes, comme le fait l’exemple. Les enfants en plus coûtent quelques
dizaines de mégaoctets.