-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
workflows: Enhance s390x mkosi workflow #2019
Draft
stevenhorsman
wants to merge
18
commits into
confidential-containers:main
Choose a base branch
from
stevenhorsman:mkosi-workflow-multi-arch
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
workflows: Enhance s390x mkosi workflow #2019
stevenhorsman
wants to merge
18
commits into
confidential-containers:main
from
stevenhorsman:mkosi-workflow-multi-arch
Conversation
This file contains 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
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
2 times, most recently
from
August 28, 2024 13:20
1765e5c
to
71c9664
Compare
FYI, I've moved on a lot from this approach to try and build on top of #1965. I'm missed about the best strategy and whether it's worth the complexity to keep separate workflows for the podvm's builder, binaries and image stage, so I've posted on slack to see if others have thoughts. |
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
from
September 9, 2024 15:48
0df4c2f
to
98275a3
Compare
Ok, I've re-worked this to have a single mkosi workflow and not interlink with the separate stages. It's still WIP though and in test! |
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
9 times, most recently
from
September 16, 2024 12:48
d9688b1
to
e8d62a2
Compare
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
13 times, most recently
from
September 23, 2024 10:56
a986095
to
06f3515
Compare
Now the alternative flow supports s390x, we can remove the specific s390x flow Signed-off-by: stevenhorsman <[email protected]>
So that the podvm_mkosi.yaml workflow can be reused in podvm.yaml to build mkosi artifacts. Signed-off-by: Wainer dos Santos Moschetta <[email protected]>
- Add inputs required to plug this into the e2e workflows - Add parallel build on native s390x runner - Add s390x mkosi install - bump buildx setup action to newest version Signed-off-by: stevenhorsman <[email protected]>
- Update image names to match the existing naming scheme - Add debug suffix to the container image name for clarity - Add push/load switch based on the PUSH env Signed-off-by: stevenhorsman <[email protected]>
- Rename the docker provider's podvm Dockerfile to Dockerfile.podvm_docker_provider for more clarity and to enable us to use Dockerfile.podvm for the "main" version of the podvm in future - Add arch awareness, so we can build images for multiple architectures. Signed-off-by: stevenhorsman <[email protected]>
- Add calls to build the podvm-mkosi image in the same places we build the current podvm image Signed-off-by: stevenhorsman <[email protected]>
Now we switched to docker buildx we are seeing permissions problems in the s390x workflow Signed-off-by: Hyounggyu Choi <[email protected]>
- Add input option to select between the debug and non-debug mkosi image build - Initially use the debug build for e2e tests and non-debug for release and image publish Signed-off-by: stevenhorsman <[email protected]>
- Re-use the resources/binaries-tree binaries already fetched in the podvm_mkosi.yaml to build the podvm image for the docker provider. - We also need to clean up the image build artifacts to stop the runner going out of space Signed-off-by: Wainer dos Santos Moschetta <[email protected]> Signed-off-by: stevenhorsman <[email protected]>
Add a callable workflow that run the e2e tests for the docker provider. This workflow is similar to e2e_libvirt.yaml. Signed-off-by: Wainer dos Santos Moschetta <[email protected]> Signed-off-by: stevenhorsman <[email protected]>
This will make the e2e tests for docker to run. Initially it's disabled on pull requests, so only running with the nightly and manual triggers. Notice that's set continue-on-error so that the e2e_run_all workflow exit status won't change, i.e. any failure on e2e_docker is disregarded. Signed-off-by: Wainer dos Santos Moschetta <[email protected]>
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
2 times, most recently
from
September 23, 2024 16:11
8399619
to
6bbe745
Compare
- Make the libvirt e2e test run against the podvm images for both ubuntu and fedora OSes (for packer and mkosi respectively) and both x86 and S390x runners - Export `IBM_SE_CREDS_DIR` variable that is needed for KBS deployment on s390x. For a non-TEE, this can just be a dummy directory Signed-off-by: stevenhorsman <[email protected]>
Add fedora-like OS support for cross-build-extras Signed-off-by: stevenhorsman <[email protected]>
- Convert the mkosi image to a qcow2 file and upload it to the docker registry, so we can use it for libvirt testing
F39 was given repo connection errors, so try bumping to F40 to see if that helps Signed-off-by: stevenhorsman <[email protected]>
- It used to be that the fedora se image was the only image that was built on s390x, but now with the other mkosi builds, it feels better to make the s390x ubuntu podvm image which is arguably set-up incorrectly the special case. When we drop packer support we can remove this code. Signed-off-by: stevenhorsman <[email protected]>
Clean up the cluster after testing, so that we can tolerate running on self-managed clusters that aren't thrown away after each run
Add KBS installation info to the debug in case of failure Signed-off-by: stevenhorsman <[email protected]>
stevenhorsman
force-pushed
the
mkosi-workflow-multi-arch
branch
from
September 23, 2024 17:01
6bbe745
to
e12d7b4
Compare
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.
Try and make the s390x mkosi workflow more like the packer one, so we that could lift and shift it into the e2e/podvm build pipelines in future: