-
Notifications
You must be signed in to change notification settings - Fork 502
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
Implement OBS stage workflow #3088
Conversation
Skipping CI for Draft Pull Request. |
45cae9a
to
f7018f9
Compare
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
Signed-off-by: Marko Mudrinić <mudrinic.mare@gmail.com>
The PR is ready for review |
/test pull-release-integration-test-eks-canary |
/test pull-release-verify |
/assign |
/assign @saschagrunert @cpanato @xmudrii |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work, just found a non-blocking nit with the license header. This can be fixed alter on.
@@ -0,0 +1,194 @@ | |||
/* | |||
Copyright 2020 The Kubernetes Authors. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copyright 2020 The Kubernetes Authors. | |
Copyright 2023 The Kubernetes Authors. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I’ll fix it in the PR for OBS release workflow.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: saschagrunert, xmudrii 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 |
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR implements OBS staging workflow via
krel obs stage
command as described in #3051. For more details about the command workflow, including a diagram, see the referenced issue.In general, this workflow does the following:
osc checkout
to checkout the project locallykrel obs stage
for each packageosc addremove
to stage changesosc commit
to commit and push changes to OBSPushing changes to OBS triggers the package building process. Packages are not yet available to end users as this requires a release step that's going to be implemented in a follow up PR.
This workflow is realized as a dedicated step in the stage process, see changes to
gcb/stage/cloudbuild.yaml
for details. This workflow can also be called standalone using the submit option. The submit option is going to trigger a new Cloud Build job responsible only for building packages. This option is supposed to be used by other Kubernetes subprojects.The scope of this PR is only kubeadm, kubectl, and kubelet. cri-tools and kubernetes-cni can be built using the standalone mode described above. We're yet going to figure out how we can automate those two packages.
This PR has some TODO notes that are non-blocking and will be resolved in follow up PRs.
This PR has been tested and logs are available here: https://console.cloud.google.com/cloud-build/builds/4fc2cb3b-81ee-4336-8834-1e8414aa43c0?project=kubernetes-release-test
It can also be tested by triggering a mock stage process (although packages are not going to be committed/pushed to OBS because it's mock stage):
Which issue(s) this PR fixes:
Fixes #3051
Special notes for your reviewer:
Does this PR introduce a user-facing change?