Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Copy change log updates from release/v1.14.x-0.35bx #109

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

Open
wants to merge 51 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
aa4c402
Update to "-dev" versions on main
trask Apr 27, 2022
dd8b7c0
Add prepare-release-branch workflow
trask Apr 27, 2022
9c89e04
Update change log format
trask Apr 27, 2022
be68b97
Update RELEASING.md
trask Apr 28, 2022
7406240
More explicit variable substitution
trask May 10, 2022
550c80f
Fix links
trask May 10, 2022
a27cc17
Remove unused section
trask May 11, 2022
9aadc68
Remove prior prepare release script
trask May 11, 2022
c801897
Add comment
trask May 11, 2022
d96da9b
Remove 'Update main' section
trask May 11, 2022
cd0544a
Add more detailed sub-bullet
trask May 11, 2022
17c0449
Remove hotfix procedure
trask May 11, 2022
2031863
Merge after release sections
trask May 11, 2022
07cbc82
Make clear release-notes.txt is temp file
trask May 17, 2022
b4c952d
Support pre-release versions
trask May 20, 2022
5952451
Update date on prepare patch release too
trask May 20, 2022
bcfbfb8
Add check to make sure release branch is selected
trask May 26, 2022
0d03305
Remove unused code
trask May 26, 2022
9f8b0b0
Simplify change log management
trask Jun 5, 2022
350be4f
Comment improvement
trask Jun 6, 2022
4432900
Better change log handling
trask Jun 6, 2022
2c6a8ed
Update doc
trask Jun 6, 2022
098c216
Fixes
trask Jun 6, 2022
58e5ac8
More fixes
trask Jun 6, 2022
72821b2
Fix RELEASING doc
trask Jun 7, 2022
ff6f574
Another fix
trask Jun 7, 2022
8e2d30b
Fix repo links
trask Jun 15, 2022
aa20d94
Fix publishing
trask Jun 15, 2022
260c604
Rename prerelease to unstable
trask Jun 16, 2022
b0e0e71
Better prerelease handling
trask Jun 16, 2022
0485f88
Publish to PyPI before publishing GitHub release
trask Jun 16, 2022
778b343
Python specific prerelease numbering
trask Jun 18, 2022
fbb7cb4
Switch to opentelemetrybot acct
trask Jun 18, 2022
ad0ecba
Update dev versioning strategy
trask Jun 18, 2022
2cabd11
Use python versioning scheme
trask Jun 18, 2022
e57820f
Fix
trask Jun 18, 2022
4fb2645
Better explanation of versioning
trask Jun 18, 2022
735a661
wording
trask Jun 18, 2022
e274ece
wording
trask Jun 18, 2022
4916054
Inline set-git-user.sh
trask Jun 19, 2022
257aef2
Remove some complexity from sed expressions
trask Jun 19, 2022
f013d2e
extract script for bot account setup
trask Aug 6, 2022
7390e96
Update
trask Aug 6, 2022
ce140cf
chmod
trask Oct 23, 2022
7dd9c71
Fix PR title
trask Oct 23, 2022
1cf800e
Sync versions
trask Oct 23, 2022
213ee54
Fix release script
trask Oct 23, 2022
bce04a2
TEMPORARY
trask Oct 24, 2022
d7f0ade
Update version to 1.15.0.dev/0.36b0.dev (#102)
opentelemetrybot Oct 24, 2022
482b999
Fix (#105)
trask Oct 24, 2022
a9db67b
Copy change log updates from release/v1.14.x-0.35bx
opentelemetrybot Oct 24, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/scripts/update-version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/bash -e

sed -i "/\[stable\]/{n;s/version=.*/version=$1/}" eachdist.ini
sed -i "/\[prerelease\]/{n;s/version=.*/version=$2/}" eachdist.ini

./scripts/eachdist.py update_versions --versions stable,prerelease
4 changes: 4 additions & 0 deletions .github/scripts/use-cla-approved-github-bot.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/bash -e

git config user.name opentelemetrybot
git config user.email [email protected]
43 changes: 43 additions & 0 deletions .github/workflows/backport.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Backport
on:
workflow_dispatch:
inputs:
number:
description: "The pull request # to backport"
required: true

jobs:
backport:
runs-on: ubuntu-latest
steps:
- run: |
if [[ ! $GITHUB_REF_NAME =~ ^release/v[0-9]+\.[0-9]+\.x-0\.[0-9]+bx$ ]]; then
echo this workflow should only be run against long-term release branches
exit 1
fi

- uses: actions/checkout@v3
with:
# history is needed to run git cherry-pick below
fetch-depth: 0

- name: Use CLA approved github bot
run: .github/scripts/use-cla-approved-github-bot.sh

- name: Create pull request
env:
NUMBER: ${{ github.event.inputs.number }}
# not using secrets.GITHUB_TOKEN since pull requests from that token do not run workflows
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
run: |
commit=$(gh pr view $NUMBER --json mergeCommit --jq .mergeCommit.oid)
title=$(gh pr view $NUMBER --json title --jq .title)

branch="backport-${NUMBER}-to-${GITHUB_REF_NAME//\//-}"

git cherry-pick $commit
git push origin HEAD:$branch
gh pr create --title "[$GITHUB_REF_NAME] $title" \
--body "Clean cherry-pick of #$NUMBER to the \`$GITHUB_REF_NAME\` branch." \
--head $branch \
--base $GITHUB_REF_NAME
4 changes: 3 additions & 1 deletion .github/workflows/changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ on:
jobs:
changelog:
runs-on: ubuntu-latest
if: "!contains(github.event.pull_request.labels.*.name, 'Skip Changelog')"
if: |
!contains(github.event.pull_request.labels.*.name, 'Skip Changelog')
&& github.actor != 'opentelemetrybot'

steps:
- uses: actions/checkout@v2
Expand Down
73 changes: 73 additions & 0 deletions .github/workflows/prepare-patch-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: Prepare patch release
on:
workflow_dispatch:

jobs:
prepare-patch-release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- run: |
if [[ ! $GITHUB_REF_NAME =~ ^release/v[0-9]+\.[0-9]+\.x-0\.[0-9]+bx$ ]]; then
echo this workflow should only be run against long-term release branches
exit 1
fi

if ! grep --quiet "^## Unreleased$" CHANGELOG.md; then
echo the change log is missing an \"Unreleased\" section
exit 1
fi

- name: Set environment variables
run: |
stable_version=$(./scripts/eachdist.py version --mode stable)
unstable_version=$(./scripts/eachdist.py version --mode prerelease)

if [[ $stable_version =~ ^([0-9]+\.[0-9]+)\.([0-9]+)$ ]]; then
stable_major_minor="${BASH_REMATCH[1]}"
stable_patch="${BASH_REMATCH[2]}"
else
echo "unexpected stable_version: $stable_version"
exit 1
fi

if [[ $unstable_version =~ ^0\.([0-9]+)b([0-9]+)$ ]]; then
unstable_minor="${BASH_REMATCH[1]}"
unstable_patch="${BASH_REMATCH[2]}"
else
echo "unexpected unstable_version: $unstable_version"
exit 1
fi

stable_version="$stable_major_minor.$((stable_patch + 1))"
unstable_version="0.${unstable_minor}b$((unstable_patch + 1))"

echo "STABLE_VERSION=$stable_version" >> $GITHUB_ENV
echo "UNSTABLE_VERSION=$unstable_version" >> $GITHUB_ENV

- name: Update version
run: .github/scripts/update-version.sh $STABLE_VERSION $UNSTABLE_VERSION

- name: Update the change log with the approximate release date
run: |
date=$(date "+%Y-%m-%d")
sed -Ei "s/^## Unreleased$/## Version ${STABLE_VERSION}\/${UNSTABLE_VERSION} ($date)/" CHANGELOG.md

- name: Use CLA approved github bot
run: .github/scripts/use-cla-approved-github-bot.sh

- name: Create pull request
env:
# not using secrets.GITHUB_TOKEN since pull requests from that token do not run workflows
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
run: |
message="Prepare release ${STABLE_VERSION}/${UNSTABLE_VERSION}"
branch="prepare-release-${STABLE_VERSION}-${UNSTABLE_VERSION}"

git commit -a -m "$message"
git push origin HEAD:$branch
gh pr create --title "[$GITHUB_REF_NAME] $message" \
--body "$message." \
--head $branch \
--base $GITHUB_REF_NAME
177 changes: 177 additions & 0 deletions .github/workflows/prepare-release-branch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
name: Prepare release branch
on:
workflow_dispatch:
inputs:
prerelease_version:
description: "Pre-release version number? (e.g. 1.9.0rc2)"
required: false

jobs:
prereqs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Verify prerequisites
env:
PRERELEASE_VERSION: ${{ github.event.inputs.prerelease_version }}
run: |
if [[ $GITHUB_REF_NAME != main ]]; then
echo this workflow should only be run against main
exit 1
fi

if ! grep --quiet "^## Unreleased$" CHANGELOG.md; then
echo the change log is missing an \"Unreleased\" section
exit 1
fi

if [[ ! -z $PRERELEASE_VERSION ]]; then
stable_version=$(./scripts/eachdist.py version --mode stable)
stable_version=${stable_version//.dev/}
if [[ $PRERELEASE_VERSION != ${stable_version}* ]]; then
echo "$PRERELEASE_VERSION is not a prerelease for the version on main ($stable_version)"
exit 1
fi
fi

create-pull-request-against-release-branch:
runs-on: ubuntu-latest
needs: prereqs
steps:
- uses: actions/checkout@v3

- name: Create release branch
env:
PRERELEASE_VERSION: ${{ github.event.inputs.prerelease_version }}
run: |
if [[ -z $PRERELEASE_VERSION ]]; then
stable_version=$(./scripts/eachdist.py version --mode stable)
stable_version=${stable_version//.dev/}
else
stable_version=$PRERELEASE_VERSION
fi

unstable_version=$(./scripts/eachdist.py version --mode prerelease)
unstable_version=${unstable_version//.dev/}

if [[ $stable_version =~ ^([0-9]+)\.([0-9]+)\.0$ ]]; then
stable_version_branch_part=$(echo $stable_version | sed -E 's/([0-9]+)\.([0-9]+)\.0/\1.\2.x/')
unstable_version_branch_part=$(echo $unstable_version | sed -E 's/0\.([0-9]+)b0/0.\1bx/')
release_branch_name="release/v${stable_version_branch_part}-${unstable_version_branch_part}"
elif [[ $stable_version =~ ^([0-9]+)\.([0-9]+)\.0 ]]; then
# pre-release version, e.g. 1.9.0rc2
release_branch_name="release/v$stable_version-$unstable_version"
else
echo "unexpected version: $stable_version"
exit 1
fi

git push origin HEAD:$release_branch_name

echo "STABLE_VERSION=$stable_version" >> $GITHUB_ENV
echo "UNSTABLE_VERSION=$unstable_version" >> $GITHUB_ENV
echo "RELEASE_BRANCH_NAME=$release_branch_name" >> $GITHUB_ENV

- name: Update version
run: .github/scripts/update-version.sh $STABLE_VERSION $UNSTABLE_VERSION

- name: Update the change log with the approximate release date
run: |
date=$(date "+%Y-%m-%d")
sed -Ei "s/^## Unreleased$/## Version ${STABLE_VERSION}\/${UNSTABLE_VERSION} ($date)/" CHANGELOG.md

- name: Use CLA approved github bot
run: .github/scripts/use-cla-approved-github-bot.sh

- name: Create pull request against the release branch
env:
# not using secrets.GITHUB_TOKEN since pull requests from that token do not run workflows
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
run: |
message="Prepare release ${STABLE_VERSION}/${UNSTABLE_VERSION}"
branch="prepare-release-${STABLE_VERSION}-${UNSTABLE_VERSION}"

git commit -a -m "$message"
git push origin HEAD:$branch
gh pr create --title "[$RELEASE_BRANCH_NAME] $message" \
--body "$message." \
--head $branch \
--base $RELEASE_BRANCH_NAME

create-pull-request-against-main:
runs-on: ubuntu-latest
needs: prereqs
steps:
- uses: actions/checkout@v3

- name: Set environment variables
env:
PRERELEASE_VERSION: ${{ github.event.inputs.prerelease_version }}
run: |
if [[ -z $PRERELEASE_VERSION ]]; then
stable_version=$(./scripts/eachdist.py version --mode stable)
stable_version=${stable_version//.dev/}
else
stable_version=$PRERELEASE_VERSION
fi

unstable_version=$(./scripts/eachdist.py version --mode prerelease)
unstable_version=${unstable_version//.dev/}

if [[ $stable_version =~ ^([0-9]+)\.([0-9]+)\.0$ ]]; then
stable_major="${BASH_REMATCH[1]}"
stable_minor="${BASH_REMATCH[2]}"
stable_next_version="$stable_major.$((stable_minor + 1)).0"
elif [[ $stable_version =~ ^([0-9]+)\.([0-9]+)\.0 ]]; then
# pre-release version, e.g. 1.9.0rc2
stable_major="${BASH_REMATCH[1]}"
stable_minor="${BASH_REMATCH[2]}"
stable_next_version="$stable_major.$stable_minor.0"
else
echo "unexpected stable_version: $stable_version"
exit 1
fi

if [[ $unstable_version =~ ^0\.([0-9]+)b[0-9]+$ ]]; then
unstable_minor="${BASH_REMATCH[1]}"
else
echo "unexpected unstable_version: $unstable_version"
exit 1
fi

unstable_next_version="0.$((unstable_minor + 1))b0"

echo "STABLE_VERSION=${stable_version}" >> $GITHUB_ENV
echo "STABLE_NEXT_VERSION=${stable_next_version}.dev" >> $GITHUB_ENV

echo "UNSTABLE_VERSION=${unstable_version}" >> $GITHUB_ENV
echo "UNSTABLE_NEXT_VERSION=${unstable_next_version}.dev" >> $GITHUB_ENV

- name: Update version
run: .github/scripts/update-version.sh $STABLE_NEXT_VERSION $UNSTABLE_NEXT_VERSION

- name: Update the change log on main
run: |
# the actual release date on main will be updated at the end of the release workflow
date=$(date "+%Y-%m-%d")
sed -Ei "s/^## Unreleased$/## Unreleased\n\n## Version ${STABLE_VERSION}\/${UNSTABLE_VERSION} ($date)/" CHANGELOG.md

- name: Use CLA approved github bot
run: .github/scripts/use-cla-approved-github-bot.sh

- name: Create pull request against main
env:
# not using secrets.GITHUB_TOKEN since pull requests from that token do not run workflows
GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
run: |
message="Update version to ${STABLE_NEXT_VERSION}/${UNSTABLE_NEXT_VERSION}"
body="Update version to \`${STABLE_NEXT_VERSION}/${UNSTABLE_NEXT_VERSION}\`."
branch="update-version-to-${STABLE_NEXT_VERSION}-${UNSTABLE_NEXT_VERSION}"

git commit -a -m "$message"
git push origin HEAD:$branch
gh pr create --title "$message" \
--body "$body" \
--head $branch \
--base main
37 changes: 0 additions & 37 deletions .github/workflows/publish.yml

This file was deleted.

Loading