6
6
- ' v*'
7
7
8
8
jobs :
9
- build_windows :
10
- name : Build Windows
11
- runs-on : windows-latest
9
+ build :
10
+ name : Build Version
11
+ strategy :
12
+ max-parallel : 4
13
+ matrix :
14
+ file_type : [ msi, dmg ]
15
+ include :
16
+ - file_type : msi
17
+ op : windows-latest
18
+ output_dir : windows
19
+ - file_type : dmg
20
+ op : macos-latest
21
+ output_dir : macOS
22
+ package_args : --no-sign
23
+ runs-on : ${{ matrix.op }}
12
24
steps :
13
25
- name : Checkout code
14
26
uses : actions/checkout@master
27
+ - name : Set up Python 3.8
28
+ uses : actions/setup-python@v2
29
+ with :
30
+ python-version : 3.8
15
31
- name : Install briefcase
16
32
run : |
17
33
python -m pip install --upgrade pip
@@ -21,38 +37,16 @@ jobs:
21
37
briefcase create --no-input
22
38
- name : Briefcase package
23
39
run : |
24
- briefcase package
25
- - name : Upload msi
26
- uses : actions/upload-artifact@v2
27
- with :
28
- name : msi
29
- path : windows/*.msi
30
-
31
- build_macos :
32
- name : Build macOS
33
- runs-on : macos-latest
34
- steps :
35
- - name : Checkout code
36
- uses : actions/checkout@master
37
- - name : Install briefcase
38
- run : |
39
- python3 -m pip install --upgrade pip
40
- pip3 install briefcase
41
- - name : Briefcase create
42
- run : |
43
- briefcase create --no-input
44
- - name : Briefcase package
45
- run : |
46
- briefcase package --no-sign
47
- - name : Upload dmg
40
+ briefcase package ${{ matrix.package_args }}
41
+ - name : Upload artifact
48
42
uses : actions/upload-artifact@v2
49
43
with :
50
- name : dmg
51
- path : macOS /*.dmg
44
+ name : ${{ matrix.file_type }}
45
+ path : ${{ matrix.output_dir }} /*.${{ matrix.file_type }}
52
46
53
47
create_release :
54
48
name : Create Release
55
- needs : [build_windows, build_macos ]
49
+ needs : [build ]
56
50
runs-on : ubuntu-latest
57
51
steps :
58
52
- name : Create Release
@@ -79,14 +73,14 @@ jobs:
79
73
run : |
80
74
MSI_ARTIFACT_PATHNAME=$(ls windows/*.msi | head -n 1)
81
75
MSI_ARTIFACT_NAME=$(basename $MSI_ARTIFACT_PATHNAME)
82
- echo ::set-env name= MSI_ARTIFACT_NAME:: ${MSI_ARTIFACT_NAME}
83
- echo ::set-env name= MSI_ARTIFACT_PATHNAME:: ${MSI_ARTIFACT_PATHNAME}
76
+ echo " MSI_ARTIFACT_NAME= ${MSI_ARTIFACT_NAME}" >> $GITHUB_ENV
77
+ echo " MSI_ARTIFACT_PATHNAME= ${MSI_ARTIFACT_PATHNAME}" >> $GITHUB_ENV
84
78
- name : Get Name of DMG Artifact
85
79
run : |
86
80
DMG_ARTIFACT_PATHNAME=$(ls macOS/*.dmg | head -n 1)
87
81
DMG_ARTIFACT_NAME=$(basename $DMG_ARTIFACT_PATHNAME)
88
- echo ::set-env name= DMG_ARTIFACT_NAME:: ${DMG_ARTIFACT_NAME}
89
- echo ::set-env name= DMG_ARTIFACT_PATHNAME:: ${DMG_ARTIFACT_PATHNAME}
82
+ echo " DMG_ARTIFACT_NAME= ${DMG_ARTIFACT_NAME}" >> $GITHUB_ENV
83
+ echo " DMG_ARTIFACT_PATHNAME= ${DMG_ARTIFACT_PATHNAME}" >> $GITHUB_ENV
90
84
- name : Upload MSI Asset
91
85
id : upload-msi-asset
92
86
uses : actions/upload-release-asset@v1
0 commit comments