[Bug 1926732] Re: Add ubuntu-oci project for building OCI-ready tarballs with livecd-rootfs
Thomas Bechtold
1926732 at bugs.launchpad.net
Tue May 11 04:17:35 UTC 2021
** Description changed:
[Impact]
Currently the ubuntu-base livecd-rootfs project is used to build tarballs that are the base for building docker/OCI images.
The tarballs produced with the ubuntu-base project are modified externally (see https://github.com/tianon/docker-brew-ubuntu-core/blob/master/update.sh ) to create the "official" ubuntu images on dockerhub.
When including the ubuntu-oci project into livecd-rootfs, we can build
tarballs that already contain the changes that are currently done
externally. This has multiple advantages:
1) a Dockerfile using that tarball would no longer have to modify anything (means less layers)
2) publishing new OCI images no longer depends on the external dockerhub image creation. Currently eg. the AWS ECR ubuntu containers depend on the containers from dockerhub. That would be no longer the case with this change
3) Possible faster reaction on CVEs. no longer depending on external processes.
[Test Plan]
- 1) Build a test ubuntu-oci tarball with ubuntu-old-fashioned:
+ 1) build ubuntu-oci project
+ a) Build a test ubuntu-oci tarball with ubuntu-old-fashioned:
./scripts/ubuntu-bartender/ubuntu-bartender --no-cleanup -- --series
impish --image-format plain --project ubuntu-oci --subproject minimized
- 2) create a Dockerfile using the tarball created in step 1):
+ b) create a Dockerfile using the tarball created in step 1):
cat << EOF > Dockerfile
FROM scratch
ADD ubuntu-impish-oci-cloudimg-amd64-root.tar.gz /
CMD ["/bin/bash"]
EOF
- 3) build the container
+ c) build the container
docker build .
- 4) run something in the container:
+ d) run something in the container:
docker run -it $container-id uname -a
- 5) check the size of the docker image and compare with the image for the
+ e) check the size of the docker image and compare with the image for the
same series available on dockerhub
+ 2) build another project (ubuntu-base minimized)
+ TODO: describe test steps
[Where problems could occur]
This change could break other livecd-rootfs projects which might lead to
failed builds. But beside that, there is nothing I can think of that
would be affected by this change.
[Other Info]
When this is accepted, there will be livefs builds available at
https://launchpad.net/~cloud-images-release-
managers/+livefs/ubuntu/$SERIES/ubuntu-oci
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1926732
Title:
Add ubuntu-oci project for building OCI-ready tarballs with livecd-
rootfs
Status in livecd-rootfs package in Ubuntu:
New
Status in livecd-rootfs source package in Bionic:
In Progress
Status in livecd-rootfs source package in Focal:
In Progress
Status in livecd-rootfs source package in Groovy:
In Progress
Status in livecd-rootfs source package in Hirsute:
In Progress
Bug description:
[Impact]
Currently the ubuntu-base livecd-rootfs project is used to build tarballs that are the base for building docker/OCI images.
The tarballs produced with the ubuntu-base project are modified externally (see https://github.com/tianon/docker-brew-ubuntu-core/blob/master/update.sh ) to create the "official" ubuntu images on dockerhub.
When including the ubuntu-oci project into livecd-rootfs, we can build
tarballs that already contain the changes that are currently done
externally. This has multiple advantages:
1) a Dockerfile using that tarball would no longer have to modify anything (means less layers)
2) publishing new OCI images no longer depends on the external dockerhub image creation. Currently eg. the AWS ECR ubuntu containers depend on the containers from dockerhub. That would be no longer the case with this change
3) Possible faster reaction on CVEs. no longer depending on external processes.
[Test Plan]
1) build ubuntu-oci project
a) Build a test ubuntu-oci tarball with ubuntu-old-fashioned:
./scripts/ubuntu-bartender/ubuntu-bartender --no-cleanup -- --series
impish --image-format plain --project ubuntu-oci --subproject
minimized
b) create a Dockerfile using the tarball created in step 1):
cat << EOF > Dockerfile
FROM scratch
ADD ubuntu-impish-oci-cloudimg-amd64-root.tar.gz /
CMD ["/bin/bash"]
EOF
c) build the container
docker build .
d) run something in the container:
docker run -it $container-id uname -a
e) check the size of the docker image and compare with the image for
the same series available on dockerhub
2) build another project (ubuntu-base minimized)
TODO: describe test steps
[Where problems could occur]
This change could break other livecd-rootfs projects which might lead
to failed builds. But beside that, there is nothing I can think of
that would be affected by this change.
[Other Info]
When this is accepted, there will be livefs builds available at
https://launchpad.net/~cloud-images-release-
managers/+livefs/ubuntu/$SERIES/ubuntu-oci
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/livecd-rootfs/+bug/1926732/+subscriptions
More information about the Ubuntu-sponsors
mailing list