Skip to content

Conversation

nirs
Copy link
Contributor

@nirs nirs commented Aug 24, 2025

This is #21368 with the following changes:

  • Rebase on master
  • Fix whitespace in hash files
  • Unify containerd-bin makefiles
  • Update contained-bin Config.in
  • Remove containerd.conf.d directory
  • Add missing _AARCH64 to variable names

Status:

  • Need testing agin after reverting the config.toml change.

Fixes #20497

@k8s-ci-robot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 24, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: nirs
Once this PR has been reviewed and has the lgtm label, please assign spowelljr for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot requested a review from prezha August 24, 2025 12:06
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Aug 24, 2025
@nirs
Copy link
Contributor Author

nirs commented Aug 24, 2025

/ok-to-build-iso

2 similar comments
@nirs
Copy link
Contributor Author

nirs commented Aug 24, 2025

/ok-to-build-iso

@nirs
Copy link
Contributor Author

nirs commented Aug 24, 2025

/ok-to-build-iso

@nirs
Copy link
Contributor Author

nirs commented Aug 24, 2025

/ok-to-build-iso

@nirs nirs marked this pull request as ready for review August 24, 2025 19:06
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 24, 2025
@k8s-ci-robot k8s-ci-robot requested a review from medyagh August 24, 2025 19:06
@medyagh
Copy link
Member

medyagh commented Aug 25, 2025

@medyagh
Copy link
Member

medyagh commented Aug 25, 2025

/ok-to-build-iso

@minikube-bot
Copy link
Collaborator

Hi @nirs, we have updated your PR with the reference to newly built ISO. Pull the changes locally if you want to test with them or update your PR further.

@nirs nirs marked this pull request as draft August 26, 2025 21:56
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 26, 2025
Copy link
Contributor Author

@nirs nirs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The config.toml does not help with #21408 and may break code configuring containerd using sed(!?). We need to replace the configuration code with proper toml parsing but for now we can keep the existing config.

@medyagh
Copy link
Member

medyagh commented Aug 28, 2025

/ok-to-test

@k8s-ci-robot k8s-ci-robot added the ok-to-test Indicates a non-member PR verified by an org member that is safe to test. label Aug 28, 2025
@minikube-pr-bot
Copy link

kvm2 driver with docker runtime

┌────────────────┬──────────┬────────────────────────┐
│    COMMAND     │ MINIKUBE │ MINIKUBE  ( PR 21409 ) │
├────────────────┼──────────┼────────────────────────┤
│ minikube start │ 48.8s    │ 51.0s                  │
│ enable ingress │ 16.7s    │ 16.3s                  │
└────────────────┴──────────┴────────────────────────┘

Times for minikube start: 47.5s 48.8s 47.3s 51.1s 49.4s
Times for minikube (PR 21409) start: 48.6s 51.2s 50.9s 52.1s 52.3s

Times for minikube ingress: 18.9s 15.9s 15.9s 15.9s 16.9s
Times for minikube (PR 21409) ingress: 17.0s 16.0s 16.9s 15.9s 15.9s

docker driver with docker runtime

┌────────────────┬──────────┬────────────────────────┐
│    COMMAND     │ MINIKUBE │ MINIKUBE  ( PR 21409 ) │
├────────────────┼──────────┼────────────────────────┤
│ minikube start │ 24.9s    │ 26.0s                  │
│ enable ingress │ 13.6s    │ 14.4s                  │
└────────────────┴──────────┴────────────────────────┘

Times for minikube start: 25.4s 23.9s 27.4s 24.1s 23.7s
Times for minikube (PR 21409) start: 25.0s 28.0s 23.2s 26.4s 27.4s

Times for minikube ingress: 13.7s 13.6s 13.6s 13.7s 13.6s
Times for minikube (PR 21409) ingress: 13.2s 13.6s 13.7s 17.7s 13.7s

docker driver with containerd runtime

┌────────────────┬──────────┬────────────────────────┐
│    COMMAND     │ MINIKUBE │ MINIKUBE  ( PR 21409 ) │
├────────────────┼──────────┼────────────────────────┤
│ minikube start │ 24.6s    │ 23.1s                  │
│ enable ingress │ 31.2s    │ 28.2s                  │
└────────────────┴──────────┴────────────────────────┘

Times for minikube start: 22.2s 22.7s 24.8s 27.5s 26.0s
Times for minikube (PR 21409) start: 21.7s 23.2s 23.8s 22.9s 23.7s

Times for minikube (PR 21409) ingress: 39.6s 23.7s 23.6s 30.6s 23.7s
Times for minikube ingress: 24.1s 39.7s 40.1s 23.6s 28.7s

ComradeProgrammer and others added 3 commits August 31, 2025 23:20
- Fix Makefile title in aarch64
- Unify whitespaec in *.mk files
- Remove extra space between the hash and the tarball name
- Remove empty line at the end hash file
Based on crictl-bin Config.in.
nirs added 2 commits September 1, 2025 00:36
Containerd supports a simple and poorly documented drop-in configuration
files using the imports option. If this option is set:

    imports = ["/etc/containerd/conf.d/*.toml"]

Then toml files under /etc/containerd/conf.d/ are loaded and merged with
the config read from /etc/containerd/config.toml.

Unlike systemd drop-in files, you cannot override single option by
adding drop-in configuration file. To override a single option you must
set all options in the section, and the entire section is replaced by
the drop-in file.

We never used this feature since our config contains:

    # imports

And we don't configure this dynamically. Our config on the host is:

    $ grep conf.d /etc/containerd/config.toml
          conf_dir = "/etc/cni/net.d"

However we were creating:

    /etc/containerd/containerd.conf.d/

This path does not make sense (repeating containerd twice) and files in
this directory are ignored.

Finally this directory was created in CONFIGURE_CMDS instead of
INSTALL_CMDS.  Now that we install a binary we should not have any
configure commands.

Since we never had a working conf.d directory we can safely remove it.
This is the reason for the strange failure when build the x86_64 iso,
about no hash for arm64 tarball. I seems that package for different
architectures must have a different names to avoid confusing buildroot.
The name was broken by mistake when updating to containerd 2.1.4.

With this change iso build works for both aarch64 and x86_64.
@nirs
Copy link
Contributor Author

nirs commented Aug 31, 2025

/ok-to-build-iso

@nirs nirs marked this pull request as ready for review August 31, 2025 21:54
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 31, 2025
@nirs
Copy link
Contributor Author

nirs commented Aug 31, 2025

Change sin latest version:

  • rebase on master
  • squash whitespace commits
  • remove the config.toml change since it may break changes applied in generateContainerdConfig()
    • we can consider the config again when we have a better configuration mechanism that does not depend on the config content.
  • Improve the commit messages

Need testing again since last time I test mostly with the new config.

@minikube-bot
Copy link
Collaborator

Hi @nirs, we have updated your PR with the reference to newly built ISO. Pull the changes locally if you want to test with them or update your PR further.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bump to Containerd 2
6 participants