Skip to content

Commit 85087c2

Browse files
authored
switch to native linux arm64 GH actions runner (#23)
* switch to native linux arm64 GH actions runner * bump packages to support node 20 * fixup openssl_fips
1 parent 4a90185 commit 85087c2

File tree

4 files changed

+51
-87
lines changed

4 files changed

+51
-87
lines changed

.github/workflows/ci.yml

Lines changed: 18 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ jobs:
1818
fail-fast: false
1919
matrix:
2020
include:
21-
- os: ubuntu-20.04
21+
- os: ubuntu-22.04
2222
arch: x64
2323
build-group: linux-x64
24-
- os: ubuntu-20.04
25-
arch: x64
24+
- os: ubuntu-22.04-arm
25+
arch: arm64
2626
build-group: linux-arm64
27-
- os: macos-11
27+
- os: macos-13
2828
arch: x64
2929
build-group: darwin-universal
3030
- os: windows-2019
@@ -36,57 +36,44 @@ jobs:
3636
env:
3737
BUILD_GROUP: ${{ matrix.build-group }}
3838
steps:
39-
- uses: actions/checkout@v3
40-
- uses: actions/setup-node@v3
39+
- uses: actions/checkout@v4
40+
- uses: actions/setup-node@v4
4141
with:
42-
node-version: '16'
42+
node-version: '20'
4343
architecture: ${{ matrix.arch }}
44-
- name: Prebuildify for linux-arm64
45-
if: ${{ matrix.build-group == 'linux-arm64' }}
46-
uses: pguyot/arm-runner-action@v2
47-
with:
48-
base_image: raspios_lite_arm64:latest
49-
image_additional_mb: 5000
50-
copy_artifact_path: prebuilds
51-
commands: |
52-
curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
53-
apt-get -y install nodejs libxtst-dev libpng++-dev
54-
npm ci
55-
npm run prebuild-$BUILD_GROUP
56-
- name: Install linux x64 dependencies
57-
if: ${{ matrix.build-group == 'linux-x64' }}
44+
- name: Install linux dependencies
45+
if: ${{ (matrix.build-group == 'linux-x64') || (matrix.build-group == 'linux-arm64') }}
5846
run: sudo apt-get install libxtst-dev libpng++-dev
5947
- run: npm ci
60-
if: ${{ matrix.build-group != 'linux-arm64' }}
6148
- name: Prebuildify
62-
if: ${{ matrix.build-group != 'linux-arm64' }}
6349
run: npm run prebuild-$BUILD_GROUP
6450
shell: bash
65-
- uses: actions/upload-artifact@v3
51+
- uses: actions/upload-artifact@v4
6652
with:
67-
name: prebuilds
53+
name: prebuilds-${{ matrix.build-group }}
6854
path: prebuilds/
6955
if-no-files-found: error
7056
publish:
7157
name: Publish to npm
7258
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
73-
runs-on: ubuntu-20.04
59+
runs-on: ubuntu-latest
7460
needs: build
7561
steps:
76-
- uses: actions/checkout@v3
77-
- uses: actions/download-artifact@v3
62+
- uses: actions/checkout@v4
63+
- uses: actions/download-artifact@v4
7864
with:
79-
name: prebuilds
65+
pattern: prebuilds-*
8066
path: prebuilds
67+
merge-multiple: true
8168
- uses: phips28/gh-action-bump-version@95099cd5edcdae43499bc94202b9d907e739e9c8
8269
with:
8370
tag-prefix: 'v'
8471
version-type: 'patch'
8572
env:
8673
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
87-
- uses: actions/setup-node@v3
74+
- uses: actions/setup-node@v4
8875
with:
89-
node-version: '16'
76+
node-version: '20'
9077
registry-url: 'https://registry.npmjs.org'
9178
- run: npm publish --access public
9279
env:

binding.gyp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
{
2+
'variables': {
3+
'openssl_fips': ''
4+
},
25
'targets': [{
36
'target_name': 'robotjs',
47
'cflags!': [ '-fno-exceptions' ],

package-lock.json

Lines changed: 27 additions & 53 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@
5151
},
5252
"homepage": "https://github.com/jitsi/robotjs",
5353
"dependencies": {
54-
"node-addon-api": "^4.2.0",
55-
"node-gyp-build": "^4.3.0"
54+
"node-addon-api": "^8.3.0",
55+
"node-gyp-build": "^4.8.4"
5656
},
5757
"devDependencies": {
5858
"jasmine": "^2.99.0",
59-
"prebuildify": "^5.0.0",
59+
"prebuildify": "^6.0.1",
6060
"run-script-os": "^1.0.3",
6161
"tape": "^4.8.0",
6262
"targetpractice": "0.0.7"

0 commit comments

Comments
 (0)