diff options
author | Andrew Nelson <andyfaff@gmail.com> | 2023-01-21 02:03:28 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-20 16:03:28 +0100 |
commit | df3751b03d789ee04cac3a9a8a7f7f3aba58735c (patch) | |
tree | 515f9f45acb6114f398782744437ec891ee12fc4 /.github | |
parent | 707c3bffc32d170d9953996ee40c54988a8aac98 (diff) | |
download | numpy-df3751b03d789ee04cac3a9a8a7f7f3aba58735c.tar.gz |
CI: musllinux_x86_64 (#22864)
[ci skip]
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/linux_musl.yml | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/.github/workflows/linux_musl.yml b/.github/workflows/linux_musl.yml new file mode 100644 index 000000000..f23c07809 --- /dev/null +++ b/.github/workflows/linux_musl.yml @@ -0,0 +1,69 @@ +name: Test musllinux_x86_64 + +on: + push: + branches: + - main + - maintenance/** + pull_request: + branches: + - main + - maintenance/** + + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + + +permissions: + contents: read # to fetch code (actions/checkout) + + +jobs: + musllinux_x86_64: + runs-on: ubuntu-latest + container: + # Use container used for building musllinux wheels + # it has git installed, all the pythons, etc + image: quay.io/pypa/musllinux_1_1_x86_64 + + steps: + - name: setup + run: | + apk update --quiet + + # using git commands to clone because versioneer doesn't work when + # actions/checkout is used for the clone step in a container + + git config --global --add safe.directory $PWD + + if [ $GITHUB_EVENT_NAME != pull_request ]; then + git clone --recursive --branch=$GITHUB_REF https://github.com/${GITHUB_REPOSITORY}.git $GITHUB_WORKSPACE + git reset --hard $GITHUB_SHA + else + git clone --recursive https://github.com/${GITHUB_REPOSITORY}.git $GITHUB_WORKSPACE + git fetch origin $GITHUB_REF:my_ref_name + git checkout $GITHUB_BASE_REF + git -c user.email="you@example.com" merge --no-commit my_ref_name + fi + + ln -s /usr/local/bin/python3.10 /usr/local/bin/python + + - name: test musllinux_x86_64 + run: | + python -m venv test_env + source test_env/bin/activate + + # required for figuring out the system tags in openblas_support + pip install packaging + + # install openblas by co-opting the CIBW setup script + RUNNER_OS=Linux sh tools/wheels/cibw_before_build.sh . + + pip install -r build_requirements.txt + pip install pytest hypothesis typing_extensions + + # use meson to build and test + ./dev.py build + ./dev.py test |