diff --git a/.github/workflows/publish-snap.yml b/.github/workflows/publish-snap.yml new file mode 100644 index 00000000..75c32f6f --- /dev/null +++ b/.github/workflows/publish-snap.yml @@ -0,0 +1,53 @@ +name: Publish Snap + +on: + push: + branches: [master, beta, nightly] + tags: [v*] + +jobs: + build-docker: + name: Build Snap Package + runs-on: ubuntu-latest + steps: + - name: Checkout Code + uses: actions/checkout@v2 + + - name: Prepare + id: prepare + run: | + git fetch --prune --unshallow --tags + if [[ $GITHUB_REF == refs/tags/*-beta ]]; then + echo ::set-output name=RELEASE::beta + elif [[ $GITHUB_REF == refs/tags/* ]]; then + echo ::set-output name=RELEASE::stable + else + echo ::set-output name=RELEASE::edge + fi + + - name: Build Snap Package + uses: snapcore/action-build@v1 + id: build + + - name: Upload Snap Package + uses: actions/upload-artifact@v2 + with: + name: Tautulli-snap-package + path: ${{ steps.build.outputs.snap }} + + - name: Publish Snap Package + if: startsWith(github.ref, 'refs/tags/') + uses: snapcore/action-publish@v1 + with: + store_login: ${{ secrets.SNAP_LOGIN }} + snap: ${{ steps.build.outputs.snap }} + release: ${{ steps.prepare.outputs.RELEASE }} + + - name: Post Status to Discord + uses: sarisia/actions-status-discord@v1 + if: always() + with: + webhook: ${{ secrets.DISCORD_WEBHOOK }} + status: ${{ job.status }} + title: ${{ github.workflow }} + nofail: true