Skip to content

Commit c6aeaf6

Browse files
committed
testing macOS build
1 parent 12ff7ea commit c6aeaf6

File tree

6 files changed

+59
-19
lines changed

6 files changed

+59
-19
lines changed

.github/actions/build-node/action.yml

+20-7
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,12 @@ runs:
4646
fs.mkdirSync('release/win32/arm64/${{ inputs.node }}', { recursive: true });
4747
}
4848
}
49-
else if('${{ runner.os }}' == 'macOS'){
50-
fs.mkdirSync(`release/${process.platform}/x64/${{ inputs.node }}`, { recursive: true });
49+
else if('${{ runner.os }}' == 'macOS' && '${{ inputs.os }}' != 'macos-13'){
5150
fs.mkdirSync(`release/${process.platform}/arm64/${{ inputs.node }}`, { recursive: true });
5251
}
52+
else if('${{ runner.os }}' == 'macOS' && '${{ inputs.os }}' == 'macos-13'){
53+
fs.mkdirSync(`release/${process.platform}/x64/${{ inputs.node }}`, { recursive: true });
54+
}
5355
} catch(err) {
5456
core.error("Error creating release directory")
5557
core.setFailed(err)
@@ -71,10 +73,12 @@ runs:
7173
fs.writeFileSync('release/win32/arm64/${{ inputs.node }}/node.version', '${{ steps.node-test-version.outputs.node-version }}');
7274
}
7375
}
74-
else if('${{ runner.os }}' == 'macOS'){
75-
fs.writeFileSync(`release/${process.platform}/x64/${{ inputs.node }}/node.version`, '${{ steps.node-test-version.outputs.node-version }}');
76+
else if('${{ runner.os }}' == 'macOS' && '${{ inputs.os }}' != 'macos-13'){
7677
fs.writeFileSync(`release/${process.platform}/arm64/${{ inputs.node }}/node.version`, '${{ steps.node-test-version.outputs.node-version }}');
7778
}
79+
else if('${{ runner.os }}' == 'macOS' && '${{ inputs.os }}' == 'macos-13'){
80+
fs.writeFileSync(`release/${process.platform}/x64/${{ inputs.node }}/node.version`, '${{ steps.node-test-version.outputs.node-version }}');
81+
}
7882
} catch(err) {
7983
core.error("Error writing node.version file")
8084
core.setFailed(err)
@@ -108,13 +112,14 @@ runs:
108112

109113
- name: Build x64
110114
uses: ./.github/actions/build
115+
if: (runner.os == 'Windows') || (inputs.os == 'macos-13')
111116
with:
112117
node: ${{ steps.node-test-version.outputs.node-version }}
113118
node-major: ${{ inputs.node }}
114119
arch: 'x64'
115120

116121
- name: Build arm64
117-
if: (inputs.node >=20) || (runner.os == 'macOS')
122+
if: (inputs.node >=20) || (inputs.os == 'macos-15')
118123
uses: ./.github/actions/build
119124
with:
120125
node: ${{ steps.node-test-version.outputs.node-version }}
@@ -131,9 +136,17 @@ runs:
131136
132137
- name: Upload artifacts
133138
uses: actions/upload-artifact@v4
134-
if: runner.os == 'macOS' && success()
139+
if: runner.os == 'macOS' && inputs.os == 'macos-15' && success()
140+
with:
141+
name: darwin-arm64-edge-js-${{ inputs.node }}
142+
path: |
143+
release
144+
145+
- name: Upload artifacts
146+
uses: actions/upload-artifact@v4
147+
if: runner.os == 'macOS' && inputs.os == 'macos-13' && success()
135148
with:
136-
name: darwin-edge-js-${{ inputs.node }}
149+
name: darwin-x64-edge-js-${{ inputs.node }}
137150
path: |
138151
release
139152

.github/actions/setup-env/action.yml

-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ runs:
5353

5454
- name: Setup Mono
5555
if: runner.os == 'macOS'
56-
# if: inputs.os == 'macos-14' || inputs.os == 'macos-15'
5756
shell: bash
5857
run: |
5958
brew install mono --overwrite

.github/actions/test-build/action.yml

+39-11
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,18 @@ runs:
4444
pattern: win32-edge-js-${{ inputs.node }}*
4545

4646
- name: Download artifacts
47-
if: runner.os == 'macOS'
47+
if: runner.os == 'macOS' && inputs.os != 'macos-13'
4848
uses: actions/download-artifact@v4
4949
with:
5050
path: release
51-
pattern: darwin-edge-js-${{ inputs.node }}*
51+
pattern: darwin-arm64-edge-js-${{ inputs.node }}*
52+
53+
- name: Download artifacts
54+
if: runner.os == 'macOS' && inputs.os == 'macos-13'
55+
uses: actions/download-artifact@v4
56+
with:
57+
path: release
58+
pattern: darwin-x64-edge-js-${{ inputs.node }}*
5259

5360
- name: List artifacts
5461
shell: bash
@@ -61,19 +68,32 @@ runs:
6168
cmd /c copy /y release\win32-edge-js-${{ inputs.node }}\win32\x64\${{ inputs.node }}\edge_*.node lib\native\win32\x64\${{ inputs.node }}
6269
6370
- name: Copy artifacts
64-
if: runner.os == 'macOS'
71+
if: runner.os == 'macOS' && inputs.os != 'macos-13'
72+
uses: actions/github-script@v7
73+
with:
74+
result-encoding: string
75+
script: |
76+
try {
77+
const fs = require('fs')
78+
fs.copyFileSync('release/darwin-arm64-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/edge_coreclr.node', 'lib/native/darwin/arm64/${{ inputs.node }}/edge_coreclr.node');
79+
fs.copyFileSync('release/darwin-arm64-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/edge_nativeclr.node', 'lib/native/darwin/arm64/${{ inputs.node }}/edge_nativeclr.node');
80+
fs.copyFileSync('release/darwin-arm64-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/MonoEmbedding.exe', 'lib/native/darwin/arm64/${{ inputs.node }}/MonoEmbedding.exe');
81+
} catch(err) {
82+
core.error("Error creating release directory")
83+
core.setFailed(err)
84+
}
85+
86+
- name: Copy artifacts
87+
if: runner.os == 'macOS' && inputs.os == 'macos-13'
6588
uses: actions/github-script@v7
6689
with:
6790
result-encoding: string
6891
script: |
6992
try {
7093
const fs = require('fs')
71-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/edge_coreclr.node', 'lib/native/darwin/x64/${{ inputs.node }}/edge_coreclr.node');
72-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/edge_nativeclr.node', 'lib/native/darwin/x64/${{ inputs.node }}/edge_nativeclr.node');
73-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/MonoEmbedding.exe', 'lib/native/darwin/x64/${{ inputs.node }}/MonoEmbedding.exe');
74-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/edge_coreclr.node', 'lib/native/darwin/arm64/${{ inputs.node }}/edge_coreclr.node');
75-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/edge_nativeclr.node', 'lib/native/darwin/arm64/${{ inputs.node }}/edge_nativeclr.node');
76-
fs.copyFileSync('release/darwin-edge-js-${{ inputs.node }}/darwin/arm64/${{ inputs.node }}/MonoEmbedding.exe', 'lib/native/darwin/arm64/${{ inputs.node }}/MonoEmbedding.exe');
94+
fs.copyFileSync('release/darwin-x64-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/edge_coreclr.node', 'lib/native/darwin/x64/${{ inputs.node }}/edge_coreclr.node');
95+
fs.copyFileSync('release/darwin-x64-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/edge_nativeclr.node', 'lib/native/darwin/x64/${{ inputs.node }}/edge_nativeclr.node');
96+
fs.copyFileSync('release/darwin-x64-edge-js-${{ inputs.node }}/darwin/x64/${{ inputs.node }}/MonoEmbedding.exe', 'lib/native/darwin/x64/${{ inputs.node }}/MonoEmbedding.exe');
7797
} catch(err) {
7898
core.error("Error creating release directory")
7999
core.setFailed(err)
@@ -94,10 +114,18 @@ runs:
94114
ignore_case: true
95115

96116
- name: Check edge-js macOS pre-built files
97-
if: runner.os == 'macOS'
117+
if: runner.os == 'macOS' && inputs.os == 'macos-13'
118+
uses: andstor/file-existence-action@v3
119+
with:
120+
files: "lib/native/darwin/${{ runner.arch }}/${{ inputs.node }}/edge_nativeclr.node"
121+
fail: true
122+
ignore_case: true
123+
124+
- name: Check edge-js macOS pre-built files
125+
if: runner.os == 'macOS' && inputs.os != 'macos-13'
98126
uses: andstor/file-existence-action@v3
99127
with:
100-
files: "lib/native/darwin/${{ runner.arch }}/${{ inputs.node }}/edge_coreclr.node, lib/native/darwin/${{ runner.arch }}/${{ inputs.node }}/edge_nativeclr.node"
128+
files: "lib/native/darwin/${{ runner.arch }}/${{ inputs.node }}/edge_coreclr.node"
101129
fail: true
102130
ignore_case: true
103131

File renamed without changes.
27.1 KB
Binary file not shown.
24 KB
Binary file not shown.

0 commit comments

Comments
 (0)