Skip to content

Commit

Permalink
Extend build workflow to publish the package
Browse files Browse the repository at this point in the history
This includes a simple set of checks to ensure the tag matches the
version of the package and is mentioned in the changelog.
  • Loading branch information
samueljsb committed Jul 10, 2024
1 parent bbc6fa8 commit a9951dc
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 18 deletions.
18 changes: 0 additions & 18 deletions .github/workflows/build.yaml

This file was deleted.

58 changes: 58 additions & 0 deletions .github/workflows/build_and_publish.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: build and publish

on:
pull_request:
push:
tags:
- v*

# Only allow one instance of this workflow for each PR.
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-24.04
timeout-minutes: 5

steps:
- uses: actions/checkout@v4
- uses: hynek/build-and-inspect-python-package@v2

verify:
runs-on: ubuntu-24.04
# if: github.repository_owner == 'kraken-tech' && github.ref_type == 'tag'
timeout-minutes: 5

steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version-file: '.github/workflows/.python-version'
cache: 'pip'
- run: python -m pip install .
- id: package_version
run: echo "version=$(python -c "from importlib.metadata import version; print(version('datetime-tools'))")" >> $GITHUB_OUTPUT
- name: check package version matches tag
run: |
[ "v{{ steps.package_version.outputs.version }}" = "{{ github.ref_name }}"]
- name: check changelog includes version
run: grep {{ github.ref_name }} < CHANGELOG.md

publish:
environment: publish
if: github.repository_owner == 'kraken-tech' && github.ref_type == 'tag'
needs: [build, verify]
runs-on: ubuntu-24.04
timeout-minutes: 5

permissions:
id-token: write

steps:
- uses: actions/download-artifact@v4
with:
name: Packages
path: dist
- uses: pypa/gh-action-pypi-publish@release/v1

0 comments on commit a9951dc

Please sign in to comment.