name: Release on: push: tags: ['v*'] defaults: run: shell: bash jobs: draft-release: name: Create draft release runs-on: ubuntu-latest steps: - name: Check out repository uses: actions/checkout@v3 with: fetch-depth: 0 - uses: ./.github/actions/setup with: python-version: "3.9" venv-id: "release" poetry-dependency-install-flags: "--all-extras" - name: Add version to environment run: | PROJECT_VERSION=$(poetry version --short) echo "PROJECT_VERSION=$PROJECT_VERSION" >> $GITHUB_ENV - name: Run tests run: | poetry run pytest -r a -v src tests --doctest-modules - name: Build package run: | poetry build --no-interaction - name: Generate Release Notes run: | git log $(git describe --tags --abbrev=0 HEAD^)..HEAD --pretty='format:* %h %s' --no-merges >> ".github/release_template.md" - name: Create Release Draft uses: softprops/action-gh-release@v1 with: body_path: ".github/release_template.md" token: "${{ secrets.PERSONAL_ACCESS_TOKEN }}" draft: true files: | dist/unfccc_ghg_data-${{ env.PROJECT_VERSION }}-py3-none-any.whl dist/unfccc_ghg_data-${{ env.PROJECT_VERSION }}.tar.gz