v4.3.2 #56
Workflow file for this run
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: Release | |
on: | |
release: | |
types: | |
- released | |
jobs: | |
package: | |
name: Build and Package | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Version | |
id: version | |
run: echo "value=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT | |
- name: Setup Python 3.8 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.8" | |
- uses: actions/cache@v3 | |
name: Cache pip dependencies | |
with: | |
path: ~/.cache/pip | |
key: ${{ runner.os }}-pip-${{ hashFiles('requirements*.txt') }} | |
restore-keys: | | |
${{ runner.os }}-pip- | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -r requirements.txt | |
python -m pip install -r requirements-dev.txt | |
python -m pip install -r requirements-test.txt | |
- name: Install | |
run: make install | |
- name: Lint | |
run: make lint | |
- name: Build package | |
run: make package version=${{ steps.version.outputs.value }} | |
- name: Upload Pipeline Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
retention-days: 1 | |
name: built-artifacts | |
path: dist/ | |
upload-assets: | |
name: Upload Assets to Release | |
runs-on: ubuntu-22.04 | |
needs: package | |
steps: | |
- uses: actions/download-artifact@v3 | |
with: | |
name: built-artifacts | |
path: dist/ | |
- uses: AButler/[email protected] | |
with: | |
files: "dist/*" | |
repo-token: ${{ secrets.ACCESS_TOKEN }} | |
release-tag: ${{ needs.package.outputs.version }} | |
publish-pypi: | |
name: Publish packages to PyPi | |
runs-on: ubuntu-22.04 | |
needs: package | |
steps: | |
- uses: actions/download-artifact@v3 | |
with: | |
name: built-artifacts | |
path: dist/ | |
- uses: pypa/[email protected] | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_API_TOKEN }} | |
docs_and_examples: | |
name: Documentation and Examples | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Configurating Git | |
run: | | |
git config user.email "[email protected]" | |
git config user.name "Azory YData Bot" | |
git config core.autocrlf false | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- name: Install pip dependencies | |
run: | | |
pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install -r requirements-dev.txt | |
pip install -r requirements-test.txt | |
- name: Install the package | |
run: | | |
make install | |
- name: Update examples | |
run: make examples | |
- name: Build the documentation | |
run: make docs | |
- name: Move the changes to the gh-pages branch (release branch) | |
run: | | |
mv docs master | |
mkdir docs | |
mv master docs/master | |
mv examples/ master | |
mkdir examples | |
mv master examples/master | |
git add -f docs/master | |
git add -f examples/master | |
git stash push -- docs/master examples/master | |
git fetch origin gh-pages | |
git checkout -f gh-pages | |
touch .nojekyll | |
git add .nojekyll | |
rm -rf docs/master | |
rm -rf examples/master | |
git add docs/ | |
git add examples/ | |
git stash apply | |
git commit -m "[skip ci] Updating documentation and examples" -a || true | |
- name: Push changes | |
uses: ad-m/github-push-action@master | |
with: | |
branch: gh-pages | |
directory: . | |
github_token: ${{ secrets.ACCESS_TOKEN }} |