CI: upgrade Linux arm64 environment to Node.js 14/18

This commit is contained in:
Lovell Fuller 2022-07-05 19:42:05 +01:00
parent e0d3c6e05d
commit 6c2e2be41d

View File

@ -3,75 +3,75 @@ version: 2.1
workflows: workflows:
build: build:
jobs: jobs:
- linux-arm64-glibc-node-12: - linux-arm64-glibc-node-14:
filters: filters:
tags: tags:
only: /^v.*/ only: /^v.*/
- linux-arm64-musl-node-12: - linux-arm64-musl-node-14:
filters: filters:
tags: tags:
only: /^v.*/ only: /^v.*/
- linux-arm64-glibc-node-16: - linux-arm64-glibc-node-18:
filters: filters:
tags: tags:
only: /^v.*/ only: /^v.*/
- linux-arm64-musl-node-16: - linux-arm64-musl-node-18:
filters: filters:
tags: tags:
only: /^v.*/ only: /^v.*/
jobs: jobs:
linux-arm64-glibc-node-12: linux-arm64-glibc-node-14:
resource_class: arm.medium resource_class: arm.medium
machine: machine:
image: ubuntu-2004:202101-01 image: ubuntu-2004:current
steps: steps:
- checkout - checkout
- run: | - run: |
sudo docker run -dit --name sharp --volume "${PWD}:/mnt/sharp" --workdir /mnt/sharp arm64v8/debian:bullseye sudo docker run -dit --name sharp --volume "${PWD}:/mnt/sharp" --workdir /mnt/sharp arm64v8/debian:bullseye
sudo docker exec sharp sh -c "apt-get update && apt-get install -y build-essential git python3 curl" sudo docker exec sharp sh -c "apt-get update && apt-get install -y build-essential git python3 curl"
sudo docker exec sharp sh -c "curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -" sudo docker exec sharp sh -c "curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -"
sudo docker exec sharp sh -c "echo 'deb https://deb.nodesource.com/node_12.x sid main' >/etc/apt/sources.list.d/nodesource.list" sudo docker exec sharp sh -c "echo 'deb https://deb.nodesource.com/node_14.x sid main' >/etc/apt/sources.list.d/nodesource.list"
sudo docker exec sharp sh -c "apt-get update && apt-get install -y nodejs" sudo docker exec sharp sh -c "apt-get update && apt-get install -y nodejs"
- run: sudo docker exec sharp sh -c "npm install --build-from-source --unsafe-perm" - run: sudo docker exec sharp sh -c "npm install --build-from-source --unsafe-perm"
- run: sudo docker exec sharp sh -c "npm test" - run: sudo docker exec sharp sh -c "npm test"
- run: "[[ -n $CIRCLE_TAG ]] && sudo docker exec --env prebuild_upload sharp sh -c \"npx prebuild --runtime napi --target 5 --upload=$prebuild_upload\" || true" - run: "[[ -n $CIRCLE_TAG ]] && sudo docker exec --env prebuild_upload sharp sh -c \"npx prebuild --runtime napi --target 7 --upload=$prebuild_upload\" || true"
linux-arm64-glibc-node-16: linux-arm64-glibc-node-18:
resource_class: arm.medium resource_class: arm.medium
machine: machine:
image: ubuntu-2004:202101-01 image: ubuntu-2004:current
steps: steps:
- checkout - checkout
- run: | - run: |
sudo docker run -dit --name sharp --workdir /mnt/sharp arm64v8/debian:bullseye sudo docker run -dit --name sharp --workdir /mnt/sharp arm64v8/debian:bullseye
sudo docker exec sharp sh -c "apt-get update && apt-get install -y build-essential git python3 curl" sudo docker exec sharp sh -c "apt-get update && apt-get install -y build-essential git python3 curl"
sudo docker exec sharp sh -c "curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -" sudo docker exec sharp sh -c "curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -"
sudo docker exec sharp sh -c "echo 'deb https://deb.nodesource.com/node_16.x sid main' >/etc/apt/sources.list.d/nodesource.list" sudo docker exec sharp sh -c "echo 'deb https://deb.nodesource.com/node_18.x sid main' >/etc/apt/sources.list.d/nodesource.list"
sudo docker exec sharp sh -c "apt-get update && apt-get install -y nodejs" sudo docker exec sharp sh -c "apt-get update && apt-get install -y nodejs"
sudo docker exec sharp sh -c "mkdir -p /mnt/sharp" sudo docker exec sharp sh -c "mkdir -p /mnt/sharp"
sudo docker cp . sharp:/mnt/sharp/. sudo docker cp . sharp:/mnt/sharp/.
- run: sudo docker exec sharp sh -c "npm install --build-from-source" - run: sudo docker exec sharp sh -c "npm install --build-from-source"
- run: sudo docker exec sharp sh -c "npm test" - run: sudo docker exec sharp sh -c "npm test"
linux-arm64-musl-node-12: linux-arm64-musl-node-14:
resource_class: arm.medium resource_class: arm.medium
machine: machine:
image: ubuntu-2004:202101-01 image: ubuntu-2004:current
steps: steps:
- checkout - checkout
- run: | - run: |
sudo docker run -dit --name sharp --volume "${PWD}:/mnt/sharp" --workdir /mnt/sharp node:12-alpine3.11 sudo docker run -dit --name sharp --volume "${PWD}:/mnt/sharp" --workdir /mnt/sharp node:14-alpine3.12
sudo docker exec sharp sh -c "apk add build-base git python3 --update-cache" sudo docker exec sharp sh -c "apk add build-base git python3 --update-cache"
- run: sudo docker exec sharp sh -c "npm install --build-from-source --unsafe-perm" - run: sudo docker exec sharp sh -c "npm install --build-from-source --unsafe-perm"
- run: sudo docker exec sharp sh -c "npm test" - run: sudo docker exec sharp sh -c "npm test"
- run: "[[ -n $CIRCLE_TAG ]] && sudo docker exec --env prebuild_upload sharp sh -c \"npx prebuild --runtime napi --target 5 --upload=$prebuild_upload\" || true" - run: "[[ -n $CIRCLE_TAG ]] && sudo docker exec --env prebuild_upload sharp sh -c \"npx prebuild --runtime napi --target 7 --upload=$prebuild_upload\" || true"
linux-arm64-musl-node-16: linux-arm64-musl-node-18:
resource_class: arm.medium resource_class: arm.medium
machine: machine:
image: ubuntu-2004:202101-01 image: ubuntu-2004:current
steps: steps:
- checkout - checkout
- run: | - run: |
sudo docker run -dit --name sharp --workdir /mnt/sharp node:16-alpine3.11 sudo docker run -dit --name sharp --workdir /mnt/sharp node:18-alpine3.14
sudo docker exec sharp sh -c "apk add build-base git python3 --update-cache" sudo docker exec sharp sh -c "apk add build-base git python3 --update-cache"
sudo docker exec sharp sh -c "mkdir -p /mnt/sharp" sudo docker exec sharp sh -c "mkdir -p /mnt/sharp"
sudo docker cp . sharp:/mnt/sharp/. sudo docker cp . sharp:/mnt/sharp/.