Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

chore: Add GitHub Actions for Alpine CI #2823

Merged
merged 1 commit into from
Apr 23, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions .github/workflows/alpine.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Build bindings for Alpine releases

on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest
container:
image: node:${{ matrix.node }}-alpine${{ matrix.alpine }}
env:
SKIP_SASS_BINARY_DOWNLOAD_FOR_CI: true
strategy:
matrix:
node:
- 6
- 8.16.2
- 10
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Give #2822 we'll want to use 10.16

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't run into this one in the testing, can you give an example of what Alpine version you hit the issue with?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the end the gist of the problem appears to be that binaries built on newer alpine version didn't work on older alpine versions. I think most alpine docker images come 3.9, 3.10, 3.11, so we'll probably want to build binaries in whatever the lowest is for the specific node version.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, there are tags that include the Alpine version, so I can take a look at aligning that details to the run

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've pinned them to the oldest versions now

- 12
- 13
- 14
include:
- node: 6
alpine: ""
- node: 8.16.2
alpine: "3.9"
- node: 10
alpine: "3.9"
- node: 12
alpine: "3.9"
- node: 13
alpine: "3.10"
- node: 14
alpine: "3.10"
steps:
- name: Install Alpine build tools
run: apk add --no-cache python make git gcc g++

- uses: actions/checkout@v2

- name: Install packages
run: npm install --unsafe-perm

- name: Run tests
run: npm test

- uses: actions/upload-artifact@v1
with:
name: ${{ matrix.node }}
path: vendor/