fix(ci): preserve skipBotEvents during publish#45
Conversation
📝 WalkthroughWalkthroughThis change modifies Possibly related PRs
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| - name: Finalize manifest configuration JSON | ||
| if: ${{ inputs.action == 'publish' && steps.resolve_refs.outputs.should_skip != 'true' }} | ||
| shell: bash | ||
| env: | ||
| MANIFEST_PATH: ${{ inputs.manifestPath }} | ||
| SKIP_BOT_EVENTS: ${{ inputs.skipBotEvents }} | ||
| EXCLUDE_SUPPORTED_EVENTS: ${{ inputs.excludeSupportedEvents }} | ||
| GITHUB_WORKSPACE: ${{ github.workspace }} | ||
| GITHUB_REPOSITORY: ${{ github.repository }} | ||
| GITHUB_REF_NAME: ${{ steps.resolve_refs.outputs.source_ref }} | ||
| run: | | ||
| node ${{ github.action_path }}/.github/scripts/update-manifest.js |
There was a problem hiding this comment.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -eu
echo "Checking where manifest env is wired today..."
rg -n -C2 'SKIP_BOT_EVENTS|EXCLUDE_SUPPORTED_EVENTS|GITHUB_ENV|name: Install dependencies|name: Build project|name: Finalize manifest configuration JSON' action.ymlRepository: ubiquity-os/action-deploy-plugin
Length of output: 2331
🏁 Script executed:
#!/bin/bash
# Get a cleaner view of the step structure around lines 140-210
cat -n action.yml | sed -n '140,210p'Repository: ubiquity-os/action-deploy-plugin
Length of output: 4038
Export manifest flags early so install/build can access them.
These env vars are only passed to the manifest steps via step-level env: sections (lines 158–164 and 198–204), not exported to $GITHUB_ENV. Install dependencies and Build project cannot access SKIP_BOT_EVENTS or EXCLUDE_SUPPORTED_EVENTS, so any lifecycle scripts that depend on them will run with defaults. The Finalize step only patches the manifest after build completes.
Suggested approach
+ - name: Export manifest env
+ if: ${{ inputs.action == 'publish' && steps.resolve_refs.outputs.should_skip != 'true' }}
+ shell: bash
+ run: |
+ echo "SKIP_BOT_EVENTS=${{ inputs.skipBotEvents }}" >> "$GITHUB_ENV"
+ echo "EXCLUDE_SUPPORTED_EVENTS=${{ inputs.excludeSupportedEvents }}" >> "$GITHUB_ENV"
+
- name: Install dependencies
Summary
Preserves
skipBotEventsthrough publish-time manifest generation so CI does not drift due to lifecycle script side effects.Context
This draft is part of the canary-first rollout for artifact-branch migration.
Relates to ubiquity-os/ubiquity-os-kernel#320