updated research notebook #31
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build, test, and publish | |
on: | |
push: | |
branches: | |
- main | |
workflow_dispatch: | |
permissions: | |
contents: read | |
jobs: | |
test: | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt pytest | |
- name: Run tests | |
run: pytest tests | |
# If tests fail, the workflow will stop and the 'deploy' job won't run | |
deploy: | |
needs: test | |
runs-on: ubuntu-latest | |
# This job runs only if the 'test' job completes successfully on all matrix configurations | |
env: | |
MAJOR_VERSION: '0' | |
MINOR_VERSION: '0' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Calculate and set PATCH_VERSION | |
run: | | |
echo "GITHUB_RUN_NUMBER: $GITHUB_RUN_NUMBER" | |
echo "GITHUB_RUN_ID: $GITHUB_RUN_ID" | |
PATCH_VERSION=$(($GITHUB_RUN_NUMBER + 1)) | |
echo "PATCH_VERSION: $PATCH_VERSION" | |
echo "PATCH_VERSION=$PATCH_VERSION" >> $GITHUB_ENV | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.x' | |
- name: Install necessary tools | |
run: | | |
python -m pip install --upgrade pip build toml | |
- name: Update version in pyproject.toml | |
run: | | |
VERSION="${{ env.MAJOR_VERSION }}.${{ env.MINOR_VERSION }}.${{ env.PATCH_VERSION }}" # Construct the version string | |
python -c "import toml; pyproject = toml.load('pyproject.toml'); pyproject['project']['version'] = '$VERSION'; toml.dump(pyproject, open('pyproject.toml', 'w'))" | |
- name: Build package | |
run: python -m build | |
- name: Publish package | |
uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_API_TOKEN }} |