mirror of
https://github.com/NicolasBohn/NexQuant.git
synced 2026-07-27 23:47:46 +00:00
02173ffdcc
* update code * init structure * add requirements and fix CI --------- Co-authored-by: xuyang1 <xuyang1@microsoft.com>
92 lines
2.5 KiB
YAML
92 lines
2.5 KiB
YAML
jobs:
|
|
package:
|
|
needs: release
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
cache: pip
|
|
python-version: '3.8'
|
|
- run: env | sort
|
|
- run: make dev-package
|
|
- run: make build
|
|
- env:
|
|
TWINE_NON_INTERACTIVE: true
|
|
TWINE_PASSWORD: ${{ secrets.TWINE_PASSWORD }}
|
|
TWINE_USERNAME: ${{ vars.TWINE_USERNAME != '' && vars.TWINE_USERNAME || '__token__' }}
|
|
run: make upload
|
|
pages-build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
cache: pip
|
|
python-version: '3.8'
|
|
- run: env | sort
|
|
- run: make dev-docs
|
|
- run: make docs
|
|
- name: Upload changelog
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: changelog
|
|
path: docs/changelog.md
|
|
- name: Upload pages artifact
|
|
uses: actions/upload-pages-artifact@v3
|
|
with:
|
|
path: public
|
|
pages-deploy:
|
|
needs: release
|
|
permissions:
|
|
id-token: write
|
|
pages: write
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- id: deployment
|
|
name: Deploy to GitHub Pages
|
|
uses: actions/deploy-pages@v4
|
|
release:
|
|
needs: pages-build
|
|
permissions:
|
|
contents: write
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install git-changelog using pipx
|
|
run: pipx install git-changelog
|
|
- name: Remove changelog to avoid file already exists error
|
|
run: rm -v docs/changelog.md
|
|
- name: Download changelog
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: changelog
|
|
path: docs/
|
|
- name: Prepare release notes
|
|
run: make release-notes > release-notes.md
|
|
- id: prerelease
|
|
name: Determine prerelease
|
|
run: |
|
|
if [[ "${{ github.ref }}" =~ (a|b|rc)(0|[1-9][0-9]*)?$ ]]; then
|
|
echo "is_prerelease=true" > $GITHUB_OUTPUT
|
|
else
|
|
echo "is_prerelease=false" > $GITHUB_OUTPUT
|
|
fi
|
|
- name: Create GitHub release
|
|
uses: softprops/action-gh-release@v1
|
|
with:
|
|
body_path: release-notes.md
|
|
prerelease: ${{ steps.prerelease.outputs.is_prerelease }}
|
|
name: Release
|
|
on:
|
|
push:
|
|
tags:
|
|
- v?[0-9]+.[0-9]+.[0-9]+
|
|
- v?[0-9]+.[0-9]+.[0-9]+-?a[0-9]*
|
|
- v?[0-9]+.[0-9]+.[0-9]+-?b[0-9]*
|
|
- v?[0-9]+.[0-9]+.[0-9]+-?rc[0-9]*
|