9
9
10
10
jobs :
11
11
build :
12
+ name : Build
12
13
runs-on : macOS-latest
13
14
outputs :
14
15
TAG : ${{ steps.build-vars.outputs.TAG }}
@@ -21,29 +22,26 @@ jobs:
21
22
OPENSSL_VERSION : ${{ steps.version-details.outputs.OPENSSL_VERSION }}
22
23
strategy :
23
24
matrix :
24
- target : [' macOS', ' iOS', ' tvOS', ' watchOS' ]
25
+ target : [ " macOS", " iOS", " tvOS", " watchOS" ]
25
26
steps :
26
- - uses : actions/checkout@v4
27
+ - name : Checkout
28
+
27
29
28
- - name : Set build variables
30
+ - name : Set Build Variables
29
31
id : build-vars
30
32
env :
31
33
TAG_NAME : ${{ github.ref }}
32
34
run : |
33
35
export TAG=$(basename $TAG_NAME)
34
- echo "TAG=${TAG}"
35
36
export PYTHON_VER="${TAG%-*}"
36
37
export BUILD_NUMBER="${TAG#*-}"
37
38
38
- echo "PYTHON_VER=${PYTHON_VER}"
39
- echo "BUILD_NUMBER=${BUILD_NUMBER}"
40
-
41
- echo "TAG=${TAG}" >> ${GITHUB_OUTPUT}
42
- echo "PYTHON_VER=${PYTHON_VER}" >> ${GITHUB_OUTPUT}
43
- echo "BUILD_NUMBER=${BUILD_NUMBER}" >> ${GITHUB_OUTPUT}
39
+ echo "TAG=${TAG}" | tee -a ${GITHUB_OUTPUT}
40
+ echo "PYTHON_VER=${PYTHON_VER}" | tee -a ${GITHUB_OUTPUT}
41
+ echo "BUILD_NUMBER=${BUILD_NUMBER}" | tee -a ${GITHUB_OUTPUT}
44
42
45
43
- name : Set up Python
46
- uses : actions/setup-python@v4.7 .1
44
+ uses : actions/setup-python@v5.1 .1
47
45
with :
48
46
python-version : " ${{ steps.build-vars.outputs.PYTHON_VER }}-dev"
49
47
@@ -52,46 +50,42 @@ jobs:
52
50
# Do the build for the requested target.
53
51
make ${{ matrix.target }} BUILD_NUMBER=${{ steps.build-vars.outputs.BUILD_NUMBER }}
54
52
55
- - name : Extract version details
53
+ - name : Extract Version Details
56
54
id : version-details
57
55
run : |
58
- export PYTHON_VERSION=$(grep "Python version:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 3)
59
- export BZIP2_VERSION=$(grep "BZip2:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
60
- export XZ_VERSION=$(grep "XZ:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
61
- export OPENSSL_VERSION=$(grep "OpenSSL:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
62
- export LIBFFI_VERSION=$(grep "libFFI:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
63
-
64
- echo "PYTHON_VERSION=${PYTHON_VERSION}"
65
- echo "BZIP2_VERSION=${BZIP2_VERSION}"
66
- echo "XZ_VERSION=${XZ_VERSION}"
67
- echo "OPENSSL_VERSION=${OPENSSL_VERSION}"
68
- echo "LIBFFI_VERSION=${LIBFFI_VERSION}"
56
+ PYTHON_VERSION=$(grep "Python version:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 3)
57
+ BZIP2_VERSION=$(grep "BZip2:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
58
+ XZ_VERSION=$(grep "XZ:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
59
+ OPENSSL_VERSION=$(grep "OpenSSL:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
60
+ LIBFFI_VERSION=$(grep "libFFI:" support/${{ steps.build-vars.outputs.PYTHON_VER }}/${{ matrix.target }}/VERSIONS | cut -d " " -f 2)
69
61
70
- echo "PYTHON_VERSION=${PYTHON_VERSION}" >> ${GITHUB_OUTPUT}
71
- echo "BZIP2_VERSION=${BZIP2_VERSION}" >> ${GITHUB_OUTPUT}
72
- echo "XZ_VERSION=${XZ_VERSION}" >> ${GITHUB_OUTPUT}
73
- echo "OPENSSL_VERSION=${OPENSSL_VERSION}" >> ${GITHUB_OUTPUT}
74
- echo "LIBFFI_VERSION=${LIBFFI_VERSION}" >> ${GITHUB_OUTPUT}
62
+ echo "PYTHON_VERSION=${PYTHON_VERSION}" | tee -a ${GITHUB_OUTPUT}
63
+ echo "BZIP2_VERSION=${BZIP2_VERSION}" | tee -a ${GITHUB_OUTPUT}
64
+ echo "XZ_VERSION=${XZ_VERSION}" | tee -a ${GITHUB_OUTPUT}
65
+ echo "OPENSSL_VERSION=${OPENSSL_VERSION}" | tee -a ${GITHUB_OUTPUT}
66
+ echo "LIBFFI_VERSION=${LIBFFI_VERSION}" | tee -a ${GITHUB_OUTPUT}
75
67
76
- - name : Upload build artifact
77
- uses : actions/upload-artifact@v3.1.3
68
+ - name : Upload Build Artifact
69
+ uses : actions/upload-artifact@v4.3.5
78
70
with :
79
- name : dist
80
- path : " dist"
71
+ name : dist-${{ matrix.target }}
72
+ path : dist
81
73
if-no-files-found : error
82
74
83
75
make-release :
76
+ name : Make Release
84
77
runs-on : ubuntu-latest
85
78
needs : build
86
79
steps :
87
80
- name : Get build artifacts
88
- uses : actions/download-artifact@v3.0.2
81
+ uses : actions/download-artifact@v4.1.8
89
82
with :
90
- name : dist
83
+ pattern : dist-*
91
84
path : dist
85
+ merge-multiple : true
92
86
93
87
- name : Create Release
94
- uses : ncipollo/release-action@v1.13 .0
88
+ uses : ncipollo/release-action@v1.14 .0
95
89
with :
96
90
name : ${{ needs.build.outputs.PYTHON_VER }}-${{ needs.build.outputs.BUILD_NUMBER }}
97
91
tag : ${{ needs.build.outputs.PYTHON_VER }}-${{ needs.build.outputs.BUILD_NUMBER }}
0 commit comments