@@ -107,7 +107,7 @@ jobs:
107107 matrix : ${{ steps.set-outputs.outputs.matrix }}
108108 upload_to_pypi : ${{ steps.set-upload.outputs.upload_to_pypi }}
109109 steps :
110- - uses : actions/setup-python@v5
110+ - uses : actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
111111 with :
112112 python-version : ' 3.12'
113113 - run : python -m pip install PyYAML click
@@ -138,15 +138,15 @@ jobs:
138138 fail-fast : ${{ inputs.fail-fast }}
139139 matrix : ${{fromJSON(needs.targets.outputs.matrix)}}
140140 steps :
141- - uses : actions/checkout@v4
141+ - uses : actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
142142 with :
143143 fetch-depth : 0
144144 lfs : true
145145 submodules : ${{ inputs.submodules }}
146146 ref : ${{ inputs.checkout_ref }}
147147 - name : Set up QEMU
148148 if : ${{ matrix.CIBW_ARCHS == 'aarch64' }}
149- uses : docker/setup-qemu-action@v3
149+ uses : docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
150150 with :
151151 platforms : all
152152 - name : Configure cibuildwheel
@@ -168,7 +168,7 @@ jobs:
168168 echo "EOF" >> $GITHUB_ENV
169169 fi
170170 cat $GITHUB_ENV
171- - uses : actions/setup-python@v5
171+ - uses : actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
172172 if : ${{ inputs.env != '' }}
173173 with :
174174 python-version : ' 3.12'
@@ -183,13 +183,13 @@ jobs:
183183 env :
184184 SET_ENV_SCRIPT: aW1wb3J0IGpzb24KaW1wb3J0IG9zCmltcG9ydCBzeXMKCmltcG9ydCB5YW1sCgpHSVRIVUJfRU5WID0gb3MuZ2V0ZW52KCJHSVRIVUJfRU5WIikKaWYgR0lUSFVCX0VOViBpcyBOb25lOgogICAgcmFpc2UgVmFsdWVFcnJvcigiR0lUSFVCX0VOViBub3Qgc2V0LiBNdXN0IGJlIHJ1biBpbnNpZGUgR2l0SHViIEFjdGlvbnMuIikKCkRFTElNSVRFUiA9ICJFT0YiCgoKZGVmIHNldF9lbnYoZW52KToKCiAgICBlbnYgPSB5YW1sLmxvYWQoZW52LCBMb2FkZXI9eWFtbC5CYXNlTG9hZGVyKQogICAgcHJpbnQoanNvbi5kdW1wcyhlbnYsIGluZGVudD0yKSkKCiAgICBpZiBub3QgaXNpbnN0YW5jZShlbnYsIGRpY3QpOgogICAgICAgIHRpdGxlID0gImBlbnZgIG11c3QgYmUgbWFwcGluZyIKICAgICAgICBtZXNzYWdlID0gZiJgZW52YCBtdXN0IGJlIG1hcHBpbmcgb2YgZW52IHZhcmlhYmxlcyB0byB2YWx1ZXMsIGdvdCB0eXBlIHt0eXBlKGVudil9IgogICAgICAgIHByaW50KGYiOjplcnJvciB0aXRsZT17dGl0bGV9Ojp7bWVzc2FnZX0iKQogICAgICAgIGV4aXQoMSkKCiAgICBmb3IgaywgdiBpbiBlbnYuaXRlbXMoKToKCiAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uodiwgc3RyKToKICAgICAgICAgICAgdGl0bGUgPSAiYGVudmAgdmFsdWVzIG11c3QgYmUgc3RyaW5ncyIKICAgICAgICAgICAgbWVzc2FnZSA9IGYiYGVudmAgdmFsdWVzIG11c3QgYmUgc3RyaW5ncywgYnV0IHZhbHVlIG9mIHtrfSBoYXMgdHlwZSB7dHlwZSh2KX0iCiAgICAgICAgICAgIHByaW50KGYiOjplcnJvciB0aXRsZT17dGl0bGV9Ojp7bWVzc2FnZX0iKQogICAgICAgICAgICBleGl0KDEpCgogICAgICAgIHYgPSB2LnNwbGl0KCJcbiIpCgogICAgICAgIHdpdGggb3BlbihHSVRIVUJfRU5WLCAiYSIpIGFzIGY6CiAgICAgICAgICAgIGlmIGxlbih2KSA9PSAxOgogICAgICAgICAgICAgICAgZi53cml0ZShmIntrfT17dlswXX1cbiIpCiAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiB2OgogICAgICAgICAgICAgICAgICAgIGFzc2VydCBsaW5lLnN0cmlwKCkgIT0gREVMSU1JVEVSCiAgICAgICAgICAgICAgICBmLndyaXRlKGYie2t9PDx7REVMSU1JVEVSfVxuIikKICAgICAgICAgICAgICAgIGZvciBsaW5lIGluIHY6CiAgICAgICAgICAgICAgICAgICAgZi53cml0ZShmIntsaW5lfVxuIikKICAgICAgICAgICAgICAgIGYud3JpdGUoZiJ7REVMSU1JVEVSfVxuIikKCiAgICAgICAgcHJpbnQoZiJ7a30gd3JpdHRlbiB0byBHSVRIVUJfRU5WIikKCgppZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgc2V0X2VudihzeXMuYXJndlsxXSkK
185185 - name : Run cibuildwheel
186- 186+ uses : pypa/cibuildwheel@ee63bf16da6cddfb925f542f2c7b59ad50e93969 # v2.22.0
187187 with :
188188 output-dir : dist
189189 env :
190190 CIBW_BUILD : ${{ matrix.CIBW_BUILD }}
191191 CIBW_ARCHS : ${{ matrix.CIBW_ARCHS }}
192- - uses : actions/upload-artifact@v4
192+ - uses : actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
193193 if : |
194194 needs.targets.outputs.upload_to_pypi == 'true' || inputs.upload_to_anaconda
195195 with :
@@ -203,7 +203,7 @@ jobs:
203203 runs-on : ${{ inputs.sdist-runs-on }}
204204 timeout-minutes : ${{ inputs.timeout-minutes }}
205205 steps :
206- - uses : actions/setup-python@v5
206+ - uses : actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5.2.0
207207 if : ${{ inputs.env != '' }}
208208 with :
209209 python-version : ' 3.12'
@@ -217,23 +217,23 @@ jobs:
217217 shell : sh
218218 env :
219219 SET_ENV_SCRIPT: aW1wb3J0IGpzb24KaW1wb3J0IG9zCmltcG9ydCBzeXMKCmltcG9ydCB5YW1sCgpHSVRIVUJfRU5WID0gb3MuZ2V0ZW52KCJHSVRIVUJfRU5WIikKaWYgR0lUSFVCX0VOViBpcyBOb25lOgogICAgcmFpc2UgVmFsdWVFcnJvcigiR0lUSFVCX0VOViBub3Qgc2V0LiBNdXN0IGJlIHJ1biBpbnNpZGUgR2l0SHViIEFjdGlvbnMuIikKCkRFTElNSVRFUiA9ICJFT0YiCgoKZGVmIHNldF9lbnYoZW52KToKCiAgICBlbnYgPSB5YW1sLmxvYWQoZW52LCBMb2FkZXI9eWFtbC5CYXNlTG9hZGVyKQogICAgcHJpbnQoanNvbi5kdW1wcyhlbnYsIGluZGVudD0yKSkKCiAgICBpZiBub3QgaXNpbnN0YW5jZShlbnYsIGRpY3QpOgogICAgICAgIHRpdGxlID0gImBlbnZgIG11c3QgYmUgbWFwcGluZyIKICAgICAgICBtZXNzYWdlID0gZiJgZW52YCBtdXN0IGJlIG1hcHBpbmcgb2YgZW52IHZhcmlhYmxlcyB0byB2YWx1ZXMsIGdvdCB0eXBlIHt0eXBlKGVudil9IgogICAgICAgIHByaW50KGYiOjplcnJvciB0aXRsZT17dGl0bGV9Ojp7bWVzc2FnZX0iKQogICAgICAgIGV4aXQoMSkKCiAgICBmb3IgaywgdiBpbiBlbnYuaXRlbXMoKToKCiAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uodiwgc3RyKToKICAgICAgICAgICAgdGl0bGUgPSAiYGVudmAgdmFsdWVzIG11c3QgYmUgc3RyaW5ncyIKICAgICAgICAgICAgbWVzc2FnZSA9IGYiYGVudmAgdmFsdWVzIG11c3QgYmUgc3RyaW5ncywgYnV0IHZhbHVlIG9mIHtrfSBoYXMgdHlwZSB7dHlwZSh2KX0iCiAgICAgICAgICAgIHByaW50KGYiOjplcnJvciB0aXRsZT17dGl0bGV9Ojp7bWVzc2FnZX0iKQogICAgICAgICAgICBleGl0KDEpCgogICAgICAgIHYgPSB2LnNwbGl0KCJcbiIpCgogICAgICAgIHdpdGggb3BlbihHSVRIVUJfRU5WLCAiYSIpIGFzIGY6CiAgICAgICAgICAgIGlmIGxlbih2KSA9PSAxOgogICAgICAgICAgICAgICAgZi53cml0ZShmIntrfT17dlswXX1cbiIpCiAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiB2OgogICAgICAgICAgICAgICAgICAgIGFzc2VydCBsaW5lLnN0cmlwKCkgIT0gREVMSU1JVEVSCiAgICAgICAgICAgICAgICBmLndyaXRlKGYie2t9PDx7REVMSU1JVEVSfVxuIikKICAgICAgICAgICAgICAgIGZvciBsaW5lIGluIHY6CiAgICAgICAgICAgICAgICAgICAgZi53cml0ZShmIntsaW5lfVxuIikKICAgICAgICAgICAgICAgIGYud3JpdGUoZiJ7REVMSU1JVEVSfVxuIikKCiAgICAgICAgcHJpbnQoZiJ7a30gd3JpdHRlbiB0byBHSVRIVUJfRU5WIikKCgppZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgc2V0X2VudihzeXMuYXJndlsxXSkK
220- - uses : actions/checkout@v4
220+ - uses : actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0
221221 with :
222222 fetch-depth : 0
223223 lfs : true
224224 submodules : ${{ inputs.submodules }}
225225 - name : Install dependencies
226226 if : ${{ inputs.libraries != '' }}
227- uses : ConorMacBride/install-package@main
227+ uses : ConorMacBride/install-package@3e7ad059e07782ee54fa35f827df52aae0626f30 # v1.1.0
228228 with :
229229 apt : ${{ inputs.libraries }}
230230 - id : build
231- uses : OpenAstronomy/build-python-dist@main
231+ uses : OpenAstronomy/build-python-dist@bbb0e1c5b132893999ea56d77bd4b526e0097c7d # v1.0.1
232232 with :
233233 test_extras : ${{ inputs.test_extras }}
234234 test_command : ${{ inputs.test_command }}
235235 pure_python_wheel : false
236- - uses : actions/upload-artifact@v4
236+ - uses : actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
237237 if : |
238238 needs.targets.outputs.upload_to_pypi == 'true' || inputs.upload_to_anaconda
239239 with :
@@ -252,19 +252,19 @@ jobs:
252252 needs.build_wheels.result != 'failure' &&
253253 needs.build_sdist.result != 'failure'
254254 steps :
255- - uses : actions/download-artifact@v4
255+ - uses : actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
256256 with :
257257 pattern : dist-*
258258 path : dist
259259 merge-multiple : true
260- - uses : pypa/gh-action-pypi-publish@release/v1
260+ - uses : pypa/gh-action-pypi-publish@897895f1e160c830e369f9779632ebc134688e1b # v1.10.2
261261 name : Upload to PyPI
262262 if : ${{ needs.targets.outputs.upload_to_pypi == 'true' }}
263263 with :
264264 user : __token__
265265 password : ${{ secrets.pypi_token }}
266266 repository-url : ${{ inputs.repository_url }}
267- - uses : OpenAstronomy/publish-wheels-anaconda@main
267+ - uses : OpenAstronomy/publish-wheels-anaconda@612ea808f79152bd52a019316f684a12bbe8ba33 # main
268268 if : ${{ inputs.upload_to_anaconda }}
269269 with :
270270 anaconda_user : ${{ inputs.anaconda_user }}
0 commit comments