Skip to content

Conversation

@xmudrii
Copy link
Member

@xmudrii xmudrii commented Nov 6, 2025

publishing-bot assumes that all staging repos are going to have the same tags. For example, if we cut v0.29.0 in kcp-dev/kcp, it'll be propagated to all staging repositories like apimachinery, client-go... That's not really case for us. What we do is that we modify the tag name to match the Go module major version of that staging repository. So v0.29.0 tag from kcp-dev/kcp might actually be v2.29.0 in kcp-dev/apimachinery.

This is breaking the dependency update mechanism that's done by sync-tags. What this mechanism does is that before tagging a staging/published repository, it would update dependencies to other staging repositories to a tagged version. For that, it would just take the tag from kcp-dev/kcp and use it because it expects that tag to exist in all staging repositories.

The problem is that sync-tags is not aware of configuration for other repositories, it doesn't know if apimachinery is at v0 or v2. But there's a helpful thing. sync-tags is also pushing a tag with format of kcp-<kcp-tag>, so we'll have a tag such as kcp-0.29.0. Using this, we can find the commit in the dependant staging repository with that tag, get all other tags for that commit, take the latest one if there are multiple tags, and then just use it for updating the dependency.

/assign @xrstf @embik

@kcp-ci-bot kcp-ci-bot added dco-signoff: yes Indicates the PR's author has signed the DCO. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 6, 2025
Copy link
Member

@embik embik left a comment

Choose a reason for hiding this comment

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

/approve

@kcp-ci-bot kcp-ci-bot added the lgtm Indicates that a PR is ready to be merged. label Nov 6, 2025
@kcp-ci-bot
Copy link

LGTM label has been added.

Git tree hash: af43ed01d1c58d018416b9cfdc38a43cfe07c224

@kcp-ci-bot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: embik

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

The pull request process is described here

Needs approval from an approver in each of these files:

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

@kcp-ci-bot kcp-ci-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 6, 2025
@kcp-ci-bot kcp-ci-bot merged commit a2772f5 into kcp-dev:master Nov 6, 2025
6 checks passed
@xmudrii xmudrii deleted the fix-deps-updating branch November 6, 2025 13:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has signed the DCO. lgtm Indicates that a PR is ready to be merged. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants