@ankhorage/infra 4.1.12 → 5.1.0
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/CHANGELOG.md +16 -0
- package/README.md +21 -32
- package/dist/cli/bin.d.ts +1 -8
- package/dist/cli/bin.d.ts.map +1 -1
- package/dist/cli/bin.js +2 -34
- package/dist/cli/bin.js.map +1 -1
- package/dist/cli/commands/destroy.d.ts +11 -0
- package/dist/cli/commands/destroy.d.ts.map +1 -0
- package/dist/cli/commands/destroy.js +51 -0
- package/dist/cli/commands/destroy.js.map +1 -0
- package/dist/cli/commands/down.d.ts +11 -0
- package/dist/cli/commands/down.d.ts.map +1 -0
- package/dist/cli/commands/down.js +27 -0
- package/dist/cli/commands/down.js.map +1 -0
- package/dist/cli/commands/generate.d.ts +11 -0
- package/dist/cli/commands/generate.d.ts.map +1 -0
- package/dist/cli/commands/generate.js +29 -0
- package/dist/cli/commands/generate.js.map +1 -0
- package/dist/cli/commands/outputs.d.ts +11 -0
- package/dist/cli/commands/outputs.d.ts.map +1 -0
- package/dist/cli/commands/outputs.js +25 -0
- package/dist/cli/commands/outputs.js.map +1 -0
- package/dist/cli/commands/plan.d.ts +11 -0
- package/dist/cli/commands/plan.d.ts.map +1 -0
- package/dist/cli/commands/plan.js +19 -0
- package/dist/cli/commands/plan.js.map +1 -0
- package/dist/cli/commands/status.d.ts +11 -0
- package/dist/cli/commands/status.d.ts.map +1 -0
- package/dist/cli/commands/status.js +19 -0
- package/dist/cli/commands/status.js.map +1 -0
- package/dist/cli/commands/up.d.ts +11 -0
- package/dist/cli/commands/up.d.ts.map +1 -0
- package/dist/cli/commands/up.js +28 -0
- package/dist/cli/commands/up.js.map +1 -0
- package/dist/cli/commands/validate.d.ts +11 -0
- package/dist/cli/commands/validate.d.ts.map +1 -0
- package/dist/cli/commands/validate.js +19 -0
- package/dist/cli/commands/validate.js.map +1 -0
- package/dist/cli/constants.d.ts +66 -0
- package/dist/cli/constants.d.ts.map +1 -0
- package/dist/cli/constants.js +19 -0
- package/dist/cli/constants.js.map +1 -0
- package/dist/cli/createDefaultInfraCommandContext.d.ts +4 -0
- package/dist/cli/createDefaultInfraCommandContext.d.ts.map +1 -0
- package/dist/{commandContext.js → cli/createDefaultInfraCommandContext.js} +4 -3
- package/dist/cli/createDefaultInfraCommandContext.js.map +1 -0
- package/dist/cli/createInfraRuntimeProvider.d.ts +5 -0
- package/dist/cli/createInfraRuntimeProvider.d.ts.map +1 -0
- package/dist/cli/createInfraRuntimeProvider.js +22 -0
- package/dist/cli/createInfraRuntimeProvider.js.map +1 -0
- package/dist/cli/createProviderCommandDescriptors.d.ts +4 -0
- package/dist/cli/createProviderCommandDescriptors.d.ts.map +1 -0
- package/dist/cli/createProviderCommandDescriptors.js +6 -0
- package/dist/cli/createProviderCommandDescriptors.js.map +1 -0
- package/dist/cli/findInfraCommand.d.ts +4 -0
- package/dist/cli/findInfraCommand.d.ts.map +1 -0
- package/dist/cli/findInfraCommand.js +6 -0
- package/dist/cli/findInfraCommand.js.map +1 -0
- package/dist/cli/index.d.ts +3 -8
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -24
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/renderInfraRootHelp.d.ts +3 -0
- package/dist/cli/renderInfraRootHelp.d.ts.map +1 -0
- package/dist/cli/renderInfraRootHelp.js +21 -0
- package/dist/cli/renderInfraRootHelp.js.map +1 -0
- package/dist/cli/renderUnknownInfraCommand.d.ts +3 -0
- package/dist/cli/renderUnknownInfraCommand.d.ts.map +1 -0
- package/dist/cli/renderUnknownInfraCommand.js +5 -0
- package/dist/cli/renderUnknownInfraCommand.js.map +1 -0
- package/dist/cli/runInfraCliAsync.d.ts +10 -0
- package/dist/cli/runInfraCliAsync.d.ts.map +1 -0
- package/dist/cli/runInfraCliAsync.js +34 -0
- package/dist/cli/runInfraCliAsync.js.map +1 -0
- package/dist/cli/runInfraCommandAsync.d.ts +4 -0
- package/dist/cli/runInfraCommandAsync.d.ts.map +1 -0
- package/dist/cli/runInfraCommandAsync.js +100 -0
- package/dist/cli/runInfraCommandAsync.js.map +1 -0
- package/dist/cli/utils/prepareInfraCommandOperationAsync.d.ts +4 -0
- package/dist/cli/utils/prepareInfraCommandOperationAsync.d.ts.map +1 -0
- package/dist/cli/utils/prepareInfraCommandOperationAsync.js +45 -0
- package/dist/cli/utils/prepareInfraCommandOperationAsync.js.map +1 -0
- package/dist/cli/utils/requireInfraSuccess.d.ts +7 -0
- package/dist/cli/utils/requireInfraSuccess.d.ts.map +1 -0
- package/dist/cli/utils/requireInfraSuccess.js +17 -0
- package/dist/cli/utils/requireInfraSuccess.js.map +1 -0
- package/dist/cli/utils/resolveInfraPersistence.d.ts +4 -0
- package/dist/cli/utils/resolveInfraPersistence.d.ts.map +1 -0
- package/dist/cli/utils/resolveInfraPersistence.js +17 -0
- package/dist/cli/utils/resolveInfraPersistence.js.map +1 -0
- package/dist/cli/utils/writeInfraEnvironmentOutputs.d.ts +5 -0
- package/dist/cli/utils/writeInfraEnvironmentOutputs.d.ts.map +1 -0
- package/dist/cli/utils/writeInfraEnvironmentOutputs.js +16 -0
- package/dist/cli/utils/writeInfraEnvironmentOutputs.js.map +1 -0
- package/dist/cli/utils/writeInfraStructured.d.ts +4 -0
- package/dist/cli/utils/writeInfraStructured.d.ts.map +1 -0
- package/dist/cli/utils/writeInfraStructured.js +8 -0
- package/dist/cli/utils/writeInfraStructured.js.map +1 -0
- package/dist/constants.d.ts +10 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/{packageMetadata.js → constants.js} +6 -3
- package/dist/constants.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraCredentialPort.d.ts +4 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraCredentialPort.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraCredentialPort.js +35 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraCredentialPort.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraSecretPort.d.ts +4 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraSecretPort.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraSecretPort.js +23 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraSecretPort.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createNodeInfraAdapterPackageResolver.d.ts +4 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createNodeInfraAdapterPackageResolver.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createNodeInfraAdapterPackageResolver.js +9 -0
- package/dist/features/environment-lifecycle/adapters/outbound/createNodeInfraAdapterPackageResolver.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/readStoredInfraStateAsync.d.ts +5 -0
- package/dist/features/environment-lifecycle/adapters/outbound/readStoredInfraStateAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/readStoredInfraStateAsync.js +28 -0
- package/dist/features/environment-lifecycle/adapters/outbound/readStoredInfraStateAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/removeStoredInfraStateAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/adapters/outbound/removeStoredInfraStateAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/removeStoredInfraStateAsync.js +7 -0
- package/dist/features/environment-lifecycle/adapters/outbound/removeStoredInfraStateAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/resolveInfraProjectAsync.d.ts +7 -0
- package/dist/features/environment-lifecycle/adapters/outbound/resolveInfraProjectAsync.d.ts.map +1 -0
- package/dist/{project.js → features/environment-lifecycle/adapters/outbound/resolveInfraProjectAsync.js} +10 -34
- package/dist/features/environment-lifecycle/adapters/outbound/resolveInfraProjectAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeInfraGeneratedArtifactsAsync.d.ts +5 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeInfraGeneratedArtifactsAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeInfraGeneratedArtifactsAsync.js +28 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeInfraGeneratedArtifactsAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeStoredInfraStateAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeStoredInfraStateAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeStoredInfraStateAsync.js +16 -0
- package/dist/features/environment-lifecycle/adapters/outbound/writeStoredInfraStateAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/ports/outbound/infraAdapterPackage.d.ts +9 -0
- package/dist/features/environment-lifecycle/application/ports/outbound/infraAdapterPackage.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/ports/outbound/infraAdapterPackage.js +2 -0
- package/dist/features/environment-lifecycle/application/ports/outbound/infraAdapterPackage.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/collectInfraWorkloadsAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/collectInfraWorkloadsAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/collectInfraWorkloadsAsync.js +15 -0
- package/dist/features/environment-lifecycle/application/use-cases/collectInfraWorkloadsAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/destroyInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/destroyInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/destroyInfraEnvironmentAsync.js +84 -0
- package/dist/features/environment-lifecycle/application/use-cases/destroyInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/downInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/downInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/downInfraEnvironmentAsync.js +55 -0
- package/dist/features/environment-lifecycle/application/use-cases/downInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/generateInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/generateInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/generateInfraEnvironmentAsync.js +38 -0
- package/dist/features/environment-lifecycle/application/use-cases/generateInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/getInfraEnvironmentOutputs.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/getInfraEnvironmentOutputs.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/getInfraEnvironmentOutputs.js +34 -0
- package/dist/features/environment-lifecycle/application/use-cases/getInfraEnvironmentOutputs.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/planInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/planInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/planInfraEnvironmentAsync.js +57 -0
- package/dist/features/environment-lifecycle/application/use-cases/planInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/prepareInfraOperationAsync.d.ts +5 -0
- package/dist/features/environment-lifecycle/application/use-cases/prepareInfraOperationAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/prepareInfraOperationAsync.js +109 -0
- package/dist/features/environment-lifecycle/application/use-cases/prepareInfraOperationAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/resolveInfraAdaptersAsync.d.ts +6 -0
- package/dist/features/environment-lifecycle/application/use-cases/resolveInfraAdaptersAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/resolveInfraAdaptersAsync.js +181 -0
- package/dist/features/environment-lifecycle/application/use-cases/resolveInfraAdaptersAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/statusInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/statusInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/statusInfraEnvironmentAsync.js +68 -0
- package/dist/features/environment-lifecycle/application/use-cases/statusInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/upInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/upInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/upInfraEnvironmentAsync.js +98 -0
- package/dist/features/environment-lifecycle/application/use-cases/upInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraAdaptersAsync.d.ts +5 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraAdaptersAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraAdaptersAsync.js +17 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraAdaptersAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraEnvironmentAsync.d.ts +4 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraEnvironmentAsync.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraEnvironmentAsync.js +13 -0
- package/dist/features/environment-lifecycle/application/use-cases/validateInfraEnvironmentAsync.js.map +1 -0
- package/dist/features/environment-lifecycle/composition/createInfraCommandServices.d.ts +4 -0
- package/dist/features/environment-lifecycle/composition/createInfraCommandServices.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/composition/createInfraCommandServices.js +43 -0
- package/dist/features/environment-lifecycle/composition/createInfraCommandServices.js.map +1 -0
- package/dist/features/environment-lifecycle/composition/createProjectInfraLifecycle.d.ts +4 -0
- package/dist/features/environment-lifecycle/composition/createProjectInfraLifecycle.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/composition/createProjectInfraLifecycle.js +123 -0
- package/dist/features/environment-lifecycle/composition/createProjectInfraLifecycle.js.map +1 -0
- package/dist/features/environment-lifecycle/domain/orderInfraPlanActions.d.ts +4 -0
- package/dist/features/environment-lifecycle/domain/orderInfraPlanActions.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/domain/orderInfraPlanActions.js +54 -0
- package/dist/features/environment-lifecycle/domain/orderInfraPlanActions.js.map +1 -0
- package/dist/features/environment-lifecycle/domain/resolveInfraEnvironment.d.ts +5 -0
- package/dist/features/environment-lifecycle/domain/resolveInfraEnvironment.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/domain/resolveInfraEnvironment.js +39 -0
- package/dist/features/environment-lifecycle/domain/resolveInfraEnvironment.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/appendInfraFailure.d.ts +7 -0
- package/dist/features/environment-lifecycle/utils/appendInfraFailure.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/appendInfraFailure.js +5 -0
- package/dist/features/environment-lifecycle/utils/appendInfraFailure.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraExecutionContext.d.ts +5 -0
- package/dist/features/environment-lifecycle/utils/createInfraExecutionContext.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraExecutionContext.js +13 -0
- package/dist/features/environment-lifecycle/utils/createInfraExecutionContext.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraFailure.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/createInfraFailure.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraFailure.js +5 -0
- package/dist/features/environment-lifecycle/utils/createInfraFailure.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraLedger.d.ts +12 -0
- package/dist/features/environment-lifecycle/utils/createInfraLedger.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/createInfraLedger.js +14 -0
- package/dist/features/environment-lifecycle/utils/createInfraLedger.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/infraIdentityKey.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/infraIdentityKey.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/infraIdentityKey.js +5 -0
- package/dist/features/environment-lifecycle/utils/infraIdentityKey.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/isInfraStoredState.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/isInfraStoredState.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/isInfraStoredState.js +103 -0
- package/dist/features/environment-lifecycle/utils/isInfraStoredState.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraOutputs.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraOutputs.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraOutputs.js +10 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraOutputs.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraResources.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraResources.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraResources.js +10 -0
- package/dist/features/environment-lifecycle/utils/mergeInfraResources.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/normalizeInfraEnvironmentKey.d.ts +3 -0
- package/dist/features/environment-lifecycle/utils/normalizeInfraEnvironmentKey.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/normalizeInfraEnvironmentKey.js +8 -0
- package/dist/features/environment-lifecycle/utils/normalizeInfraEnvironmentKey.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/resolveInfraStatePath.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/resolveInfraStatePath.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/resolveInfraStatePath.js +11 -0
- package/dist/features/environment-lifecycle/utils/resolveInfraStatePath.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/resolveProjectFile.d.ts +3 -0
- package/dist/features/environment-lifecycle/utils/resolveProjectFile.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/resolveProjectFile.js +19 -0
- package/dist/features/environment-lifecycle/utils/resolveProjectFile.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterOutputs.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterOutputs.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterOutputs.js +6 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterOutputs.js.map +1 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterResources.d.ts +4 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterResources.d.ts.map +1 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterResources.js +6 -0
- package/dist/features/environment-lifecycle/utils/retainUnchangedAdapterResources.js.map +1 -0
- package/dist/index.d.ts +16 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -15
- package/dist/index.js.map +1 -1
- package/dist/metadata/index.d.ts +1 -1
- package/dist/metadata/index.d.ts.map +1 -1
- package/dist/metadata/index.js +1 -1
- package/dist/metadata/index.js.map +1 -1
- package/dist/project/index.d.ts +8 -5
- package/dist/project/index.d.ts.map +1 -1
- package/dist/project/index.js +7 -5
- package/dist/project/index.js.map +1 -1
- package/dist/readme-usage.js +17 -26
- package/dist/readme-usage.js.map +1 -1
- package/dist/testSupport.d.ts +1 -1
- package/dist/testSupport.d.ts.map +1 -1
- package/dist/testSupport.js +11 -1
- package/dist/testSupport.js.map +1 -1
- package/dist/types/infraCli.d.ts +91 -0
- package/dist/types/infraCli.d.ts.map +1 -0
- package/dist/types/infraCli.js +2 -0
- package/dist/types/infraCli.js.map +1 -0
- package/dist/types/infraOrchestration.d.ts +84 -0
- package/dist/types/infraOrchestration.d.ts.map +1 -0
- package/dist/types/infraOrchestration.js +2 -0
- package/dist/types/infraOrchestration.js.map +1 -0
- package/dist/types/infraProject.d.ts +43 -0
- package/dist/types/infraProject.d.ts.map +1 -0
- package/dist/types/infraProject.js +2 -0
- package/dist/types/infraProject.js.map +1 -0
- package/package.json +20 -10
- package/src/adapterPackages.integration.test.ts +79 -0
- package/src/cli/bin.ts +2 -61
- package/src/cli/cli.test.ts +35 -126
- package/src/cli/commands/destroy.ts +57 -0
- package/src/cli/commands/down.ts +28 -0
- package/src/cli/commands/generate.ts +34 -0
- package/src/cli/commands/outputs.ts +25 -0
- package/src/cli/commands/plan.ts +20 -0
- package/src/cli/commands/status.ts +20 -0
- package/src/cli/commands/up.ts +29 -0
- package/src/cli/commands/validate.ts +20 -0
- package/src/cli/constants.ts +19 -0
- package/src/cli/createDefaultInfraCommandContext.ts +17 -0
- package/src/cli/createInfraRuntimeProvider.ts +35 -0
- package/src/cli/createProviderCommandDescriptors.ts +8 -0
- package/src/cli/findInfraCommand.ts +7 -0
- package/src/cli/index.test.ts +12 -20
- package/src/cli/index.ts +7 -49
- package/src/cli/renderInfraRootHelp.ts +23 -0
- package/src/cli/renderUnknownInfraCommand.ts +4 -0
- package/src/cli/runInfraCliAsync.ts +51 -0
- package/src/cli/runInfraCommandAsync.ts +114 -0
- package/src/cli/utils/prepareInfraCommandOperationAsync.ts +64 -0
- package/src/cli/utils/requireInfraSuccess.ts +24 -0
- package/src/cli/utils/resolveInfraPersistence.ts +22 -0
- package/src/cli/utils/writeInfraEnvironmentOutputs.ts +24 -0
- package/src/cli/utils/writeInfraStructured.ts +11 -0
- package/src/commands.test.ts +198 -196
- package/src/{packageMetadata.ts → constants.ts} +5 -2
- package/src/environmentLifecycle.test.ts +193 -0
- package/src/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraCredentialPort.ts +52 -0
- package/src/features/environment-lifecycle/adapters/outbound/createEnvironmentInfraSecretPort.ts +32 -0
- package/src/features/environment-lifecycle/adapters/outbound/createNodeInfraAdapterPackageResolver.ts +10 -0
- package/src/features/environment-lifecycle/adapters/outbound/readStoredInfraStateAsync.ts +34 -0
- package/src/features/environment-lifecycle/adapters/outbound/removeStoredInfraStateAsync.ts +12 -0
- package/src/{project.ts → features/environment-lifecycle/adapters/outbound/resolveInfraProjectAsync.ts} +10 -45
- package/src/features/environment-lifecycle/adapters/outbound/writeInfraGeneratedArtifactsAsync.ts +34 -0
- package/src/features/environment-lifecycle/adapters/outbound/writeStoredInfraStateAsync.ts +21 -0
- package/src/features/environment-lifecycle/application/ports/outbound/infraAdapterPackage.ts +10 -0
- package/src/features/environment-lifecycle/application/use-cases/collectInfraWorkloadsAsync.ts +25 -0
- package/src/features/environment-lifecycle/application/use-cases/destroyInfraEnvironmentAsync.ts +119 -0
- package/src/features/environment-lifecycle/application/use-cases/downInfraEnvironmentAsync.ts +65 -0
- package/src/features/environment-lifecycle/application/use-cases/generateInfraEnvironmentAsync.ts +51 -0
- package/src/features/environment-lifecycle/application/use-cases/getInfraEnvironmentOutputs.ts +41 -0
- package/src/features/environment-lifecycle/application/use-cases/planInfraEnvironmentAsync.ts +67 -0
- package/src/features/environment-lifecycle/application/use-cases/prepareInfraOperationAsync.ts +137 -0
- package/src/features/environment-lifecycle/application/use-cases/resolveInfraAdaptersAsync.ts +257 -0
- package/src/features/environment-lifecycle/application/use-cases/statusInfraEnvironmentAsync.ts +80 -0
- package/src/features/environment-lifecycle/application/use-cases/upInfraEnvironmentAsync.ts +126 -0
- package/src/features/environment-lifecycle/application/use-cases/validateInfraAdaptersAsync.ts +25 -0
- package/src/features/environment-lifecycle/application/use-cases/validateInfraEnvironmentAsync.ts +21 -0
- package/src/features/environment-lifecycle/composition/createInfraCommandServices.ts +47 -0
- package/src/features/environment-lifecycle/composition/createProjectInfraLifecycle.ts +157 -0
- package/src/features/environment-lifecycle/domain/orderInfraPlanActions.ts +64 -0
- package/src/features/environment-lifecycle/domain/resolveInfraEnvironment.ts +62 -0
- package/src/features/environment-lifecycle/utils/appendInfraFailure.ts +9 -0
- package/src/features/environment-lifecycle/utils/createInfraExecutionContext.ts +24 -0
- package/src/features/environment-lifecycle/utils/createInfraFailure.ts +6 -0
- package/src/features/environment-lifecycle/utils/createInfraLedger.ts +30 -0
- package/src/features/environment-lifecycle/utils/infraIdentityKey.ts +6 -0
- package/src/features/environment-lifecycle/utils/isInfraStoredState.ts +141 -0
- package/src/features/environment-lifecycle/utils/mergeInfraOutputs.ts +14 -0
- package/src/features/environment-lifecycle/utils/mergeInfraResources.ts +14 -0
- package/src/features/environment-lifecycle/utils/normalizeInfraEnvironmentKey.ts +7 -0
- package/src/features/environment-lifecycle/utils/resolveInfraStatePath.ts +12 -0
- package/src/features/environment-lifecycle/utils/resolveProjectFile.ts +22 -0
- package/src/features/environment-lifecycle/utils/retainUnchangedAdapterOutputs.ts +15 -0
- package/src/features/environment-lifecycle/utils/retainUnchangedAdapterResources.ts +15 -0
- package/src/index.test.ts +22 -315
- package/src/index.ts +41 -53
- package/src/infraComposition.integration.test.ts +128 -0
- package/src/infraOperations.test.ts +386 -0
- package/src/infraUp.test.ts +260 -0
- package/src/metadata/index.ts +1 -1
- package/src/package.test.ts +4 -2
- package/src/project/index.test.ts +10 -188
- package/src/project/index.ts +15 -22
- package/src/project.test.ts +39 -189
- package/src/projectContractsParser.test.ts +2 -2
- package/src/projectInfrastructure.test.ts +121 -167
- package/src/projectLifecycle.test.ts +136 -0
- package/src/readme-usage.ts +17 -26
- package/src/testSupport.ts +12 -2
- package/src/types/infraCli.ts +115 -0
- package/src/types/infraOrchestration.ts +126 -0
- package/src/types/infraProject.ts +58 -0
- package/dist/adapters/minikube/auth/index.d.ts +0 -8
- package/dist/adapters/minikube/auth/index.d.ts.map +0 -1
- package/dist/adapters/minikube/auth/index.js +0 -29
- package/dist/adapters/minikube/auth/index.js.map +0 -1
- package/dist/adapters/minikube/auth/oauthRuntime.d.ts +0 -4
- package/dist/adapters/minikube/auth/oauthRuntime.d.ts.map +0 -1
- package/dist/adapters/minikube/auth/oauthRuntime.js +0 -138
- package/dist/adapters/minikube/auth/oauthRuntime.js.map +0 -1
- package/dist/adapters/minikube/auth/supabase/index.d.ts +0 -7
- package/dist/adapters/minikube/auth/supabase/index.d.ts.map +0 -1
- package/dist/adapters/minikube/auth/supabase/index.js +0 -232
- package/dist/adapters/minikube/auth/supabase/index.js.map +0 -1
- package/dist/adapters/minikube/auth/supabase/profile.d.ts +0 -20
- package/dist/adapters/minikube/auth/supabase/profile.d.ts.map +0 -1
- package/dist/adapters/minikube/auth/supabase/profile.js +0 -452
- package/dist/adapters/minikube/auth/supabase/profile.js.map +0 -1
- package/dist/adapters/minikube/auth/targetAwareOAuthRuntime.d.ts +0 -7
- package/dist/adapters/minikube/auth/targetAwareOAuthRuntime.d.ts.map +0 -1
- package/dist/adapters/minikube/auth/targetAwareOAuthRuntime.js +0 -104
- package/dist/adapters/minikube/auth/targetAwareOAuthRuntime.js.map +0 -1
- package/dist/adapters/minikube/authz/cerbos/index.d.ts +0 -13
- package/dist/adapters/minikube/authz/cerbos/index.d.ts.map +0 -1
- package/dist/adapters/minikube/authz/cerbos/index.js +0 -382
- package/dist/adapters/minikube/authz/cerbos/index.js.map +0 -1
- package/dist/adapters/minikube/authz/index.d.ts +0 -9
- package/dist/adapters/minikube/authz/index.d.ts.map +0 -1
- package/dist/adapters/minikube/authz/index.js +0 -23
- package/dist/adapters/minikube/authz/index.js.map +0 -1
- package/dist/adapters/minikube/base/index.d.ts +0 -14
- package/dist/adapters/minikube/base/index.d.ts.map +0 -1
- package/dist/adapters/minikube/base/index.js +0 -3433
- package/dist/adapters/minikube/base/index.js.map +0 -1
- package/dist/adapters/minikube/base/supabaseMigrations.d.ts +0 -2
- package/dist/adapters/minikube/base/supabaseMigrations.d.ts.map +0 -1
- package/dist/adapters/minikube/base/supabaseMigrations.js +0 -6
- package/dist/adapters/minikube/base/supabaseMigrations.js.map +0 -1
- package/dist/adapters/minikube/contracts.d.ts +0 -34
- package/dist/adapters/minikube/contracts.d.ts.map +0 -1
- package/dist/adapters/minikube/contracts.js +0 -10
- package/dist/adapters/minikube/contracts.js.map +0 -1
- package/dist/adapters/minikube/index.d.ts +0 -3
- package/dist/adapters/minikube/index.d.ts.map +0 -1
- package/dist/adapters/minikube/index.js +0 -136
- package/dist/adapters/minikube/index.js.map +0 -1
- package/dist/adapters/minikube/secrets/index.d.ts +0 -7
- package/dist/adapters/minikube/secrets/index.d.ts.map +0 -1
- package/dist/adapters/minikube/secrets/index.js +0 -13
- package/dist/adapters/minikube/secrets/index.js.map +0 -1
- package/dist/adapters/minikube/secrets/supabase-vault/index.d.ts +0 -8
- package/dist/adapters/minikube/secrets/supabase-vault/index.d.ts.map +0 -1
- package/dist/adapters/minikube/secrets/supabase-vault/index.js +0 -118
- package/dist/adapters/minikube/secrets/supabase-vault/index.js.map +0 -1
- package/dist/adapters/minikube/storage/index.d.ts +0 -7
- package/dist/adapters/minikube/storage/index.d.ts.map +0 -1
- package/dist/adapters/minikube/storage/index.js +0 -77
- package/dist/adapters/minikube/storage/index.js.map +0 -1
- package/dist/adapters/minikube/storage/supabase/index.d.ts +0 -7
- package/dist/adapters/minikube/storage/supabase/index.d.ts.map +0 -1
- package/dist/adapters/minikube/storage/supabase/index.js +0 -82
- package/dist/adapters/minikube/storage/supabase/index.js.map +0 -1
- package/dist/authRedirects.d.ts +0 -19
- package/dist/authRedirects.d.ts.map +0 -1
- package/dist/authRedirects.js +0 -80
- package/dist/authRedirects.js.map +0 -1
- package/dist/authTargetRedirects.d.ts +0 -12
- package/dist/authTargetRedirects.d.ts.map +0 -1
- package/dist/authTargetRedirects.js +0 -32
- package/dist/authTargetRedirects.js.map +0 -1
- package/dist/commandContext.d.ts +0 -12
- package/dist/commandContext.d.ts.map +0 -1
- package/dist/commandContext.js.map +0 -1
- package/dist/commands.d.ts +0 -95
- package/dist/commands.d.ts.map +0 -1
- package/dist/commands.js +0 -256
- package/dist/commands.js.map +0 -1
- package/dist/infraValidation.d.ts +0 -4
- package/dist/infraValidation.d.ts.map +0 -1
- package/dist/infraValidation.js +0 -63
- package/dist/infraValidation.js.map +0 -1
- package/dist/packageMetadata.d.ts +0 -10
- package/dist/packageMetadata.d.ts.map +0 -1
- package/dist/packageMetadata.js.map +0 -1
- package/dist/project.d.ts +0 -14
- package/dist/project.d.ts.map +0 -1
- package/dist/project.js.map +0 -1
- package/dist/projectDatabase.d.ts +0 -5
- package/dist/projectDatabase.d.ts.map +0 -1
- package/dist/projectDatabase.js +0 -22
- package/dist/projectDatabase.js.map +0 -1
- package/dist/projectEnvironment.d.ts +0 -6
- package/dist/projectEnvironment.d.ts.map +0 -1
- package/dist/projectEnvironment.js +0 -45
- package/dist/projectEnvironment.js.map +0 -1
- package/dist/projectInfrastructure.d.ts +0 -38
- package/dist/projectInfrastructure.d.ts.map +0 -1
- package/dist/projectInfrastructure.js +0 -145
- package/dist/projectInfrastructure.js.map +0 -1
- package/dist/runtime.d.ts +0 -54
- package/dist/runtime.d.ts.map +0 -1
- package/dist/runtime.js +0 -151
- package/dist/runtime.js.map +0 -1
- package/dist/secretStore.d.ts +0 -19
- package/dist/secretStore.d.ts.map +0 -1
- package/dist/secretStore.js +0 -22
- package/dist/secretStore.js.map +0 -1
- package/dist/types.d.ts +0 -70
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/src/adapters/minikube/README.md +0 -115
- package/src/adapters/minikube/appRuntimeServing.test.ts +0 -28
- package/src/adapters/minikube/auth/index.ts +0 -40
- package/src/adapters/minikube/auth/oauthRuntime.ts +0 -163
- package/src/adapters/minikube/auth/supabase/index.test.ts +0 -227
- package/src/adapters/minikube/auth/supabase/index.ts +0 -293
- package/src/adapters/minikube/auth/supabase/oauthRuntime.test.ts +0 -154
- package/src/adapters/minikube/auth/supabase/profile.integration.test.ts +0 -1028
- package/src/adapters/minikube/auth/supabase/profile.ts +0 -526
- package/src/adapters/minikube/auth/supabase/providerAssignments.test.ts +0 -36
- package/src/adapters/minikube/auth/targetAwareOAuthRuntime.test.ts +0 -83
- package/src/adapters/minikube/auth/targetAwareOAuthRuntime.ts +0 -136
- package/src/adapters/minikube/authz/cerbos/index.ts +0 -486
- package/src/adapters/minikube/authz/index.ts +0 -32
- package/src/adapters/minikube/base/appImageBuild.test.ts +0 -352
- package/src/adapters/minikube/base/index.test.ts +0 -693
- package/src/adapters/minikube/base/index.ts +0 -3763
- package/src/adapters/minikube/base/portForwardRuntime.test.ts +0 -624
- package/src/adapters/minikube/base/supabaseMigrations.test.ts +0 -168
- package/src/adapters/minikube/base/supabaseMigrations.ts +0 -5
- package/src/adapters/minikube/base/twoAppIsolation.integration.test.ts +0 -898
- package/src/adapters/minikube/base/upgradeReconciliation.test.ts +0 -135
- package/src/adapters/minikube/contracts.ts +0 -46
- package/src/adapters/minikube/index.ts +0 -172
- package/src/adapters/minikube/secrets/index.test.ts +0 -147
- package/src/adapters/minikube/secrets/index.ts +0 -19
- package/src/adapters/minikube/secrets/supabase-vault/index.ts +0 -139
- package/src/adapters/minikube/storage/index.ts +0 -91
- package/src/adapters/minikube/storage/supabase/index.ts +0 -108
- package/src/apiInfrastructure.test.ts +0 -69
- package/src/authRedirects.test.ts +0 -63
- package/src/authRedirects.ts +0 -113
- package/src/authTargetRedirects.test.ts +0 -62
- package/src/authTargetRedirects.ts +0 -46
- package/src/commandContext.ts +0 -27
- package/src/commands.ts +0 -404
- package/src/generatedApiLedgerCleanup.test.ts +0 -72
- package/src/infraApiValidation.test.ts +0 -42
- package/src/infraValidation.ts +0 -99
- package/src/minikubeImageLifecycle.test.ts +0 -35
- package/src/projectDatabase.ts +0 -27
- package/src/projectEnvironment.ts +0 -51
- package/src/projectInfrastructure.ts +0 -221
- package/src/runtime.test.ts +0 -124
- package/src/runtime.ts +0 -234
- package/src/secretStore.test.ts +0 -76
- package/src/secretStore.ts +0 -44
- package/src/types.ts +0 -82
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
export declare const INFRA_COMMANDS: readonly [{
|
|
2
|
+
readonly standaloneName: "validate";
|
|
3
|
+
readonly path: readonly ["validate"];
|
|
4
|
+
readonly capability: "infra.validate";
|
|
5
|
+
readonly summary: "Validate manifest, compatibility, credentials and selected adapters.";
|
|
6
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
7
|
+
exitCode: number;
|
|
8
|
+
}>;
|
|
9
|
+
}, {
|
|
10
|
+
readonly standaloneName: "plan";
|
|
11
|
+
readonly path: readonly ["plan"];
|
|
12
|
+
readonly capability: "infra.plan";
|
|
13
|
+
readonly summary: "Print an ordered side-effect-free infrastructure plan.";
|
|
14
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
15
|
+
exitCode: number;
|
|
16
|
+
}>;
|
|
17
|
+
}, {
|
|
18
|
+
readonly standaloneName: "generate";
|
|
19
|
+
readonly path: readonly ["generate"];
|
|
20
|
+
readonly capability: "infra.generate";
|
|
21
|
+
readonly summary: "Generate deterministic review artifacts without remote side effects.";
|
|
22
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
23
|
+
exitCode: number;
|
|
24
|
+
}>;
|
|
25
|
+
}, {
|
|
26
|
+
readonly standaloneName: "up";
|
|
27
|
+
readonly path: readonly ["up"];
|
|
28
|
+
readonly capability: "infra.up";
|
|
29
|
+
readonly summary: "Idempotently ensure and reconcile the selected environment.";
|
|
30
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
31
|
+
exitCode: number;
|
|
32
|
+
}>;
|
|
33
|
+
}, {
|
|
34
|
+
readonly standaloneName: "status";
|
|
35
|
+
readonly path: readonly ["status"];
|
|
36
|
+
readonly capability: "infra.status";
|
|
37
|
+
readonly summary: "Aggregate provider-neutral environment status.";
|
|
38
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
39
|
+
exitCode: number;
|
|
40
|
+
}>;
|
|
41
|
+
}, {
|
|
42
|
+
readonly standaloneName: "outputs";
|
|
43
|
+
readonly path: readonly ["outputs"];
|
|
44
|
+
readonly capability: "infra.outputs";
|
|
45
|
+
readonly summary: "Print safe public outputs and secret references.";
|
|
46
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
47
|
+
exitCode: number;
|
|
48
|
+
}>;
|
|
49
|
+
}, {
|
|
50
|
+
readonly standaloneName: "down";
|
|
51
|
+
readonly path: readonly ["down"];
|
|
52
|
+
readonly capability: "infra.down";
|
|
53
|
+
readonly summary: "Reversibly suspend runtime workloads while retaining persistent data.";
|
|
54
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
55
|
+
exitCode: number;
|
|
56
|
+
}>;
|
|
57
|
+
}, {
|
|
58
|
+
readonly standaloneName: "destroy";
|
|
59
|
+
readonly path: readonly ["destroy"];
|
|
60
|
+
readonly capability: "infra.destroy";
|
|
61
|
+
readonly summary: "Destroy exact owned resources behind explicit confirmation.";
|
|
62
|
+
readonly run: (request: import("../types/infraCli.js").InfraCommandRunRequest, services: import("./index.js").InfraCommandServices) => Promise<{
|
|
63
|
+
exitCode: number;
|
|
64
|
+
}>;
|
|
65
|
+
}];
|
|
66
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/cli/constants.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASjB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { destroy } from './commands/destroy.js';
|
|
2
|
+
import { down } from './commands/down.js';
|
|
3
|
+
import { generate } from './commands/generate.js';
|
|
4
|
+
import { outputs } from './commands/outputs.js';
|
|
5
|
+
import { plan } from './commands/plan.js';
|
|
6
|
+
import { status } from './commands/status.js';
|
|
7
|
+
import { up } from './commands/up.js';
|
|
8
|
+
import { validate } from './commands/validate.js';
|
|
9
|
+
export const INFRA_COMMANDS = [
|
|
10
|
+
validate,
|
|
11
|
+
plan,
|
|
12
|
+
generate,
|
|
13
|
+
up,
|
|
14
|
+
status,
|
|
15
|
+
outputs,
|
|
16
|
+
down,
|
|
17
|
+
destroy,
|
|
18
|
+
];
|
|
19
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/cli/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,QAAQ;IACR,IAAI;IACJ,QAAQ;IACR,EAAE;IACF,MAAM;IACN,OAAO;IACP,IAAI;IACJ,OAAO;CACC,CAAC","sourcesContent":["import { destroy } from './commands/destroy.js';\nimport { down } from './commands/down.js';\nimport { generate } from './commands/generate.js';\nimport { outputs } from './commands/outputs.js';\nimport { plan } from './commands/plan.js';\nimport { status } from './commands/status.js';\nimport { up } from './commands/up.js';\nimport { validate } from './commands/validate.js';\n\nexport const INFRA_COMMANDS = [\n validate,\n plan,\n generate,\n up,\n status,\n outputs,\n down,\n destroy,\n] as const;\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { InfraCommandContext } from '../types/infraCli.js';
|
|
2
|
+
/*** Create the process-backed command context used by the standalone executable. */
|
|
3
|
+
export declare function createDefaultInfraCommandContext(): InfraCommandContext;
|
|
4
|
+
//# sourceMappingURL=createDefaultInfraCommandContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDefaultInfraCommandContext.d.ts","sourceRoot":"","sources":["../../src/cli/createDefaultInfraCommandContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhE,oFAAoF;AACpF,wBAAgB,gCAAgC,IAAI,mBAAmB,CAYtE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { INFRA_PACKAGE_VERSION } from '
|
|
2
|
-
|
|
1
|
+
import { INFRA_PACKAGE_VERSION } from '../constants.js';
|
|
2
|
+
/*** Create the process-backed command context used by the standalone executable. */
|
|
3
|
+
export function createDefaultInfraCommandContext() {
|
|
3
4
|
return {
|
|
4
5
|
cwd: process.cwd(),
|
|
5
6
|
env: process.env,
|
|
@@ -12,4 +13,4 @@ export function createDefaultCommandContext() {
|
|
|
12
13
|
},
|
|
13
14
|
};
|
|
14
15
|
}
|
|
15
|
-
//# sourceMappingURL=
|
|
16
|
+
//# sourceMappingURL=createDefaultInfraCommandContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createDefaultInfraCommandContext.js","sourceRoot":"","sources":["../../src/cli/createDefaultInfraCommandContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,oFAAoF;AACpF,MAAM,UAAU,gCAAgC;IAC9C,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,CAAC,IAAY;YACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,WAAW,CAAC,IAAY;YACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { INFRA_PACKAGE_VERSION } from '../constants.js';\nimport type { InfraCommandContext } from '../types/infraCli.js';\n\n/*** Create the process-backed command context used by the standalone executable. */\nexport function createDefaultInfraCommandContext(): InfraCommandContext {\n return {\n cwd: process.cwd(),\n env: process.env,\n version: INFRA_PACKAGE_VERSION,\n writeStdout(text: string) {\n process.stdout.write(text);\n },\n writeStderr(text: string) {\n process.stderr.write(text);\n },\n };\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { AnkhRuntimeCommandProvider } from '@ankhorage/ankh';
|
|
2
|
+
import type { CreateInfraRuntimeProviderOptions } from '../types/infraCli.js';
|
|
3
|
+
/*** Compose the canonical Infra command surface as an Ankh runtime provider. */
|
|
4
|
+
export declare function createInfraRuntimeProvider(options?: CreateInfraRuntimeProviderOptions): AnkhRuntimeCommandProvider;
|
|
5
|
+
//# sourceMappingURL=createInfraRuntimeProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createInfraRuntimeProvider.d.ts","sourceRoot":"","sources":["../../src/cli/createInfraRuntimeProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAQlE,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,sBAAsB,CAAC;AAK9E,gFAAgF;AAChF,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,0BAA0B,CAkB5B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { INFRA_CAPABILITIES, INFRA_COMMAND_CATEGORY, INFRA_PACKAGE_NAME, INFRA_PACKAGE_VERSION, } from '../constants.js';
|
|
2
|
+
import { INFRA_COMMANDS } from './constants.js';
|
|
3
|
+
import { createProviderCommandDescriptors } from './createProviderCommandDescriptors.js';
|
|
4
|
+
import { runInfraCommandAsync } from './runInfraCommandAsync.js';
|
|
5
|
+
/*** Compose the canonical Infra command surface as an Ankh runtime provider. */
|
|
6
|
+
export function createInfraRuntimeProvider(options = {}) {
|
|
7
|
+
const runCommandImpl = options.runCommandImpl ?? runInfraCommandAsync;
|
|
8
|
+
return {
|
|
9
|
+
id: INFRA_PACKAGE_NAME,
|
|
10
|
+
category: INFRA_COMMAND_CATEGORY,
|
|
11
|
+
version: INFRA_PACKAGE_VERSION,
|
|
12
|
+
capabilities: [...INFRA_CAPABILITIES],
|
|
13
|
+
commands: createProviderCommandDescriptors(),
|
|
14
|
+
handlers: INFRA_COMMANDS.map((command) => ({
|
|
15
|
+
path: command.path,
|
|
16
|
+
handler(request) {
|
|
17
|
+
return runCommandImpl({ argv: request.argv, command, context: request.context }, { services: options.services });
|
|
18
|
+
},
|
|
19
|
+
})),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=createInfraRuntimeProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createInfraRuntimeProvider.js","sourceRoot":"","sources":["../../src/cli/createInfraRuntimeProvider.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,gFAAgF;AAChF,MAAM,UAAU,0BAA0B,CACxC,UAA6C,EAAE;IAE/C,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,oBAAoB,CAAC;IACtE,OAAO;QACL,EAAE,EAAE,kBAAkB;QACtB,QAAQ,EAAE,sBAAsB;QAChC,OAAO,EAAE,qBAAqB;QAC9B,YAAY,EAAE,CAAC,GAAG,kBAAkB,CAAC;QACrC,QAAQ,EAAE,gCAAgC,EAAE;QAC5C,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACzC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,CAAC,OAAO;gBACb,OAAO,cAAc,CACnB,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,EACzD,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAC/B,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;KACiC,CAAC;AACzC,CAAC","sourcesContent":["import type { AnkhRuntimeCommandProvider } from '@ankhorage/ankh';\n\nimport {\n INFRA_CAPABILITIES,\n INFRA_COMMAND_CATEGORY,\n INFRA_PACKAGE_NAME,\n INFRA_PACKAGE_VERSION,\n} from '../constants.js';\nimport type { CreateInfraRuntimeProviderOptions } from '../types/infraCli.js';\nimport { INFRA_COMMANDS } from './constants.js';\nimport { createProviderCommandDescriptors } from './createProviderCommandDescriptors.js';\nimport { runInfraCommandAsync } from './runInfraCommandAsync.js';\n\n/*** Compose the canonical Infra command surface as an Ankh runtime provider. */\nexport function createInfraRuntimeProvider(\n options: CreateInfraRuntimeProviderOptions = {},\n): AnkhRuntimeCommandProvider {\n const runCommandImpl = options.runCommandImpl ?? runInfraCommandAsync;\n return {\n id: INFRA_PACKAGE_NAME,\n category: INFRA_COMMAND_CATEGORY,\n version: INFRA_PACKAGE_VERSION,\n capabilities: [...INFRA_CAPABILITIES],\n commands: createProviderCommandDescriptors(),\n handlers: INFRA_COMMANDS.map((command) => ({\n path: command.path,\n handler(request) {\n return runCommandImpl(\n { argv: request.argv, command, context: request.context },\n { services: options.services },\n );\n },\n })),\n } satisfies AnkhRuntimeCommandProvider;\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { AnkhCommandDescriptor } from '@ankhorage/contracts/cli';
|
|
2
|
+
/*** Expose the same eight commands through Ankh provider discovery. */
|
|
3
|
+
export declare function createProviderCommandDescriptors(): readonly AnkhCommandDescriptor[];
|
|
4
|
+
//# sourceMappingURL=createProviderCommandDescriptors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createProviderCommandDescriptors.d.ts","sourceRoot":"","sources":["../../src/cli/createProviderCommandDescriptors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAItE,uEAAuE;AACvE,wBAAgB,gCAAgC,IAAI,SAAS,qBAAqB,EAAE,CAEnF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { INFRA_COMMANDS } from './constants.js';
|
|
2
|
+
/*** Expose the same eight commands through Ankh provider discovery. */
|
|
3
|
+
export function createProviderCommandDescriptors() {
|
|
4
|
+
return INFRA_COMMANDS.map(({ capability, path, summary }) => ({ capability, path, summary }));
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=createProviderCommandDescriptors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createProviderCommandDescriptors.js","sourceRoot":"","sources":["../../src/cli/createProviderCommandDescriptors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,uEAAuE;AACvE,MAAM,UAAU,gCAAgC;IAC9C,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AAChG,CAAC","sourcesContent":["import type { AnkhCommandDescriptor } from '@ankhorage/contracts/cli';\n\nimport { INFRA_COMMANDS } from './constants.js';\n\n/*** Expose the same eight commands through Ankh provider discovery. */\nexport function createProviderCommandDescriptors(): readonly AnkhCommandDescriptor[] {\n return INFRA_COMMANDS.map(({ capability, path, summary }) => ({ capability, path, summary }));\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { InfraCommandDefinition } from '../types/infraCli.js';
|
|
2
|
+
/*** Resolve one exact standalone Infra command name without guessing intent. */
|
|
3
|
+
export declare function findInfraCommand(value: string): InfraCommandDefinition | null;
|
|
4
|
+
//# sourceMappingURL=findInfraCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findInfraCommand.d.ts","sourceRoot":"","sources":["../../src/cli/findInfraCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAGnE,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAE7E"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { INFRA_COMMANDS } from './constants.js';
|
|
2
|
+
/*** Resolve one exact standalone Infra command name without guessing intent. */
|
|
3
|
+
export function findInfraCommand(value) {
|
|
4
|
+
return INFRA_COMMANDS.find((candidate) => candidate.standaloneName === value) ?? null;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=findInfraCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findInfraCommand.js","sourceRoot":"","sources":["../../src/cli/findInfraCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC;AACxF,CAAC","sourcesContent":["import type { InfraCommandDefinition } from '../types/infraCli.js';\nimport { INFRA_COMMANDS } from './constants.js';\n\n/*** Resolve one exact standalone Infra command name without guessing intent. */\nexport function findInfraCommand(value: string): InfraCommandDefinition | null {\n return INFRA_COMMANDS.find((candidate) => candidate.standaloneName === value) ?? null;\n}\n"]}
|
package/dist/cli/index.d.ts
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
readonly runCommandImpl?: RunInfraCommandImpl;
|
|
5
|
-
readonly services?: Partial<InfraCommandServices>;
|
|
6
|
-
}
|
|
7
|
-
export declare function createInfraRuntimeProvider(options?: CreateInfraRuntimeProviderOptions): AnkhRuntimeCommandProvider;
|
|
8
|
-
declare const provider: AnkhRuntimeCommandProvider;
|
|
1
|
+
declare const provider: import("@ankhorage/ankh").AnkhRuntimeCommandProvider;
|
|
2
|
+
export type { CreateInfraRuntimeProviderOptions, InfraCommandServices, RunInfraCommandImpl, } from '../types/infraCli.js';
|
|
3
|
+
export { createInfraRuntimeProvider } from './createInfraRuntimeProvider.js';
|
|
9
4
|
export default provider;
|
|
10
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,QAAQ,sDAA+B,CAAC;AAE9C,YAAY,EACV,iCAAiC,EACjC,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,eAAe,QAAQ,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -1,27 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { INFRA_CAPABILITIES, INFRA_COMMAND_CATEGORY, INFRA_PACKAGE_NAME, INFRA_PACKAGE_VERSION, } from '../packageMetadata.js';
|
|
3
|
-
export function createInfraRuntimeProvider(options = {}) {
|
|
4
|
-
const runCommandImpl = options.runCommandImpl ?? runInfraCommand;
|
|
5
|
-
return {
|
|
6
|
-
id: INFRA_PACKAGE_NAME,
|
|
7
|
-
category: INFRA_COMMAND_CATEGORY,
|
|
8
|
-
version: INFRA_PACKAGE_VERSION,
|
|
9
|
-
capabilities: [...INFRA_CAPABILITIES],
|
|
10
|
-
commands: createProviderCommandDescriptors(),
|
|
11
|
-
handlers: INFRA_COMMANDS.map((command) => ({
|
|
12
|
-
path: command.path,
|
|
13
|
-
handler(request) {
|
|
14
|
-
return runCommandImpl({
|
|
15
|
-
argv: request.argv,
|
|
16
|
-
command,
|
|
17
|
-
context: request.context,
|
|
18
|
-
}, {
|
|
19
|
-
services: options.services,
|
|
20
|
-
});
|
|
21
|
-
},
|
|
22
|
-
})),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
1
|
+
import { createInfraRuntimeProvider } from './createInfraRuntimeProvider.js';
|
|
25
2
|
const provider = createInfraRuntimeProvider();
|
|
3
|
+
export { createInfraRuntimeProvider } from './createInfraRuntimeProvider.js';
|
|
26
4
|
export default provider;
|
|
27
5
|
//# sourceMappingURL=index.js.map
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,MAAM,QAAQ,GAAG,0BAA0B,EAAE,CAAC;AAO9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,eAAe,QAAQ,CAAC","sourcesContent":["import { createInfraRuntimeProvider } from './createInfraRuntimeProvider.js';\n\nconst provider = createInfraRuntimeProvider();\n\nexport type {\n CreateInfraRuntimeProviderOptions,\n InfraCommandServices,\n RunInfraCommandImpl,\n} from '../types/infraCli.js';\nexport { createInfraRuntimeProvider } from './createInfraRuntimeProvider.js';\nexport default provider;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderInfraRootHelp.d.ts","sourceRoot":"","sources":["../../src/cli/renderInfraRootHelp.ts"],"names":[],"mappings":"AAGA,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkB3D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { INFRA_COMMAND_CATEGORY } from '../constants.js';
|
|
2
|
+
import { INFRA_COMMANDS } from './constants.js';
|
|
3
|
+
/*** Render the standalone Infra command surface and environment safety rules. */
|
|
4
|
+
export function renderInfraRootHelp(version) {
|
|
5
|
+
const commands = INFRA_COMMANDS.map(({ standaloneName, summary }) => ` ${standaloneName.padEnd(8, ' ')} ${summary}`).join('\n');
|
|
6
|
+
return [
|
|
7
|
+
`@ankhorage/infra v${version}`,
|
|
8
|
+
'',
|
|
9
|
+
'Usage:',
|
|
10
|
+
' ankhorage-infra <command> [project] [--environment <environment>]',
|
|
11
|
+
` ankh ${INFRA_COMMAND_CATEGORY} <command> [project] [--environment <environment>]`,
|
|
12
|
+
'',
|
|
13
|
+
'Commands:',
|
|
14
|
+
commands,
|
|
15
|
+
'',
|
|
16
|
+
'Safety:',
|
|
17
|
+
' local is the only implicit environment; destroy always requires --environment and --confirm.',
|
|
18
|
+
'',
|
|
19
|
+
].join('\n');
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=renderInfraRootHelp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderInfraRootHelp.js","sourceRoot":"","sources":["../../src/cli/renderInfraRootHelp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,iFAAiF;AACjF,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CACjC,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,KAAK,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CACjF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,OAAO;QACL,qBAAqB,OAAO,EAAE;QAC9B,EAAE;QACF,QAAQ;QACR,qEAAqE;QACrE,UAAU,sBAAsB,oDAAoD;QACpF,EAAE;QACF,WAAW;QACX,QAAQ;QACR,EAAE;QACF,SAAS;QACT,gGAAgG;QAChG,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC","sourcesContent":["import { INFRA_COMMAND_CATEGORY } from '../constants.js';\nimport { INFRA_COMMANDS } from './constants.js';\n\n/*** Render the standalone Infra command surface and environment safety rules. */\nexport function renderInfraRootHelp(version: string): string {\n const commands = INFRA_COMMANDS.map(\n ({ standaloneName, summary }) => ` ${standaloneName.padEnd(8, ' ')} ${summary}`,\n ).join('\\n');\n return [\n `@ankhorage/infra v${version}`,\n '',\n 'Usage:',\n ' ankhorage-infra <command> [project] [--environment <environment>]',\n ` ankh ${INFRA_COMMAND_CATEGORY} <command> [project] [--environment <environment>]`,\n '',\n 'Commands:',\n commands,\n '',\n 'Safety:',\n ' local is the only implicit environment; destroy always requires --environment and --confirm.',\n '',\n ].join('\\n');\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderUnknownInfraCommand.d.ts","sourceRoot":"","sources":["../../src/cli/renderUnknownInfraCommand.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/D"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/*** Render an invalid standalone Infra command without guessing intent. */
|
|
2
|
+
export function renderUnknownInfraCommand(value) {
|
|
3
|
+
return [`Unknown infra command: ${value}`, '', 'Run ankhorage-infra --help', ''].join('\n');
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=renderUnknownInfraCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderUnknownInfraCommand.js","sourceRoot":"","sources":["../../src/cli/renderUnknownInfraCommand.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,MAAM,UAAU,yBAAyB,CAAC,KAAa;IACrD,OAAO,CAAC,0BAA0B,KAAK,EAAE,EAAE,EAAE,EAAE,4BAA4B,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9F,CAAC","sourcesContent":["/*** Render an invalid standalone Infra command without guessing intent. */\nexport function renderUnknownInfraCommand(value: string): string {\n return [`Unknown infra command: ${value}`, '', 'Run ankhorage-infra --help', ''].join('\\n');\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { InfraCommandContext, InfraCommandRunResult, InfraCommandServices, RunInfraCommandImpl } from '../types/infraCli.js';
|
|
2
|
+
/*** Dispatch the standalone executable arguments through the canonical Infra command surface. */
|
|
3
|
+
export declare function runInfraCliAsync(argv: readonly string[], options?: InfraCliOptions): Promise<InfraCommandRunResult>;
|
|
4
|
+
interface InfraCliOptions {
|
|
5
|
+
readonly context?: InfraCommandContext;
|
|
6
|
+
readonly runCommandImpl?: RunInfraCommandImpl;
|
|
7
|
+
readonly services?: Partial<InfraCommandServices>;
|
|
8
|
+
}
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=runInfraCliAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInfraCliAsync.d.ts","sourceRoot":"","sources":["../../src/cli/runInfraCliAsync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAO9B,iGAAiG;AACjG,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAkBhC;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;CACnD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { createDefaultInfraCommandContext } from './createDefaultInfraCommandContext.js';
|
|
2
|
+
import { findInfraCommand } from './findInfraCommand.js';
|
|
3
|
+
import { renderInfraRootHelp } from './renderInfraRootHelp.js';
|
|
4
|
+
import { renderUnknownInfraCommand } from './renderUnknownInfraCommand.js';
|
|
5
|
+
import { runInfraCommandAsync } from './runInfraCommandAsync.js';
|
|
6
|
+
/*** Dispatch the standalone executable arguments through the canonical Infra command surface. */
|
|
7
|
+
export async function runInfraCliAsync(argv, options = {}) {
|
|
8
|
+
const context = options.context ?? createDefaultInfraCommandContext();
|
|
9
|
+
const runCommand = options.runCommandImpl ?? runInfraCommandAsync;
|
|
10
|
+
const [firstToken, ...restTokens] = argv;
|
|
11
|
+
if (firstToken === undefined || isHelpToken(firstToken)) {
|
|
12
|
+
context.writeStdout(renderInfraRootHelp(context.version));
|
|
13
|
+
return { exitCode: 0 };
|
|
14
|
+
}
|
|
15
|
+
if (isVersionToken(firstToken)) {
|
|
16
|
+
context.writeStdout(`${context.version}\n`);
|
|
17
|
+
return { exitCode: 0 };
|
|
18
|
+
}
|
|
19
|
+
const command = findInfraCommand(firstToken);
|
|
20
|
+
if (command === null) {
|
|
21
|
+
context.writeStderr(renderUnknownInfraCommand(firstToken));
|
|
22
|
+
return { exitCode: 1 };
|
|
23
|
+
}
|
|
24
|
+
return runCommand({ argv: restTokens, command, context }, { services: options.services });
|
|
25
|
+
}
|
|
26
|
+
/*** Recognize standalone help tokens. */
|
|
27
|
+
function isHelpToken(value) {
|
|
28
|
+
return value === '--help' || value === '-h' || value === 'help';
|
|
29
|
+
}
|
|
30
|
+
/*** Recognize standalone version tokens. */
|
|
31
|
+
function isVersionToken(value) {
|
|
32
|
+
return value === '--version' || value === '-v' || value === 'version';
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=runInfraCliAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInfraCliAsync.js","sourceRoot":"","sources":["../../src/cli/runInfraCliAsync.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAuB,EACvB,UAA2B,EAAE;IAE7B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,gCAAgC,EAAE,CAAC;IACtE,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,IAAI,oBAAoB,CAAC;IAClE,MAAM,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,GAAG,IAAI,CAAC;IACzC,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzB,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;QAC5C,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzB,CAAC;IACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,CAAC,WAAW,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3D,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACzB,CAAC;IACD,OAAO,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC5F,CAAC;AAQD,yCAAyC;AACzC,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,MAAM,CAAC;AAClE,CAAC;AAED,4CAA4C;AAC5C,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AACxE,CAAC","sourcesContent":["import type {\n InfraCommandContext,\n InfraCommandRunResult,\n InfraCommandServices,\n RunInfraCommandImpl,\n} from '../types/infraCli.js';\nimport { createDefaultInfraCommandContext } from './createDefaultInfraCommandContext.js';\nimport { findInfraCommand } from './findInfraCommand.js';\nimport { renderInfraRootHelp } from './renderInfraRootHelp.js';\nimport { renderUnknownInfraCommand } from './renderUnknownInfraCommand.js';\nimport { runInfraCommandAsync } from './runInfraCommandAsync.js';\n\n/*** Dispatch the standalone executable arguments through the canonical Infra command surface. */\nexport async function runInfraCliAsync(\n argv: readonly string[],\n options: InfraCliOptions = {},\n): Promise<InfraCommandRunResult> {\n const context = options.context ?? createDefaultInfraCommandContext();\n const runCommand = options.runCommandImpl ?? runInfraCommandAsync;\n const [firstToken, ...restTokens] = argv;\n if (firstToken === undefined || isHelpToken(firstToken)) {\n context.writeStdout(renderInfraRootHelp(context.version));\n return { exitCode: 0 };\n }\n if (isVersionToken(firstToken)) {\n context.writeStdout(`${context.version}\\n`);\n return { exitCode: 0 };\n }\n const command = findInfraCommand(firstToken);\n if (command === null) {\n context.writeStderr(renderUnknownInfraCommand(firstToken));\n return { exitCode: 1 };\n }\n return runCommand({ argv: restTokens, command, context }, { services: options.services });\n}\n\ninterface InfraCliOptions {\n readonly context?: InfraCommandContext;\n readonly runCommandImpl?: RunInfraCommandImpl;\n readonly services?: Partial<InfraCommandServices>;\n}\n\n/*** Recognize standalone help tokens. */\nfunction isHelpToken(value: string): boolean {\n return value === '--help' || value === '-h' || value === 'help';\n}\n\n/*** Recognize standalone version tokens. */\nfunction isVersionToken(value: string): boolean {\n return value === '--version' || value === '-v' || value === 'version';\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { InfraCommandInvocation, InfraCommandRunResult, RunInfraCommandOptions } from '../types/infraCli.js';
|
|
2
|
+
/*** Run one standalone or provider-backed Infra command through the shared typed lifecycle. */
|
|
3
|
+
export declare function runInfraCommandAsync(request: InfraCommandInvocation, options?: RunInfraCommandOptions): Promise<InfraCommandRunResult>;
|
|
4
|
+
//# sourceMappingURL=runInfraCommandAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInfraCommandAsync.d.ts","sourceRoot":"","sources":["../../src/cli/runInfraCommandAsync.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,sBAAsB,EACtB,qBAAqB,EAErB,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAE9B,+FAA+F;AAC/F,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC,CAehC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { APP_ENVIRONMENT_IDS } from '@ankhorage/contracts/environments';
|
|
2
|
+
import { INFRA_COMMAND_CATEGORY } from '../constants.js';
|
|
3
|
+
import { createInfraCommandServices } from '../features/environment-lifecycle/composition/createInfraCommandServices.js';
|
|
4
|
+
/*** Run one standalone or provider-backed Infra command through the shared typed lifecycle. */
|
|
5
|
+
export async function runInfraCommandAsync(request, options = {}) {
|
|
6
|
+
const services = createInfraCommandServices(options.services);
|
|
7
|
+
try {
|
|
8
|
+
const parsed = parseCommandArguments(request.command, request.argv);
|
|
9
|
+
if (parsed === null) {
|
|
10
|
+
request.context.writeStdout(renderCommandHelp(request.command));
|
|
11
|
+
return { exitCode: 0 };
|
|
12
|
+
}
|
|
13
|
+
return await request.command.run({ context: request.context, arguments: parsed }, services);
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
request.context.writeStderr(`Infra ${request.command.standaloneName} failed: ${getErrorMessage(error)}\n`);
|
|
17
|
+
return { exitCode: 1 };
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
/*** Parse the common project, environment, output and destruction options. */
|
|
21
|
+
function parseCommandArguments(commandDefinition, argv) {
|
|
22
|
+
if (argv.length === 1 && isHelpToken(argv.at(0)))
|
|
23
|
+
return null;
|
|
24
|
+
let projectId;
|
|
25
|
+
let environment;
|
|
26
|
+
let format = 'human';
|
|
27
|
+
let confirmation;
|
|
28
|
+
const deleteResources = [];
|
|
29
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
30
|
+
const token = argv.at(index);
|
|
31
|
+
if (token === '--environment') {
|
|
32
|
+
environment = parseEnvironment(readOptionValue(argv, ++index, token));
|
|
33
|
+
}
|
|
34
|
+
else if (token === '--format') {
|
|
35
|
+
format = parseFormat(readOptionValue(argv, ++index, token));
|
|
36
|
+
}
|
|
37
|
+
else if (token === '--confirm') {
|
|
38
|
+
confirmation = readOptionValue(argv, ++index, token);
|
|
39
|
+
}
|
|
40
|
+
else if (token === '--delete-resource') {
|
|
41
|
+
deleteResources.push(readOptionValue(argv, ++index, token));
|
|
42
|
+
}
|
|
43
|
+
else if (token?.startsWith('-') === true) {
|
|
44
|
+
throw new Error(`Unknown Infra ${commandDefinition.standaloneName} option: ${token}`);
|
|
45
|
+
}
|
|
46
|
+
else if (projectId === undefined && token !== undefined) {
|
|
47
|
+
projectId = token;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
throw new Error(`Infra ${commandDefinition.standaloneName} accepts at most one project argument.`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (format === 'env' && commandDefinition.standaloneName !== 'outputs') {
|
|
54
|
+
throw new Error('--format env is supported only by Infra outputs.');
|
|
55
|
+
}
|
|
56
|
+
if (commandDefinition.standaloneName === 'destroy' && environment === undefined) {
|
|
57
|
+
throw new Error('Infra destroy requires --environment <local|preview|production>.');
|
|
58
|
+
}
|
|
59
|
+
return { projectId, environment, format, confirmation, deleteResources };
|
|
60
|
+
}
|
|
61
|
+
/*** Parse one environment identifier against the canonical closed set. */
|
|
62
|
+
function parseEnvironment(value) {
|
|
63
|
+
const environment = APP_ENVIRONMENT_IDS.find((candidate) => candidate === value);
|
|
64
|
+
if (environment === undefined)
|
|
65
|
+
throw new Error(`Unknown Infra environment: ${value}.`);
|
|
66
|
+
return environment;
|
|
67
|
+
}
|
|
68
|
+
/*** Parse the supported command output formats. */
|
|
69
|
+
function parseFormat(value) {
|
|
70
|
+
if (value === 'human' || value === 'json' || value === 'env')
|
|
71
|
+
return value;
|
|
72
|
+
throw new Error(`Unknown Infra output format: ${value}.`);
|
|
73
|
+
}
|
|
74
|
+
/*** Read one required CLI option value. */
|
|
75
|
+
function readOptionValue(argv, index, option) {
|
|
76
|
+
const value = argv.at(index);
|
|
77
|
+
if (value === undefined || value.startsWith('-'))
|
|
78
|
+
throw new Error(`${option} requires a value.`);
|
|
79
|
+
return value;
|
|
80
|
+
}
|
|
81
|
+
/*** Render command-specific standalone and provider usage. */
|
|
82
|
+
function renderCommandHelp(commandDefinition) {
|
|
83
|
+
return [
|
|
84
|
+
commandDefinition.summary,
|
|
85
|
+
'',
|
|
86
|
+
'Usage:',
|
|
87
|
+
` ankhorage-infra ${commandDefinition.standaloneName} [project] [--environment <environment>]`,
|
|
88
|
+
` ankh ${INFRA_COMMAND_CATEGORY} ${commandDefinition.path.join(' ')} [project] [--environment <environment>]`,
|
|
89
|
+
'',
|
|
90
|
+
].join('\n');
|
|
91
|
+
}
|
|
92
|
+
/*** Normalize arbitrary command failures for the CLI boundary. */
|
|
93
|
+
function getErrorMessage(error) {
|
|
94
|
+
return error instanceof Error ? error.message : String(error);
|
|
95
|
+
}
|
|
96
|
+
/*** Recognize the command-local help tokens. */
|
|
97
|
+
function isHelpToken(value) {
|
|
98
|
+
return value === '--help' || value === '-h' || value === 'help';
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=runInfraCommandAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runInfraCommandAsync.js","sourceRoot":"","sources":["../../src/cli/runInfraCommandAsync.ts"],"names":[],"mappings":"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","sourcesContent":["import { APP_ENVIRONMENT_IDS } from '@ankhorage/contracts/environments';\n\nimport { INFRA_COMMAND_CATEGORY } from '../constants.js';\nimport { createInfraCommandServices } from '../features/environment-lifecycle/composition/createInfraCommandServices.js';\nimport type {\n InfraCommandDefinition,\n InfraCommandInvocation,\n InfraCommandRunResult,\n ParsedInfraArguments,\n RunInfraCommandOptions,\n} from '../types/infraCli.js';\n\n/*** Run one standalone or provider-backed Infra command through the shared typed lifecycle. */\nexport async function runInfraCommandAsync(\n request: InfraCommandInvocation,\n options: RunInfraCommandOptions = {},\n): Promise<InfraCommandRunResult> {\n const services = createInfraCommandServices(options.services);\n try {\n const parsed = parseCommandArguments(request.command, request.argv);\n if (parsed === null) {\n request.context.writeStdout(renderCommandHelp(request.command));\n return { exitCode: 0 };\n }\n return await request.command.run({ context: request.context, arguments: parsed }, services);\n } catch (error) {\n request.context.writeStderr(\n `Infra ${request.command.standaloneName} failed: ${getErrorMessage(error)}\\n`,\n );\n return { exitCode: 1 };\n }\n}\n\n/*** Parse the common project, environment, output and destruction options. */\nfunction parseCommandArguments(\n commandDefinition: InfraCommandDefinition,\n argv: readonly string[],\n): ParsedInfraArguments | null {\n if (argv.length === 1 && isHelpToken(argv.at(0))) return null;\n let projectId: string | undefined;\n let environment: ParsedInfraArguments['environment'];\n let format: ParsedInfraArguments['format'] = 'human';\n let confirmation: string | undefined;\n const deleteResources: string[] = [];\n for (let index = 0; index < argv.length; index += 1) {\n const token = argv.at(index);\n if (token === '--environment') {\n environment = parseEnvironment(readOptionValue(argv, ++index, token));\n } else if (token === '--format') {\n format = parseFormat(readOptionValue(argv, ++index, token));\n } else if (token === '--confirm') {\n confirmation = readOptionValue(argv, ++index, token);\n } else if (token === '--delete-resource') {\n deleteResources.push(readOptionValue(argv, ++index, token));\n } else if (token?.startsWith('-') === true) {\n throw new Error(`Unknown Infra ${commandDefinition.standaloneName} option: ${token}`);\n } else if (projectId === undefined && token !== undefined) {\n projectId = token;\n } else {\n throw new Error(\n `Infra ${commandDefinition.standaloneName} accepts at most one project argument.`,\n );\n }\n }\n if (format === 'env' && commandDefinition.standaloneName !== 'outputs') {\n throw new Error('--format env is supported only by Infra outputs.');\n }\n if (commandDefinition.standaloneName === 'destroy' && environment === undefined) {\n throw new Error('Infra destroy requires --environment <local|preview|production>.');\n }\n return { projectId, environment, format, confirmation, deleteResources };\n}\n\n/*** Parse one environment identifier against the canonical closed set. */\nfunction parseEnvironment(value: string): ParsedInfraArguments['environment'] {\n const environment = APP_ENVIRONMENT_IDS.find((candidate) => candidate === value);\n if (environment === undefined) throw new Error(`Unknown Infra environment: ${value}.`);\n return environment;\n}\n\n/*** Parse the supported command output formats. */\nfunction parseFormat(value: string): ParsedInfraArguments['format'] {\n if (value === 'human' || value === 'json' || value === 'env') return value;\n throw new Error(`Unknown Infra output format: ${value}.`);\n}\n\n/*** Read one required CLI option value. */\nfunction readOptionValue(argv: readonly string[], index: number, option: string): string {\n const value = argv.at(index);\n if (value === undefined || value.startsWith('-')) throw new Error(`${option} requires a value.`);\n return value;\n}\n\n/*** Render command-specific standalone and provider usage. */\nfunction renderCommandHelp(commandDefinition: InfraCommandDefinition): string {\n return [\n commandDefinition.summary,\n '',\n 'Usage:',\n ` ankhorage-infra ${commandDefinition.standaloneName} [project] [--environment <environment>]`,\n ` ankh ${INFRA_COMMAND_CATEGORY} ${commandDefinition.path.join(' ')} [project] [--environment <environment>]`,\n '',\n ].join('\\n');\n}\n\n/*** Normalize arbitrary command failures for the CLI boundary. */\nfunction getErrorMessage(error: unknown): string {\n return error instanceof Error ? error.message : String(error);\n}\n\n/*** Recognize the command-local help tokens. */\nfunction isHelpToken(value: string | undefined): boolean {\n return value === '--help' || value === '-h' || value === 'help';\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { InfraCommandRunRequest, InfraCommandServices, PreparedInfraCommandOperation } from '../../types/infraCli.js';
|
|
2
|
+
/*** Resolve one command's project, desired environment, stored ownership and adapter dependencies. */
|
|
3
|
+
export declare function prepareInfraCommandOperationAsync(request: InfraCommandRunRequest, services: InfraCommandServices, useStoredDesired?: boolean): Promise<PreparedInfraCommandOperation>;
|
|
4
|
+
//# sourceMappingURL=prepareInfraCommandOperationAsync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareInfraCommandOperationAsync.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/prepareInfraCommandOperationAsync.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,6BAA6B,EAC9B,MAAM,yBAAyB,CAAC;AAEjC,sGAAsG;AACtG,wBAAsB,iCAAiC,CACrD,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,oBAAoB,EAC9B,gBAAgB,UAAQ,GACvB,OAAO,CAAC,6BAA6B,CAAC,CA2BxC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*** Resolve one command's project, desired environment, stored ownership and adapter dependencies. */
|
|
2
|
+
export async function prepareInfraCommandOperationAsync(request, services, useStoredDesired = false) {
|
|
3
|
+
const project = await services.resolveProject({
|
|
4
|
+
cwd: request.context.cwd,
|
|
5
|
+
...(request.arguments.projectId === undefined
|
|
6
|
+
? {}
|
|
7
|
+
: { projectId: request.arguments.projectId }),
|
|
8
|
+
});
|
|
9
|
+
const environment = request.arguments.environment ?? 'local';
|
|
10
|
+
const state = await services.readState(project.projectPath, environment);
|
|
11
|
+
const currentDesired = environmentDesired(project.manifest.infra, environment);
|
|
12
|
+
const desired = useStoredDesired && state !== null ? state.desired : currentDesired;
|
|
13
|
+
if (desired === undefined) {
|
|
14
|
+
throw new Error(`Infra environment "${environment}" is not configured.`);
|
|
15
|
+
}
|
|
16
|
+
const manifest = replaceEnvironment(project.manifest.infra, environment, desired);
|
|
17
|
+
return {
|
|
18
|
+
project,
|
|
19
|
+
state,
|
|
20
|
+
desired,
|
|
21
|
+
operation: {
|
|
22
|
+
projectId: project.projectId,
|
|
23
|
+
manifest,
|
|
24
|
+
...(request.arguments.environment === undefined ? {} : { environment }),
|
|
25
|
+
...(state === null ? {} : { previous: state.ledger, previousDesired: state.desired }),
|
|
26
|
+
},
|
|
27
|
+
dependencies: services.createDependencies(request.context),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/*** Select one exact environment specification from the canonical manifest. */
|
|
31
|
+
function environmentDesired(manifest, environment) {
|
|
32
|
+
if (environment === 'local')
|
|
33
|
+
return manifest.environments.local;
|
|
34
|
+
if (environment === 'preview')
|
|
35
|
+
return manifest.environments.preview;
|
|
36
|
+
return manifest.environments.production;
|
|
37
|
+
}
|
|
38
|
+
/*** Replace one environment while preserving the rest of the canonical manifest. */
|
|
39
|
+
function replaceEnvironment(manifest, environment, desired) {
|
|
40
|
+
return {
|
|
41
|
+
...manifest,
|
|
42
|
+
environments: { ...manifest.environments, [environment]: desired },
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=prepareInfraCommandOperationAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepareInfraCommandOperationAsync.js","sourceRoot":"","sources":["../../../src/cli/utils/prepareInfraCommandOperationAsync.ts"],"names":[],"mappings":"AASA,sGAAsG;AACtG,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,OAA+B,EAC/B,QAA8B,EAC9B,gBAAgB,GAAG,KAAK;IAExB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC;QAC5C,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG;QACxB,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS;YAC3C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;KAChD,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC;IAC7D,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAG,gBAAgB,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;IACpF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,sBAAsB,WAAW,sBAAsB,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAClF,OAAO;QACL,OAAO;QACP,KAAK;QACL,OAAO;QACP,SAAS,EAAE;YACT,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ;YACR,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;YACvE,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;SACtF;QACD,YAAY,EAAE,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,SAAS,kBAAkB,CACzB,QAAuB,EACvB,WAA6B;IAE7B,IAAI,WAAW,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC;IAChE,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC;IACpE,OAAO,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC;AAC1C,CAAC;AAED,oFAAoF;AACpF,SAAS,kBAAkB,CACzB,QAAuB,EACvB,WAA6B,EAC7B,OAA6B;IAE7B,OAAO;QACL,GAAG,QAAQ;QACX,YAAY,EAAE,EAAE,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE;KACnE,CAAC;AACJ,CAAC","sourcesContent":["import type { AppEnvironmentId } from '@ankhorage/contracts/environments';\nimport type { InfraEnvironmentSpec, InfraManifest } from '@ankhorage/contracts/infra';\n\nimport type {\n InfraCommandRunRequest,\n InfraCommandServices,\n PreparedInfraCommandOperation,\n} from '../../types/infraCli.js';\n\n/*** Resolve one command's project, desired environment, stored ownership and adapter dependencies. */\nexport async function prepareInfraCommandOperationAsync(\n request: InfraCommandRunRequest,\n services: InfraCommandServices,\n useStoredDesired = false,\n): Promise<PreparedInfraCommandOperation> {\n const project = await services.resolveProject({\n cwd: request.context.cwd,\n ...(request.arguments.projectId === undefined\n ? {}\n : { projectId: request.arguments.projectId }),\n });\n const environment = request.arguments.environment ?? 'local';\n const state = await services.readState(project.projectPath, environment);\n const currentDesired = environmentDesired(project.manifest.infra, environment);\n const desired = useStoredDesired && state !== null ? state.desired : currentDesired;\n if (desired === undefined) {\n throw new Error(`Infra environment \"${environment}\" is not configured.`);\n }\n const manifest = replaceEnvironment(project.manifest.infra, environment, desired);\n return {\n project,\n state,\n desired,\n operation: {\n projectId: project.projectId,\n manifest,\n ...(request.arguments.environment === undefined ? {} : { environment }),\n ...(state === null ? {} : { previous: state.ledger, previousDesired: state.desired }),\n },\n dependencies: services.createDependencies(request.context),\n };\n}\n\n/*** Select one exact environment specification from the canonical manifest. */\nfunction environmentDesired(\n manifest: InfraManifest,\n environment: AppEnvironmentId,\n): InfraEnvironmentSpec | undefined {\n if (environment === 'local') return manifest.environments.local;\n if (environment === 'preview') return manifest.environments.preview;\n return manifest.environments.production;\n}\n\n/*** Replace one environment while preserving the rest of the canonical manifest. */\nfunction replaceEnvironment(\n manifest: InfraManifest,\n environment: AppEnvironmentId,\n desired: InfraEnvironmentSpec,\n): InfraManifest {\n return {\n ...manifest,\n environments: { ...manifest.environments, [environment]: desired },\n };\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { InfraResult } from '@ankhorage/contracts/infra';
|
|
2
|
+
import type { InfraCommandContext } from '../../types/infraCli.js';
|
|
3
|
+
/*** Emit diagnostics and narrow a provider-neutral result before command rendering continues. */
|
|
4
|
+
export declare function requireInfraSuccess<T>(result: InfraResult<T>, context: InfraCommandContext): asserts result is Extract<InfraResult<T>, {
|
|
5
|
+
readonly ok: true;
|
|
6
|
+
}>;
|
|
7
|
+
//# sourceMappingURL=requireInfraSuccess.d.ts.map
|