feat: manifest build with buildah allowing multi-platform images
Presentation
Closes #140 (closed)
Checklist
- Documented:
-
README.md
documents the new feature -
kicker.json
describes the new feature
-
- Tested & examplified:
-
Build: https://gitlab.com/to-be-continuous/samples/python-on-kubernetes/-/jobs/11107394981 -
Pull: skopeo inspect docker://registry.gitlab.com/to-be-continuous/samples/python-on-kubernetes/snapshot:test-multi-arch --raw
-
Publish: https://gitlab.com/to-be-continuous/samples/python-on-kubernetes/-/jobs/11107832844
-
{
"schemaVersion": 2,
"mediaType": "application/vnd.oci.image.index.v1+json",
"manifests": [
{
"mediaType": "application/vnd.oci.image.manifest.v1+json",
"digest": "sha256:c72c92154241e0daf48419b64174e929535c925cf3e3ce6124d49ca1e77c0a46",
"size": 2779,
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
{
"mediaType": "application/vnd.oci.image.manifest.v1+json",
"digest": "sha256:ff4b8af000ac7b068970e670ba0d845a1c13aaae3b9d51fa4beb941e12a562b8",
"size": 2780,
"platform": {
"architecture": "arm64",
"os": "linux"
}
}
]
}
There are limit in the compatibility with trivy, syft and cosign. Nothing should fail but it is clearly suboptimal. See comment in the tracking issue.