diff --git a/.github/workflows/wheel-builder.yml b/.github/workflows/wheel-builder.yml index 1adb7cf2469b..b4936b42a92f 100644 --- a/.github/workflows/wheel-builder.yml +++ b/.github/workflows/wheel-builder.yml @@ -21,6 +21,13 @@ jobs: - { NAME: "manylinux2010_x86_64", CONTAINER: "cryptography-manylinux2010:x86_64" } - { NAME: "manylinux2014_x86_64", CONTAINER: "cryptography-manylinux2014:x86_64" } - { name: "manylinux_2_24_x86_64", CONTAINER: "cryptography-manylinux_2_24:x86_64"} + - { name: "musllinux_1_1_x86_64", CONTAINER: "cryptography-musllinux_1_1:x86_64"} + exclude: + # There are no readily available musllinux PyPy distributions + - PYTHON: { VERSION: "pypy3.6", PATH: "/opt/pypy3.6/bin/pypy" } + MANYLINUX: { name: "musllinux_1_1_x86_64", CONTAINER: "cryptography-musllinux_1_1:x86_64" } + - PYTHON: { VERSION: "pypy3.7", PATH: "/opt/pypy3.7/bin/pypy" } + MANYLINUX: { name: "musllinux_1_1_x86_64", CONTAINER: "cryptography-musllinux_1_1:x86_64"} name: "${{ matrix.PYTHON.VERSION }} for ${{ matrix.MANYLINUX.NAME }}" steps: - run: ${{ matrix.PYTHON.PATH }} -m venv .venv @@ -41,8 +48,8 @@ jobs: - run: auditwheel repair --plat ${{ matrix.MANYLINUX.NAME }} tmpwheelhouse/cryptograph*.whl -w wheelhouse/ - run: unzip wheelhouse/*.whl -d execstack.check - run: | - results=$(execstack execstack.check/cryptography/hazmat/bindings/*.so) - count=$(echo "$results" | grep -c '^X' || true) + results=$(readelf -lW execstack.check/cryptography/hazmat/bindings/*.so) + count=$(echo "$results" | grep -c 'GNU_STACK.*[R ][W ]E' || true) if [ "$count" -ne 0 ]; then exit 1 else