name: Build on: workflow_dispatch: push: tags: - v* permissions: contents: read jobs: python-packages: name: Release Python packages runs-on: ubuntu-24.04 permissions: contents: write id-token: write environment: name: release steps: - name: Checkout uses: actions/checkout@v4 - name: Get version id: version run: echo VERSION=$(git describe --exact-match --tags | sed 's/^v//') >> $GITHUB_OUTPUT - name: Build packages run: make packages VERSION=${{ steps.version.outputs.VERSION }} - name: Publish release distributions to PyPI uses: pypa/gh-action-pypi-publish@release/v1 deploy-container-image: name: Release container image runs-on: ubuntu-24.04 permissions: contents: write id-token: write environment: name: release steps: - name: Checkout uses: actions/checkout@v4 - name: Docker Hub token run: echo ${{ secrets.DOCKER_SECRET }} > docker-token.txt - name: Authenticate with Docker hub run: make docker-hub-login - name: Get version id: version run: echo VERSION=$(git describe --exact-match --tags | sed 's/^v//') >> $GITHUB_OUTPUT - name: Put version into package manifests run: make update-package-versions VERSION=${{ steps.version.outputs.VERSION }} - name: Build containers run: make container VERSION=${{ steps.version.outputs.VERSION }} - name: Push containers run: make push VERSION=${{ steps.version.outputs.VERSION }}