1
- # Only run on feat/windows-cert-signing push
1
+ # Only run on master push
2
2
name : Release Executables Binaries
3
3
4
4
on :
@@ -27,21 +27,19 @@ jobs:
27
27
- name : Install Node.js, NPM and Yarn
28
28
uses : actions/setup-node@v1
29
29
with :
30
- node-version : 18
30
+ node-version : 16
31
31
32
32
- name : Install deps with big timeout
33
33
run : |
34
34
yarn install --network-timeout 600000
35
+
35
36
- name : Install Snapcraft
36
- uses : samuelmeuli/action-snapcraft@v1
37
+ uses : samuelmeuli/action-snapcraft@v2
37
38
# Only install Snapcraft on Ubuntu
38
39
if : startsWith(matrix.os, 'ubuntu')
39
- with :
40
- # Log in to Snap Store
41
- snapcraft_token : ${{ secrets.snapcraft_token }}
42
40
43
41
- name : Install AzureSignTool
44
- # Only install Azure Sign Tool on Windows
42
+ # Only install Azure Sign Tool on Windows
45
43
if : startsWith(matrix.os, 'windows')
46
44
run : dotnet tool install --global AzureSignTool
47
45
@@ -65,12 +63,14 @@ jobs:
65
63
echo name: ${{ steps.package_json.outputs.name }}
66
64
echo version: ${{ steps.package_json.outputs.version }}
67
65
echo "********* END RELEASE REF ************"
66
+
68
67
- name : Prepare for app notarization (MacOS)
69
68
if : startsWith(matrix.os, 'macos')
70
69
# Import Apple API key for app notarization on macOS
71
70
run : |
72
71
mkdir -p ~/private_keys/
73
72
echo '${{ secrets.mac_api_key }}' > ~/private_keys/AuthKey_${{ secrets.mac_api_key_id }}.p8
73
+
74
74
- name : Build/release Electron app (MacOS, Ubuntu, Windows)
75
75
uses : samuelmeuli/action-electron-builder@v1
76
76
if : startsWith(matrix.os, 'macos') || startsWith(matrix.os, 'ubuntu')
@@ -92,11 +92,14 @@ jobs:
92
92
# macOS notarization API key
93
93
API_KEY_ID : ${{ secrets.mac_api_key_id }}
94
94
API_KEY_ISSUER_ID : ${{ secrets.mac_api_key_issuer_id }}
95
-
95
+ # Login to Snap Store
96
+ SNAPCRAFT_STORE_CREDENTIALS : ${{ secrets.SNAPCRAFT_TOKEN }}
97
+
96
98
- name : Build Electron app (Windows)
97
99
if : startsWith(matrix.os, 'windows')
98
100
run : |
99
101
yarn run electron:build
102
+
100
103
- name : Sign built binary (Windows)
101
104
if : startsWith(matrix.os, 'windows')
102
105
# Instead of pointing to a specific .exe, uses a PowerShell script which iterates through all the files stored in dist folder.
@@ -106,6 +109,7 @@ jobs:
106
109
$exePath = $_.FullName
107
110
& AzureSignTool sign -kvu "${{ secrets.azure_key_vault_url }}" -kvi "${{ secrets.azure_key_vault_client_id }}" -kvt "${{ secrets.azure_key_vault_tenant_id }}" -kvs "${{ secrets.azure_key_vault_client_secret }}" -kvc "${{ secrets.azure_key_vault_name }}" -tr http://timestamp.digicert.com -v $exePath
108
111
}; cd ..
112
+
109
113
- name : Cleanup artifacts (Windows)
110
114
if : startsWith(matrix.os, 'windows')
111
115
run : |
@@ -114,6 +118,7 @@ jobs:
114
118
npx rimraf "dist/.icon-ico"
115
119
mv dist/temp/* dist
116
120
npx rimraf "dist/temp"
121
+
117
122
- name : Upload artifacts (Windows)
118
123
uses : actions/upload-artifact@v2
119
124
if : startsWith(matrix.os, 'windows')
@@ -129,4 +134,4 @@ jobs:
129
134
tag_name : v${{ steps.package_json.outputs.version }}
130
135
files : " dist/**"
131
136
env :
132
- GITHUB_TOKEN : ${{ secrets.github_token }}
137
+ GITHUB_TOKEN : ${{ secrets.github_token }}
0 commit comments