ref: Do not build OS image from kernel base#52
Merged
Callisto13 merged 1 commit intomainfrom Jan 17, 2023
Merged
Conversation
Contributor
Author
|
Validated cluster works with: rootVolume:
id: root
image: "docker.io/claudiaberesford/capmvm-k8s-os:1.23.5"
kernel:
filename: "boot/vmlinux"
image: "docker.io/claudiaberesford/kernel-bin:5.10.77"
volumes:
- id: modules
image: "docker.io/claudiaberesford/kernel-modules:5.10.77"
mountPoint: /lib/modules/5.10.77 |
yitsushi
previously approved these changes
Jan 12, 2023
yitsushi
previously approved these changes
Jan 16, 2023
| @@ -1,20 +1,36 @@ | |||
| FROM ghcr.io/weaveworks-liquidmetal/flintlock-ubuntu-base:20.04 | |||
|
|
|||
| ARG OS_VERSION=20.04 | |||
There was a problem hiding this comment.
(no changes required, only a note)
This can be UBUNTU_VERSION or something that tells it's ubuntu, OS_VERSION would require me to open the Dockerfile and see "what os, heh?". Maybe we could just use
ARG BASE_OS="ubuntu:20.04"
FROM ${BASE_OS}but then, all apt commands would fail if it's not a debian based base image :/
Contributor
Author
There was a problem hiding this comment.
In the meantime, would you settle from some very good documentation (in another pr)?
The kernel base image brought the kernel modules into the operating system image. This resulted in quite a long image pipeline, as a change in any of the kernel layers would require updating the OS layers. Our new plan is to mount those modules in as a separate volume, thus separating the kernel image pipeline from the OS image pipeline. This change updates the CAPI OS image so that it is built from a standard Ubuntu instead. It does not contain module files. In order not to break things for people who may be using versions of CAPMVM and Flintlock which do not have the feature to add modules via an additional mountpoint, I have renamed the image. This will ensure that the existing tags will not be overwritten. I chose this as the less confusing and frustrating option for people. I am open to any other suggestions on how to do this. Another way could be suffixing the image tags with `-v2` or something.
Contributor
Author
|
sorry @yitsushi had to resolve a merge conflict |
yitsushi
approved these changes
Jan 17, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The kernel base image brought the kernel modules into the operating system image. This resulted in quite a long image pipeline, as a change in any of the kernel layers would require updating the OS layers. Our new plan is to mount those modules in as a separate volume, thus separating the kernel image pipeline from the OS image pipeline.
This change updates the CAPI OS image so that it is built from a standard Ubuntu instead. It does not contain module files.
In order not to break things for people who may be using versions of CAPMVM and Flintlock which do not have the feature to add modules via an additional mountpoint, I have renamed the image. This will ensure that the existing tags will not be overwritten. I chose this as the less confusing and frustrating option for people. I am open to any other suggestions on how to do this. Another way could be suffixing the image tags with
-v2or something.This change will be fairly short-lived as we want to switch to using kubernetes community images for this. But either way an image rename will be required as kernel modules will not be present in either.
Part of #49