-
Notifications
You must be signed in to change notification settings - Fork 9
53 lines (42 loc) · 1.34 KB
/
precompile-manylinux.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
name: precompile-manylinux
on:
push:
tags:
- 'v*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: write
jobs:
linux:
runs-on: ubuntu-latest
env:
MIX_ENV: prod
OPENSSL_VERSION: "3.2.1"
ELIXIR_VERSION: "v1.15.4"
HNSWLIB_CI_PRECOMPILE: "manylinux2014"
strategy:
matrix:
otp_version: ["25.3.2.9", "26.2.2"]
arch: [x86_64, i686, s390x]
name: ${{ matrix.arch }}-linux-gnu - OTP ${{ matrix.otp_version }}
steps:
- uses: actions/checkout@v4
- name: Pull docker image
run: |
sudo docker pull quay.io/pypa/manylinux2014_${{ matrix.arch }}:latest
- name: Install binfmt
run: |
sudo apt install -y binfmt-support qemu-user-static
- name: Precompile
run: |
cp .github/script-to-build-manylinux2014.sh ./
cp .github/do-build-manylinux2014.sh ./
bash ./script-to-build-manylinux2014.sh "${{ env.MIX_ENV }}" "${{ matrix.otp_version }}" "${{ env.ELIXIR_VERSION }}" "${{ env.OPENSSL_VERSION }}" "${{ matrix.arch }}" "${{ env.HNSWLIB_CI_PRECOMPILE }}"
- uses: softprops/action-gh-release@v2
if: startsWith(github.ref, 'refs/tags/')
with:
files: |
cache/*.tar.gz
cache/*.sha256