|
|
|
|
|
name: PyPI release |
|
|
|
on: |
|
workflow_dispatch: |
|
push: |
|
tags: |
|
- "*" |
|
|
|
jobs: |
|
find-and-checkout-latest-branch: |
|
runs-on: ubuntu-latest |
|
outputs: |
|
latest_branch: ${{ steps.set_latest_branch.outputs.latest_branch }} |
|
steps: |
|
- name: Checkout Repo |
|
uses: actions/checkout@v3 |
|
|
|
- name: Set up Python |
|
uses: actions/setup-python@v4 |
|
with: |
|
python-version: '3.8' |
|
|
|
- name: Fetch latest branch |
|
id: fetch_latest_branch |
|
run: | |
|
pip install -U requests packaging |
|
LATEST_BRANCH=$(python utils/fetch_latest_release_branch.py) |
|
echo "Latest branch: $LATEST_BRANCH" |
|
echo "latest_branch=$LATEST_BRANCH" >> $GITHUB_ENV |
|
|
|
- name: Set latest branch output |
|
id: set_latest_branch |
|
run: echo "::set-output name=latest_branch::${{ env.latest_branch }}" |
|
|
|
release: |
|
needs: find-and-checkout-latest-branch |
|
runs-on: ubuntu-latest |
|
|
|
steps: |
|
- name: Checkout Repo |
|
uses: actions/checkout@v3 |
|
with: |
|
ref: ${{ needs.find-and-checkout-latest-branch.outputs.latest_branch }} |
|
|
|
- name: Setup Python |
|
uses: actions/setup-python@v4 |
|
with: |
|
python-version: "3.8" |
|
|
|
- name: Install dependencies |
|
run: | |
|
python -m pip install --upgrade pip |
|
pip install -U setuptools wheel twine |
|
pip install -U torch --index-url https://download.pytorch.org/whl/cpu |
|
pip install -U transformers |
|
|
|
- name: Build the dist files |
|
run: python setup.py bdist_wheel && python setup.py sdist |
|
|
|
- name: Publish to the test PyPI |
|
env: |
|
TWINE_USERNAME: ${{ secrets.TEST_PYPI_USERNAME }} |
|
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_PASSWORD }} |
|
run: twine upload dist/* -r pypitest --repository-url=https://test.pypi.org/legacy/ |
|
|
|
- name: Test installing diffusers and importing |
|
run: | |
|
pip install diffusers && pip uninstall diffusers -y |
|
pip install -i https://testpypi.python.org/pypi diffusers |
|
python -c "from diffusers import __version__; print(__version__)" |
|
python -c "from diffusers import DiffusionPipeline; pipe = DiffusionPipeline.from_pretrained('fusing/unet-ldm-dummy-update'); pipe()" |
|
python -c "from diffusers import DiffusionPipeline; pipe = DiffusionPipeline.from_pretrained('hf-internal-testing/tiny-stable-diffusion-pipe', safety_checker=None); pipe('ah suh du')" |
|
python -c "from diffusers import *" |
|
|
|
- name: Publish to PyPI |
|
env: |
|
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} |
|
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} |
|
run: twine upload dist/* -r pypi |
|
|