Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

platform releasing: Auto-update (dependabot?) after module releases #839

Open
dmihalcik-virtru opened this issue May 20, 2024 · 1 comment
Labels

Comments

@dmihalcik-virtru
Copy link
Member

When we tag a new release (currently, by approving a release-please generated PR) we should get a follow-up PR (or automatically generate and push a commit) that updates internal deps to use the new release.

For example, once #805 was merged, we could have generated a subset of the https://github.com/opentdf/platform/pull/815/files#diff-cd249c062d77b4d6a5621756423850d0708ffbe4aae554ce33cdc5b908b0ee39R7

which just updated all uses of platform/sdk in go.mods

@dmihalcik-virtru
Copy link
Member Author

After some investigation, it appears that we can pre-compute the go.sum. So it is possible that we could do a release that updates multiple packages at once - e.g. if protocol/go is updated, we can tag the same commit as released for protocol/go, sdk, and service.

However it may conflict with the merge queue approach - we'd have to somehow update the sum during the merge queue step if we want the release to be on main. So we could have releases be only on long-lived branches, or deal with a lot of merge queue failures due to mismatched go.sums if the contents of a module change due to merge queue conflicts.

For now I'm going ahead with the approach of two PRs per release, one that does the release and updates the changelog (the current automation) and then adding a second PR that updates downstream deps. Ideally we'd get to one PR per release but it may not be possible, due to the complexity of a solution (hand-rolling our own go.sum updates), competition with the merge queue (any changes to module content between PR approval and the merge event will bounce the release PR), and the fact that a job can only tag at most 3 releases at once (not sure about that). All are surmountable, but will take more time.

github-merge-queue bot pushed a commit that referenced this issue May 31, 2024
First, use the release please step to determine if a release was
created. If a library was released, build its list of downstream deps
(hard coded for now, could be queried with a script). Then, trigger
another job that updates those deps and builds a PR that updates them

Issue: #839
tech-guru42 added a commit to tech-guru42/TDF that referenced this issue Jun 3, 2024
First, use the release please step to determine if a release was
created. If a library was released, build its list of downstream deps
(hard coded for now, could be queried with a script). Then, trigger
another job that updates those deps and builds a PR that updates them

Issue: opentdf/platform#839
passion-127 added a commit to passion-127/TDF that referenced this issue Jun 6, 2024
First, use the release please step to determine if a release was
created. If a library was released, build its list of downstream deps
(hard coded for now, could be queried with a script). Then, trigger
another job that updates those deps and builds a PR that updates them

Issue: opentdf/platform#839
@github-actions github-actions bot added the Stale label Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant