Skip to content

Commit da7f05b

Browse files
committed
fix: improve release flow
1 parent 3ce2c0a commit da7f05b

File tree

1 file changed

+32
-16
lines changed

1 file changed

+32
-16
lines changed

.github/workflows/release-edge.yml

Lines changed: 32 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,34 +15,50 @@ jobs:
1515

1616
- run: npm ci
1717

18-
- name: Get releases
19-
id: fetch-latest-release
20-
uses: ./.github/actions/fetch-latest-release
21-
22-
- name: Calculate edge version
23-
id: calculate-edge-version
24-
uses: ./.github/actions/calculate-edge-version
25-
with:
26-
version: ${{ steps.fetch-latest-release.outputs.tag_name }}
27-
2818
- uses: actions/setup-node@v4
2919
with:
3020
node-version: '20.x'
3121
registry-url: 'https://registry.npmjs.org'
3222

23+
- name: Get current version from package.json
24+
id: get_version
25+
run: |
26+
current_version=$(node -p "require('./package.json').version")
27+
echo "current_version=${current_version}" >> $GITHUB_OUTPUT
28+
29+
- name: Calculate next version
30+
id: get_next_version
31+
run: |
32+
next_version=$(npx semver ${{ steps.get_version.outputs.current_version }} -i patch)
33+
echo "Next patch version: $next_version"
34+
echo "version=$next_version" >> $GITHUB_OUTPUT
35+
3336
- name: Configure Git
3437
run: |
3538
git config user.name "${{ github.actor }}"
3639
git config user.email "${{ github.actor }}@users.noreply.github.com"
3740
41+
- name: Checkout or create edge branch
42+
run: |
43+
git fetch origin
44+
if git rev-parse --verify origin/${{ steps.get_next_version.outputs.version }}-edge; then
45+
git checkout ${{ steps.get_next_version.outputs.version }}-edge
46+
else
47+
git checkout -b ${{ steps.get_next_version.outputs.version }}-edge
48+
fi
49+
3850
- name: Bump version
39-
run: npm version ${{ steps.calculate-edge-version.outputs.next-edge }}
51+
id: bump_version
52+
run: |
53+
new_version=$(npm version prerelease --preid=edge)
54+
echo "New edge version: $new_version"
55+
echo "new_version=${new_version}" >> $GITHUB_OUTPUT
4056
41-
- name: Commit and push version
57+
- name: Push version
4258
env:
4359
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4460
run: |
45-
git push origin master
61+
git push origin ${{ steps.get_next_version.outputs.version }}-edge
4662
4763
- run: npm run build-all
4864

@@ -54,12 +70,12 @@ jobs:
5470
id: set-messages
5571
run: |
5672
if [[ ${{ job.status }} == "success" ]]; then
57-
echo "SLACK_TITLE=Video Player ${{ steps.calculate-edge-version.outputs.next-edge }} Deployed" >> $GITHUB_OUTPUT
58-
echo "SLACK_MESSAGE=Success :rocket: cloudinary-video-player version ${{ steps.calculate-edge-version.outputs.next-edge }} deployed successfully" >> $GITHUB_OUTPUT
73+
echo "SLACK_TITLE=Video Player ${{ steps.bump_version.outputs.new_version }} Deployed" >> $GITHUB_OUTPUT
74+
echo "SLACK_MESSAGE=Success :rocket: cloudinary-video-player version ${{ steps.bump_version.outputs.new_version }} deployed successfully" >> $GITHUB_OUTPUT
5975
echo "SLACK_FOOTER=Check it out at https://cloudinary.github.io/cloudinary-video-player/?ver=edge&min=true" >> $GITHUB_OUTPUT
6076
else
6177
echo "SLACK_TITLE=Video Player Deployment Failed" >> $GITHUB_OUTPUT
62-
echo "SLACK_MESSAGE=:alert: Failed to deploy cloudinary-video-player version ${{ steps.calculate-edge-version.outputs.next-edge }}" >> $GITHUB_OUTPUT
78+
echo "SLACK_MESSAGE=:alert: Failed to deploy cloudinary-video-player version ${{ steps.bump_version.outputs.new_version }}" >> $GITHUB_OUTPUT
6379
echo "SLACK_FOOTER=See log here https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}/job/${{ github.job }}" >> $GITHUB_OUTPUT
6480
fi
6581
shell: bash

0 commit comments

Comments
 (0)