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

OCPBUGS-41642: config/v1/types_cluster_version: Add v4.17 capability set #2023

Conversation

wking
Copy link
Member

@wking wking commented Sep 10, 2024

This is a synonym for v4.16, because there have not been capability-recommendation changes since that release. 4.17 is about to go Generally Available, which means v4.17 will always be a synonym for v4.16. I think defining synonym capability sets is busywork that takes developer time without adding customer value, but OCPBUGS-41111 points out that so far every 4.y release has had a v4.y capability set string associated with it, and folks might find adjustments to that pattern surprising. I'm declaring the v4.17 set to continue the existing set-for-each-4.y pattern (and breaking the
set-for-each-4.y-with-a-different-default pattern) to unblock 4.17's GA, but we may revisit this approach in the future with more lead time. This commit backports (without v4.18) #2022 to release-4.17.

Copy link
Contributor

openshift-ci bot commented Sep 10, 2024

Hello @wking! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@openshift-ci openshift-ci bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Sep 10, 2024
@wking
Copy link
Member Author

wking commented Sep 10, 2024

/Jira cherrypick OCPBUGS-41111

@openshift-ci-robot
Copy link

@wking: Jira Issue OCPBUGS-41111 has been cloned as Jira Issue OCPBUGS-41642. Will retitle bug to link to clone.
/retitle OCPBUGS-41642: config/v1/types_cluster_version: Add v4.17 capability set

In response to this:

/Jira cherrypick OCPBUGS-41111

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot changed the title config/v1/types_cluster_version: Add v4.17 capability set OCPBUGS-41642: config/v1/types_cluster_version: Add v4.17 capability set Sep 10, 2024
@openshift-ci-robot openshift-ci-robot added jira/severity-important Referenced Jira bug's severity is important for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Sep 10, 2024
@openshift-ci-robot
Copy link

@wking: This pull request references Jira Issue OCPBUGS-41642, which is invalid:

  • release note text must be set and not match the template OR release note type must be set to "Release Note Not Required". For more information you can reference the OpenShift Bug Process.
  • expected dependent Jira Issue OCPBUGS-41111 to be in one of the following states: MODIFIED, ON_QA, VERIFIED, but it is POST instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

In response to this:

This is a synonym for v4.16, because there have not been capability-recommendation changes since that release. 4.17 is about to go Generally Available, which means v4.17 will always be a synonym for v4.16. I think defining synonym capability sets is busywork that takes developer time without adding customer value, but OCPBUGS-41111 points out that so far every 4.y release has had a v4.y capability set string associated with it, and folks might find adjustments to that pattern surprising. I'm declaring the v4.17 set to continue the existing set-for-each-4.y pattern (and breaking the
set-for-each-4.y-with-a-different-default pattern) to unblock 4.17's GA, but we may revisit this approach in the future with more lead time. This commit backports (without v4.18) #2022 to release-4.17.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

This is a synonym for v4.16, because there have not been
capability-recommendation changes since that release.  4.17 is about
to go Generally Available, which means v4.17 will always be a synonym
for v4.16.  I think defining synonym capability sets is busywork that
takes developer time without adding customer value, but [1] points out
that so far every 4.y release has had a v4.y capability set string
associated with it, and folks might find adjustments to that pattern
surprising.  I'm declaring the v4.17 set to continue the existing
set-for-each-4.y pattern (and breaking the
set-for-each-4.y-with-a-different-default pattern) to unblock 4.17's
GA, but we may revisit this approach in the future with more lead
time.  This commit backports (without v4.18) [2] to release-4.17.

[1]: https://issues.redhat.com/browse/OCPBUGS-41111
[2]: openshift#2022
@wking wking force-pushed the 4.17-cluster-version-capability-sets branch from 35023e0 to da9cfc5 Compare September 10, 2024 21:51
@openshift-ci openshift-ci bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Sep 10, 2024
@deads2k
Copy link
Contributor

deads2k commented Sep 11, 2024

/lgtm
/approve

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Sep 11, 2024
Copy link
Contributor

openshift-ci bot commented Sep 11, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: deads2k, wking

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

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 11, 2024
@sdodson sdodson added cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. backport-risk-assessed Indicates a PR to a release branch has been evaluated and considered safe to accept. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. and removed jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Sep 12, 2024
Copy link
Contributor

openshift-ci bot commented Sep 12, 2024

@wking: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-merge-bot openshift-merge-bot bot merged commit 0a88001 into openshift:release-4.17 Sep 12, 2024
10 checks passed
@openshift-ci-robot
Copy link

@wking: Jira Issue OCPBUGS-41642: All pull requests linked via external trackers have merged:

Jira Issue OCPBUGS-41642 has been moved to the MODIFIED state.

In response to this:

This is a synonym for v4.16, because there have not been capability-recommendation changes since that release. 4.17 is about to go Generally Available, which means v4.17 will always be a synonym for v4.16. I think defining synonym capability sets is busywork that takes developer time without adding customer value, but OCPBUGS-41111 points out that so far every 4.y release has had a v4.y capability set string associated with it, and folks might find adjustments to that pattern surprising. I'm declaring the v4.17 set to continue the existing set-for-each-4.y pattern (and breaking the
set-for-each-4.y-with-a-different-default pattern) to unblock 4.17's GA, but we may revisit this approach in the future with more lead time. This commit backports (without v4.18) #2022 to release-4.17.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@wking wking deleted the 4.17-cluster-version-capability-sets branch September 12, 2024 20:14
wking added a commit to wking/cluster-version-operator that referenced this pull request Sep 12, 2024
Catching up with [1], and a backport-ish of 6abe8bb (vendor: Update
openshift/api to pick up v4.17 and v4.18 capability sets, 2024-09-11,

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ git add -A go.* vendor

all using:

  $ go version
  go version go1.22.2 linux/amd64

where GOPROXY=direct avoids a caching delay [2]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

[1]: openshift/api#2023
[2]: https://proxy.golang.org/
wking added a commit to wking/cluster-version-operator that referenced this pull request Sep 12, 2024
Catching up with [1], and a backport-ish of 6abe8bb (vendor: Update
openshift/api to pick up v4.17 and v4.18 capability sets, 2024-09-11, openshift#1086).
Generated with:

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ git add -A go.* vendor

all using:

  $ go version
  go version go1.22.2 linux/amd64

where GOPROXY=direct avoids a caching delay [2]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

[1]: openshift/api#2023
[2]: https://proxy.golang.org/
wking added a commit to wking/oc that referenced this pull request Sep 12, 2024
Catching up with [1], and a backport-ish of 45ab914729 (vendor: Update
openshift/api to pick up the v4.17 capability sets, 2024-09-11, openshift#1875),
which may or may not land due to conflicts with the Kubernetes rebase
[2].  Generated with:

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ git add -A go.* vendor

all using:

  $ go version
  go version go1.22.2 linux/amd64

where GOPROXY=direct avoids a caching delay [3]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

This addresses [4]:

  $ cat v4.17-basecap.yaml
  ---
  apiVersion: v1
  platform:
    gcp:
      foo: bar
  capabilities:
    baselineCapabilitySet: v4.17
  $ ./oc adm release extract --install-config v4.17-basecap.yaml --included --credentials-requests --from quay.io/openshift-release-dev/ocp-release:4.17.0-rc.1-x86_64 --to /tmp/test
  error: unrecognized baselineCapabilitySet "v4.17"

because pkg/cli/admin/release/extract_tools.go uses the vendored
openshift/api/config/v1 to unpack capabilities.

[1]: openshift/api#2023
[2]: openshift#1875 (comment)
[3]: https://proxy.golang.org/
[4]: https://issues.redhat.com/browse/OCPBUGS-41111
wking added a commit to wking/openshift-installer that referenced this pull request Sep 12, 2024
Catching up with [1], and a backport-ish of 9d1f82a (vendor: Update
openshift/api to pick up v4.17 and v4.18 capability sets, 2024-09-12, openshift#9002).
Generated with:

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ go generate ./pkg/types/installconfig.go
  $ git add -A go.* vendor data/data/install.openshift.io_installconfigs.yaml

all using:

  $ go version
  go version go1.22.2 linux/amd64

where GOPROXY=direct avoids a caching delay [2]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

This will allow users to use the new capability sets in their install-config YAML.

[1]: openshift/api#2023
[2]: https://proxy.golang.org/
@openshift-bot
Copy link

[ART PR BUILD NOTIFIER]

Distgit: ose-cluster-config-api
This PR has been included in build ose-cluster-config-api-container-v4.17.0-202409122204.p0.g0a88001.assembly.stream.el9.
All builds following this will include this PR.

wking added a commit to wking/openshift-installer that referenced this pull request Sep 13, 2024
Catching up with [1], and a backport-ish of 9d1f82a (vendor: Update
openshift/api to pick up v4.17 and v4.18 capability sets, 2024-09-12, openshift#9002).
Generated with:

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ go generate ./pkg/types/installconfig.go
  $ git add -A go.* vendor data/data/install.openshift.io_installconfigs.yaml

all using:

  $ go version
  go version go1.23.1 linux/amd64

where GOPROXY=direct avoids a caching delay [2]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

This will allow users to use the new capability sets in their install-config YAML.

[1]: openshift/api#2023
[2]: https://proxy.golang.org/
wking added a commit to wking/openshift-installer that referenced this pull request Sep 13, 2024
Catching up with [1], and a backport-ish of 9d1f82a (vendor: Update
openshift/api to pick up v4.17 and v4.18 capability sets, 2024-09-12, openshift#9002).
Generated with:

  $ GOPROXY=direct go get github.com/openshift/api@release-4.17
  $ go mod tidy
  $ go mod vendor
  $ go generate ./pkg/types/installconfig.go
  $ git add -A go.* vendor data/data/install.openshift.io_installconfigs.yaml

all using:

  $ go version
  go version go1.23.1 linux/amd64

where GOPROXY=direct avoids a caching delay [2]:

  I committed a new change (or released a new version) to a
  repository, why isn't it showing up when I run go get -u or go list
  -m --versions?

  In order to improve our services' caching and serving latencies, new
  versions may not show up right away. If you want new code to be
  immediately available in the mirror, then first make sure there is a
  semantically versioned tag for this revision in the underlying
  source repository. Then explicitly request that version via go get
  module@version. The new version should be available within one
  minute. Note that if someone requested the version before the tag
  was pushed, it may take up to 30 minutes for the mirror's cache to
  expire and fresh data about the version to become available. If the
  version is still not available after 30 minutes, please file an
  issue.

This will allow users to use the new capability sets in their install-config YAML.

[1]: openshift/api#2023
[2]: https://proxy.golang.org/
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. backport-risk-assessed Indicates a PR to a release branch has been evaluated and considered safe to accept. cherry-pick-approved Indicates a cherry-pick PR into a release branch has been approved by the release branch manager. jira/severity-important Referenced Jira bug's severity is important for the branch this PR is targeting. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants