Skip to content

Commit 98c680a

Browse files
dblockVachaShah
authored andcommitted
Auto-increment next development iteration. (opensearch-project#1816)
* Auto-increment next development iteration. Signed-off-by: dblock <dblock@amazon.com> * Make bwc increments on X.Y and main branches. Signed-off-by: dblock <dblock@amazon.com>
1 parent a4515b9 commit 98c680a

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

.github/workflows/version.yml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
name: Increment Version
2+
3+
on:
4+
push:
5+
tags:
6+
- '*.*.*'
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
env:
12+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
13+
steps:
14+
- uses: actions/checkout@v2
15+
- name: Fetch Tag and Version Information
16+
run: |
17+
TAG=$(echo "${GITHUB_REF#refs/*/}")
18+
CURRENT_VERSION_ARRAY=($(echo "$TAG" | tr . '\n'))
19+
BASE=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:2}")
20+
BASE_X=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:1}.x")
21+
CURRENT_VERSION=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:3}")
22+
CURRENT_VERSION_UNDERSCORE=$(IFS=_ ; echo "V_${CURRENT_VERSION_ARRAY[*]:0:3}")
23+
CURRENT_VERSION_ARRAY[2]=$((CURRENT_VERSION_ARRAY[2]+1))
24+
NEXT_VERSION=$(IFS=. ; echo "${CURRENT_VERSION_ARRAY[*]:0:3}")
25+
NEXT_VERSION_UNDERSCORE=$(IFS=_ ; echo "V_${CURRENT_VERSION_ARRAY[*]:0:3}")
26+
NEXT_VERSION_ID=$(IFS=0 ; echo "${CURRENT_VERSION_ARRAY[*]:0:3}99")
27+
echo "TAG=$TAG" >> $GITHUB_ENV
28+
echo "BASE=$BASE" >> $GITHUB_ENV
29+
echo "BASE_X=$BASE_X" >> $GITHUB_ENV
30+
echo "CURRENT_VERSION=$CURRENT_VERSION" >> $GITHUB_ENV
31+
echo "CURRENT_VERSION_UNDERSCORE=$CURRENT_VERSION_UNDERSCORE" >> $GITHUB_ENV
32+
echo "NEXT_VERSION=$NEXT_VERSION" >> $GITHUB_ENV
33+
echo "NEXT_VERSION_UNDERSCORE=$NEXT_VERSION_UNDERSCORE" >> $GITHUB_ENV
34+
echo "NEXT_VERSION_ID=$NEXT_VERSION_ID" >> $GITHUB_ENV
35+
- uses: actions/checkout@v2
36+
with:
37+
ref: ${{ env.BASE }}
38+
- name: Increment Patch Version
39+
run: |
40+
echo Incrementing $CURRENT_VERSION to $NEXT_VERSION
41+
echo " - \"$CURRENT_VERSION\"" >> .ci/bwcVersions
42+
sed -i "s/opensearch = $CURRENT_VERSION/opensearch = $NEXT_VERSION/g" buildSrc/version.properties
43+
echo Adding $NEXT_VERSION_UNDERSCORE after $CURRENT_VERSION_UNDERSCORE
44+
sed -i "s/public static final Version $CURRENT_VERSION_UNDERSCORE = new Version(\([[:digit:]]\+\)\(.*\));/\0\n public static final Version $NEXT_VERSION_UNDERSCORE = new Version($NEXT_VERSION_ID\2);/g" server/src/main/java/org/opensearch/Version.java
45+
sed -i "s/CURRENT = $CURRENT_VERSION_UNDERSCORE;/CURRENT = $NEXT_VERSION_UNDERSCORE;/g" server/src/main/java/org/opensearch/Version.java
46+
- name: Create Pull Request
47+
uses: peter-evans/create-pull-request@v3
48+
with:
49+
base: ${{ env.BASE }}
50+
branch: 'create-pull-request/patch-${{ env.BASE }}'
51+
commit-message: Incremented version to ${{ env.NEXT_VERSION }}
52+
delete-branch: true
53+
title: '[AUTO] Incremented version to ${{ env.NEXT_VERSION }}.'
54+
body: |
55+
I've noticed that a new tag ${{ env.TAG }} was pushed, and incremented the version from ${{ env.CURRENT_VERSION }} to ${{ env.NEXT_VERSION }}.
56+
57+
- uses: actions/checkout@v2
58+
with:
59+
ref: ${{ env.BASE_X }}
60+
- name: Add bwc version to .X branch
61+
run: |
62+
echo Adding bwc version $NEXT_VERSION after $CURRENT_VERSION
63+
sed -i "s/- \"$CURRENT_VERSION\"/\0\n - \"$NEXT_VERSION\"/g" .ci/bwcVersions
64+
echo Adding $NEXT_VERSION_UNDERSCORE after $CURRENT_VERSION_UNDERSCORE
65+
sed -i "s/public static final Version $CURRENT_VERSION_UNDERSCORE = new Version(\([[:digit:]]\+\)\(.*\));/\0\n public static final Version $NEXT_VERSION_UNDERSCORE = new Version($NEXT_VERSION_ID\2);/g" server/src/main/java/org/opensearch/Version.java
66+
- name: Create Pull Request
67+
uses: peter-evans/create-pull-request@v3
68+
with:
69+
base: ${{ env.BASE_X }}
70+
branch: 'create-pull-request/patch-${{ env.BASE_X }}'
71+
commit-message: Added bwc version ${{ env.NEXT_VERSION }}
72+
delete-branch: true
73+
title: '[AUTO] [${{ env.BASE_X }}] Added bwc version ${{ env.NEXT_VERSION }}.'
74+
body: |
75+
I've noticed that a new tag ${{ env.TAG }} was pushed, and added a bwc version ${{ env.NEXT_VERSION }}.
76+
77+
- uses: actions/checkout@v2
78+
with:
79+
ref: main
80+
- name: Add bwc version to main branch
81+
run: |
82+
echo Adding bwc version $NEXT_VERSION after $CURRENT_VERSION
83+
sed -i "s/- \"$CURRENT_VERSION\"/\0\n - \"$NEXT_VERSION\"/g" .ci/bwcVersions
84+
echo Adding $NEXT_VERSION_UNDERSCORE after $CURRENT_VERSION_UNDERSCORE
85+
sed -i "s/public static final Version $CURRENT_VERSION_UNDERSCORE = new Version(\([[:digit:]]\+\)\(.*\));/\0\n public static final Version $NEXT_VERSION_UNDERSCORE = new Version($NEXT_VERSION_ID\2);/g" server/src/main/java/org/opensearch/Version.java
86+
- name: Create Pull Request
87+
uses: peter-evans/create-pull-request@v3
88+
with:
89+
base: main
90+
branch: 'create-pull-request/patch-main'
91+
commit-message: Added bwc version ${{ env.NEXT_VERSION }}
92+
delete-branch: true
93+
title: '[AUTO] [main] Added bwc version ${{ env.NEXT_VERSION }}.'
94+
body: |
95+
I've noticed that a new tag ${{ env.TAG }} was pushed, and added a bwc version ${{ env.NEXT_VERSION }}.

0 commit comments

Comments
 (0)