Skip to content

fix(ci): Add initial config for renovate - #103

Open
dominikholler wants to merge 1 commit into
kubevirt:mainfrom
dominikholler:add_renovate
Open

fix(ci): Add initial config for renovate#103
dominikholler wants to merge 1 commit into
kubevirt:mainfrom
dominikholler:add_renovate

Conversation

@dominikholler

@dominikholler dominikholler commented Jun 26, 2026

Copy link
Copy Markdown

What this PR does / why we need it:

Renovate is used to update Go dependencies to the latest version in the main branch. Currently, many dependencies are excluded because updating them would require code changes.
As soon as these dependencies are updated, Renovate can start monitoring them.

In addition, Renovate keeps the GitHub actions and updates the Renovate action itself.

There is an example run in https://github.com/tmp-kv-mirror/virt-template/actions/runs/28255231964/job/83716489678

Renovate is used to update Go dependencies to the latest version
in the main branch. Currently, many dependencies are excluded
because updating them would require code changes.
As soon as these dependencies are updated, Renovate can start
monitoring them.

In addition, Renovate keeps the GitHub actions and updates the
Renovate action itself.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Dominik Holler <dholler@redhat.com>
@kubevirt-prow

kubevirt-prow Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it.

Details

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

@kubevirt-prow kubevirt-prow Bot added dco-signoff: yes Indicates the PR's author has DCO signed all their commits. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. labels Jun 26, 2026
@kubevirt-prow
kubevirt-prow Bot requested a review from ksimon1 June 26, 2026 18:05
@kubevirt-prow

kubevirt-prow Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign 0xfelix for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubevirt-prow
kubevirt-prow Bot requested a review from lyarwood June 26, 2026 18:05
@kubevirt-prow kubevirt-prow Bot added the size/L label Jun 26, 2026
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [":gitSignOff"],
"requireConfig": "ignored",
"gitAuthor": "Renovate Bot <renovate@hollyhome.ath.cx>",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This email was autogenerated?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The email can be removed, or from my perspective better adjusted to the account for RENOVATE_FORK_TOKEN

# "Renovate Bot" as author (via gitAuthor in the config).
#
# Required repository secrets (Settings > Secrets and variables > Actions):
# RENOVATE_TOKEN - PAT from an org member (classic with

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be possible to inject an API key with these permissions through GitHub Actions without tying this API key to a specific user account

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack, would be great, but I made a knot in my mind, but did not found a way.
The token needs permissions to create a PR to the repo.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://docs.github.com/en/actions/tutorials/authenticate-with-github_token

This should help you getting started with the GITHUB_TOKEN

# RENOVATE_TOKEN - PAT from an org member (classic with
# public_repo scope, or fine-grained with
# Pull requests R/W scoped to this repo).
# RENOVATE_FORK_TOKEN - PAT from the bot account (classic with

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the bot would create branches in this repo, would we even need a separate fork then?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If RENOVATE_FORK_TOKEN is used, the fork will be in the repo of RENOVATE_TOKEN and avoid temporary branches in this repo. #88 was generated by this configuration.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My idea was to avoid external dependencies (repos / tokens). IMO it is okay to have temporary branches in this repo (one per updated branch?).

Comment on lines +50 to +62
"golang.org/x/{/,}**",
"google.golang.org/{/,}**",
"go.opentelemetry.io/{/,}**",
"github.com/onsi/ginkgo/{/,}**",
"github.com/go-openapi/{/,}**",
"github.com/grpc-ecosystem/{/,}**",
"github.com/prometheus/procfs{/,}**",
"go.etcd.io/etcd/{/,}**",
"k8s.io/{/,}**",
"kubevirt.io/{/,}**",
"sigs.k8s.io/{/,}**",
"github.com/openshift/{/,}**",
"github.com/prometheus-operator/{/,}**"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be OK to automatically update most of these? Perhaps exclude only k8s.io and sigs.k8s.io.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right now the next upate seems to require application code changes.
If they are updated manually before merging this PR, this would make sense.

"description": "Disable openshift/api updates as they may require code changes",
"enabled": false,
"matchPackageNames": [
"github.com/openshift/api"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move this to exclude block below?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

makes sense, would require verification. I will do it after we have an idea about the tokens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates the PR's author has DCO signed all their commits. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. size/L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants