| name: Release |
|
|
| on: |
| push: |
| tags: |
| - 'v*' |
| workflow_dispatch: |
|
|
| jobs: |
| code-quality: |
| uses: ./.github/workflows/code-quality.yaml |
|
|
| pypi-packaging: |
| name: Build and Publish llm-foundry PyPI Package |
| needs: |
| - code-quality |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout source |
| uses: actions/checkout@v3 |
|
|
| - name: Set up Python |
| uses: actions/setup-python@v3 |
| with: |
| python-version: '3.9' |
|
|
| - name: Build source and wheel distributions |
| run: | |
| if [[ "${{ github.ref }}" =~ refs\/tags\/v ]]; then |
| PYPI_PACKAGE_NAME="llm-foundry" |
| else |
| PYPI_PACKAGE_NAME="llm-foundry-test-$(date +%Y%m%d%H%M%S)" |
| fi |
| |
| |
| |
| |
| |
| sed '/xentropy-cuda-lib@git+https:\/\/github.com\/HazyResearch\/flash-attention.git@.*/d' -i setup.py |
| sed '/triton-pre-mlir@git+https:\/\/github.com\/vchiley\/triton.git@.*/d' -i setup.py |
| sed '/peft@git+https:\/\/github.com\/huggingface\/peft.git.*/d' -i setup.py |
|
|
| python -m pip install --upgrade build twine |
| python -m build |
| twine check --strict dist/* |
|
|
| - name: Publish 📦 to PyPI |
| uses: pypa/gh-action-pypi-publish@release/v1 |
| if: contains(github.ref, 'refs/tags/v') |
| with: |
| user: __token__ |
| password: ${{ secrets.PROD_PYPI_API_TOKEN }} |
|
|
| - name: Publish distribution 📦 to Test PyPI |
| uses: pypa/gh-action-pypi-publish@release/v1 |
| if: contains(github.ref, 'refs/heads/') || contains(github.ref, 'refs/pull/') |
| with: |
| user: __token__ |
| password: ${{ secrets.TEST_PYPI_API_TOKEN }} |
| repository_url: https://test.pypi.org/legacy/ |
|
|