From 45a3b4f1ccb4bb603beb91f08acef9fcf09289e8 Mon Sep 17 00:00:00 2001 From: Tyler Yahn Date: Mon, 3 Nov 2025 08:32:05 -0800 Subject: [PATCH 1/2] Add prerelease make target --- Makefile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 9bdad7f2..4488d746 100644 --- a/Makefile +++ b/Makefile @@ -212,11 +212,14 @@ sync: submodule-version clean protobuf verify-versions: | $(MULTIMOD) $(MULTIMOD) verify +.PHONY: prerelease +prerelease: verify-versions + $(MULTIMOD) prerelease -a + COMMIT ?= "HEAD" REMOTE ?= upstream .PHONY: push-tags -push-tags: | $(MULTIMOD) - $(MULTIMOD) verify +push-tags: verify-versions | $(MULTIMOD) for module in stable unstable; do \ for tag in `$(MULTIMOD) tag -m $$module -c ${COMMIT} --print-tags | grep -v "Using"`; do \ echo "pushing tag $$tag"; \ From b1411dbb728a3062b3a569cf69fab610c209b2a0 Mon Sep 17 00:00:00 2001 From: Tyler Yahn Date: Mon, 3 Nov 2025 08:39:53 -0800 Subject: [PATCH 2/2] Update RELEASING docs --- RELEASING.md | 39 +++++++++++++++++++++++++++++++++------ 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/RELEASING.md b/RELEASING.md index 5f8ddb96..ffa25a28 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -8,26 +8,53 @@ have been updated and the generated code needs to be updated. ## Create a Release Pull Request -1. Update the [`opentelemetry-proto`] submodule and regenerate the code. +1. Create a new branch off of `main` for the release. + + ```sh + git checkout main + git pull origin main + git checkout -b release- + ``` + +2. Update the [`opentelemetry-proto`] submodule and regenerate the code. ```sh make sync VERSION= ``` -2. Edit [`versions.yaml`] with the new version number. Then, ensure the correct modules versions - are updated and the [`versions.yaml`] syntax is correct. + Commit the changes. + +3. Edit [`versions.yaml`] with the new version number. Then, ensure the correct + modules versions are updated and the [`versions.yaml`] syntax is correct. ```sh make verify-versions ``` -3. Verify the changes. + Commit the changes. + +4. Run the `prerelease` make target to update all cross-dependencies. + + ``` + make prerelease + ``` + + This will create a branch for each module set (i.e. + `prerelease__`). + + Verify the changes on each branch. + + ```sh + git diff ...prerelease__ + ``` + + If these changes look correct, merge them. ```sh - git diff main + git merge prerelease__ ``` -4. If everything looks good, push the changes to GitHub and open a pull request. +5. Push the changes to GitHub and open a pull request. - Title: `Release {{VERSION}}` - Body: