59
59
60
60
# https://github.com/marketplace/actions/coveralls-python
61
61
coveralls_finish :
62
+ name : Coveralls (finish)
62
63
needs : build
63
64
runs-on : ubuntu-latest
64
65
steps :
69
70
70
71
# This cannot be a separate workflow yet, because a workflow cannot depend on another workflow. See this topic:
71
72
# Depend on another workflow - Code to Cloud / GitHub Actions - GitHub Support Community
72
- # https://github.community/t/depend-on-another-workflow/16311
73
+ # https://github.com/orgs/community/discussions/26632
73
74
release :
74
75
needs : coveralls_finish
75
76
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsif
@@ -85,36 +86,45 @@ jobs:
85
86
- name : Add to PATH
86
87
run : echo "$HOME/.local/bin" >> $GITHUB_PATH
87
88
- name : Install pip/setuptools first
89
+ run : python3 -m pip install --upgrade pip setuptools
90
+ - name : Install pre-commit bumpversion twine
91
+ run : python3 -m pip install --upgrade poetry pre-commit bumpversion twine
92
+ - name : Display versions
88
93
run : |
94
+ node --version
95
+ npm --version
89
96
python --version
90
97
python3 --version
91
98
python3 -m pip --version
92
- python3 -m pip install --upgrade pip setuptools
93
- - name : Install pre-commit bumpversion twine
94
- run : |
95
- python3 -m pip install --upgrade poetry pre-commit bumpversion twine
96
99
pre-commit --version
97
100
twine --version
98
101
python3 -m pip freeze
99
102
- name : Semantic Release
100
- uses : cycjimmy/semantic-release-action@v2
103
+ # https://github.com/marketplace/actions/action-for-semantic-release#semantic_version
104
+ uses : cycjimmy/semantic-release-action@v3
105
+ id : semantic # Need an `id` for output variables
101
106
with :
102
- # https://github.com/marketplace/actions/action-for-semantic-release#semantic_version
107
+ # Don't pin the version here... it didn't work
103
108
# https://github.com/semantic-release/semantic-release/releases
104
- semantic_version : 18 .0.1
109
+ # semantic_version: 20 .0.0
105
110
106
111
# To debug, see these options:
107
112
# https://github.com/marketplace/actions/action-for-semantic-release#dry_run
113
+ # dry_run: true
114
+
108
115
# https://github.com/marketplace/actions/action-for-semantic-release#branches
116
+ # branches: |
117
+ # ['you-debug-branch-name-here']
109
118
110
119
# https://github.com/marketplace/actions/action-for-semantic-release#extra_plugins
111
120
# https://github.com/semantic-release/changelog/releases
112
121
# https://github.com/semantic-release/git/releases
113
122
# https://github.com/semantic-release/exec/releases
123
+ # Don't pin versions anymore; let's see how this goes for the next releases
114
124
extra_plugins : |
115
- @semantic-release/changelog@6.0.1
116
- @semantic-release/git@10.0.1
117
- @semantic-release/exec@6.0.3
125
+ @semantic-release/changelog
126
+ @semantic-release/git
127
+ @semantic-release/exec
118
128
env :
119
129
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
120
130
PYPI_USERNAME : ${{ secrets.PYPI_USERNAME }}
@@ -123,9 +133,16 @@ jobs:
123
133
- name : New release published
124
134
if : steps.semantic.outputs.new_release_published == 'true'
125
135
run : |
126
- echo ${{ steps.semantic.outputs.new_release_version }}
127
- echo ${{ steps.semantic.outputs.new_release_major_version }}
128
- echo ${{ steps.semantic.outputs.new_release_minor_version }}
129
- echo ${{ steps.semantic.outputs.new_release_patch_version }}
130
- echo ${{ steps.semantic.outputs.new_release_channel }}
131
- echo ${{ steps.semantic.outputs.new_release_notes }}
136
+ echo "Release = ${{ steps.semantic.outputs.new_release_version }}"
137
+ echo "Major = ${{ steps.semantic.outputs.new_release_major_version }}"
138
+ echo "Minor = ${{ steps.semantic.outputs.new_release_minor_version }}"
139
+ echo "Patch = ${{ steps.semantic.outputs.new_release_patch_version }}"
140
+ echo "Channel = ${{ steps.semantic.outputs.new_release_channel }}"
141
+ echo "Notes = ${{ steps.semantic.outputs.new_release_notes }}"
142
+
143
+ # TODO: the workflow might fail with "rate limit" error but the release itself apparently works.
144
+ # The follow-up actions are not executed though. See:
145
+ # HttpError: You have exceeded a secondary rate limit https://github.com/semantic-release/semantic-release/issues/2204
146
+ # Rate limit reached on big release https://github.com/semantic-release/semantic-release/issues/843
147
+ # replace custom throttling code with @octokit/plugin-throttling https://github.com/semantic-release/github/issues/299
148
+ # fix: use retry and throttle octokit plugins https://github.com/semantic-release/github/pull/487
0 commit comments