Skip to content

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #77

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows

Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows #77

Workflow file for this run

name: CI
on: [push, pull_request]
jobs:
sdist:
runs-on: ubuntu-latest
defaults:
run:
shell: bash -l {0}
steps:
- uses: actions/checkout@v3
- name: Setup Python
uses: mamba-org/provision-with-micromamba@main
with:
environment-file: environment.yml
extra-specs: |
meson-python
python-build
- run: |
python -m build . --sdist --outdir . -n ${{ env.SETUP_ARGS }}
env:
SETUP_ARGS: >-
-Csetup-args=-Dxtb-6.5.1:la_backend=netlib
-Csetup-args=-Dmctc-lib:json=disabled
- uses: actions/upload-artifact@v3
with:
name: xtb-python-sdist
path: ./*.tar.gz
retention-days: 5
build:
runs-on: ubuntu-latest
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
python: ['3.7', '3.8', '3.9', '3.10', '3.11']
steps:
- uses: actions/checkout@v3
- name: Setup Python
uses: mamba-org/provision-with-micromamba@main
with:
environment-file: environment.yml
extra-specs: |
c-compiler
fortran-compiler
meson-python
python=${{ matrix.python }}
pytest
- name: Setup build of extension module
run: |
pip3 install . ${{ env.SETUP_ARGS }}
env:
SETUP_ARGS: >-
--config-settings setup-args=-Dxtb-6.5.1:la_backend=netlib
- name: Test Python package
run: pytest -v --pyargs xtb
env:
OMP_NUM_THREADS: 2,1
manylinux:
needs:
- sdist
runs-on: ubuntu-latest
container: condaforge/linux-anvil-cos7-x86_64
strategy:
fail-fast: false
matrix:
python: ['3.7', '3.8', '3.9', '3.10', '3.11']
defaults:
run:
shell: ${{ matrix.shell || 'bash -l {0}' }}
steps:
- name: Create environment
run: >-
mamba create -n wheel
--yes
c-compiler
fortran-compiler
python=${{ matrix.python }}
auditwheel
git
python-build
pkg-config
patchelf
cffi
numpy
meson
unzip
wheel
xtb
- name: Download sdist
uses: actions/[email protected]
with:
name: xtb-python-sdist
- name: Build wheel
run: |
conda activate wheel
set -ex
tar xvf xtb-*.tar.gz
python -m build xtb-*/ --wheel ${{ env.SETUP_ARGS }}
auditwheel show xtb-*/dist/*.whl
auditwheel repair -w . xtb-*/dist/*.whl --plat ${{ env.plat }}
env:
plat: manylinux${{ matrix.python == '3.6' && '2010' || '_2_12' }}_x86_64
SETUP_ARGS: >-
-Csetup-args=-Dxtb-6.5.1:la_backend=netlib
-Csetup-args=-Dmctc-lib:json=disabled
- uses: actions/upload-artifact@v3
with:
name: xtb-python-${{ matrix.python }}
path: ./*.whl
retention-days: 5
release:
needs:
- sdist
- manylinux
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/[email protected]
with:
path: ${{ github.workspace }} # This will download all files
- name: Create SHA256 checksums
run: |
set -ex
for output in xtb*/xtb*; do
pushd $(dirname "$output")
sha256sum $(basename "$output") | tee $(basename "$output").sha256
popd
done
- name: Copy release artifacts
run: |
mkdir dist/
cp -v xtb*/xtb*.whl xtb*/xtb*.tar.gz dist/
# - name: Publish to Test PyPI
# if: ${{ github.event_name == 'release' }}
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# user: __token__
# password: ${{ secrets.TEST_PYPI_TOKEN }}
# repository_url: https://test.pypi.org/legacy/
- name: Upload assets
uses: svenstaro/upload-release-action@v2
if: ${{ github.event_name == 'release' }}
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: xtb*/xtb*
file_glob: true
tag: ${{ github.ref }}
overwrite: true
# - name: Publish to PyPI
# if: ${{ github.event_name == 'release' }}
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# user: __token__
# password: ${{ secrets.PYPI_TOKEN }}