4
4
inputs :
5
5
major :
6
6
description : ' Semver major label'
7
+ type : number
7
8
required : true
8
9
minor :
9
10
description : ' Semver minor label'
11
+ type : number
10
12
required : true
11
13
patch :
12
14
description : ' Semver patch label'
15
+ type : number
13
16
required : true
17
+ prep-next-release :
18
+ description : ' Prep next release, this should only be triggered after a release has been made'
19
+ type : boolean
20
+ required : false
21
+ default : false
14
22
env :
15
23
MAJOR : ${{ github.event.inputs.major }}
16
24
MINOR : ${{ github.event.inputs.minor }}
17
25
PATCH : ${{ github.event.inputs.patch }}
26
+ PREP_NEXT : ${{ github.event.inputs.prep-next-release }}
18
27
jobs :
19
28
release :
20
29
runs-on : ubuntu-latest
@@ -31,24 +40,44 @@ jobs:
31
40
sed -i "s/define SBP_MAJOR_VERSION .*/define SBP_MAJOR_VERSION $MAJOR/" c/include/libsbp/version.h
32
41
sed -i "s/define SBP_MINOR_VERSION .*/define SBP_MINOR_VERSION $MINOR/" c/include/libsbp/version.h
33
42
sed -i "s/define SBP_PATCH_VERSION .*/define SBP_PATCH_VERSION $PATCH/" c/include/libsbp/version.h
34
- sed -i "s/define SBP_VERSION \".*\"/define SBP_VERSION \"$MAJOR.$MINOR.$PATCH\"/" c/include/libsbp/version.h
43
+ if [ $PREP_NEXT ] then
44
+ sed -i "s/define SBP_VERSION \".*\"/define SBP_VERSION \"$MAJOR.$MINOR.$PATCH-alpha\"/" c/include/libsbp/version.h
45
+ else
46
+ sed -i "s/define SBP_VERSION \".*\"/define SBP_VERSION \"$MAJOR.$MINOR.$PATCH\"/" c/include/libsbp/version.h
47
+ fi
35
48
- name : Update Haskell version
36
49
run : |
37
- sed -i "0,/^version: .*/s//version: $MAJOR.$MINOR.$PATCH/" haskell/sbp.cabal
50
+ if [ $PREP_NEXT ] then
51
+ sed -i "0,/^version: .*/s//version: $MAJOR.$MINOR.$PATCH-alpha/" haskell/sbp.cabal
52
+ else
53
+ sed -i "0,/^version: .*/s//version: $MAJOR.$MINOR.$PATCH/" haskell/sbp.cabal
54
+ fi
38
55
- name : Update Javascript version
39
56
run : |
40
- echo -n "$MAJOR.$MINOR.$PATCH" > javascript/sbp/RELEASE-VERSION
41
- jq --arg v "$MAJOR.$MINOR.$PATCH" '.version = $v' package.json > tmp1.$$.json && mv tmp1.$$.json package.json
42
- jq --arg v "$MAJOR.$MINOR.$PATCH" '.version = $v | .packages[""].version = $v' package-lock.json > tmp2.$$.json && mv tmp2.$$.json package-lock.json
57
+ if [ $PREP_NEXT ] then
58
+ echo -n "$MAJOR.$MINOR.$PATCH-alpha" > javascript/sbp/RELEASE-VERSION
59
+ jq --arg v "$MAJOR.$MINOR.$PATCH-alpha" '.version = $v' package.json > tmp1.$$.json && mv tmp1.$$.json package.json
60
+ jq --arg v "$MAJOR.$MINOR.$PATCH-alpha" '.version = $v | .packages[""].version = $v' package-lock.json > tmp2.$$.json && mv tmp2.$$.json package-lock.json
61
+ else
62
+ echo -n "$MAJOR.$MINOR.$PATCH" > javascript/sbp/RELEASE-VERSION
63
+ jq --arg v "$MAJOR.$MINOR.$PATCH" '.version = $v' package.json > tmp1.$$.json && mv tmp1.$$.json package.json
64
+ jq --arg v "$MAJOR.$MINOR.$PATCH" '.version = $v | .packages[""].version = $v' package-lock.json > tmp2.$$.json && mv tmp2.$$.json package-lock.json
65
+ fi
43
66
- name : Update Python version
44
67
run : |
45
68
echo -n "$MAJOR.$MINOR.$PATCH" > python/sbp/RELEASE-VERSION
46
69
- name : Update Rust version
47
70
run : |
48
- sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH\"/" rust/sbp/Cargo.toml
49
- sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH-unreleased\"/" rust/sbp2json/Cargo.toml
50
- - name : Debug
51
- run : git status
71
+ if [ $PREP_NEXT ] then
72
+ sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH\"/" rust/sbp/Cargo.toml
73
+ sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH-unreleased\"/" rust/sbp2json/Cargo.toml
74
+ else
75
+ sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH-alpha\"/" rust/sbp/Cargo.toml
76
+ sed -i "0,/version = \".*\"/s//version = \"$MAJOR.$MINOR.$PATCH-alpha\"/" rust/sbp2json/Cargo.toml
77
+ fi
78
+ - name : Update CHANGELOG
79
+ if : ${{ github.event.inputs.prep-next-release }}
80
+ run : echo "test123"
52
81
# - name: Update PDF
53
82
# run: echo "TODO"
54
83
# - name: Commit changes
0 commit comments