Skip to content

chore(deps): bump cmake from 3.27.2 to 3.27.4.1 (#402) #733

chore(deps): bump cmake from 3.27.2 to 3.27.4.1 (#402)

chore(deps): bump cmake from 3.27.2 to 3.27.4.1 (#402) #733

Workflow file for this run

name: CI
on:
workflow_dispatch:
inputs:
use_qemu:
description: 'Use qemu to build linux aarch64, ppc64le & s390x'
required: true
default: true
schedule:
- cron: '0 18 * * 5' # "At 18:00 on Friday."
pull_request:
push:
branches:
- master
- main
tags:
- "*.*.*"
env:
USE_QEMU: ${{ fromJSON(github.event.inputs.use_qemu || 'false') || (github.event_name == 'schedule') || startsWith(github.ref, 'refs/tags/') }}
jobs:
lint:
name: Lint
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.x"
- uses: pre-commit/action@v3.0.0
build_wheels:
name: Build ${{ matrix.build }}${{ matrix.arch }} wheels on ${{ matrix.os }}
needs: [lint]
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
arch: "x86_64"
build: "manylinux_"
use_qemu: false
- os: ubuntu-22.04
arch: "x86_64"
build: "musllinux_"
use_qemu: false
- os: ubuntu-22.04
arch: "i686"
build: "manylinux_"
use_qemu: false
- os: ubuntu-22.04
arch: "i686"
build: "musllinux_"
use_qemu: false
- os: ubuntu-22.04
arch: "aarch64"
build: "manylinux_"
use_qemu: true
- os: ubuntu-22.04
arch: "aarch64"
build: "musllinux_"
use_qemu: true
- os: ubuntu-22.04
arch: "ppc64le"
build: "manylinux_"
use_qemu: true
- os: ubuntu-22.04
arch: "ppc64le"
build: "musllinux_"
use_qemu: true
- os: ubuntu-22.04
arch: "s390x"
build: "manylinux_"
use_qemu: true
- os: ubuntu-22.04
arch: "s390x"
build: "musllinux_"
use_qemu: true
- os: windows-2019
arch: "AMD64"
build: ""
use_qemu: false
- os: windows-2022
arch: "ARM64"
build: ""
use_qemu: false
- os: windows-2019
arch: "x86"
build: ""
use_qemu: false
- os: macos-11
arch: "x86_64"
build: ""
use_qemu: false
steps:
- uses: actions/checkout@v3
if: (!matrix.use_qemu) || fromJSON(env.USE_QEMU)
with:
fetch-depth: 0 # required for versioneer to find tags
- name: Set up QEMU
uses: docker/setup-qemu-action@v2.2.0
if: matrix.use_qemu && fromJSON(env.USE_QEMU)
- name: Build wheels
uses: pypa/cibuildwheel@v2.15.0
if: (!matrix.use_qemu) || fromJSON(env.USE_QEMU)
env:
CIBW_ARCHS: "${{ matrix.arch }}"
CIBW_BUILD: "cp39-${{ matrix.build }}*"
- uses: actions/upload-artifact@v3
if: (!matrix.use_qemu) || fromJSON(env.USE_QEMU)
with:
path: ./wheelhouse/*.whl
build_manylinux2010_wheels:
name: Build ${{ matrix.arch }} manylinux2010 wheels
needs: [lint]
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
- arch: "x86_64"
- arch: "i686"
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # required for versioneer to find tags
- name: Build wheels
uses: pypa/cibuildwheel@v2.15.0
env:
CIBW_ARCHS: "${{ matrix.arch }}"
CIBW_BUILD: "cp39-manylinux_*"
CIBW_MANYLINUX_X86_64_IMAGE: "manylinux2010"
CIBW_MANYLINUX_I686_IMAGE: "manylinux2010"
- uses: actions/upload-artifact@v3
with:
path: ./wheelhouse/*.whl
build_sdist:
name: Build source distribution
needs: [lint]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # required for versioneer to find tags
- name: Build SDist
run: pipx run build --sdist
- uses: actions/upload-artifact@v3
with:
path: dist/*.tar.gz
test_sdist:
name: Test SDist with python ${{ matrix.python }}
needs: [build_sdist]
# 22.04 doesn't have 2.7 or 3.6
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
python: ["2.7", "3.6", "3.11"]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
if: matrix.python != '2.7'
name: Install Python ${{ matrix.python }}
with:
python-version: ${{ matrix.python }}
- name: Install Ubuntu Python 2.7
if: matrix.python == '2.7'
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends python2 python3-virtualenv
virtualenv -p python2 ${HOME}/cp27
${HOME}/cp27/bin/python -m pip install -U pip
${HOME}/cp27/bin/python -m pip install -U setuptools wheel
echo "${HOME}/cp27/bin" >> $GITHUB_PATH
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y --no-install-recommends libssl-dev
pip install -r requirements-test.txt
- uses: actions/download-artifact@v3
with:
name: artifact
path: dist
- name: Install SDist
env:
SKBUILD_CONFIGURE_OPTIONS: "-DBUILD_CMAKE_FROM_SOURCE:BOOL=OFF"
run: |
pip install dist/*.tar.gz
rm -rf dist
- name: Test installed SDist
run: pytest ./tests
check_dist:
name: Check dist
needs: [build_wheels, build_manylinux2010_wheels, build_sdist, test_sdist]
runs-on: ubuntu-22.04
steps:
- uses: actions/download-artifact@v3
with:
name: artifact
path: dist
- run: pipx run twine check --strict dist/*
upload_pypi:
name: Upload to PyPI
needs: [check_dist]
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.repository == 'scikit-build/cmake-python-distributions' && startsWith(github.ref, 'refs/tags/')
environment:
name: pypi
url: https://pypi.org/p/cmake
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v3
with:
name: artifact
path: dist
- uses: pypa/gh-action-pypi-publish@release/v1