Skip to content
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

Update to k8s v0.28.5 and other operator-framework components #3155

Merged
merged 3 commits into from
Jan 15, 2024

Conversation

tmshort
Copy link
Contributor

@tmshort tmshort commented Jan 12, 2024

Description of the change:

Summary

Updates to latest operator-framework/api and operator-framework/operator-registry, which requires updates to k8s v0.28.x (v0.28.5 in this case).
Update code to be compatible with these updated dependencies.
kind is kinda stuck at k8s 1.27.3, so I couldn't update the testing for that.

Update k8s to v0.28.5

This also updates to the latest operator-framework api and operator-registry

kind is still at v0.20.0 (k8s 1.27.3) as it's the latest version

Update code for k8s v0.28.5 compatibility

Fix unit-tests as well

Update codegen

Hack scripts/update_codegen.sh script to continue to generate code using the deprecated scripts. The deprecated scripts now call into each other, and unfortunately, go mod vendor doesn't keep permission bits around.
So, we need to update the execute permissions on a vendored script.

The new kube_codegen.sh doesn't work when the repository path is outside the package name, see:

kubernetes/code-generator#165

The workaround is to create symlinked directories to fool kube_codegen.sh into thinking the path is correct. But first we'd have to start using the new script.

Once kube_codegen.sh is fixed, we should migrate to it (which is a non-trivial task).

Motivation for the change:

operator-framework/api and operator-framework/operator-registry have been updated to k8s v0.28.x

Reviewer Checklist

  • Implementation matches the proposed design, or proposal is updated to match implementation
  • Sufficient unit test coverage
  • Sufficient end-to-end test coverage
  • Bug fixes are accompanied by regression test(s)
  • e2e tests and flake fixes are accompanied evidence of flake testing, e.g. executing the test 100(0) times
  • tech debt/todo is accompanied by issue link(s) in comments in the surrounding code
  • Tests are comprehensible, e.g. Ginkgo DSL is being used appropriately
  • Docs updated or added to /doc
  • Commit messages sensible and descriptive
  • Tests marked as [FLAKE] are truly flaky and have an issue
  • Code is properly formatted

@tmshort
Copy link
Contributor Author

tmshort commented Jan 12, 2024

I meant to...
/hold

@openshift-ci openshift-ci bot added do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jan 12, 2024
@tmshort tmshort force-pushed the k8s28 branch 3 times, most recently from bb6574f to ec8f0ff Compare January 12, 2024 20:17
This also updates to the latest operator-framework api and operator-registry
kind is still at v0.20.0 (k8s 1.27.3) as it's the latest version

Signed-off-by: Todd Short <todd.short@me.com>
@tmshort
Copy link
Contributor Author

tmshort commented Jan 12, 2024

/unhold

@openshift-ci openshift-ci bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jan 12, 2024
grokspawn
grokspawn previously approved these changes Jan 15, 2024
@grokspawn
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jan 15, 2024
Fix unit-tests as well

Signed-off-by: Todd Short <todd.short@me.com>
Hack `scripts/update_codegen.sh` script to continue to generate code using
the deprecated scripts. The deprecated scripts now call into each other,
and unfortunately, `go mod vendor` doesn't keep permission bits around.
So, we need to update the execute permissions on a vendored script.

The new `kube_codegen.sh` doesn't work when the repository path is
outside the package name, see:
kubernetes/code-generator#165

The workaround is to create symlinked directories to fool `kube_codegen.sh`
into thinking the path is correct. But first we'd have to start using the
new script.

Once `kube_codegen.sh` is fixed, we should migrate to it (which is a
non-trivial task).

Signed-off-by: Todd Short <todd.short@me.com>
@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. label Jan 15, 2024
Copy link

openshift-ci bot commented Jan 15, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: tmshort

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

The pull request process is described 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

@grokspawn
Copy link
Contributor

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Jan 15, 2024
@tmshort tmshort added this pull request to the merge queue Jan 15, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 15, 2024
@tmshort tmshort added this pull request to the merge queue Jan 15, 2024
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 15, 2024
@tmshort tmshort added this pull request to the merge queue Jan 15, 2024
Merged via the queue into operator-framework:master with commit 134ccee Jan 15, 2024
15 of 16 checks passed
@tmshort tmshort deleted the k8s28 branch January 16, 2024 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants