climaybe 1.6.1 → 1.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/version.txt CHANGED
@@ -1 +1 @@
1
- 1.6.1
1
+ 1.6.2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "climaybe",
3
- "version": "1.6.1",
3
+ "version": "1.6.2",
4
4
  "description": "Shopify CI/CD CLI — scaffolds workflows, branch strategy, and store config for single-store and multi-store theme repos",
5
5
  "type": "module",
6
6
  "bin": {
@@ -42,6 +42,7 @@
42
42
  [
43
43
  "@semantic-release/commit-analyzer",
44
44
  {
45
+ "preset": "conventionalcommits",
45
46
  "releaseRules": [
46
47
  {
47
48
  "type": "ci",
@@ -68,7 +69,7 @@
68
69
  "package.json",
69
70
  "package-lock.json"
70
71
  ],
71
- "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
72
+ "message": "chore(release): ${nextRelease.version}\n\n${nextRelease.notes}"
72
73
  }
73
74
  ]
74
75
  ]
@@ -5,12 +5,19 @@
5
5
  # Runs on every push to main except pure store-sync commits ([stores-to-root], [root-to-stores]), so that:
6
6
  # - Version-bump commits: staging-<alias> get the new version.
7
7
  # - Hotfix backports (live or staging-<alias> → main): other staging-<alias> get those changes; the store that sent the hotfix is skipped (no need to merge back to the same branch).
8
+ #
9
+ # Also runs when Post-Merge Tag or Nightly Hotfix Tag complete: version-bump pushes with GITHUB_TOKEN,
10
+ # which does not trigger push-based workflows, so we explicitly run sync after those workflows finish.
8
11
 
9
12
  name: Main to Staging Stores
10
13
 
11
14
  on:
12
15
  push:
13
16
  branches: [main]
17
+ workflow_run:
18
+ workflows: ['Post-Merge Tag', 'Nightly Hotfix Tag']
19
+ types: [completed]
20
+ branches: [main]
14
21
 
15
22
  # Prevent concurrent store pushes
16
23
  concurrency:
@@ -19,8 +26,11 @@ concurrency:
19
26
 
20
27
  jobs:
21
28
  # Gate: skip only pure store-sync commits. When hotfix-backport, extract source branch alias so we skip merging back into that same store.
29
+ # When triggered by workflow_run (version-bump finished), run sync if the workflow succeeded.
22
30
  gate:
23
31
  runs-on: ubuntu-latest
32
+ # workflow_run: only sync when Post-Merge or Nightly Hotfix completed successfully (version-bump pushed)
33
+ if: github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success'
24
34
  outputs:
25
35
  should_run: ${{ steps.check.outputs.should_run }}
26
36
  hotfix_source_alias: ${{ steps.check.outputs.hotfix_source_alias }}
@@ -28,6 +38,13 @@ jobs:
28
38
  - name: Check commit message and hotfix source
29
39
  id: check
30
40
  run: |
41
+ if [ "${{ github.event_name }}" = "workflow_run" ]; then
42
+ echo "Triggered by workflow_run (version-bump finished); syncing main to staging."
43
+ echo "should_run=true" >> $GITHUB_OUTPUT
44
+ echo "hotfix_source_alias=" >> $GITHUB_OUTPUT
45
+ exit 0
46
+ fi
47
+
31
48
  COMMIT_MSG="${{ github.event.head_commit.message }}"
32
49
 
33
50
  if echo "$COMMIT_MSG" | grep -qE "\[skip-store-sync\]|\[stores-to-root\]|\[root-to-stores\]"; then
@@ -94,6 +111,7 @@ jobs:
94
111
 
95
112
  - name: Sync main to staging-${{ matrix.store }} (root JSONs ignored)
96
113
  run: |
114
+ git fetch origin main
97
115
  BRANCH="staging-${{ matrix.store }}"
98
116
  ALIAS="${{ matrix.store }}"
99
117
  STORE_DIR="stores/${ALIAS}"