@@ -2,8 +2,8 @@ name: Check Branch Alias
22
33on :
44 workflow_call :
5- schedule :
6- - cron : ' 0 2 * * 1 ' # Run weekly on Monday at 2 AM UTC
5+ release :
6+ types : [published]
77 workflow_dispatch :
88
99# Cancels all previous workflow runs for pull requests that have not completed.
3232 fetch-depth : 0 # Fetch all history for all tags
3333 token : ${{ secrets.GITHUB_TOKEN }}
3434
35+ - name : Set up PHP
36+ uses : shivammathur/setup-php@v2
37+ with :
38+ php-version : ' latest'
39+ tools : composer
40+
3541 - name : Check existence of composer.json file
3642 id : check_composer_file
3743 uses : andstor/file-existence-action@v3
@@ -75,17 +81,20 @@ jobs:
7581
7682 echo "Expected branch-alias: $EXPECTED_ALIAS"
7783
78- # Get current branch-alias from composer.json
79- # Check for both dev-main and dev-master
80- CURRENT_ALIAS=$(jq -r '.extra["branch-alias"]["dev-main"] // .extra["branch-alias"]["dev-master"] // empty' composer.json)
84+ # Determine which branch key is being used (dev-main or dev-master)
85+ BRANCH_KEY=""
86+ CURRENT_ALIAS=""
8187
82- # Determine which key is being used
83- if jq -e '. extra[" branch-alias"][" dev-main"]' composer.json > /dev/null 2>&1; then
88+ # Try dev-main first
89+ if composer config extra. branch-alias. dev-main > /dev/null 2>&1; then
8490 BRANCH_KEY="dev-main"
85- elif jq -e '.extra["branch-alias"]["dev-master"]' composer.json > /dev/null 2>&1; then
91+ CURRENT_ALIAS=$(composer config extra.branch-alias.dev-main)
92+ # Try dev-master if dev-main doesn't exist
93+ elif composer config extra.branch-alias.dev-master > /dev/null 2>&1; then
8694 BRANCH_KEY="dev-master"
95+ CURRENT_ALIAS=$(composer config extra.branch-alias.dev-master)
8796 else
88- echo "No branch-alias found in composer.json"
97+ echo "No branch-alias found in composer.json, will use dev-main "
8998 BRANCH_KEY="dev-main"
9099 CURRENT_ALIAS=""
91100 fi
@@ -112,10 +121,8 @@ jobs:
112121 BRANCH_KEY="${{ steps.check_alias.outputs.branch_key }}"
113122 EXPECTED_ALIAS="${{ steps.check_alias.outputs.expected_alias }}"
114123
115- # Update the branch-alias in composer.json, ensuring the structure exists
116- jq --arg key "$BRANCH_KEY" --arg value "$EXPECTED_ALIAS" \
117- '.extra."branch-alias" //= {} | .extra."branch-alias"[$key] = $value' \
118- composer.json > composer.json.tmp && mv composer.json.tmp composer.json
124+ # Update the branch-alias using composer command
125+ composer config "extra.branch-alias.$BRANCH_KEY" "$EXPECTED_ALIAS"
119126
120127 - name : Create Pull Request
121128 if : steps.check_alias.outputs.needs_update == 'true'
0 commit comments