chore: release v0.7.13 #229
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| tags: ['v*'] | |
| pull_request: | |
| jobs: | |
| check: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: go.mod | |
| - name: Install golangci-lint | |
| run: go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@latest | |
| - run: make check | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: go.mod | |
| - run: make build | |
| # Compile-check the opt-in VA-API and NVDEC hardware-decode paths so they | |
| # cannot silently break. The Docker build installs libavcodec/libva and builds | |
| # with -tags hwaccel inside the image (NVDEC links no CUDA at build time), | |
| # so this is self-contained with no runner-specific apt or GPU steps. | |
| build-hwaccel: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make docker-build-hwaccel | |
| release: | |
| if: startsWith(github.ref, 'refs/tags/v') | |
| needs: [check, build, build-hwaccel] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| packages: write | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: go.mod | |
| - uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - uses: docker/setup-buildx-action@v3 | |
| - uses: docker/build-push-action@v6 | |
| with: | |
| push: true | |
| platforms: linux/amd64,linux/arm64 | |
| tags: | | |
| ghcr.io/rvben/vedetta:${{ github.ref_name }} | |
| ghcr.io/rvben/vedetta:latest | |
| # Hardware-accelerated variant (VA-API for Intel/AMD, NVDEC for NVIDIA), | |
| # linux/amd64 only - this is x86 GPU territory and the image links | |
| # libavcodec/libva. | |
| - uses: docker/build-push-action@v6 | |
| with: | |
| push: true | |
| file: Dockerfile.hwaccel | |
| platforms: linux/amd64 | |
| tags: | | |
| ghcr.io/rvben/vedetta:${{ github.ref_name }}-hwaccel | |
| ghcr.io/rvben/vedetta:hwaccel | |
| - name: Build release binaries | |
| run: | | |
| GOOS=linux GOARCH=amd64 go build -o vedetta-linux-amd64 ./cmd/vedetta | |
| GOOS=linux GOARCH=arm64 go build -o vedetta-linux-arm64 ./cmd/vedetta | |
| - uses: softprops/action-gh-release@v2 | |
| with: | |
| files: | | |
| vedetta-linux-amd64 | |
| vedetta-linux-arm64 | |
| generate_release_notes: true | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.x' | |
| - name: Publish to PyPI | |
| run: | | |
| pip install uv | |
| cd pypi && uv build && uv publish --username __token__ --password "$PYPI_TOKEN" | |
| env: | |
| PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} |