Skip to content

streamline upstream release process #2118

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

Closed
exdx opened this issue Apr 26, 2021 · 5 comments
Closed

streamline upstream release process #2118

exdx opened this issue Apr 26, 2021 · 5 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Milestone

Comments

@exdx
Copy link
Member

exdx commented Apr 26, 2021

Feature Request

A clear and concise description of what the problem is. Example: "I have an issue when (...)"
The current release process defined in https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/release.md is manual and error-prone. It would be better to have a more consistent release cycle with less manual steps involved.

Maybe using a workflow with goreleaser like in https://github.com/operator-framework/operator-sdk/blob/master/.github/workflows/deploy.yml could be the right step forward.

Describe the solution you'd like
We can cut more upstream releases faster and in a more automated way

@exdx exdx added the kind/feature Categorizes issue or PR as related to a new feature. label Apr 26, 2021
@exdx exdx added this to the 0.19.0 milestone Apr 29, 2021
@exdx
Copy link
Member Author

exdx commented Apr 29, 2021

Related to #1812

@exdx
Copy link
Member Author

exdx commented May 3, 2021

Related to #2129

@exdx
Copy link
Member Author

exdx commented May 7, 2021

Some notes from our discussion:

  • Per the SDK upstream flow, we can use github actions to build and push image payloads for PRs (build and not push), commits to master (build and push), and tags (build, push, and run goreleaser to produce a release). This would help with multiarch images, since the current quay build does not support other architectures like s390x.
  • Extend the release validation script to run the e2e suite against the upstream.Dockerfile (currently it only validates that the install.sh script works and that the OLM operators come up ready)
  • Use the deploy/chart chart to template releases and not embed the release payload manifest in the upstream manifests themselves (making the release one step instead of a multi-step process)
  • Supporting backporting for upstream branches (ie a release-v0.19.z that is maintained with backports) is not a priority at this time since we only effectively support master. This can be added later once a solid release process is developed.
  • The /manifests directory is not really part of the upstream release and should be removed as part of the release overhaul

Next step is to develop smaller stories and take incremental steps to improve the release process.

@timflannagan
Copy link
Member

Related to #2130

@exdx
Copy link
Member Author

exdx commented Mar 31, 2022

I think the spirit of this issue has largely been addressed by the goreleaser changes implemented, closing.

@exdx exdx closed this as completed Mar 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

No branches or pull requests

5 participants