Skip to content
This repository was archived by the owner on Mar 30, 2026. It is now read-only.

refactor: merge deps into hooks provisioning pipeline#176

Merged
stepandel merged 1 commit intomainfrom
refactor/merge-deps-into-hooks
Mar 1, 2026
Merged

refactor: merge deps into hooks provisioning pipeline#176
stepandel merged 1 commit intomainfrom
refactor/merge-deps-into-hooks

Conversation

@stepandel
Copy link
Copy Markdown
Owner

@stepandel stepandel commented Mar 1, 2026

Summary

  • Eliminates the parallel deps pipeline (phase_deps_root + phase_deps_post) by merging dep scripts into postProvisionHooks with runAs metadata
  • Gives brave-search a real postInstallScript instead of a hardcoded special case in provisioner-config.ts
  • Adds optional runAs field to hook entries, defaulting to "ubuntu" in the bash template
  • Cleans up dead braveApiKey/tools fields from config-generator.ts

Test plan

  • pnpm build — all packages compile
  • pnpm test — all 344 tests pass
  • Verify generated cloud-init script has no phase_deps_root/phase_deps_post
  • Verify postProvisionHooks contains dep:* entries with correct runAs
  • Verify brave-search config is no longer in configSetCommands

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Added runAs field to provisioning hooks for per-hook user execution control (root or ubuntu).
  • Improvements

    • Brave Search configuration is now handled automatically via dependency post-install scripts.
    • Simplified configuration by integrating dependency hooks into postProvisionHooks.
    • Removed unnecessary public configuration fields for cleaner interfaces.

Eliminate the parallel deps pipeline (phase_deps_root + phase_deps_post)
by merging dep scripts into postProvisionHooks with runAs metadata.
This gives one execution path for all custom provisioning scripts.

- Give brave-search a real postInstallScript instead of hardcoded
  special case in provisioner-config.ts
- Add optional runAs field to hook entries (defaults to "ubuntu" in
  the bash template via jq)
- Prepend dep scripts to postProvisionHooks as dep:<name>:install
  (runAs: root) and dep:<name>:post (runAs: ubuntu)
- Remove phase_deps_root/phase_deps_post from bash template
- Clean up dead braveApiKey/tools fields from config-generator.ts
- Update tests to verify new hook structure and ordering

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 1, 2026

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

📥 Commits

Reviewing files that changed from the base of the PR and between a634d6d and fd04bb7.

📒 Files selected for processing (5)
  • packages/core/src/dep-registry.ts
  • packages/pulumi/src/components/__tests__/cloud-init-pipeline.test.ts
  • packages/pulumi/src/components/config-generator.ts
  • packages/pulumi/src/components/provisioner-config.ts
  • packages/pulumi/src/components/provisioner-template.ts
 _____________________________________________
< Because, no one wants to be a human linter. >
 ---------------------------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ

✏️ Tip: You can disable in-progress messages and the fortune message in your review settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch refactor/merge-deps-into-hooks

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@stepandel stepandel merged commit e138ad0 into main Mar 1, 2026
4 of 5 checks passed
@stepandel stepandel deleted the refactor/merge-deps-into-hooks branch March 1, 2026 22:51
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant