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

[FEATURE] Upgrade operator-sdk to v1.31 #139

Open
2 of 15 tasks
adambkaplan opened this issue Aug 29, 2023 · 6 comments
Open
2 of 15 tasks

[FEATURE] Upgrade operator-sdk to v1.31 #139

adambkaplan opened this issue Aug 29, 2023 · 6 comments
Assignees
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature.

Comments

@adambkaplan
Copy link
Member

adambkaplan commented Aug 29, 2023

Is there an existing feature request for this?

  • I have searched the existing feature requests

Is your feature request related to a problem or use-case? Please describe.

operator-sdk is a critical part of our build and release process. It is significantly out of date and needs to be upgraded. Unfortunately, there are several manual steps involved since operator-sdk assumes that your project has a Makefile with specific structures and attributes.

Describe the solution that you would like.

Upgrade the project to operator-sdk v1.31, iterating through each upgrade step along the way (starting with 1.18).

See https://sdk.operatorframework.io/docs/upgrading-sdk-version/

Describe alternatives you have considered.

  • Stay at operator-sdk v1.17 - our tech debt continues to accumulate with compounding interest.
  • Drop operator-sdk - we would have to roll our own operator build/release process.

Anything else?

Links to each upgrade step - note that we should only follow the upgrade steps for go-based operators. Changes related to Helm and Ansible-based operators do not apply:

@adambkaplan adambkaplan added the kind/feature Categorizes issue or PR as related to a new feature. label Aug 29, 2023
@adambkaplan
Copy link
Member Author

A note on implementation - this can/should be split into multiple pull requests if it makes sense. I recommend that each version increase have a separate commit with corresponding CI checks run (so we ensure we don't break anything along the way)

@adambkaplan adambkaplan added the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Aug 29, 2023
@qu1queee
Copy link

qu1queee commented Sep 6, 2023

From refinement, we did drop the operator-sdk from the Build project. @adambkaplan we think you might have more context to decide if any of the alternatives would work.

@adambkaplan
Copy link
Member Author

Dropping operator-sdk from Build made a lot of sense, and that decision shouldn't change.

For this project, the operator-sdk provides a CLI with the features needed to build, test, and deploy the operator via OLM. The actual controller code runs with the controller-runtime library - there is no specific dependency on operator-framework libraries any more.

@adambkaplan adambkaplan added this to the Backlog milestone Nov 20, 2023
@qu1queee qu1queee modified the milestones: Backlog, release-v0.13.0 Jan 11, 2024
@qu1queee
Copy link

qu1queee commented Feb 8, 2024

From Refinement, this still in Progress but subject to change, @adambkaplan to provide an update later.

@SaschaSchwarze0
Copy link
Member

@adambkaplan is this a blocker for v0.13 or something we want to do in 0.13?

@qu1queee qu1queee removed this from the release-v0.13.0 milestone Mar 21, 2024
@adambkaplan
Copy link
Member Author

Update: this should wait until after v0.13.0 lands for the operator. There are a lot of fundamental changes in operator-sdk that will warrant a significant refactor of the operator itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/feature Categorizes issue or PR as related to a new feature.
Projects
Status: In Progress
Development

No branches or pull requests

3 participants