1- name : daily docs sync PR
1+ name : docs sync PR on Solidity releases
22
33on :
44 schedule :
1212 GITHUB_REPOSITORY_OWNER : solidity-docs
1313
1414jobs :
15+ checkSolidityRelease :
16+ runs-on : ubuntu-latest
17+ outputs :
18+ current_release : ${{ steps.current-release-version.outputs.current_release }}
19+ latest_release : ${{ steps.latest-release-version.outputs.latest_release }}
20+ steps :
21+ - uses : actions/checkout@v4
22+ - name : Get current Solidity docs version
23+ id : current-release-version
24+ run : |
25+ current_release=$(<latest_solidity.release)
26+ echo "current_release=$current_release" >> $GITHUB_OUTPUT
27+ - name : Get latest Solidity release version
28+ id : latest-release-version
29+ run : |
30+ latest_release=$(
31+ curl -sL https://api.github.com/repos/ethereum/solidity/releases/latest | jq --raw-output ".tag_name" | cut -d"v" -f2
32+ )
33+ echo "latest_release=$latest_release" >> $GITHUB_OUTPUT
34+
1535 createPullRequest :
1636 runs-on : ubuntu-latest
37+ needs : checkSolidityRelease
38+ if : needs.checkSolidityRelease.outputs.current_release != needs.checkSolidityRelease.outputs.latest_release
1739 strategy :
1840 # In the context matrix strategy, fail-fast means, if one of the jobs
1941 # fails,the rest of the jobs will be canceled. In our case, this can
3658 - zh-chinese
3759 steps :
3860 - name : Fetch translation repository
39- uses : actions/checkout@v2
61+ uses : actions/checkout@v4
4062 with :
4163 token : ${{ secrets.PAT }}
4264 repository : ${{ env.GITHUB_REPOSITORY_OWNER }}/${{ matrix.repos }}
5577 git fetch english develop
5678
5779 - name : Fetch main Solidity repository
58- uses : actions/checkout@v2
80+ uses : actions/checkout@v4
5981 with :
6082 repository : ethereum/solidity
6183 fetch-depth : 0
6486 path : solidity/
6587
6688 - name : Fetch bot's repository
67- uses : actions/checkout@v2
89+ uses : actions/checkout@v4
6890 with :
6991 token : ${{ secrets.PAT }}
7092 repository : ${{ github.repository }}
@@ -112,9 +134,9 @@ jobs:
112134 run : |
113135 rm -rf bot/
114136
115- - name : Create Pull Request
137+ - name : Create Sync Pull Request
116138 if : ${{ steps.bot-config.outputs.bot_disabled == 'false' && steps.check-sync-branch.outputs.branch_exists == 'false' }}
117- uses : peter-evans/create-pull-request@v3
139+ uses : peter-evans/create-pull-request@v6
118140 with :
119141 path : translation/
120142 token : " ${{ secrets.PAT }}"
@@ -127,3 +149,25 @@ jobs:
127149 labels : " ${{ join(fromJSON(steps.bot-config.outputs.pr_labels)) }}"
128150 assignees : ${{ env.assignee }}
129151 reviewers : ${{ env.reviewer }}
152+
153+ - name : Fetch Solidity translation repository
154+ uses : actions/checkout@v4
155+
156+ - name : Update Solidity version
157+ run : |
158+ echo ${{ needs.checkSolidityRelease.outputs.latest_release }} > latest_solidity.release
159+
160+ - name : Create Pull Request to update Solidity version
161+ uses : peter-evans/create-pull-request@v6
162+ with :
163+ token : " ${{ secrets.PAT }}"
164+ add-paths : latest_solidity.release
165+ commit-message : Update Solidity release version to ${{ needs.checkSolidityRelease.outputs.latest_release }}
166+ committer : " ${{ env.BOT_USERNAME }} <${{ env.BOT_EMAIL }}>"
167+ author : " ${{ env.BOT_USERNAME }} <${{ env.BOT_EMAIL }}>"
168+ title : Update Solidity release version to ${{ needs.checkSolidityRelease.outputs.latest_release }}
169+ body : |
170+ This PR updates the latest Solidity release version to ${{ needs.checkSolidityRelease.outputs.latest_release }}
171+
172+ Auto-generated by ${{ env.BOT_USERNAME }}
173+ branch : solidity-release-updates
0 commit comments