Merge https://github.com/IBM-Cloud/cloud-provider-ibm:release-1.36 (a8839b0) into main#96
Conversation
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: John Kasperski <jckasper@us.ibm.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Bump github.com/go-openapi/strfmt from 0.25.0 to 0.26.1 Bumps [github.com/go-openapi/strfmt](https://github.com/go-openapi/strfmt) from 0.25.0 to 0.26.1. - [Release notes](https://github.com/go-openapi/strfmt/releases) - [Commits](go-openapi/strfmt@v0.25.0...v0.26.1) --- updated-dependencies: - dependency-name: github.com/go-openapi/strfmt dependency-version: 0.26.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Fix go mod tidy issue * Move exclude to bottom of go.mod --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: jckasper <jckasper@us.ibm.com>
…y (#801) Bumps the go_modules group with 1 update in the / directory: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.79.1 to 1.79.3 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.79.1...v1.79.3) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-version: 1.79.3 dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Bumps the kubernetes-1-36 group with 5 updates: | Package | From | To | | --- | --- | --- | | [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.36.0-alpha.2` | `0.36.0-beta.0` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.36.0-alpha.2` | `0.36.0-beta.0` | | [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.36.0-alpha.2` | `0.36.0-beta.0` | | [k8s.io/component-base](https://github.com/kubernetes/component-base) | `0.36.0-alpha.2` | `0.36.0-beta.0` | | [k8s.io/component-helpers](https://github.com/kubernetes/component-helpers) | `0.36.0-alpha.2` | `0.36.0-beta.0` | Updates `k8s.io/apimachinery` from 0.36.0-alpha.2 to 0.36.0-beta.0 - [Commits](kubernetes/apimachinery@v0.36.0-alpha.2...v0.36.0-beta.0) Updates `k8s.io/client-go` from 0.36.0-alpha.2 to 0.36.0-beta.0 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](kubernetes/client-go@v0.36.0-alpha.2...v0.36.0-beta.0) Updates `k8s.io/cloud-provider` from 0.36.0-alpha.2 to 0.36.0-beta.0 - [Commits](kubernetes/cloud-provider@v0.36.0-alpha.2...v0.36.0-beta.0) Updates `k8s.io/component-base` from 0.36.0-alpha.2 to 0.36.0-beta.0 - [Commits](kubernetes/component-base@v0.36.0-alpha.2...v0.36.0-beta.0) Updates `k8s.io/component-helpers` from 0.36.0-alpha.2 to 0.36.0-beta.0 - [Commits](kubernetes/component-helpers@v0.36.0-alpha.2...v0.36.0-beta.0) --- updated-dependencies: - dependency-name: k8s.io/apimachinery dependency-version: 0.36.0-beta.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/client-go dependency-version: 0.36.0-beta.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/cloud-provider dependency-version: 0.36.0-beta.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-base dependency-version: 0.36.0-beta.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-helpers dependency-version: 0.36.0-beta.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kasperski <jckasper@us.ibm.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Bumps [DavidAnson/markdownlint-cli2-action](https://github.com/davidanson/markdownlint-cli2-action) from 22 to 23. - [Release notes](https://github.com/davidanson/markdownlint-cli2-action/releases) - [Commits](DavidAnson/markdownlint-cli2-action@v22...v23) --- updated-dependencies: - dependency-name: DavidAnson/markdownlint-cli2-action dependency-version: '23' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…841) Bumps [github.com/IBM/platform-services-go-sdk](https://github.com/IBM/platform-services-go-sdk) from 0.96.0 to 0.97.0. - [Release notes](https://github.com/IBM/platform-services-go-sdk/releases) - [Changelog](https://github.com/IBM/platform-services-go-sdk/blob/main/CHANGELOG.md) - [Commits](IBM/platform-services-go-sdk@v0.96.0...v0.97.0) --- updated-dependencies: - dependency-name: github.com/IBM/platform-services-go-sdk dependency-version: 0.97.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…858) Bumps [github.com/IBM/platform-services-go-sdk](https://github.com/IBM/platform-services-go-sdk) from 0.97.0 to 0.97.1. - [Release notes](https://github.com/IBM/platform-services-go-sdk/releases) - [Changelog](https://github.com/IBM/platform-services-go-sdk/blob/main/CHANGELOG.md) - [Commits](IBM/platform-services-go-sdk@v0.97.0...v0.97.1) --- updated-dependencies: - dependency-name: github.com/IBM/platform-services-go-sdk dependency-version: 0.97.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [github.com/IBM/vpc-go-sdk](https://github.com/IBM/vpc-go-sdk) from 0.80.0 to 0.81.0. - [Release notes](https://github.com/IBM/vpc-go-sdk/releases) - [Changelog](https://github.com/IBM/vpc-go-sdk/blob/master/CHANGELOG.md) - [Commits](IBM/vpc-go-sdk@v0.80.0...v0.81.0) --- updated-dependencies: - dependency-name: github.com/IBM/vpc-go-sdk dependency-version: 0.81.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the go_modules group with 1 update in the / directory: [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go). Updates `go.opentelemetry.io/otel/sdk` from 1.40.0 to 1.43.0 - [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases) - [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md) - [Commits](open-telemetry/opentelemetry-go@v1.40.0...v1.43.0) --- updated-dependencies: - dependency-name: go.opentelemetry.io/otel/sdk dependency-version: 1.43.0 dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/github-script](https://github.com/actions/github-script) from 8 to 9. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](actions/github-script@v8...v9) --- updated-dependencies: - dependency-name: actions/github-script dependency-version: '9' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the kubernetes-1-36 group with 6 updates: | Package | From | To | | --- | --- | --- | | [k8s.io/api](https://github.com/kubernetes/api) | `0.36.0-beta.0` | `0.36.0-rc.0` | | [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.36.0-beta.0` | `0.36.0-rc.0` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.36.0-beta.0` | `0.36.0-rc.0` | | [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.36.0-beta.0` | `0.36.0-rc.0` | | [k8s.io/component-base](https://github.com/kubernetes/component-base) | `0.36.0-beta.0` | `0.36.0-rc.0` | | [k8s.io/component-helpers](https://github.com/kubernetes/component-helpers) | `0.36.0-beta.0` | `0.36.0-rc.0` | Updates `k8s.io/api` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Commits](kubernetes/api@v0.36.0-beta.0...v0.36.0-rc.0) Updates `k8s.io/apimachinery` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Commits](kubernetes/apimachinery@v0.36.0-beta.0...v0.36.0-rc.0) Updates `k8s.io/client-go` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](kubernetes/client-go@v0.36.0-beta.0...v0.36.0-rc.0) Updates `k8s.io/cloud-provider` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Commits](kubernetes/cloud-provider@v0.36.0-beta.0...v0.36.0-rc.0) Updates `k8s.io/component-base` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Commits](kubernetes/component-base@v0.36.0-beta.0...v0.36.0-rc.0) Updates `k8s.io/component-helpers` from 0.36.0-beta.0 to 0.36.0-rc.0 - [Commits](kubernetes/component-helpers@v0.36.0-beta.0...v0.36.0-rc.0) --- updated-dependencies: - dependency-name: k8s.io/api dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/apimachinery dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/client-go dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/cloud-provider dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-base dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-helpers dependency-version: 0.36.0-rc.0 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: John Kasperski <jckasper@us.ibm.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: John Kasperski <jckasper@us.ibm.com>
…884) Bumps [github.com/IBM/platform-services-go-sdk](https://github.com/IBM/platform-services-go-sdk) from 0.97.1 to 0.97.2. - [Release notes](https://github.com/IBM/platform-services-go-sdk/releases) - [Changelog](https://github.com/IBM/platform-services-go-sdk/blob/main/CHANGELOG.md) - [Commits](IBM/platform-services-go-sdk@v0.97.1...v0.97.2) --- updated-dependencies: - dependency-name: github.com/IBM/platform-services-go-sdk dependency-version: 0.97.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [github.com/IBM/vpc-go-sdk](https://github.com/IBM/vpc-go-sdk) from 0.81.0 to 0.82.0. - [Release notes](https://github.com/IBM/vpc-go-sdk/releases) - [Changelog](https://github.com/IBM/vpc-go-sdk/blob/master/CHANGELOG.md) - [Commits](IBM/vpc-go-sdk@v0.81.0...v0.82.0) --- updated-dependencies: - dependency-name: github.com/IBM/vpc-go-sdk dependency-version: 0.82.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [github.com/IBM/vpc-go-sdk](https://github.com/IBM/vpc-go-sdk) from 0.82.0 to 0.82.1. - [Release notes](https://github.com/IBM/vpc-go-sdk/releases) - [Changelog](https://github.com/IBM/vpc-go-sdk/blob/master/CHANGELOG.md) - [Commits](IBM/vpc-go-sdk@v0.82.0...v0.82.1) --- updated-dependencies: - dependency-name: github.com/IBM/vpc-go-sdk dependency-version: 0.82.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the kubernetes-1-36 group with 6 updates: | Package | From | To | | --- | --- | --- | | [k8s.io/api](https://github.com/kubernetes/api) | `0.36.0-rc.0` | `0.36.0-rc.1` | | [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.36.0-rc.0` | `0.36.0-rc.1` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.36.0-rc.0` | `0.36.0-rc.1` | | [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.36.0-rc.0` | `0.36.0-rc.1` | | [k8s.io/component-base](https://github.com/kubernetes/component-base) | `0.36.0-rc.0` | `0.36.0-rc.1` | | [k8s.io/component-helpers](https://github.com/kubernetes/component-helpers) | `0.36.0-rc.0` | `0.36.0-rc.1` | Updates `k8s.io/api` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Commits](kubernetes/api@v0.36.0-rc.0...v0.36.0-rc.1) Updates `k8s.io/apimachinery` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Commits](kubernetes/apimachinery@v0.36.0-rc.0...v0.36.0-rc.1) Updates `k8s.io/client-go` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](kubernetes/client-go@v0.36.0-rc.0...v0.36.0-rc.1) Updates `k8s.io/cloud-provider` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Commits](kubernetes/cloud-provider@v0.36.0-rc.0...v0.36.0-rc.1) Updates `k8s.io/component-base` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Commits](kubernetes/component-base@v0.36.0-rc.0...v0.36.0-rc.1) Updates `k8s.io/component-helpers` from 0.36.0-rc.0 to 0.36.0-rc.1 - [Commits](kubernetes/component-helpers@v0.36.0-rc.0...v0.36.0-rc.1) --- updated-dependencies: - dependency-name: k8s.io/api dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/apimachinery dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/client-go dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/cloud-provider dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-base dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-helpers dependency-version: 0.36.0-rc.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughBumps Kubernetes-related modules and repo TAG to v1.36.1, advances Go toolchain to 1.26.0, updates golangci-lint to 2.12.2, refreshes many direct and indirect go.mod deps, updates package version/docs, and adds Dependabot plus three GitHub Actions workflows to automate updates and CI for generated PRs. ChangesVersion & Dependency Bumps
Automation / GitHub Workflows
Sequence Diagram(s)sequenceDiagram
actor Updater as Update Workflow
participant Repo as GitHub Repo
participant Runner as Actions Runner
participant PR as Pull Request
participant Dispatcher as Dispatch Workflow
Updater->>Repo: Read current version (Makefile)
Updater->>Repo: Query upstream (k8s/golangci releases)
alt version differs
Updater->>Repo: Commit bump and create PR
Updater->>Repo: repository_dispatch (pull-request-created) with pr_branch/pr_title
Dispatcher->>Repo: Checkout PR branch
Dispatcher->>Runner: Setup Go and tools, run make fmt/lint/vet/test/ccm
Runner->>PR: Post success comment
Runner->>PR: Enable auto-merge (squash)
else no change
Updater->>Repo: Log "No update needed"
end
🎯 4 (Complex) | ⏱️ ~50 minutes Important Pre-merge checks failedPlease resolve all errors before merging. Addressing warnings is optional. ❌ Failed checks (1 error, 2 warnings)
✅ Passed checks (9 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
Hi @cloud-team-rebase-bot[bot]. Thanks for your PR. I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions 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. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Actionable comments posted: 7
🧹 Nitpick comments (1)
.github/workflows/dispatch-pr-create.yml (1)
49-50: Consider removing redundantghCLI installation.The GitHub CLI (
gh) is pre-installed onubuntu-latestrunners. This step adds unnecessary installation time.♻️ Proposed fix
- - name: Install GitHub CLI - run: sudo apt-get install gh - - name: Get PR number for branch🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/dispatch-pr-create.yml around lines 49 - 50, Remove the redundant step that installs the GitHub CLI: delete the job/step named "Install GitHub CLI" that runs "sudo apt-get install gh" since the "gh" CLI is preinstalled on ubuntu-latest; ensure no downstream steps depend on that step name or its outputs and update any references to the step if necessary.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/dispatch-pr-create.yml:
- Around line 40-41: The workflow step name "Rnn go vet" contains a typo; update
the step's name string to "Run go vet" so the job reads correctly (locate the
step with name "Rnn go vet" in the dispatch-pr-create.yml workflow and change it
to "Run go vet").
- Around line 52-58: The step with id get-pr uses PR_NUMBER=$(gh pr list --head
"${{ github.event.client_payload.pr_branch }}" --json number --jq '.[0].number')
which can be empty; add validation immediately after that command to check if
PR_NUMBER is empty and handle it explicitly: if empty, print a clear error to
stderr (or to $GITHUB_OUTPUT) and exit with a non-zero status (or set a sentinel
output like pr_number=; export it) so downstream steps (the comment and
auto-merge steps) can be skipped via conditional checks; update the get-pr step
to include this check and ensure subsequent steps reference the pr_number output
and use if: ${{ steps.get-pr.outputs.pr_number != '' }} to avoid failing with
unclear errors.
In @.github/workflows/kube-update.yml:
- Around line 104-105: The PR branch name currently uses only
steps.new-k8s-ver.outputs.version which can collide across matrix bases; update
the branch: value to include the matrix branch as well (e.g. combine
matrix.branch and steps.new-k8s-ver.outputs.version) so each matrix base yields
a unique PR branch; apply the same change for the other occurrence where branch:
and base: are set alongside matrix.branch and steps.new-k8s-ver.outputs.version;
ensure the combined string uses the same YAML expression syntax (e.g. ${{
matrix.branch }}-${{ steps.new-k8s-ver.outputs.version }}) and optionally
sanitize slashes/characters if needed.
- Line 102: The PR body link points to the wrong repository; edit the string in
the kube-update.yml entry that reads "Check the PR results
[here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)"
and replace the repository segment with "openshift/cloud-provider-powervs" so it
becomes the correct actions workflow URL for this repo; update the link target
text if necessary to preserve readability.
- Line 23: The workflow references a non-existent tag
actions/download-artifact@v8 which will break the run; update the download
action tag to a valid major version such as actions/download-artifact@v3 or
actions/download-artifact@v4 (keep actions/upload-artifact@v7 and
actions/checkout@v6 as-is) so the workflow uses an available release; locate the
download step that mentions actions/download-artifact@v8 and replace the tag
accordingly.
- Around line 31-34: The workflow-level continue-on-error: true is masking
failed updates; remove the continue-on-error key or set it to false so failures
are surfaced, relying on strategy.fail-fast: false and max-parallel: 1 to
preserve matrix behavior; update the YAML to delete or change the
continue-on-error entry so failed branch updates no longer appear successful.
- Around line 3-8: Add an explicit top-level permissions block to the workflow
enabling only the tokens required by the token-using steps: grant contents:
write and pull-requests: write for peter-evans/create-pull-request and
repository-dispatch: write for peter-evans/repository-dispatch; place this
permissions map at the top-level of the workflow (alongside the existing on:
block) so GITHUB_TOKEN has the minimal required rights for those actions.
---
Nitpick comments:
In @.github/workflows/dispatch-pr-create.yml:
- Around line 49-50: Remove the redundant step that installs the GitHub CLI:
delete the job/step named "Install GitHub CLI" that runs "sudo apt-get install
gh" since the "gh" CLI is preinstalled on ubuntu-latest; ensure no downstream
steps depend on that step name or its outputs and update any references to the
step if necessary.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 815f27c6-9185-44e3-a798-38941cfe8c19
⛔ Files ignored due to path filters (291)
go.sumis excluded by!**/*.sumvendor/github.com/IBM/vpc-go-sdk/common/version.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/IBM/vpc-go-sdk/vpcv1/vpc_v1.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/btree/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/google/btree/btree_generic.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/export.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_disable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_enable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/diff.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/flags/flags.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/function/func.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/name.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/pointer.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/sort.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/path.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_references.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_reflect.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_slices.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_text.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_value.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/constants.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/COPYRIGHTis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/callmeta.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.travis.ymlis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/makefileis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/metric_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/util.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/context/context.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/README.mdis excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/adapt.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/internal/internal.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/serverreflection.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protodelim/protodelim.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/well_known_types.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/prototext/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/descfmt/stringer.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/version/version.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/apidiscovery/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/batch/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/certificates/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/coordination/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/core/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/discovery/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/zz_generated.validations.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/flowcontrol/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1alpha3/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1alpha3/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1alpha3/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1beta1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1beta2/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1beta2/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1beta2/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1beta2/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/scheduling/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/scheduling/v1alpha1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/scheduling/v1alpha2/doc.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1alpha2/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/scheduling/v1alpha2/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/scheduling/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/scheduling/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/storage/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**
📒 Files selected for processing (9)
.github/dependabot.yml.github/workflows/dispatch-pr-create.yml.github/workflows/golangci-update.yml.github/workflows/kube-update.ymlMakefileREADME.mdgo.modibm/ibm_version.gomain.go
| - name: Get PR number for branch | ||
| id: get-pr | ||
| run: | | ||
| PR_NUMBER=$(gh pr list --head "${{ github.event.client_payload.pr_branch }}" --json number --jq '.[0].number') | ||
| echo "pr_number=${PR_NUMBER}" >> "$GITHUB_OUTPUT" | ||
| env: | ||
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
There was a problem hiding this comment.
Add error handling for empty PR number.
If gh pr list returns no results (e.g., due to timing or the PR not being created), PR_NUMBER will be empty, causing the subsequent comment and auto-merge steps to fail with unclear errors.
🛡️ Proposed fix to add validation
- name: Get PR number for branch
id: get-pr
run: |
PR_NUMBER=$(gh pr list --head "${{ github.event.client_payload.pr_branch }}" --json number --jq '.[0].number')
+ if [ -z "$PR_NUMBER" ]; then
+ echo "::error::No PR found for branch ${{ github.event.client_payload.pr_branch }}"
+ exit 1
+ fi
echo "pr_number=${PR_NUMBER}" >> "$GITHUB_OUTPUT"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/dispatch-pr-create.yml around lines 52 - 58, The step with
id get-pr uses PR_NUMBER=$(gh pr list --head "${{
github.event.client_payload.pr_branch }}" --json number --jq '.[0].number')
which can be empty; add validation immediately after that command to check if
PR_NUMBER is empty and handle it explicitly: if empty, print a clear error to
stderr (or to $GITHUB_OUTPUT) and exit with a non-zero status (or set a sentinel
output like pr_number=; export it) so downstream steps (the comment and
auto-merge steps) can be skipped via conditional checks; update the get-pr step
to include this check and ensure subsequent steps reference the pr_number output
and use if: ${{ steps.get-pr.outputs.pr_number != '' }} to avoid failing with
unclear errors.
| on: | ||
| schedule: | ||
| - cron: "0 10 * * *" # Run at 10:00 UTC daily | ||
| workflow_dispatch: # Allow manual triggering | ||
|
|
||
| jobs: |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
What are the minimum GITHUB_TOKEN permissions required for peter-evans/create-pull-request and peter-evans/repository-dispatch in GitHub Actions?
💡 Result:
For peter-evans/create-pull-request (latest v6+), the minimum GITHUB_TOKEN permissions required are: permissions: contents: write pull-requests: write This is explicitly stated in the action's README. Repositories created after February 2023 have read-only GITHUB_TOKEN by default, so these must be set in the job or workflow. If PRs modify workflows, add workflows: write. For peter-evans/repository-dispatch (latest v4), the minimum GITHUB_TOKEN permission required is: permissions: contents: write This works for dispatching to the same repository (default). The action's README and examples show this, and issues confirm contents: write resolves "resource not accessible" errors for same-repo dispatch. For remote repositories, a PAT with repo scope (or fine-grained contents: read & write + metadata: read) is required instead of GITHUB_TOKEN. Additionally, ensure repository Settings > Actions > General > Workflow permissions allows "Read and write permissions" and "Allow GitHub Actions to create and approve pull requests" for create-pull-request.
Citations:
- 1: https://github.com/peter-evans/create-pull-request
- 2: https://github.com/peter-evans/repository-dispatch?tab=readme-ov-file
- 3: Breaking change with v6: Error: GitHub Actions is not permitted to create or approve pull requests. peter-evans/create-pull-request#2767
- 4: Error: Resource not accessible by integration peter-evans/repository-dispatch#196
🏁 Script executed:
cat -n .github/workflows/kube-update.ymlRepository: openshift/cloud-provider-powervs
Length of output: 5146
Declare explicit workflow permissions for token-dependent steps.
This workflow uses peter-evans/create-pull-request (line 94) and peter-evans/repository-dispatch (line 113), which require explicit permissions. Declaring minimal required permissions avoids failures when org/repo defaults are restrictive (repositories created after February 2023 have read-only GITHUB_TOKEN by default).
Suggested fix
on:
schedule:
- cron: "0 10 * * *" # Run at 10:00 UTC daily
workflow_dispatch: # Allow manual triggering
+permissions:
+ contents: write
+ pull-requests: write
+
jobs:📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| on: | |
| schedule: | |
| - cron: "0 10 * * *" # Run at 10:00 UTC daily | |
| workflow_dispatch: # Allow manual triggering | |
| jobs: | |
| on: | |
| schedule: | |
| - cron: "0 10 * * *" # Run at 10:00 UTC daily | |
| workflow_dispatch: # Allow manual triggering | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| jobs: |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/kube-update.yml around lines 3 - 8, Add an explicit
top-level permissions block to the workflow enabling only the tokens required by
the token-using steps: grant contents: write and pull-requests: write for
peter-evans/create-pull-request and repository-dispatch: write for
peter-evans/repository-dispatch; place this permissions map at the top-level of
the workflow (alongside the existing on: block) so GITHUB_TOKEN has the minimal
required rights for those actions.
| run: curl -L --fail --retry 10 --retry-all-errors --retry-delay 60 --retry-max-time 3600 -o shared-files/kube-tags.txt https://api.github.com/repos/kubernetes/kubernetes/tags | ||
|
|
||
| - name: Upload both files as one artifact | ||
| uses: actions/upload-artifact@v7 |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
check_ref() {
local repo="$1"
local tag="$2"
local code
code=$(curl -s -o /dev/null -w "%{http_code}" "https://api.github.com/repos/${repo}/git/ref/tags/${tag}")
echo "${repo}@${tag} -> HTTP ${code} (200 means tag exists)"
}
check_ref actions/upload-artifact v7
check_ref actions/checkout v6
check_ref actions/download-artifact v8Repository: openshift/cloud-provider-powervs
Length of output: 256
actions/download-artifact@v8 tag does not exist and will break the workflow.
Line 56 uses actions/download-artifact@v8, but this version tag is unavailable (HTTP 403). Change to an existing major version (e.g., v3, v4). Lines 23 and 51 (actions/upload-artifact@v7 and actions/checkout@v6) are valid.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/kube-update.yml at line 23, The workflow references a
non-existent tag actions/download-artifact@v8 which will break the run; update
the download action tag to a valid major version such as
actions/download-artifact@v3 or actions/download-artifact@v4 (keep
actions/upload-artifact@v7 and actions/checkout@v6 as-is) so the workflow uses
an available release; locate the download step that mentions
actions/download-artifact@v8 and replace the tag accordingly.
| continue-on-error: true | ||
| strategy: | ||
| fail-fast: false | ||
| max-parallel: 1 |
There was a problem hiding this comment.
Job-level continue-on-error hides failed updates.
With Line 31 set to true, scheduled runs can appear successful even when one or more branches fail. fail-fast: false already preserves matrix continuity without masking failures.
Suggested fix
- continue-on-error: true
strategy:
fail-fast: false📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| continue-on-error: true | |
| strategy: | |
| fail-fast: false | |
| max-parallel: 1 | |
| strategy: | |
| fail-fast: false | |
| max-parallel: 1 |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/kube-update.yml around lines 31 - 34, The workflow-level
continue-on-error: true is masking failed updates; remove the continue-on-error
key or set it to false so failures are surfaced, relying on strategy.fail-fast:
false and max-parallel: 1 to preserve matrix behavior; update the YAML to delete
or change the continue-on-error entry so failed branch updates no longer appear
successful.
|
|
||
| ✅ Tests completed successfully | ||
|
|
||
| Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) |
There was a problem hiding this comment.
PR body points to the wrong repository workflow URL.
Line 102 links to IBM-Cloud/cloud-provider-ibm, but this workflow is in openshift/cloud-provider-powervs. That sends reviewers to the wrong checks page.
Suggested fix
- Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)
+ Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) | |
| Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml) |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/kube-update.yml at line 102, The PR body link points to
the wrong repository; edit the string in the kube-update.yml entry that reads
"Check the PR results
[here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)"
and replace the repository segment with "openshift/cloud-provider-powervs" so it
becomes the correct actions workflow URL for this repo; update the link target
text if necessary to preserve readability.
| branch: ${{ steps.new-k8s-ver.outputs.version }} | ||
| base: ${{ matrix.branch }} |
There was a problem hiding this comment.
Use a unique PR branch per matrix base branch.
Line 104 uses only the Kubernetes version as branch name. If multiple release branches bump to the same TAG, branch names collide and PR creation/updating becomes ambiguous.
Suggested fix
- branch: ${{ steps.new-k8s-ver.outputs.version }}
+ branch: kube-update/${{ matrix.branch }}-${{ steps.new-k8s-ver.outputs.version }}
...
- "pr_branch": "${{ steps.new-k8s-ver.outputs.version }}",
+ "pr_branch": "kube-update/${{ matrix.branch }}-${{ steps.new-k8s-ver.outputs.version }}",Also applies to: 119-120
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.github/workflows/kube-update.yml around lines 104 - 105, The PR branch name
currently uses only steps.new-k8s-ver.outputs.version which can collide across
matrix bases; update the branch: value to include the matrix branch as well
(e.g. combine matrix.branch and steps.new-k8s-ver.outputs.version) so each
matrix base yields a unique PR branch; apply the same change for the other
occurrence where branch: and base: are set alongside matrix.branch and
steps.new-k8s-ver.outputs.version; ensure the combined string uses the same YAML
expression syntax (e.g. ${{ matrix.branch }}-${{
steps.new-k8s-ver.outputs.version }}) and optionally sanitize slashes/characters
if needed.
fe35749 to
c2af6ad
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (8)
.github/workflows/golangci-update.yml (2)
79-79:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winFix PR body link to this repository.
Line 79 hardcodes
IBM-Cloud/cloud-provider-ibm, which sends reviewers to the wrong workflow page for this repo.Suggested fix
- Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) + Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/golangci-update.yml at line 79, The PR body link is hardcoded to "IBM-Cloud/cloud-provider-ibm" and must point to the current repository; update the link text in the golangci-update workflow (the line containing "Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)") to reference the current repo dynamically (e.g., use the repository context or a variable such as github.repository or GITHUB_REPOSITORY) or replace the hardcoded owner/repo with the correct repository name so the link directs reviewers to this repo's dispatch-pr-create workflow.
3-10:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd explicit workflow permissions for PR creation/dispatch.
At Line 8, no top-level permissions are defined, but Lines 71 and 90 rely on write-capable tokens. This is fragile under read-only default
GITHUB_TOKENsettings.Suggested fix
on: schedule: - cron: "0 11 * * *" # Run at 11:00 UTC daily workflow_dispatch: # Allow manual triggering +permissions: + contents: write + pull-requests: write + jobs:🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/golangci-update.yml around lines 3 - 10, The workflow "golangci-update" currently lacks top-level permissions but later steps require write-capable tokens; add an explicit top-level permissions block (e.g., permissions: contents: write, issues: write, pull-requests: write, workflows: write as needed) to grant the GITHUB_TOKEN the required scopes for PR creation and dispatch and ensure these permissions appear before the jobs definition so steps that call the REST/Dispatch APIs have the needed write access..github/workflows/kube-update.yml (4)
31-31:⚠️ Potential issue | 🟠 Major | ⚡ Quick winDon’t mask matrix failures with
continue-on-error: true.Line 31 causes branch update failures to look successful.
strategy.fail-fast: false(Line 33) already preserves matrix progression without hiding failures.Suggested fix
- continue-on-error: true strategy: fail-fast: false🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/kube-update.yml at line 31, Remove the continue-on-error: true setting so matrix job failures are not masked; instead rely on strategy.fail-fast: false to allow other matrix entries to run while still surfacing failures. Locate the continue-on-error property in the workflow job definition (the key "continue-on-error" present near the matrix/strategy block) and delete it or set it to false so branch update failures are reported correctly.
104-105:⚠️ Potential issue | 🟠 Major | ⚡ Quick winUse a branch name that includes the matrix base branch.
Line 104 and Line 119 only use the Kubernetes version, so concurrent matrix runs can collide on the same PR branch name.
Suggested fix
- branch: ${{ steps.new-k8s-ver.outputs.version }} + branch: kube-update/${{ matrix.branch }}-${{ steps.new-k8s-ver.outputs.version }} ... - "pr_branch": "${{ steps.new-k8s-ver.outputs.version }}", + "pr_branch": "kube-update/${{ matrix.branch }}-${{ steps.new-k8s-ver.outputs.version }}",Also applies to: 119-120
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/kube-update.yml around lines 104 - 105, The branch name currently uses only steps.new-k8s-ver.outputs.version which can collide across matrix runs; change the branch assignment to include the matrix base branch (matrix.branch) so the PR branch is unique per matrix entry (e.g., combine matrix.branch and steps.new-k8s-ver.outputs.version into the branch value). Update both occurrences that set branch to steps.new-k8s-ver.outputs.version (and the similar use at the second location) to construct a composite name that includes matrix.branch and the version output.
102-102:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winFix PR body link to the current repository.
Line 102 points reviewers to
IBM-Cloud/cloud-provider-ibm, which is not this repository. Use${{ github.repository }}to avoid stale/wrong links.Suggested fix
- Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) + Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml)🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/kube-update.yml at line 102, Replace the hard-coded PR results link that points to "IBM-Cloud/cloud-provider-ibm" with a dynamic repository reference using ${{ github.repository }} so the URL always targets the current repo (e.g., update the string "https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml" to use ${{ github.repository }}); locate and modify the literal URL in the kube-update.yml workflow (the PR results link text) so reviewers are directed to the current repository's workflow run.
3-8:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd explicit workflow permissions for token-based actions.
At Line 8, the workflow starts jobs without a top-level
permissionsblock, but Lines 94 and 113 use token-dependent actions that commonly require write scopes. This can fail on repos/orgs with read-only defaultGITHUB_TOKEN.Suggested fix
on: schedule: - cron: "0 10 * * *" # Run at 10:00 UTC daily workflow_dispatch: # Allow manual triggering +permissions: + contents: write + pull-requests: write + jobs:🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/kube-update.yml around lines 3 - 8, Add a top-level permissions block to explicitly grant the GITHUB_TOKEN the scopes required by the token-dependent actions used later in the workflow (the actions that perform write operations with GITHUB_TOKEN). Insert a permissions section directly under the on: block and include at minimum the necessary write scopes (for example: contents: write and id-token: write, plus actions: write/packages: write or others needed by those specific actions); keep the permissions minimal and enumerate any extra scopes required by those token-using steps so the workflow will succeed even on repos/orgs with a read-only default GITHUB_TOKEN..github/workflows/dispatch-pr-create.yml (2)
5-11:⚠️ Potential issue | 🟠 Major | ⚡ Quick winDeclare explicit token permissions for PR comment/automerge steps.
At Line 9, jobs start without explicit permissions while later steps write PR comments and enable auto-merge. On read-only default tokens this fails intermittently across repos/orgs.
Suggested fix
on: repository_dispatch: types: [pull-request-created] +permissions: + contents: read + pull-requests: write + issues: write + jobs:🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/dispatch-pr-create.yml around lines 5 - 11, The workflow lacks explicit token permissions which breaks later steps that comment on PRs and enable auto-merge; add a permissions stanza to the job named dispatch-pr-create (or at workflow root) granting the minimum write rights needed, e.g. set permissions: pull-requests: write and contents: read (or contents: write if your steps modify repo files), so the steps that post PR comments and enable auto-merge succeed reliably when triggered by repository_dispatch.
55-57:⚠️ Potential issue | 🟠 Major | ⚡ Quick winGuard against empty PR lookup before comment/automerge steps.
Line 55 can return no matches; then Lines 64 and 72 consume an empty PR number and fail with low-signal errors.
Suggested fix
- name: Get PR number for branch id: get-pr run: | PR_NUMBER=$(gh pr list --head "${{ github.event.client_payload.pr_branch }}" --json number --jq '.[0].number') + if [ -z "$PR_NUMBER" ] || [ "$PR_NUMBER" = "null" ]; then + echo "::error::No PR found for branch ${{ github.event.client_payload.pr_branch }}" + echo "pr_number=" >> "$GITHUB_OUTPUT" + exit 1 + fi echo "pr_number=${PR_NUMBER}" >> "$GITHUB_OUTPUT" env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Comment on PR + if: ${{ steps.get-pr.outputs.pr_number != '' }} uses: peter-evans/create-or-update-comment@v5 with: token: ${{ secrets.GITHUB_TOKEN }} issue-number: ${{ steps.get-pr.outputs.pr_number }} body: | ✅ Tests completed successfully - name: Enable auto-merge + if: ${{ steps.get-pr.outputs.pr_number != '' }} uses: peter-evans/enable-pull-request-automerge@v3Also applies to: 60-73
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/dispatch-pr-create.yml around lines 55 - 57, The gh lookup can return empty PR_NUMBER; add a guard immediately after PR_NUMBER is set: check if the variable is empty and either fail early with a clear error log or set a sentinel output and exit successfully to skip downstream actions; then update the steps that consume PR_NUMBER (the steps referencing pr_number/output and the comment/automerge steps) to run only when the pr_number output is non-empty (use an if: condition checking the lookup step output not equal to '' or the sentinel). Ensure you reference the PR_NUMBER variable (from the gh pr list command) and the consuming steps' use of that output so callers do not run when PR_NUMBER is empty.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In @.github/workflows/dispatch-pr-create.yml:
- Around line 5-11: The workflow lacks explicit token permissions which breaks
later steps that comment on PRs and enable auto-merge; add a permissions stanza
to the job named dispatch-pr-create (or at workflow root) granting the minimum
write rights needed, e.g. set permissions: pull-requests: write and contents:
read (or contents: write if your steps modify repo files), so the steps that
post PR comments and enable auto-merge succeed reliably when triggered by
repository_dispatch.
- Around line 55-57: The gh lookup can return empty PR_NUMBER; add a guard
immediately after PR_NUMBER is set: check if the variable is empty and either
fail early with a clear error log or set a sentinel output and exit successfully
to skip downstream actions; then update the steps that consume PR_NUMBER (the
steps referencing pr_number/output and the comment/automerge steps) to run only
when the pr_number output is non-empty (use an if: condition checking the lookup
step output not equal to '' or the sentinel). Ensure you reference the PR_NUMBER
variable (from the gh pr list command) and the consuming steps' use of that
output so callers do not run when PR_NUMBER is empty.
In @.github/workflows/golangci-update.yml:
- Line 79: The PR body link is hardcoded to "IBM-Cloud/cloud-provider-ibm" and
must point to the current repository; update the link text in the
golangci-update workflow (the line containing "Check the PR results
[here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)")
to reference the current repo dynamically (e.g., use the repository context or a
variable such as github.repository or GITHUB_REPOSITORY) or replace the
hardcoded owner/repo with the correct repository name so the link directs
reviewers to this repo's dispatch-pr-create workflow.
- Around line 3-10: The workflow "golangci-update" currently lacks top-level
permissions but later steps require write-capable tokens; add an explicit
top-level permissions block (e.g., permissions: contents: write, issues: write,
pull-requests: write, workflows: write as needed) to grant the GITHUB_TOKEN the
required scopes for PR creation and dispatch and ensure these permissions appear
before the jobs definition so steps that call the REST/Dispatch APIs have the
needed write access.
In @.github/workflows/kube-update.yml:
- Line 31: Remove the continue-on-error: true setting so matrix job failures are
not masked; instead rely on strategy.fail-fast: false to allow other matrix
entries to run while still surfacing failures. Locate the continue-on-error
property in the workflow job definition (the key "continue-on-error" present
near the matrix/strategy block) and delete it or set it to false so branch
update failures are reported correctly.
- Around line 104-105: The branch name currently uses only
steps.new-k8s-ver.outputs.version which can collide across matrix runs; change
the branch assignment to include the matrix base branch (matrix.branch) so the
PR branch is unique per matrix entry (e.g., combine matrix.branch and
steps.new-k8s-ver.outputs.version into the branch value). Update both
occurrences that set branch to steps.new-k8s-ver.outputs.version (and the
similar use at the second location) to construct a composite name that includes
matrix.branch and the version output.
- Line 102: Replace the hard-coded PR results link that points to
"IBM-Cloud/cloud-provider-ibm" with a dynamic repository reference using ${{
github.repository }} so the URL always targets the current repo (e.g., update
the string
"https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml"
to use ${{ github.repository }}); locate and modify the literal URL in the
kube-update.yml workflow (the PR results link text) so reviewers are directed to
the current repository's workflow run.
- Around line 3-8: Add a top-level permissions block to explicitly grant the
GITHUB_TOKEN the scopes required by the token-dependent actions used later in
the workflow (the actions that perform write operations with GITHUB_TOKEN).
Insert a permissions section directly under the on: block and include at minimum
the necessary write scopes (for example: contents: write and id-token: write,
plus actions: write/packages: write or others needed by those specific actions);
keep the permissions minimal and enumerate any extra scopes required by those
token-using steps so the workflow will succeed even on repos/orgs with a
read-only default GITHUB_TOKEN.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: f9a615ab-1f3e-4713-b95b-4f37661932bf
⛔ Files ignored due to path filters (291)
go.sumis excluded by!**/*.sumvendor/github.com/IBM/platform-services-go-sdk/common/version.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/IBM/vpc-go-sdk/common/version.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/IBM/vpc-go-sdk/vpcv1/vpc_v1.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/.cirrus.ymlis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/CONTRIBUTING.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_fen.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_inotify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_kqueue.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_windows.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/fsnotify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/darwin.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_darwin.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_dragonfly.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_freebsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_kqueue.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_netbsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_openbsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/freebsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/unix.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/unix2.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/windows.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/CONTRIBUTORS.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/duration.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/go.workis excluded by!**/*.work,!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/go.work.sumis excluded by!**/*.sum,!**/vendor/**,!vendor/**vendor/github.com/google/btree/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/google/btree/btree_generic.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/export.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_disable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_enable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/diff.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/flags/flags.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/function/func.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/name.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/pointer.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/sort.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/path.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_references.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_reflect.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_slices.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_text.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_value.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/constants.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/COPYRIGHTis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/callmeta.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.travis.ymlis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/makefileis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/metric_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/util.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/context/context.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/hpack/tables.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/http2.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/server.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/transport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched_priority_rfc7540.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched_random.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sync/singleflight/singleflight.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_darwin_arm64_other.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_other_arm64.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_windows_arm64.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/windows/dll_windows.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/windows/security_windows.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/README.mdis excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/adapt.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/internal/internal.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/serverreflection.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protodelim/protodelim.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/well_known_types.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/prototext/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/descfmt/stringer.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/version/version.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/apidiscovery/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/batch/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/certificates/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/coordination/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/core/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/discovery/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/zz_generated.validations.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/flowcontrol/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1alpha3/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*
📒 Files selected for processing (9)
.github/dependabot.yml.github/workflows/dispatch-pr-create.yml.github/workflows/golangci-update.yml.github/workflows/kube-update.ymlMakefileREADME.mdgo.modibm/ibm_version.gomain.go
✅ Files skipped from review due to trivial changes (4)
- ibm/ibm_version.go
- README.md
- main.go
- Makefile
Bumps [github.com/fsnotify/fsnotify](https://github.com/fsnotify/fsnotify) from 1.10.0 to 1.10.1. - [Release notes](https://github.com/fsnotify/fsnotify/releases) - [Changelog](https://github.com/fsnotify/fsnotify/blob/main/CHANGELOG.md) - [Commits](fsnotify/fsnotify@v1.10.0...v1.10.1) --- updated-dependencies: - dependency-name: github.com/fsnotify/fsnotify dependency-version: 1.10.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
c2af6ad to
6402114
Compare
Bumps the kubernetes-1-36 group with 6 updates: | Package | From | To | | --- | --- | --- | | [k8s.io/api](https://github.com/kubernetes/api) | `0.36.0` | `0.36.1` | | [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.36.0` | `0.36.1` | | [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.36.0` | `0.36.1` | | [k8s.io/cloud-provider](https://github.com/kubernetes/cloud-provider) | `0.36.0` | `0.36.1` | | [k8s.io/component-base](https://github.com/kubernetes/component-base) | `0.36.0` | `0.36.1` | | [k8s.io/component-helpers](https://github.com/kubernetes/component-helpers) | `0.36.0` | `0.36.1` | Updates `k8s.io/api` from 0.36.0 to 0.36.1 - [Commits](kubernetes/api@v0.36.0...v0.36.1) Updates `k8s.io/apimachinery` from 0.36.0 to 0.36.1 - [Commits](kubernetes/apimachinery@v0.36.0...v0.36.1) Updates `k8s.io/client-go` from 0.36.0 to 0.36.1 - [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md) - [Commits](kubernetes/client-go@v0.36.0...v0.36.1) Updates `k8s.io/cloud-provider` from 0.36.0 to 0.36.1 - [Commits](kubernetes/cloud-provider@v0.36.0...v0.36.1) Updates `k8s.io/component-base` from 0.36.0 to 0.36.1 - [Commits](kubernetes/component-base@v0.36.0...v0.36.1) Updates `k8s.io/component-helpers` from 0.36.0 to 0.36.1 - [Commits](kubernetes/component-helpers@v0.36.0...v0.36.1) --- updated-dependencies: - dependency-name: k8s.io/api dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/apimachinery dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/client-go dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/cloud-provider dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-base dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 - dependency-name: k8s.io/component-helpers dependency-version: 0.36.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: kubernetes-1-36 ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fetch internal IPs of vms from dhcp server * Remove unnesesarry field from config
…ainer image to be consistent with ART for 4.17 Reconciling with https://github.com/openshift/ocp-build-data/tree/4c1326094222f9209876f06833179a1b9178faf7/images/ose-powervs-cloud-controller-manager.yml
…ainer image to be consistent with ART for 4.18 Reconciling with https://github.com/openshift/ocp-build-data/tree/827ab4ccce9cbbcf82c9dbaf6398b61d6cff8d7a/images/ose-powervs-cloud-controller-manager.yml
…ainer image to be consistent with ART for 4.19 Reconciling with https://github.com/openshift/ocp-build-data/tree/a39508c86497b4e5e463d7b2c78e51e577be9e7d/images/ose-powervs-cloud-controller-manager.yml
Signed-off-by: Prajyot Parab <Prajyot.Parab2@ibm.com> # Conflicts: # vendor/golang.org/x/crypto/internal/poly1305/sum_amd64.go # vendor/golang.org/x/crypto/poly1305/sum_amd64.go # vendor/golang.org/x/crypto/poly1305/sum_asm.go # vendor/golang.org/x/crypto/poly1305/sum_loong64.s # vendor/golang.org/x/crypto/poly1305/sum_ppc64le.go # vendor/golang.org/x/net/context/go17.go # vendor/golang.org/x/net/context/go19.go # vendor/golang.org/x/net/context/pre_go17.go # vendor/golang.org/x/net/context/pre_go19.go # vendor/golang.org/x/net/html/atom/table.go # vendor/golang.org/x/net/html/parse.go # vendor/golang.org/x/net/html/token.go # vendor/golang.org/x/sys/cpu/cpu_loong64.go # vendor/golang.org/x/sys/cpu/parse.go # vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go # vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go # vendor/golang.org/x/sys/windows/registry/key.go # vendor/golang.org/x/sys/windows/registry/value.go # vendor/golang.org/x/text/internal/number/format.go # vendor/golang.org/x/text/language/parse.go
…ainer image to be consistent with ART for 4.20 Reconciling with https://github.com/openshift/ocp-build-data/tree/8f77fc475c95f9d98c348deb2feb88f5952d7357/images/ose-powervs-cloud-controller-manager.yml
…ainer image to be consistent with ART for 4.21 Reconciling with https://github.com/openshift/ocp-build-data/tree/4fbe3fab45239dc4be6f5d9d98a0bf36e0274ec9/images/ose-powervs-cloud-controller-manager.yml
…ainer image to be consistent with ART for 4.22 Reconciling with https://github.com/openshift/ocp-build-data/tree/56cb39ad358cdec1db7c84ea1919fe8849c2550b/images/ose-powervs-cloud-controller-manager.yml
6402114 to
f14d681
Compare
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/golangci-update.yml:
- Around line 69-86: The PR body in the "Create pull request" step contains a
hardcoded link to IBM-Cloud/cloud-provider-ibm; update the body string under the
with: body field for the peter-evans/create-pull-request action to build the
correct repo URL dynamically (use the GitHub Actions context variables such as
${{ github.server_url }}/${{ github.repository
}}/actions/workflows/dispatch-pr-create.yml or ${{ github.server_url } }/${{
github.repository }} as appropriate) so the "Check the PR results" link points
to the current repository instead of the hardcoded IBM-Cloud repo.
- Around line 41-49: The curl call that sets latest_tag in the "Get latest
golangci-lint release" step lacks fail-on-error handling, so network/HTTP errors
or rate limits can produce empty or invalid output; update the run block that
defines latest_tag to call curl with the --fail (or -f) flag and/or
retry/backoff and validate that the result is non-empty and not "null" (check
the latest_tag variable) before using it, and on failure log a clear error and
fall back to steps.current.outputs.version (echoing the chosen version to
GITHUB_OUTPUT as before).
- Around line 36-39: The current extraction of GOLANGCI_LINT_VERSION in the
GitHub Actions step (id: current) is unguarded and can emit an empty/malformed
"version=v" string; modify the run block that greps the Makefile for
GOLANGCI_LINT_VERSION to check the grep/awk pipeline exit status and validate
the extracted value (e.g., non-empty and matches a semver-like pattern) before
echoing to GITHUB_OUTPUT, and if validation fails, fail the step with an
explicit error message indicating the Makefile parse/variable issue so
downstream steps don’t receive an invalid version.
- Around line 56-67: The sed line in the commit-change step blindly strips the
first character from CURRENT and LATEST using ${CURRENT:1}/${LATEST:1}, which
corrupts versions if they don't start with 'v'; update the run script in the
commit-change step (the block that includes the sed command and commit_msg) to
validate and normalize the variables first (e.g., if a variable starts with 'v'
strip it, otherwise leave it intact), assign normalized values (e.g., curr and
latest) and use those in the sed invocation and commit message so the Makefile
update and commit_msg use correct versions; ensure you reference the existing
CURRENT and LATEST env variables and replace the direct ${CURRENT:1}/${LATEST:1}
usage with the validated normalized variables.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 36e843df-876a-49f3-b721-b457164b170b
⛔ Files ignored due to path filters (291)
go.sumis excluded by!**/*.sumvendor/github.com/IBM/platform-services-go-sdk/common/version.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/IBM/vpc-go-sdk/common/version.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/IBM/vpc-go-sdk/vpcv1/vpc_v1.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/.cirrus.ymlis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/CONTRIBUTING.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_fen.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_inotify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_kqueue.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/backend_windows.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/fsnotify.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/darwin.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_darwin.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_dragonfly.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_freebsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_kqueue.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_netbsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/debug_openbsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/freebsd.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/unix.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/unix2.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/fsnotify/fsnotify/internal/windows.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/CONTRIBUTORS.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/duration.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/go.workis excluded by!**/*.work,!**/vendor/**,!vendor/**vendor/github.com/go-openapi/strfmt/go.work.sumis excluded by!**/*.sum,!**/vendor/**,!vendor/**vendor/github.com/google/btree/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/google/btree/btree_generic.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/export.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_disable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/debug_enable.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/diff/diff.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/flags/flags.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/function/func.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/name.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/pointer.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/internal/value/sort.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/path.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_compare.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_references.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_reflect.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_slices.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_text.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/google/go-cmp/cmp/report_value.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/client_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/constants.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus/server_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/COPYRIGHTis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/LICENSEis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/callmeta.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/doc.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.gitignoreis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/.travis.ymlis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/CHANGELOG.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/README.mdis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/client_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/makefileis excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/metric_options.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_metrics.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/server_reporter.gois excluded by!**/vendor/**,!vendor/**vendor/github.com/grpc-ecosystem/go-grpc-prometheus/util.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/context/context.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/hpack/tables.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/http2.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/server.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/transport.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched_priority_rfc7540.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/net/http2/writesched_random.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sync/singleflight/singleflight.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_darwin_arm64_other.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_other_arm64.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/cpu/cpu_windows_arm64.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/windows/dll_windows.gois excluded by!**/vendor/**,!vendor/**vendor/golang.org/x/sys/windows/security_windows.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/README.mdis excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/adapt.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/grpc_reflection_v1alpha/reflection_grpc.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/internal/internal.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/grpc/reflection/serverreflection.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protodelim/protodelim.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/protojson/well_known_types.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/encoding/prototext/decode.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/descfmt/stringer.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/internal/version/version.gois excluded by!**/vendor/**,!vendor/**vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admission/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/admissionregistration/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/apidiscovery/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apidiscovery/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apiserverinternal/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/apps/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1alpha1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authentication/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/authorization/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/autoscaling/v2beta2/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/batch/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/batch/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/certificates/v1beta1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/certificates/v1beta1/zz_generated.prerelease-lifecycle.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/coordination/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1alpha2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/coordination/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/core/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/core/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/discovery/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/discovery/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/extensions/v1beta1/zz_generated.validations.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/flowcontrol/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta2/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/flowcontrol/v1beta3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/imagepolicy/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/networking/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/node/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/policy/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1alpha1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/rbac/v1beta1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1/zz_generated.model_name.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*vendor/k8s.io/api/resource/v1alpha3/generated.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/generated.protomessage.pb.gois excluded by!**/*.pb.go,!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/register.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/types_swagger_doc_generated.gois excluded by!**/vendor/**,!vendor/**vendor/k8s.io/api/resource/v1alpha3/zz_generated.deepcopy.gois excluded by!**/vendor/**,!vendor/**,!**/zz_generated*
📒 Files selected for processing (9)
.github/dependabot.yml.github/workflows/dispatch-pr-create.yml.github/workflows/golangci-update.yml.github/workflows/kube-update.ymlMakefileREADME.mdgo.modibm/ibm_version.gomain.go
✅ Files skipped from review due to trivial changes (3)
- README.md
- main.go
- ibm/ibm_version.go
🚧 Files skipped from review as they are similar to previous changes (5)
- Makefile
- .github/dependabot.yml
- .github/workflows/dispatch-pr-create.yml
- .github/workflows/kube-update.yml
- go.mod
| - name: Get current golangci-lint version for ${{ matrix.branch }} | ||
| id: current | ||
| run: | | ||
| echo "version=v$(grep '^GOLANGCI_LINT_VERSION ' Makefile | awk '{ print $3 }')" >> "$GITHUB_OUTPUT" |
There was a problem hiding this comment.
Add error handling for version extraction.
The grep and awk pipeline has no error handling. If the Makefile is missing, formatted differently, or doesn't contain the expected GOLANGCI_LINT_VERSION variable, the pipeline will silently produce an empty or malformed version string (e.g., version=v), causing downstream failures.
🛡️ Proposed fix to add validation
- name: Get current golangci-lint version for ${{ matrix.branch }}
id: current
run: |
- echo "version=v$(grep '^GOLANGCI_LINT_VERSION ' Makefile | awk '{ print $3 }')" >> "$GITHUB_OUTPUT"
+ version=$(grep '^GOLANGCI_LINT_VERSION ' Makefile | awk '{ print $3 }')
+ if [ -z "$version" ]; then
+ echo "Error: Failed to extract GOLANGCI_LINT_VERSION from Makefile"
+ exit 1
+ fi
+ echo "version=v$version" >> "$GITHUB_OUTPUT"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - name: Get current golangci-lint version for ${{ matrix.branch }} | |
| id: current | |
| run: | | |
| echo "version=v$(grep '^GOLANGCI_LINT_VERSION ' Makefile | awk '{ print $3 }')" >> "$GITHUB_OUTPUT" | |
| - name: Get current golangci-lint version for ${{ matrix.branch }} | |
| id: current | |
| run: | | |
| version=$(grep '^GOLANGCI_LINT_VERSION ' Makefile | awk '{ print $3 }') | |
| if [ -z "$version" ]; then | |
| echo "Error: Failed to extract GOLANGCI_LINT_VERSION from Makefile" | |
| exit 1 | |
| fi | |
| echo "version=v$version" >> "$GITHUB_OUTPUT" |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/golangci-update.yml around lines 36 - 39, The current
extraction of GOLANGCI_LINT_VERSION in the GitHub Actions step (id: current) is
unguarded and can emit an empty/malformed "version=v" string; modify the run
block that greps the Makefile for GOLANGCI_LINT_VERSION to check the grep/awk
pipeline exit status and validate the extracted value (e.g., non-empty and
matches a semver-like pattern) before echoing to GITHUB_OUTPUT, and if
validation fails, fail the step with an explicit error message indicating the
Makefile parse/variable issue so downstream steps don’t receive an invalid
version.
| - name: Get latest golangci-lint release | ||
| id: latest | ||
| run: | | ||
| latest_tag=$(curl -s https://api.github.com/repos/golangci/golangci-lint/releases/latest | jq -r .tag_name) | ||
| if [ "$latest_tag" == "null" ]; then | ||
| echo "Failed to fetch latest version, using current version as fallback" | ||
| latest_tag="${{ steps.current.outputs.version }}" | ||
| fi | ||
| echo "version=$latest_tag" >> "$GITHUB_OUTPUT" |
There was a problem hiding this comment.
Add error handling for GitHub API request.
The curl command lacks the --fail flag and doesn't handle network failures or API rate limits. If the request fails (network error, rate limit, HTTP error), latest_tag could be empty or contain error JSON, leading to silent failures or incorrect version comparisons.
🛡️ Proposed fix to add robust error handling
- name: Get latest golangci-lint release
id: latest
run: |
- latest_tag=$(curl -s https://api.github.com/repos/golangci/golangci-lint/releases/latest | jq -r .tag_name)
- if [ "$latest_tag" == "null" ]; then
+ latest_tag=$(curl -sSf https://api.github.com/repos/golangci/golangci-lint/releases/latest | jq -r .tag_name)
+ if [ -z "$latest_tag" ] || [ "$latest_tag" == "null" ]; then
echo "Failed to fetch latest version, using current version as fallback"
latest_tag="${{ steps.current.outputs.version }}"
fi
echo "version=$latest_tag" >> "$GITHUB_OUTPUT"Note: The -f flag makes curl fail on HTTP errors, and the check now handles both empty and "null" values.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/golangci-update.yml around lines 41 - 49, The curl call
that sets latest_tag in the "Get latest golangci-lint release" step lacks
fail-on-error handling, so network/HTTP errors or rate limits can produce empty
or invalid output; update the run block that defines latest_tag to call curl
with the --fail (or -f) flag and/or retry/backoff and validate that the result
is non-empty and not "null" (check the latest_tag variable) before using it, and
on failure log a clear error and fall back to steps.current.outputs.version
(echoing the chosen version to GITHUB_OUTPUT as before).
| - name: Update code and commit changes | ||
| if: steps.current.outputs.version != steps.latest.outputs.version | ||
| id: commit-change | ||
| run: | | ||
| sed -i -e "s/GOLANGCI_LINT_VERSION := ${CURRENT:1}/GOLANGCI_LINT_VERSION := ${LATEST:1}/g" Makefile | ||
| commit_msg="Bump golangci-lint from ${{ steps.current.outputs.version }} to ${{ steps.latest.outputs.version }} in branch ${{ matrix.branch }}" | ||
| echo "msg=$commit_msg" >> "$GITHUB_OUTPUT" | ||
| git add Makefile | ||
| git commit -m "$commit_msg" | ||
| env: | ||
| CURRENT: ${{ steps.current.outputs.version }} | ||
| LATEST: ${{ steps.latest.outputs.version }} |
There was a problem hiding this comment.
Validate version format before string slicing.
The sed command assumes both CURRENT and LATEST versions start with 'v' (using ${CURRENT:1} and ${LATEST:1} to strip it). If this assumption is violated—for example, if the fallback is used or the API format changes—the string slicing will remove the first character of the actual version number, corrupting the Makefile.
🛡️ Proposed fix to add validation
- name: Update code and commit changes
if: steps.current.outputs.version != steps.latest.outputs.version
id: commit-change
run: |
+ if [[ ! "$CURRENT" =~ ^v.+ ]] || [[ ! "$LATEST" =~ ^v.+ ]]; then
+ echo "Error: Version format must start with 'v'. Got CURRENT=$CURRENT, LATEST=$LATEST"
+ exit 1
+ fi
sed -i -e "s/GOLANGCI_LINT_VERSION := ${CURRENT:1}/GOLANGCI_LINT_VERSION := ${LATEST:1}/g" Makefile
commit_msg="Bump golangci-lint from ${{ steps.current.outputs.version }} to ${{ steps.latest.outputs.version }} in branch ${{ matrix.branch }}"
echo "msg=$commit_msg" >> "$GITHUB_OUTPUT"
git add Makefile
git commit -m "$commit_msg"
env:
CURRENT: ${{ steps.current.outputs.version }}
LATEST: ${{ steps.latest.outputs.version }}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - name: Update code and commit changes | |
| if: steps.current.outputs.version != steps.latest.outputs.version | |
| id: commit-change | |
| run: | | |
| sed -i -e "s/GOLANGCI_LINT_VERSION := ${CURRENT:1}/GOLANGCI_LINT_VERSION := ${LATEST:1}/g" Makefile | |
| commit_msg="Bump golangci-lint from ${{ steps.current.outputs.version }} to ${{ steps.latest.outputs.version }} in branch ${{ matrix.branch }}" | |
| echo "msg=$commit_msg" >> "$GITHUB_OUTPUT" | |
| git add Makefile | |
| git commit -m "$commit_msg" | |
| env: | |
| CURRENT: ${{ steps.current.outputs.version }} | |
| LATEST: ${{ steps.latest.outputs.version }} | |
| - name: Update code and commit changes | |
| if: steps.current.outputs.version != steps.latest.outputs.version | |
| id: commit-change | |
| run: | | |
| if [[ ! "$CURRENT" =~ ^v.+ ]] || [[ ! "$LATEST" =~ ^v.+ ]]; then | |
| echo "Error: Version format must start with 'v'. Got CURRENT=$CURRENT, LATEST=$LATEST" | |
| exit 1 | |
| fi | |
| sed -i -e "s/GOLANGCI_LINT_VERSION := ${CURRENT:1}/GOLANGCI_LINT_VERSION := ${LATEST:1}/g" Makefile | |
| commit_msg="Bump golangci-lint from ${{ steps.current.outputs.version }} to ${{ steps.latest.outputs.version }} in branch ${{ matrix.branch }}" | |
| echo "msg=$commit_msg" >> "$GITHUB_OUTPUT" | |
| git add Makefile | |
| git commit -m "$commit_msg" | |
| env: | |
| CURRENT: ${{ steps.current.outputs.version }} | |
| LATEST: ${{ steps.latest.outputs.version }} |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/golangci-update.yml around lines 56 - 67, The sed line in
the commit-change step blindly strips the first character from CURRENT and
LATEST using ${CURRENT:1}/${LATEST:1}, which corrupts versions if they don't
start with 'v'; update the run script in the commit-change step (the block that
includes the sed command and commit_msg) to validate and normalize the variables
first (e.g., if a variable starts with 'v' strip it, otherwise leave it intact),
assign normalized values (e.g., curr and latest) and use those in the sed
invocation and commit message so the Makefile update and commit_msg use correct
versions; ensure you reference the existing CURRENT and LATEST env variables and
replace the direct ${CURRENT:1}/${LATEST:1} usage with the validated normalized
variables.
| - name: Create pull request | ||
| if: steps.current.outputs.version != steps.latest.outputs.version | ||
| uses: peter-evans/create-pull-request@v8 | ||
| with: | ||
| title: ${{ steps.commit-change.outputs.msg }} | ||
| body: | | ||
| If you do not see: | ||
|
|
||
| ✅ Tests completed successfully | ||
|
|
||
| Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) | ||
| commit-message: ${{ steps.commit-change.outputs.msg }} | ||
| branch: golangci-${{ steps.latest.outputs.version }}-${{ matrix.branch }} | ||
| base: ${{ matrix.branch }} | ||
| labels: | | ||
| golangci-update | ||
| ${{ matrix.branch }} | ||
| delete-branch: true |
There was a problem hiding this comment.
Fix hardcoded repository URL in PR body.
The URL on line 79 points to IBM-Cloud/cloud-provider-ibm but this workflow is being merged into openshift/cloud-provider-powervs. Users clicking the link to check PR results will be directed to the wrong repository, breaking the workflow's transparency and making debugging impossible.
🐛 Proposed fix to use correct repository
- name: Create pull request
if: steps.current.outputs.version != steps.latest.outputs.version
uses: peter-evans/create-pull-request@v8
with:
title: ${{ steps.commit-change.outputs.msg }}
body: |
If you do not see:
✅ Tests completed successfully
- Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml)
+ Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml)
commit-message: ${{ steps.commit-change.outputs.msg }}
branch: golangci-${{ steps.latest.outputs.version }}-${{ matrix.branch }}
base: ${{ matrix.branch }}
labels: |
golangci-update
${{ matrix.branch }}
delete-branch: true📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - name: Create pull request | |
| if: steps.current.outputs.version != steps.latest.outputs.version | |
| uses: peter-evans/create-pull-request@v8 | |
| with: | |
| title: ${{ steps.commit-change.outputs.msg }} | |
| body: | | |
| If you do not see: | |
| ✅ Tests completed successfully | |
| Check the PR results [here](https://github.com/IBM-Cloud/cloud-provider-ibm/actions/workflows/dispatch-pr-create.yml) | |
| commit-message: ${{ steps.commit-change.outputs.msg }} | |
| branch: golangci-${{ steps.latest.outputs.version }}-${{ matrix.branch }} | |
| base: ${{ matrix.branch }} | |
| labels: | | |
| golangci-update | |
| ${{ matrix.branch }} | |
| delete-branch: true | |
| - name: Create pull request | |
| if: steps.current.outputs.version != steps.latest.outputs.version | |
| uses: peter-evans/create-pull-request@v8 | |
| with: | |
| title: ${{ steps.commit-change.outputs.msg }} | |
| body: | | |
| If you do not see: | |
| ✅ Tests completed successfully | |
| Check the PR results [here](https://github.com/${{ github.repository }}/actions/workflows/dispatch-pr-create.yml) | |
| commit-message: ${{ steps.commit-change.outputs.msg }} | |
| branch: golangci-${{ steps.latest.outputs.version }}-${{ matrix.branch }} | |
| base: ${{ matrix.branch }} | |
| labels: | | |
| golangci-update | |
| ${{ matrix.branch }} | |
| delete-branch: true |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/golangci-update.yml around lines 69 - 86, The PR body in
the "Create pull request" step contains a hardcoded link to
IBM-Cloud/cloud-provider-ibm; update the body string under the with: body field
for the peter-evans/create-pull-request action to build the correct repo URL
dynamically (use the GitHub Actions context variables such as ${{
github.server_url }}/${{ github.repository
}}/actions/workflows/dispatch-pr-create.yml or ${{ github.server_url } }/${{
github.repository }} as appropriate) so the "Check the PR results" link points
to the current repository instead of the hardcoded IBM-Cloud repo.
Summary by CodeRabbit
Chores
New Workflows