diff --git a/.github/workflows/deploy-ghost-theme.yml b/.github/workflows/deploy-ghost-theme.yml index a6b4e03..173f4c8 100644 --- a/.github/workflows/deploy-ghost-theme.yml +++ b/.github/workflows/deploy-ghost-theme.yml @@ -7,8 +7,84 @@ on: - prod - add_techchecks_page jobs: - deploy: + versioning: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + fetch-depth: 0 # Fetch all history and tags + + - name: Generate Semantic Version + id: version + uses: PaulHatch/semantic-version@v5.0.3 + with: + tag_prefix: "v" + major_pattern: "(MAJOR)" + minor_pattern: "(MINOR)" + # Additional parms here... + + - name: Print new version + run: echo "New version is ${{ steps.version.outputs.version }}" + + - name: Configure Git user + run: | + git config user.name "${{ secrets.BOT_NAME }}" + git config user.email "${{ secrets.BOT_EMAIL }}" + + - name: Tag the new version + run: | + git tag v${{ steps.version.outputs.version }} + git push origin v${{ steps.version.outputs.version }} + env: + GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }} + + outputs: + version: ${{ steps.version.outputs.version }} + + create-release: + needs: versioning + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Create Release + uses: ncipollo/release-action@v1.12.0 + with: + artifacts: "" # You can specify the artifacts to upload here + body: "Auto-generated release from v${{ needs.versioning.outputs.version }}" + name: "Release v${{ needs.versioning.outputs.version }}" + tag: "v${{ needs.versioning.outputs.version }}" + token: ${{ secrets.BOT_TOKEN }} + + configure-sentry: + needs: create-release + name: Configure Sentry + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Create Sentry release + uses: getsentry/action-release@v1 + env: + SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} + SENTRY_ORG: ${{ secrets.SENTRY_ORG }} + SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} + SENTRY_URL: ${{ secrets.SENTRY_URL }} + with: + environment: production + + deploy-ghost: runs-on: ubuntu-22.04 + needs: configure-sentry steps: - uses: actions/checkout@v3 - name: Deploy Ghost Theme diff --git a/default.hbs b/default.hbs index cc72850..7288cc7 100644 --- a/default.hbs +++ b/default.hbs @@ -8,11 +8,18 @@ - + {{!-- Preload scripts --}} + {{!-- Sentry Monitoring --}} + + + {{!-- Theme assets - use the {asset} helper to reference styles & scripts, this will take care of caching and cache-busting automatically --}}