name: Overseerr Release on: push: branches: - master jobs: semantic-release: name: Tag and release latest version runs-on: ubuntu-20.04 steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: 16 - name: Set up QEMU uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Log in to Docker Hub uses: docker/login-action@v2 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - name: Log in to GitHub Container Registry uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Install dependencies run: yarn - name: Release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} run: npx semantic-release discord: name: Send Discord Notification needs: semantic-release if: always() runs-on: ubuntu-20.04 steps: - name: Get Build Job Status uses: technote-space/workflow-conclusion-action@v3 - name: Combine Job Status id: status run: | failures=(neutral, skipped, timed_out, action_required) if [[ ${array[@]} =~ $WORKFLOW_CONCLUSION ]]; then echo ::set-output name=status::failure else echo ::set-output name=status::$WORKFLOW_CONCLUSION fi - name: Post Status to Discord uses: sarisia/actions-status-discord@v1 with: webhook: ${{ secrets.DISCORD_WEBHOOK }} status: ${{ steps.status.outputs.status }} title: ${{ github.workflow }} nofail: true