v2.8.4-1 #809
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: MoviePilot Builder v2 | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - v2 | |
| paths: | |
| - 'version.py' | |
| jobs: | |
| Docker-build: | |
| runs-on: ubuntu-latest | |
| name: Build Docker Image | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Release version | |
| id: release_version | |
| run: | | |
| app_version=$(cat version.py |sed -ne "s/APP_VERSION\s=\s'v\(.*\)'/\1/gp") | |
| echo "app_version=$app_version" >> $GITHUB_ENV | |
| - name: Docker Meta | |
| id: meta | |
| uses: docker/metadata-action@v5 | |
| with: | |
| images: | | |
| ${{ secrets.DOCKER_USERNAME }}/moviepilot-v2 | |
| ${{ secrets.DOCKER_USERNAME }}/moviepilot | |
| ghcr.io/${{ github.repository }} | |
| tags: | | |
| type=raw,value=${{ env.app_version }} | |
| type=raw,value=latest | |
| - name: Set Up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Set Up Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Login DockerHub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| - name: Login GitHub Container Registry | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Build Image | |
| uses: docker/build-push-action@v5 | |
| with: | |
| context: . | |
| file: docker/Dockerfile | |
| platforms: | | |
| linux/amd64 | |
| linux/arm64/v8 | |
| push: true | |
| tags: ${{ steps.meta.outputs.tags }} | |
| labels: ${{ steps.meta.outputs.labels }} | |
| cache-from: type=gha, scope=${{ github.workflow }}-docker | |
| cache-to: type=gha, scope=${{ github.workflow }}-docker | |
| - name: Get existing release body | |
| id: get_release_body | |
| continue-on-error: true | |
| run: | | |
| release_body=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ | |
| "https://api.github.com/repos/${{ github.repository }}/releases/tags/v${{ env.app_version }}" | \ | |
| jq -r '.body // ""') | |
| echo "RELEASE_BODY<<EOF" >> $GITHUB_ENV | |
| echo "$release_body" >> $GITHUB_ENV | |
| echo "EOF" >> $GITHUB_ENV | |
| - name: Delete Release | |
| uses: dev-drprasad/[email protected] | |
| continue-on-error: true | |
| with: | |
| tag_name: v${{ env.app_version }} | |
| delete_release: true | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Generate Release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| tag_name: v${{ env.app_version }} | |
| name: v${{ env.app_version }} | |
| body: ${{ env.RELEASE_BODY }} | |
| draft: false | |
| prerelease: false | |
| make_latest: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |