name: Release State on: push: branches: - dev workflow_dispatch: permissions: actions: write contents: write id-token: write concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: false jobs: release-state: if: github.event_name != 'push' || !startsWith(github.event.head_commit.message, 'release:') runs-on: ubuntu-latest environment: pypi steps: - uses: actions/checkout@v4 with: fetch-depth: 0 submodules: true ref: ${{ github.ref_name }} token: ${{ secrets.RELEASE_GH_TOKEN || github.token }} - uses: actions/setup-python@v5 with: python-version: "3.13" - uses: astral-sh/setup-uv@v6 with: version: "0.10.6" enable-cache: false - uses: actions/setup-node@v4 with: node-version: 22 - name: Configure git identity run: | git config user.name "github-actions[bot]" git config user.email "41898282+github-actions[bot]@users.noreply.github.com" - name: Run release script env: DEFAULT_BRANCH: dev GH_TOKEN: ${{ secrets.RELEASE_GH_TOKEN || github.token }} run: ./bin/release.sh - name: Dispatch image and tap updates env: GH_TOKEN: ${{ secrets.RELEASE_GH_TOKEN || github.token }} run: | gh workflow run docker.yml --ref dev gh workflow run update-homebrew-tap.yml --ref dev