Skip to content

Commit

Permalink
refactor: consolidate GitHub Actions workflow for analytics update an…
Browse files Browse the repository at this point in the history
…d deploy

- Merged `update-analytics` and `deploy` jobs into a single consolidated job
- Updated workflow to run on schedule, manual dispatch, or after a PR is merged to `main`
- Simplified deployment logic to ensure analytics updates and deployment occur together post-merge
- Adjusted conditions to prevent deployment from running on every push, relying on Netlify for PR previews
  • Loading branch information
plansmash-test committed Nov 6, 2024
1 parent b386066 commit c10e0df
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 42 deletions.
51 changes: 10 additions & 41 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
name: Deploy and Update Analytics

on:
push:
branches:
- main
schedule:
- cron: '0 0 * * *' # Runs every day at midnight UTC
workflow_dispatch: # Allows manual triggering
pull_request:
types: [closed]
branches:
- main

jobs:
update-analytics:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
update-analytics-and-deploy:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request.merged == true && github.ref == 'refs/heads/main')
runs-on: ubuntu-latest
environment: github-pages # Specify the environment here
steps:
Expand All @@ -31,46 +32,14 @@ jobs:
GOOGLE_REFRESH_TOKEN: ${{ secrets.GOOGLE_REFRESH_TOKEN }}
PROPERTY_ID: ${{ secrets.PROPERTY_ID }}

deploy:
if: github.event_name == 'push'
runs-on: ubuntu-latest
environment: github-pages # Specify the environment here
steps:
- uses: actions/checkout@v4
with:
ref: 'main'
fetch-depth: '0'

- name: Setup Node
uses: actions/[email protected]
with:
node-version: '20.x'

- name: Reconfigure git to use HTTP authentication
run: >
git config --global url."https://github.com/".insteadOf
ssh://[email protected]/
- name: Cache dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npm ci
- run: npm run build
env:
GOOGLE_CLIENT_ID: ${{ secrets.GOOGLE_CLIENT_ID }}
GOOGLE_CLIENT_SECRET: ${{ secrets.GOOGLE_CLIENT_SECRET }}
GOOGLE_REFRESH_TOKEN: ${{ secrets.GOOGLE_REFRESH_TOKEN }}
PROPERTY_ID: ${{ secrets.PROPERTY_ID }}
- name: Build site
run: npm run build

- name: Deploy
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
publish_branch: gh-pages
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"start-prod": "cross-env ELEVENTY_WATCH=true ELEVENTY_ENV=prod npm-run-all sass-start serve:port --parallel watch:*",
"dev": "cross-env ELEVENTY_ENV=dev npm-run-all analytics sass-build --parallel eleventy",
"debug": "DEBUG=Eleventy* npx @11ty/eleventy",
"build": "npm-run-all analytics sass-build eleventy"
"build": "npm-run-all sass-build eleventy"
},
"repository": {
"type": "git",
Expand Down

0 comments on commit c10e0df

Please sign in to comment.