Skip to content

feat: accept inputs during stack registration - #691

Merged
alongubkin merged 5 commits into
mainfrom
alon/alien-930-register-required-inputs
Sep 24, 2026
Merged

alongubkin merged 5 commits into
mainfrom
alon/alien-930-register-required-inputs

Conversation

@alongubkin

@alongubkin alongubkin commented Sep 22, 2026 •

Copy link
Copy Markdown
Member

Summary

  • Accept typed inputs when registering a CloudFormation stack from outputs.
  • Read secret inputs from files rather than process arguments.
  • Send hosted registration through the existing API import path, which encrypts secrets before manager persistence.
  • Keep direct standalone-manager registration for non-secret inputs and redact secret files from diagnostic dry runs.

Why

Outputs-only templates do not expose deployer input answers in stack outputs. The released registration CLI therefore submits an empty input map. Registration fails when a required, non-defaulted answer is not already available from setup state. Hosted packages that use automatic custom-resource registration already forward their inputs; this PR addresses the separate manual outputs path.

Validation

  • Previous PR head: 165 alien-deploy-cli library tests passed.
  • Current head: Rust and TypeScript CI pending after merging main; the only conflict combined two independent test sets.
  • Rust formatting and diff checks passed locally. The existing hosted API forward-import behavior test passed locally (1/1).
  • A fresh outputs-only stack registration with a required secret remains the release-level end-to-end check.

Linear: https://linear.app/alienplatform/issue/ALIEN-930/accept-required-deployer-inputs-during-cloudformation-output

@alongubkin

Copy link
Copy Markdown
Member Author

@greptileai review

@greptile-apps

greptile-apps Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge; the prior findings are resolved and no new actionable issue was identified.

Summary

This PR extends CloudFormation stack registration to accept typed and file-backed secret inputs, routes hosted imports through the Platform boundary, preserves explicit standalone-manager registration, and normalizes generated CloudFormation values before reconstructing the import request.

  • Supports string, JSON-typed, and file-backed secret registration inputs with duplicate and type validation.
  • Keeps file-backed secrets out of process arguments and redacts them from diagnostic dry-run output.
  • Selects Platform or standalone-manager registration explicitly, rejecting secret inputs for direct manager imports.
  • Normalizes CloudFormation number parameters and conditional network-array entries to the core import contract.
  • Passes embedded CLI configuration into registration so hosted base-URL resolution remains consistent with other deployment commands.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
    A[CLI registration inputs] --> B[Local validation]
    C[CloudFormation outputs] --> D[Output normalization]
    B --> E[Stack import request]
    D --> E
    E --> F{Registration target}
    F -->|Hosted| G[Platform deployments import]
    G --> H[Encryption and manager forwarding]
    F -->|Explicit manager, non-secret inputs| I[Manager stack import]
Loading

Reviews (5) · Last reviewed commit: "chore: merge main into registration inpu..."

Comment thread crates/alien-deploy-cli/src/commands/register.rs Outdated
@alongubkin

Copy link
Copy Markdown
Member Author

@greptileai review

@alongubkin

Copy link
Copy Markdown
Member Author

@greptileai review

Comment thread crates/alien-deploy-cli/src/commands/register.rs Outdated
Comment thread crates/alien-deploy-cli/src/commands/register.rs
@alongubkin

Copy link
Copy Markdown
Member Author

@greptileai review

@alongubkin

Copy link
Copy Markdown
Member Author

@greptileai review

@alongubkin
alongubkin merged commit 2969ede into main Sep 24, 2026
28 of 32 checks passed
@alongubkin
alongubkin deleted the alon/alien-930-register-required-inputs branch September 24, 2026 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant