diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index f95cac26..acaea051 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,6 +1,5 @@ name: Generate Next Release # This workflow will generate changelog and release notes. -# Source: https://github.com/terraform-aws-modules/terraform-aws-vpc/blob/master/.github/workflows/release.yml on: workflow_dispatch: @@ -9,10 +8,11 @@ env: DIST_DIR: dist jobs: release: - name: Build and publish package + name: Create next release runs-on: ubuntu-latest - permissions: - id-token: write + + outputs: + new_release_published: ${{ steps.release.outputs.new_release_published }} steps: - name: Checkout @@ -21,16 +21,8 @@ jobs: fetch-depth: 0 ssh-key: ${{ secrets.DEPLOY_KEY }} - - name: Install Python - uses: actions/setup-python@v5 - with: - python-version-file: .python-version - - - name: Install dependencies - run: | - python -m pip install --upgrade build - - name: Create GitHub release + id: release uses: cycjimmy/semantic-release-action@v4 with: semantic_version: 19.0.5 @@ -46,11 +38,36 @@ jobs: GIT_COMMITTER_EMAIL: bot@equinix.noreply.github.com RELEASE_REQUESTER: "@${{ github.event.sender.login }}" + publish: + name: Publish artifacts + runs-on: ubuntu-latest + needs: release + if: needs.release.outputs.new_release_published == 'true' + + permissions: + id-token: write + + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ssh-key: ${{ secrets.DEPLOY_KEY }} + + - name: Install Python + uses: actions/setup-python@v5 + with: + python-version-file: .python-version + + - name: Install dependencies + run: | + python -m pip install --upgrade build + - name: Build package run: | python -m build --sdist --wheel --outdir ${{ env.DIST_DIR }} . - - name: Publish package + - name: Publish to PyPI uses: pypa/gh-action-pypi-publish@release/v1 with: packages-dir: ${{ env.DIST_DIR }}