ironcore-dev / ironcore-image Goto Github PK
View Code? Open in Web Editor NEWIronCore OCI Image Specification, Library and Tooling
License: Apache License 2.0
IronCore OCI Image Specification, Library and Tooling
License: Apache License 2.0
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-vulnerability_alerts-1
Explanation: Are vulnerability alerts enabled? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-reuse_tool-1
Explanation: Does README mention REUSE? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
Describe the bug
A docker pull results in an "invalid rootfs in image configuration". This is reproducable using different computers and docker versions.
To Reproduce
$ docker pull ghcr.io/onmetal/onmetal-image/gardenlinux:latest
latest: Pulling from onmetal/onmetal-image/gardenlinux
c1e5e4977170: Pulling fs layer
70e9885efd93: Downloading 285.8kB/27.76MB
d002d4426df1: Downloading 138.3kB/13.21MB
invalid rootfs in image configuration
Doing the same with podman:
$ podman pull ghcr.io/onmetal/onmetal-image/gardenlinux:latest
Trying to pull ghcr.io/onmetal/onmetal-image/gardenlinux:latest...
Getting image source signatures
Copying blob d002d4426df1 done
Copying blob 70e9885efd93 done
Copying blob c1e5e4977170 done
ERRO[0036] While applying layer: ApplyLayer exit status 1 stdout: stderr: archive/tar: invalid tar header
Error: writing blob: adding layer with blob "sha256:c1e5e49771706cc61624ba86672be95bd1ee4c123161adc075341648c9f15678": ApplyLayer exit status 1 stdout: stderr: archive/tar: invalid tar header
podman version is 3.4.7
Expected behavior
Receiving the image without problem.
For the Garden Linux project we create a package for onmetal-image
, at the moment we identify the version we build by its commit hash since this project does not have any tags. Can you add tags to this project to make identifying versions easier?
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-assigned_teams-1
Explanation: Does it have enough teams on GitHub? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-reuse_tool-2
Explanation: Does it have LICENSES directory with licenses? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
The ironcore-image
project, responsible for defining the OCI manifest for our Operating System images, currently includes layers like rootfs
, initramfs
, and kernel
. We need to improve this project by introducing platform-specific support, where each platform type holds a distinct subset of these layers. Additionally, the project should be capable of handling different CPU architectures, specifically arm64
and amd64
.
Platform Support:
virtualization
platform should include only the rootfs
layer.baremetal
platform should encompass kernel
, initramfs
, and rootfs
layers.CPU Architecture Support:
arm64
and amd64
architectures.ironcore-image
project to generate OCI manifests tailored to specific platform requirements.arm64
and amd64
architectures is essential for broadening our OS's applicability.An ironcore-image
OCI Specification Draft could look like the following:
schemaVersion: 2.0
mediaType: application/vnd.oci.image.manifest.v1+json
# Manifests for different platforms and architectures
manifests:
- # Virtualization platform - rootfs only
mediaType: application/vnd.oci.image.manifest.v1+json
platform:
architecture: amd64
os: linux
variant: virtualization
layers:
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-rootfs-amd64>"
size: <size>
annotations:
title: "rootfs"
- # Virtualization platform - rootfs only (ARM64)
mediaType: application/vnd.oci.image.manifest.v1+json
platform:
architecture: arm64
os: linux
variant: virtualization
layers:
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-rootfs-arm64>"
size: <size>
annotations:
title: "rootfs"
- # Baremetal platform - kernel, initramfs, rootfs (AMD64)
mediaType: application/vnd.oci.image.manifest.v1+json
platform:
architecture: amd64
os: linux
variant: baremetal
layers:
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-kernel-amd64>"
size: <size>
annotations:
title: "kernel"
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-initramfs-amd64>"
size: <size>
annotations:
title: "initramfs"
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-rootfs-amd64>"
size: <size>
annotations:
title: "rootfs"
- # Baremetal platform - kernel, initramfs, rootfs (ARM64)
mediaType: application/vnd.oci.image.manifest.v1+json
platform:
architecture: arm64
os: linux
variant: baremetal
layers:
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-kernel-arm64>"
size: <size>
annotations:
title: "kernel"
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-initramfs-arm64>"
size: <size>
annotations:
title: "initramfs"
- mediaType: application/vnd.oci.image.layer.v1.tar+gzip
digest: "<digest-rootfs-arm64>"
size: <size>
annotations:
title: "rootfs"
# Replace <digest-*> and <size> with actual hash values and sizes of the layers.
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-reuse_tool-3
Explanation: Is it registered in REUSE? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-vulnerability_alerts-1
Explanation: Are vulnerability alerts enabled? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-assigned_teams-1
Explanation: Does it have enough teams on GitHub? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A violation against the OSS Rules of Play has been detected.
Rule ID: rl-reuse_tool-4
Explanation: Is it compliant with REUSE rules? No
Find more information at: https://sap.github.io/fosstars-rating-core/oss_rules_of_play_rating.html
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.