Skip to content

Refreshing CRM changes on SSW.People

Jernej Kavka (JK) edited this page Jun 29, 2026 · 1 revision

Refreshing CRM changes on SSW.People

Use this runbook when someone has updated their CRM profile data or skills and wants to know when the change will appear on https://www.ssw.com.au/people/.

Summary

SSW.People profile data is maintained through 2 repositories:

  • SSWConsulting/SSW.People.Profiles - profile content, CRM update notes, and the workflow that decides whether SSW.People should be rebuilt.
  • SSWConsulting/SSW.People - Gatsby site code and the production build/deploy workflow.

CRM skill changes are not deployed directly by CRM. The expected flow is:

  1. CRM/Power Automate updates the profile data and writes a CRM skills updated flag to Azure Blob Storage.
  2. SSW.People.Profiles runs Rolling Production Build.
  3. That workflow downloads CRM_SkillsUpdatedFlag.txt from the secret CRM_SKILLS_FLAG_URL.
  4. If the file contains TRUE, it dispatches Trigger-People-Build in SSW.People.Profiles.
  5. Trigger-People-Build finds the latest release/* branch in SSW.People.
  6. It dispatches build-deploy-production.yml in SSW.People on that release branch.
  7. SSW.People builds Gatsby with the CRM settings injected from GitHub secrets, then deploys the built site to Azure storage.
  8. After a flag-based deployment is triggered, Rolling Production Build writes FALSE back to the Azure Blob flag file.

Timing

The GitHub polling workflow runs every 15 minutes:

on:
  schedule:
    - cron: '*/15 * * * *'
  workflow_dispatch:

The full visible update time also depends on the upstream CRM/Power Automate export and the SSW.People production deployment. The production deployment usually takes several minutes once started.

Normal path

Check the scheduled workflow first:

gh run list -R SSWConsulting/SSW.People.Profiles --workflow rolling_build.yml --limit 10

Open the newest run:

gh run view <run-id> -R SSWConsulting/SSW.People.Profiles --web

If the flag was not set, the run will show Skipping Build - CRM Data Ok and no SSW.People production deploy will be triggered.

If the flag was set, it will show Running Build - CRM Change Detected and dispatch main-trigger-people-deploy.yml.

Manual trigger options

Option 1: Run the flag-aware workflow

Use this when you want to respect the CRM skills flag and clear it after a successful trigger:

gh workflow run rolling_build.yml -R SSWConsulting/SSW.People.Profiles --ref main

Then watch it:

gh run list -R SSWConsulting/SSW.People.Profiles --workflow rolling_build.yml --limit 1
gh run watch <run-id> -R SSWConsulting/SSW.People.Profiles --exit-status

Option 2: Force the website rebuild

Use this when the CRM data is already updated and you want to rebuild/deploy SSW.People immediately:

gh workflow run main-trigger-people-deploy.yml -R SSWConsulting/SSW.People.Profiles --ref main

This dispatches build-deploy-production.yml in SSW.People on the latest release/* branch.

Important: this direct trigger does not check or reset CRM_SkillsUpdatedFlag.txt. If the Azure Blob flag is still TRUE, the next scheduled Rolling Production Build may trigger another deploy.

What to watch

Watch the profile-side trigger:

gh run list -R SSWConsulting/SSW.People.Profiles --workflow main-trigger-people-deploy.yml --limit 5
gh run watch <profiles-run-id> -R SSWConsulting/SSW.People.Profiles --exit-status

Then watch the downstream SSW.People production deployment:

gh run list -R SSWConsulting/SSW.People --workflow build-deploy-production.yml --limit 5
gh run watch <people-run-id> -R SSWConsulting/SSW.People --exit-status

The downstream production run should be on the latest release branch, for example release/171.

Confirm the site updated

Check the live footer timestamp:

curl -fsSL https://www.ssw.com.au/people/ | rg -o 'title="Last updated [^"]+"|Last updated[^<]+'

You can also open the production run URL from GitHub Actions and confirm all jobs completed:

  • Build / Gatsby
  • Build / Infra
  • Deploy / Infra
  • Deploy / Site

Verified example

On 29 Jun 2026, a manual Trigger-People-Build run in SSW.People.Profiles dispatched the SSW.People production deployment on release/171.

Troubleshooting

  • If SSW.People.Profiles succeeds but no SSW.People run appears, inspect Trigger-People-Build and confirm the Build and deploy People step succeeded.
  • If SSW.People deploys successfully but the person still sees old data, confirm the CRM/Power Automate export had already produced the updated data before the site build started.
  • If the direct trigger is used and another deploy happens soon after, check whether the flag-aware scheduled run later found CRM_SkillsUpdatedFlag.txt still set to TRUE.
  • Do not print or copy GitHub secret values while troubleshooting. Secret names are safe to reference; values are not.

Clone this wiki locally