Skip to content

Commit 73bc64c

Browse files
SQSCANGHA-94 Update version update logic (#188)
1 parent 7d51dd2 commit 73bc64c

File tree

1 file changed

+30
-12
lines changed

1 file changed

+30
-12
lines changed

.github/workflows/version_update.yml

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ on:
55
- cron: '15 10 * * *'
66

77
jobs:
8-
update-version:
9-
name: Prepare pull request for sonar-scanner version update
8+
check-version:
9+
name: Check for sonar-scanner version update
1010
runs-on: ubuntu-latest
11-
permissions:
12-
contents: write
13-
pull-requests: write
11+
outputs:
12+
should_update: ${{ steps.version-check.outputs.should_update }}
13+
latest_version: ${{ steps.latest-version.outputs.latest }}
1414
steps:
1515
- run: sudo apt install -y jq
1616
- run: sudo snap install yq
@@ -25,25 +25,43 @@ jobs:
2525
shell: bash
2626
run: cat sonar-scanner-version >> $GITHUB_OUTPUT
2727

28-
- name: "Fetch lastest sonar-scanner version"
28+
- name: "Fetch latest sonar-scanner version"
2929
id: latest-version
3030
shell: bash
3131
run: |
3232
./scripts/fetch_latest_version.sh > sonar-scanner-version
33-
cat sonar-scanner-version >> $GITHUB_OUTPUT
33+
echo "latest=$(cat sonar-scanner-version)" >> $GITHUB_OUTPUT
34+
35+
- name: "Determine if update is needed"
36+
id: version-check
37+
shell: bash
38+
run: |
39+
if [[ "${{ steps.tagged-version.outputs.sonar-scanner-version }}" != "${{ steps.latest-version.outputs.latest }}" ]]; then
40+
echo "should_update=true" >> $GITHUB_OUTPUT
41+
else
42+
echo "should_update=false" >> $GITHUB_OUTPUT
43+
fi
44+
45+
update-version:
46+
name: Prepare pull request for sonar-scanner version update
47+
needs: check-version
48+
runs-on: ubuntu-latest
49+
permissions:
50+
contents: write
51+
pull-requests: write
52+
if: needs.check-version.outputs.should_update == 'true'
53+
steps:
3454
- name: "Update default version"
35-
if: steps.tagged-version.outputs.sonar-scanner-version != steps.latest-version.outputs.sonar-scanner-version
3655
shell: bash
3756
env:
38-
NEW_VERSION: ${{ steps.latest-version.outputs.sonar-scanner-version }}
57+
NEW_VERSION: ${{ needs.check-version.outputs.latest-version }}
3958
run: |
4059
yq -i '.inputs.scannerVersion.default = strenv(NEW_VERSION)' action.yml
4160
- name: "Create Pull Request for version update"
42-
if: steps.tagged-version.outputs.sonar-scanner-version != steps.latest-version.outputs.sonar-scanner-version
4361
shell: bash
4462
env:
45-
UPDATE_BRANCH: update-to-sonar-scanner-${{ steps.latest-version.outputs.sonar-scanner-version }}
46-
TITLE: "Update SonarScanner CLI to ${{ steps.latest-version.outputs.sonar-scanner-version }}"
63+
UPDATE_BRANCH: update-to-sonar-scanner-${{ needs.check-version.outputs.latest-version }}
64+
TITLE: "Update SonarScanner CLI to ${{ needs.check-version.outputs.latest-version }}"
4765
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4866
run: |
4967
git config --global user.name "SonarTech"

0 commit comments

Comments
 (0)