# This workflow will install Python dependencies, run tests and lint with a variety of Python versions # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python name: Python package on: push: branches: [ "master" ] tags: - '*' pull_request: branches: [ "master" ] workflow_dispatch: jobs: build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: ["3.10"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - name: Install wheel run: | python -m pip install wheel - name: Build wheel run: | python setup.py bdist_wheel - name: Upload artifact uses: actions/upload-artifact@v4 with: name: wheel-file path: dist/*.whl retention-days: 30 release: needs: [ build ] runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Download artifact uses: actions/download-artifact@v4 with: name: wheel-file path: dist - name: Create and Upload Release id: create_release uses: softprops/action-gh-release@4634c16e79c963813287e889244c50009e7f0981 with: files: './dist/*.whl' env: GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}