Skip to content

Conversation

@salasberryfin
Copy link

Change description

This is an attempt at fixing an error that occurs when the url task is called before a symbolic link to /usr/local/bin/ctr is created. This task tries to execute /usr/bin/ctr before it is available in the path and it fails to build the image.

The issue was identified in the job periodic-cluster-api-provider-gcp-make-conformance-main-ci-artifacts (Prow job history), which is one of the recently reported jobs in the Kubernetes organization that have been failing for a long time.

When building the image for cluster-api-provider-gcp with kubernetes_source_type == "http" and kubernetes_cni_source_type == "http", the job outputs the following error:

"/bin/sh: 1: /usr/bin/ctr: not found"

A full log can be found here.

The proposed fix places the creation of the symlink right after containerd is installed. If this is not considered the correct approach, we can look for other alternatives to avoid calling tasks that invoke /usr/bin/ctr before it is available.

cc @justinsb @damdo @cpanato

Related issues

  • Fixes #

Additional context

This originated from @justinsb's investigation kubernetes-sigs/cluster-api-provider-gcp#1529 (comment)

Signed-off-by: Carlos Salas <carlos.salas@suse.com>
@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Jan 26, 2026
Copy link
Member

@damdo damdo left a comment

Choose a reason for hiding this comment

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

/approve

/hold

For other reviews, thanks @salasberryfin

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jan 26, 2026
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

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

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

Details 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

@damdo
Copy link
Member

damdo commented Jan 26, 2026

/assign @cpanato @justinsb

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. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants