@fjall/deploy-core 2.34.0 → 3.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/dist/.minified +1 -1
- package/dist/src/aws/SimpleAwsProvider.js +1 -1
- package/dist/src/aws/cloudtrail/orgTrailDelivery.js +1 -1
- package/dist/src/aws/organisations/accountGlobals.js +1 -1
- package/dist/src/aws/organisations/accounts.js +1 -1
- package/dist/src/aws/organisations/backup.js +2 -2
- package/dist/src/aws/organisations/costAllocation.js +1 -1
- package/dist/src/aws/organisations/delegatedAdmin.js +2 -2
- package/dist/src/aws/organisations/identityCentre.js +1 -1
- package/dist/src/aws/organisations/identityCentreSnapshot.js +1 -1
- package/dist/src/aws/organisations/importedAccounts.js +1 -1
- package/dist/src/aws/organisations/ipam.js +1 -1
- package/dist/src/aws/organisations/oidcProvider.js +1 -1
- package/dist/src/aws/organisations/organisation.js +1 -1
- package/dist/src/aws/organisations/organisationalUnits.js +1 -1
- package/dist/src/aws/organisations/pagination.js +1 -1
- package/dist/src/aws/organisations/policies.js +1 -1
- package/dist/src/aws/organisations/ram.js +1 -1
- package/dist/src/aws/organisations/rootAccess.js +3 -3
- package/dist/src/aws/organisations/serviceAccess.js +1 -1
- package/dist/src/aws/organisations/trustedAccess.js +1 -1
- package/dist/src/aws/organisations/types.js +1 -1
- package/dist/src/aws/regions/regionOptStatus.js +1 -1
- package/dist/src/aws/sts/assumeRoot.js +1 -1
- package/dist/src/aws/targetReadiness.d.ts +7 -4
- package/dist/src/aws/targetReadiness.js +1 -1
- package/dist/src/aws/targetSetAdvisory.js +1 -1
- package/dist/src/aws/utils/arnParser.js +1 -1
- package/dist/src/aws/utils/awsErrorHandler.js +1 -1
- package/dist/src/aws/utils/cloudformationEventHelpers.js +1 -1
- package/dist/src/aws/utils/cloudformationEvents.js +1 -1
- package/dist/src/index.d.ts +4 -2
- package/dist/src/index.js +1 -1
- package/dist/src/orchestration/activeDeploymentGuard.js +5 -5
- package/dist/src/orchestration/application/applicationDeploy.js +1 -1
- package/dist/src/orchestration/application/applicationDeployHelpers.js +3 -3
- package/dist/src/orchestration/application/applicationDestroy.js +1 -1
- package/dist/src/orchestration/application/approvalGate.js +1 -1
- package/dist/src/orchestration/application/artefactCollection.js +1 -1
- package/dist/src/orchestration/application/buildArgResolver.js +1 -1
- package/dist/src/orchestration/application/buildGroupValidator.js +1 -1
- package/dist/src/orchestration/application/buildSecretResolver.js +1 -1
- package/dist/src/orchestration/application/buildSecretSession.js +1 -1
- package/dist/src/orchestration/application/codeOnlyDeploy.js +1 -1
- package/dist/src/orchestration/application/databaseEndpointReconcile.js +1 -1
- package/dist/src/orchestration/application/deploySessionPolicy.js +1 -1
- package/dist/src/orchestration/application/destroyPreFlight.js +1 -1
- package/dist/src/orchestration/application/destructionGate.js +3 -3
- package/dist/src/orchestration/application/detectionPipeline.js +1 -1
- package/dist/src/orchestration/application/dockerBuildHelper.js +1 -1
- package/dist/src/orchestration/application/ecrCacheRepository.js +1 -1
- package/dist/src/orchestration/application/lambdaCodeOnlyRollout.js +1 -1
- package/dist/src/orchestration/application/leaseGate.js +1 -1
- package/dist/src/orchestration/application/openNextBuild.js +3 -3
- package/dist/src/orchestration/application/plan/approvalToken.js +1 -1
- package/dist/src/orchestration/application/plan/assemblyDigest.js +2 -2
- package/dist/src/orchestration/application/plan/buildDeployPlan.js +1 -1
- package/dist/src/orchestration/application/plan/changeSetEscalation.js +1 -1
- package/dist/src/orchestration/application/plan/classify.js +1 -1
- package/dist/src/orchestration/application/plan/computeDeployPlan.js +1 -1
- package/dist/src/orchestration/application/plan/loadDeployPlan.js +1 -1
- package/dist/src/orchestration/application/plan/pinnedNames.js +1 -1
- package/dist/src/orchestration/application/plan/registryOverlay.js +1 -1
- package/dist/src/orchestration/application/plan/renderDeployPlan.js +1 -1
- package/dist/src/orchestration/application/serviceImageTagsRollback.js +1 -1
- package/dist/src/orchestration/application/taskDefinitionRoll.js +1 -1
- package/dist/src/orchestration/application/welcomeImageHelper.js +1 -1
- package/dist/src/orchestration/builders/dockerBuilder.js +1 -1
- package/dist/src/orchestration/builders/frameworkRegistry.js +1 -1
- package/dist/src/orchestration/builders/openNextBuilder.js +1 -1
- package/dist/src/orchestration/builders/staticSiteBuilder.js +2 -2
- package/dist/src/orchestration/contextHelpers.js +1 -1
- package/dist/src/orchestration/deploy.js +1 -1
- package/dist/src/orchestration/destroy.js +1 -1
- package/dist/src/orchestration/domain/caaPreflight.d.ts +56 -0
- package/dist/src/orchestration/domain/caaPreflight.js +1 -0
- package/dist/src/orchestration/domain/delegatedDomainDeploy.d.ts +79 -0
- package/dist/src/orchestration/domain/delegatedDomainDeploy.js +1 -0
- package/dist/src/orchestration/domain/delegationDestroyMirror.d.ts +141 -0
- package/dist/src/orchestration/domain/delegationDestroyMirror.js +1 -0
- package/dist/src/orchestration/domain/index.d.ts +10 -0
- package/dist/src/orchestration/domain/index.js +1 -0
- package/dist/src/orchestration/domain/nsPropagationGate.d.ts +59 -0
- package/dist/src/orchestration/domain/nsPropagationGate.js +1 -0
- package/dist/src/orchestration/domain/types.d.ts +75 -0
- package/dist/src/orchestration/domain/types.js +1 -0
- package/dist/src/orchestration/domainInterface.d.ts +10 -0
- package/dist/src/orchestration/drift/classifyDriftFailure.js +1 -1
- package/dist/src/orchestration/drift/detectStackDrift.js +1 -1
- package/dist/src/orchestration/drift/driftPreFlight.js +5 -5
- package/dist/src/orchestration/drift/driftProbe.d.ts +12 -6
- package/dist/src/orchestration/drift/driftProbe.js +1 -1
- package/dist/src/orchestration/drift/driftSuspectJournal.js +1 -1
- package/dist/src/orchestration/drift/preFlightGate.d.ts +10 -2
- package/dist/src/orchestration/drift/preFlightGate.js +2 -2
- package/dist/src/orchestration/drift/route53Names.d.ts +35 -0
- package/dist/src/orchestration/drift/route53Names.js +1 -0
- package/dist/src/orchestration/drift/route53RecordPreflight.d.ts +105 -0
- package/dist/src/orchestration/drift/route53RecordPreflight.js +2 -0
- package/dist/src/orchestration/index.d.ts +3 -1
- package/dist/src/orchestration/index.js +1 -1
- package/dist/src/orchestration/manifestSecretParser.js +1 -1
- package/dist/src/orchestration/organisation/accountsConfig.js +1 -1
- package/dist/src/orchestration/organisation/cascadeDestroyHelpers.js +1 -1
- package/dist/src/orchestration/organisation/cascadeHelpers.d.ts +18 -1
- package/dist/src/orchestration/organisation/cascadeHelpers.js +1 -1
- package/dist/src/orchestration/organisation/cascadeSummary.js +1 -1
- package/dist/src/orchestration/organisation/organisationDeploy.js +1 -1
- package/dist/src/orchestration/organisation/organisationDestroy.js +2 -2
- package/dist/src/orchestration/organisation/organisationSetup.js +1 -1
- package/dist/src/orchestration/organisation/reconcileProviderAccounts.js +1 -1
- package/dist/src/orchestration/organisationDeploy/cascadeExecution.js +1 -1
- package/dist/src/orchestration/organisationDeploy/infraSteps.js +1 -1
- package/dist/src/orchestration/organisationDeploy/orgCascadeDeploy.js +3 -3
- package/dist/src/orchestration/organisationDeploy/orgContext.js +1 -1
- package/dist/src/orchestration/organisationDeploy/resolveCascadeAccounts.js +1 -1
- package/dist/src/orchestration/organisationDeploy/singleComponentDeploy.js +1 -1
- package/dist/src/orchestration/organisationDeploy/trailReconciliation.js +1 -1
- package/dist/src/orchestration/probes/deleteBlockProbes.js +1 -1
- package/dist/src/orchestration/remediation/driftRepairGate.js +1 -1
- package/dist/src/orchestration/remediation/forensicsCapture.js +1 -1
- package/dist/src/orchestration/remediation/forgetResource.js +1 -1
- package/dist/src/orchestration/remediation/pinRemediation.js +1 -1
- package/dist/src/orchestration/remediation/postFailureRepairOffer.js +8 -8
- package/dist/src/orchestration/remediation/recreatePreFlight.js +1 -1
- package/dist/src/orchestration/remediation/recreateResource.js +1 -1
- package/dist/src/orchestration/remediation/remediationJournal.js +2 -2
- package/dist/src/orchestration/remediation/removalUpdate.js +1 -1
- package/dist/src/orchestration/remediation/retainFlip.js +1 -1
- package/dist/src/orchestration/resolveOperation.js +1 -1
- package/dist/src/orchestration/restart/restartApplication.js +1 -1
- package/dist/src/orchestration/restart/secretsDrift.js +1 -1
- package/dist/src/orchestration/secretArnResolver.js +1 -1
- package/dist/src/orchestration/serviceFactory.js +1 -1
- package/dist/src/orchestration/spawnHelpers.js +1 -1
- package/dist/src/orchestration/stackCleanup/bucketOps.js +1 -1
- package/dist/src/orchestration/stackCleanup/failedStack.js +1 -1
- package/dist/src/orchestration/stackCleanup/logging.js +1 -1
- package/dist/src/orchestration/stackCleanup/messages.js +1 -1
- package/dist/src/orchestration/stackCleanup/orphanSweep.js +1 -1
- package/dist/src/orchestration/stackCleanup/preEmpty.js +1 -1
- package/dist/src/orchestration/stackCleanup/stackResources.js +1 -1
- package/dist/src/orchestration/stepLifecycle.js +1 -1
- package/dist/src/orchestration/trailMigration/memberTrailCleanup.js +1 -1
- package/dist/src/orchestration/trailMigration/trailMigration.js +1 -1
- package/dist/src/orchestration/unlock/bucketPolicyTriage.js +1 -1
- package/dist/src/orchestration/unlock/restoreAndReconcileQuarantinedBucket.js +1 -1
- package/dist/src/orchestration/unlock/restoreBucketPolicy.js +1 -1
- package/dist/src/orchestration/unlock/scpRemediation.js +1 -1
- package/dist/src/orchestration/unlock/toResourcePolicyStatements.js +1 -1
- package/dist/src/orchestration/unlock/unlockBucket.js +1 -1
- package/dist/src/orchestration/unlock/unlockQueue.js +1 -1
- package/dist/src/services/application/ApplicationStackService.d.ts +7 -0
- package/dist/src/services/application/ApplicationStackService.js +1 -1
- package/dist/src/services/application/applicationStackHelpers.js +3 -3
- package/dist/src/services/infrastructure/CdkArgumentBuilder.js +1 -1
- package/dist/src/services/infrastructure/CdkCommandRunner.js +2 -2
- package/dist/src/services/infrastructure/CdkErrorFormatter.js +10 -10
- package/dist/src/services/infrastructure/CdkEventMonitoring.js +1 -1
- package/dist/src/services/infrastructure/CdkOutputAnalyser.js +2 -2
- package/dist/src/services/infrastructure/CdkOutputParser.js +2 -2
- package/dist/src/services/infrastructure/CdkProcessManager.js +3 -3
- package/dist/src/services/infrastructure/CdkService.d.ts +1 -1
- package/dist/src/services/infrastructure/CdkService.js +2 -2
- package/dist/src/services/infrastructure/CdkServiceTypes.d.ts +39 -0
- package/dist/src/services/infrastructure/CfnRegistryService.js +1 -1
- package/dist/src/services/infrastructure/CloudFormationService.js +1 -1
- package/dist/src/services/infrastructure/EcrImageInspectorService.js +1 -1
- package/dist/src/services/infrastructure/EcsService.js +1 -1
- package/dist/src/services/infrastructure/EcsServiceResolver.js +1 -1
- package/dist/src/services/infrastructure/LambdaService.js +1 -1
- package/dist/src/services/infrastructure/SsmParameterMetadataService.js +1 -1
- package/dist/src/services/infrastructure/cancelInFlightStack.js +3 -3
- package/dist/src/services/infrastructure/cdkServiceHelpers.js +1 -1
- package/dist/src/services/infrastructure/changeSetProbe.js +1 -1
- package/dist/src/services/infrastructure/constructMapEnrichment.js +1 -1
- package/dist/src/services/supporting/CdkContextBuilder.d.ts +1 -0
- package/dist/src/services/supporting/CdkContextBuilder.js +1 -1
- package/dist/src/services/supporting/TemplateHashService.js +1 -1
- package/dist/src/services/supporting/helpers.js +1 -1
- package/dist/src/steps/stepRegistry.js +1 -1
- package/dist/src/types/ProgressEvent.js +1 -1
- package/dist/src/types/application/ApplicationServiceTypes.js +1 -1
- package/dist/src/types/callbacks.js +1 -1
- package/dist/src/types/config/FjallState.js +1 -1
- package/dist/src/types/constants.js +1 -1
- package/dist/src/types/deployEmitter.js +1 -1
- package/dist/src/types/deployEvent.d.ts +1 -0
- package/dist/src/types/deployEvent.js +1 -1
- package/dist/src/types/deployEventParse.js +1 -1
- package/dist/src/types/deployment/DeploymentServiceTypes.js +1 -1
- package/dist/src/types/deployment/DeploymentTypes.d.ts +1 -0
- package/dist/src/types/deploymentEventSchema.d.ts +1 -0
- package/dist/src/types/deploymentEventSchema.js +1 -1
- package/dist/src/types/detection/patternDetection.js +1 -1
- package/dist/src/types/detection/patternTypes.d.ts +9 -0
- package/dist/src/types/drift.js +1 -1
- package/dist/src/types/errors/CdkError.js +1 -1
- package/dist/src/types/errors/ServiceError.js +1 -1
- package/dist/src/types/operations.d.ts +26 -2
- package/dist/src/types/operations.js +1 -1
- package/dist/src/types/params.d.ts +20 -0
- package/dist/src/types/remediation.js +1 -1
- package/dist/src/types/stepDefinitions.d.ts +3 -0
- package/dist/src/types/stepDefinitions.js +1 -1
- package/dist/src/util/dockerfileDetection.js +1 -1
- package/dist/src/util/sequencedCallbacks.js +1 -1
- package/dist/src/util/sleepAbortable.js +1 -1
- package/package.json +5 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isOpenNextPattern as
|
|
1
|
+
var _=Object.defineProperty;var a=(e,s)=>_(e,"name",{value:s,configurable:!0});import{isOpenNextPattern as c}from"./detection/patternTypes.js";import{STEP_IDS as o}from"./stepDefinitions.js";import{toPascalCase as p}from"@fjall/util";const t={NETWORK:"Network",DATABASE:"Database",STORAGE:"Storage",COMPUTE:"Compute",US_EAST_1_CERTIFICATES:"UsEast1Certificates",CDN:"Cdn",MESSAGING:"Messaging"},U={ORGANISATION:"organisation",PLATFORM:"platform",ACCOUNT:"account"};function h(e){return e.kind==="application"}a(h,"isApplicationOperation");function L(e){return e.kind==="organisation"}a(L,"isOrganisationOperation");const C=[t.NETWORK,t.DATABASE,t.COMPUTE],P=[t.COMPUTE,t.DATABASE,t.NETWORK],N=[t.NETWORK,t.STORAGE,t.MESSAGING,t.DATABASE,t.COMPUTE,t.CDN],R=[t.CDN,t.COMPUTE,t.DATABASE,t.MESSAGING,t.STORAGE,t.NETWORK],E={PHASE_1:{phase:1,stacks:[t.NETWORK],description:"Network infrastructure"},PHASE_2:{phase:2,stacks:[t.STORAGE,t.MESSAGING,t.DATABASE],description:"Storage and database resources (parallel)"},PHASE_3:{phase:3,stacks:[t.COMPUTE],description:"Compute resources"},PHASE_4:{phase:4,stacks:[t.CDN],description:"CDN distribution"}},M={NEXTJS_PARALLEL:{stacks:[t.STORAGE,t.MESSAGING,t.DATABASE],includeBuild:!0,description:"Build + Storage/Messaging/Database (parallel)"},PAYLOAD_PARALLEL:{stacks:[t.STORAGE,t.MESSAGING],includeBuild:!0,description:"Build + Storage/Messaging (parallel)"}};function x(){return[E.PHASE_1,E.PHASE_2,E.PHASE_3,E.PHASE_4]}a(x,"getParallelDeployGroups");const A={PHASE_1:{phase:1,stacks:[t.CDN],description:"CDN distribution"},PHASE_2:{phase:2,stacks:[t.COMPUTE],description:"Compute resources"},PHASE_3:{phase:3,stacks:[t.DATABASE,t.MESSAGING,t.STORAGE],description:"Database, messaging, and storage (parallel)"},PHASE_4:{phase:4,stacks:[t.NETWORK],description:"Network infrastructure"}};function k(e){const s=[A.PHASE_1,A.PHASE_2,A.PHASE_3,A.PHASE_4];return e?.hasUsEast1Certificates===!0&&s.splice(1,0,{phase:1.5,stacks:[t.US_EAST_1_CERTIFICATES],description:"us-east-1 certificates"}),s}a(k,"getParallelDestroyGroups");const T={Network:1,Storage:2,Messaging:2,Database:2,Compute:3,UsEast1Certificates:4,Cdn:5};function y(e){const{pattern:s,resources:r}=e??{};return c(s)?u(N,r,"deploy"):r?O(r,"asc"):C}a(y,"getApplicationDeployOrder");function m(e){const{pattern:s,resources:r}=e??{};return c(s)?u(R,r,"destroy"):r?O(r,"desc"):P}a(m,"getApplicationDestroyOrder");function u(e,s,r){if(s?.hasUsEast1Certificates!==!0)return e;const n=e.indexOf(t.CDN);if(n===-1)return[...e,t.US_EAST_1_CERTIFICATES];const i=r==="deploy"?n:n+1;return[...e.slice(0,i),t.US_EAST_1_CERTIFICATES,...e.slice(i)]}a(u,"withUsEast1Certificates");function O(e,s){const r=[];return e.hasNetwork&&r.push(t.NETWORK),e.hasStorage&&r.push(t.STORAGE),e.hasMessaging&&r.push(t.MESSAGING),e.hasDatabase&&r.push(t.DATABASE),e.hasCompute&&r.push(t.COMPUTE),e.hasUsEast1Certificates===!0&&r.push(t.US_EAST_1_CERTIFICATES),e.hasCdn&&r.push(t.CDN),r.sort((n,i)=>{const S=T[n]-T[i];return s==="asc"?S:-S})}a(O,"buildOrderFromResources");function B(e,s){return`${p(e)}${s}`}a(B,"getApplicationStackName");function H(e){switch(e){case"organisation":return"Organisation";case"platform":return"Platform";case"account":return"Account";default:{const s=e;throw new Error(`Unsupported organisation type: ${String(s)}`)}}}a(H,"getOrganisationStackName");const D=new Set(Object.values(t));function Y(e){return D.has(e)}a(Y,"isApplicationStack");const d={Network:"network",Database:"database",Storage:"storage",Compute:"compute",UsEast1Certificates:"us-east-1 certificate",Cdn:"cdn",Messaging:"messaging"};function b(e,s){return`${s==="deploy"?"Deploying":"Destroying"} ${d[e]} infrastructure`}a(b,"getApplicationStepName");const l={[t.NETWORK]:{deploy:o.NETWORK,destroy:o.NETWORK_DESTROY},[t.DATABASE]:{deploy:o.DATABASE,destroy:o.DATABASE_DESTROY},[t.STORAGE]:{deploy:o.STORAGE,destroy:o.STORAGE_DESTROY},[t.COMPUTE]:{deploy:o.COMPUTE,destroy:o.COMPUTE_DESTROY},[t.US_EAST_1_CERTIFICATES]:{deploy:o.US_EAST_1_CERTIFICATES,destroy:o.US_EAST_1_CERTIFICATES_DESTROY},[t.CDN]:{deploy:o.CDN,destroy:o.CDN_DESTROY},[t.MESSAGING]:{deploy:o.MESSAGING,destroy:o.MESSAGING_DESTROY}};function K(e,s){return l[e][s]}a(K,"getApplicationStepId");export{C as APPLICATION_DEPLOY_ORDER,P as APPLICATION_DESTROY_ORDER,t as APPLICATION_STACKS,N as OPENNEXT_DEPLOY_ORDER,R as OPENNEXT_DESTROY_ORDER,M as OPENNEXT_PARALLEL_GROUPS,U as ORGANISATION_TYPES,E as PARALLEL_DEPLOY_GROUPS,A as PARALLEL_DESTROY_GROUPS,y as getApplicationDeployOrder,m as getApplicationDestroyOrder,B as getApplicationStackName,K as getApplicationStepId,b as getApplicationStepName,H as getOrganisationStackName,x as getParallelDeployGroups,k as getParallelDestroyGroups,h as isApplicationOperation,Y as isApplicationStack,L as isOrganisationOperation,p as toPascalCase};
|
|
@@ -98,6 +98,18 @@ export interface DeployParams {
|
|
|
98
98
|
* carrying the exact config lines.
|
|
99
99
|
*/
|
|
100
100
|
infrastructureSource?: InfrastructureSource;
|
|
101
|
+
/**
|
|
102
|
+
* Deploy-time-resolved managed-domain bindings (D2 — resolution by
|
|
103
|
+
* injection), keyed by zone name with each value the JSON-serialised
|
|
104
|
+
* `ManagedDomainBinding` (literal hostedZoneId/certificate ARNs resolved
|
|
105
|
+
* from the domain stack's outputs via DescribeStacks). Threaded into synth
|
|
106
|
+
* as one `-c fjall:managedDomain:<zone>=<json>` context arg per entry
|
|
107
|
+
* (CdkArgumentBuilder); constructs read it ahead of BYO zone props, with
|
|
108
|
+
* explicit `managedDomain` props still winning. The CLI resolves these via
|
|
109
|
+
* `DomainService.resolveDomainForApp`; surfaces without a `fjall/domains/`
|
|
110
|
+
* checkout omit the field and constructs fall back to explicit props.
|
|
111
|
+
*/
|
|
112
|
+
managedDomainBindings?: Record<string, string>;
|
|
101
113
|
/**
|
|
102
114
|
* Asked before the post-deploy database-endpoint reconcile restarts the
|
|
103
115
|
* application's ECS services (fires only when a deploy replaced the
|
|
@@ -168,6 +180,14 @@ export interface DeployOptions {
|
|
|
168
180
|
environment?: string;
|
|
169
181
|
/** Skip OIDC connector deployment in the Account stack — set when the OIDC connector was already provisioned separately (e.g. via the webapp CloudFormation quick-create flow). */
|
|
170
182
|
skipOidc?: boolean;
|
|
183
|
+
/**
|
|
184
|
+
* Pre-answer for the delegated-domain CAA preflight (fail-closed ADR): the
|
|
185
|
+
* operator has verified the CAA chain out of band, so `deployDelegatedDomain`
|
|
186
|
+
* skips the check — loudly, with a warning naming the skip. This is the
|
|
187
|
+
* flag the preflight's cure text names (`--skip-caa-preflight`); threaded
|
|
188
|
+
* through the cascade's domains phase (`deployDomains`).
|
|
189
|
+
*/
|
|
190
|
+
skipCaaPreflight?: boolean;
|
|
171
191
|
/** Restrict a code-only deploy to a single ECS service by name (case-insensitive). */
|
|
172
192
|
serviceName?: string;
|
|
173
193
|
/** Skip the pre-rollout migrations RunTask. Honoured by the code-only orchestrator. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as e}from"zod";const
|
|
1
|
+
var r=Object.defineProperty;var t=(i,n)=>r(i,"name",{value:n,configurable:!0});import{z as e}from"zod";const o=["captured","flip-verified","flip-applied","removal-applied","done"],a=e.enum(o);function g(i){return o.indexOf(i)}t(g,"remediationPhaseRank");const s=e.object({logicalId:e.string().min(1),resourceType:e.string().min(1),physicalId:e.string().min(1)}).strict();function l(i,n){return`${i}/${n}`}t(l,"remediationPlaceholderPhysicalId");function h(i,n){return i.physicalId===l(n,i.logicalId)}t(h,"isRemediationPlaceholderPhysicalId");const c=e.object({diffGuardPassed:e.boolean(),changeSetMetadataOnly:e.boolean(),noChanges:e.boolean(),provenAt:e.string().min(1)}).strict(),m=e.enum(["forget","recreate"]),y=e.object({version:e.literal(1),opId:e.string().min(1),verb:m,accountId:e.string().min(1),region:e.string().min(1),stackName:e.string().min(1),appName:e.string().min(1).optional(),targets:e.array(s).min(1),phase:a,createdAt:e.string().min(1),updatedAt:e.string().min(1),liveTemplateDigest:e.string().min(1).optional(),forensicsPath:e.string().min(1).optional(),proof:c.optional(),consentedPhysicalNames:e.array(e.string()).optional(),retainedByRedeclaration:e.array(e.string().min(1)).optional(),fliplessTargets:e.array(e.string().min(1)).optional(),fliplessByNecessity:e.array(e.string().min(1)).optional(),recreatedResources:e.array(e.string().min(1)).optional(),snapshotPolicies:e.record(e.string().min(1),e.enum(["Snapshot","Delete"])).optional(),coRemovedLogicalIds:e.array(e.string().min(1)).optional(),orphanedResources:e.array(e.string().min(1)).optional(),unverifiedRemovals:e.array(e.string().min(1)).optional(),completedAt:e.string().min(1).optional()}).strict();export{o as REMEDIATION_PHASES,c as RemediationFlipProofSchema,y as RemediationJournalRecordSchema,a as RemediationPhaseSchema,s as RemediationTargetSchema,m as RemediationVerbWithSurgerySchema,h as isRemediationPlaceholderPhysicalId,g as remediationPhaseRank,l as remediationPlaceholderPhysicalId};
|
|
@@ -55,12 +55,14 @@ export declare const STEP_IDS: {
|
|
|
55
55
|
readonly MESSAGING: "messaging";
|
|
56
56
|
readonly DATABASE: "database";
|
|
57
57
|
readonly COMPUTE: "compute";
|
|
58
|
+
readonly US_EAST_1_CERTIFICATES: "us-east-1-certificates";
|
|
58
59
|
readonly CDN: "cdn";
|
|
59
60
|
readonly NETWORK_DESTROY: "network-destroy";
|
|
60
61
|
readonly STORAGE_DESTROY: "storage-destroy";
|
|
61
62
|
readonly MESSAGING_DESTROY: "messaging-destroy";
|
|
62
63
|
readonly DATABASE_DESTROY: "database-destroy";
|
|
63
64
|
readonly COMPUTE_DESTROY: "compute-destroy";
|
|
65
|
+
readonly US_EAST_1_CERTIFICATES_DESTROY: "us-east-1-certificates-destroy";
|
|
64
66
|
readonly CDN_DESTROY: "cdn-destroy";
|
|
65
67
|
};
|
|
66
68
|
export type StepId = (typeof STEP_IDS)[keyof typeof STEP_IDS];
|
|
@@ -117,6 +119,7 @@ export interface StepDefinition {
|
|
|
117
119
|
requiresStorage?: boolean;
|
|
118
120
|
requiresMessaging?: boolean;
|
|
119
121
|
requiresCdn?: boolean;
|
|
122
|
+
requiresUsEast1Certificates?: boolean;
|
|
120
123
|
requiresMemberAccounts?: boolean;
|
|
121
124
|
requiresPlatformAccount?: boolean;
|
|
122
125
|
requiresOrgChanges?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const E={AUTH:"auth",DETECT_CONFIG:"detect-config",TARGET_READINESS:"target-readiness",BOOTSTRAP:"bootstrap",CFN_CHECK:"cfn-check",DIFF:"diff",DEPLOY:"deploy",DESTROY:"destroy",VERIFY:"verify",CDK_SYNTH:"cdk-synth",DOCKER_OPERATIONS:"docker-operations",ECR_INIT:"ecr-init",DOCKER_DEPLOY:"docker-deploy",TAG_ECR_IMAGES:"tag-ecr-images",ORG_SETUP:"org-setup",ORG_ENSURE:"org-ensure",ORG_POLICY_TYPES:"policy-types",ORG_SERVICE_ACCESS:"service-access",ORG_CREATE_ACCOUNTS:"create-accounts",ORG_ENSURE_OUS:"ensure-ous",ORG_PLACE_ACCOUNTS:"place-accounts",IDENTITY_CENTRE:"identity-centre",ORG_ACCOUNTS:"accounts",ORG_COST_TAGS:"cost-tags",ORG_PROFILES:"profiles",PREPARE:"prepare",PREPARE_ENVIRONMENT:"prepare-environment",PLATFORM_ACCOUNT:"platform-account",ACCOUNT_CONTEXT:"account-context",CONNECT:"connect",MONITORING:"monitoring",ORG_DEPLOY:"organisation-deploy",ORG_DESTROY:"organisation-destroy",CASCADE_PLATFORM:"cascade-platform",CASCADE_DOMAINS:"cascade-domains",CASCADE_ACCOUNTS:"cascade-accounts",NETWORK:"network",STORAGE:"storage",MESSAGING:"messaging",DATABASE:"database",COMPUTE:"compute",CDN:"cdn",NETWORK_DESTROY:"network-destroy",STORAGE_DESTROY:"storage-destroy",MESSAGING_DESTROY:"messaging-destroy",DATABASE_DESTROY:"database-destroy",COMPUTE_DESTROY:"compute-destroy",CDN_DESTROY:"cdn-destroy"},t={AUTH:"Authenticating with AWS",PREPARE_DEPLOY:"Preparing deployment",PREPARE_DESTROY:"Preparing destruction",TARGET_READINESS:"Verifying target readiness",BOOTSTRAP:"Bootstrapping AWS environment",CHECK_INFRA_STATE:"Checking infrastructure state",ORG_SETUP:"Configuring organisation",ORG_DEPLOY:"Deploying organisation",CASCADE_PLATFORM:"Deploying platform",CASCADE_ACCOUNTS:"Deploying accounts"},e=["Connect securely","Prepare environment","Deploy infrastructure","Enable monitoring"],o={CONNECT:e[0],PREPARE:e[1],DEPLOY:e[2],MONITORING:e[3]};export{e as INFRASTRUCTURE_STEP_NAMES,o as INFRA_STEP_NAME,E as STEP_IDS,t as STEP_NAMES};
|
|
1
|
+
const E={AUTH:"auth",DETECT_CONFIG:"detect-config",TARGET_READINESS:"target-readiness",BOOTSTRAP:"bootstrap",CFN_CHECK:"cfn-check",DIFF:"diff",DEPLOY:"deploy",DESTROY:"destroy",VERIFY:"verify",CDK_SYNTH:"cdk-synth",DOCKER_OPERATIONS:"docker-operations",ECR_INIT:"ecr-init",DOCKER_DEPLOY:"docker-deploy",TAG_ECR_IMAGES:"tag-ecr-images",ORG_SETUP:"org-setup",ORG_ENSURE:"org-ensure",ORG_POLICY_TYPES:"policy-types",ORG_SERVICE_ACCESS:"service-access",ORG_CREATE_ACCOUNTS:"create-accounts",ORG_ENSURE_OUS:"ensure-ous",ORG_PLACE_ACCOUNTS:"place-accounts",IDENTITY_CENTRE:"identity-centre",ORG_ACCOUNTS:"accounts",ORG_COST_TAGS:"cost-tags",ORG_PROFILES:"profiles",PREPARE:"prepare",PREPARE_ENVIRONMENT:"prepare-environment",PLATFORM_ACCOUNT:"platform-account",ACCOUNT_CONTEXT:"account-context",CONNECT:"connect",MONITORING:"monitoring",ORG_DEPLOY:"organisation-deploy",ORG_DESTROY:"organisation-destroy",CASCADE_PLATFORM:"cascade-platform",CASCADE_DOMAINS:"cascade-domains",CASCADE_ACCOUNTS:"cascade-accounts",NETWORK:"network",STORAGE:"storage",MESSAGING:"messaging",DATABASE:"database",COMPUTE:"compute",US_EAST_1_CERTIFICATES:"us-east-1-certificates",CDN:"cdn",NETWORK_DESTROY:"network-destroy",STORAGE_DESTROY:"storage-destroy",MESSAGING_DESTROY:"messaging-destroy",DATABASE_DESTROY:"database-destroy",COMPUTE_DESTROY:"compute-destroy",US_EAST_1_CERTIFICATES_DESTROY:"us-east-1-certificates-destroy",CDN_DESTROY:"cdn-destroy"},t={AUTH:"Authenticating with AWS",PREPARE_DEPLOY:"Preparing deployment",PREPARE_DESTROY:"Preparing destruction",TARGET_READINESS:"Verifying target readiness",BOOTSTRAP:"Bootstrapping AWS environment",CHECK_INFRA_STATE:"Checking infrastructure state",ORG_SETUP:"Configuring organisation",ORG_DEPLOY:"Deploying organisation",CASCADE_PLATFORM:"Deploying platform",CASCADE_ACCOUNTS:"Deploying accounts"},e=["Connect securely","Prepare environment","Deploy infrastructure","Enable monitoring"],o={CONNECT:e[0],PREPARE:e[1],DEPLOY:e[2],MONITORING:e[3]};export{e as INFRASTRUCTURE_STEP_NAMES,o as INFRA_STEP_NAME,E as STEP_IDS,t as STEP_NAMES};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{readdirSync as
|
|
1
|
+
var i=Object.defineProperty;var o=(e,r)=>i(e,"name",{value:r,configurable:!0});import{readdirSync as c}from"fs";import{logger as n}from"@fjall/util/logger";function a(e){try{return c(e).some(t=>t.startsWith("Dockerfile"))}catch(r){return n.debug("dockerfileDetection","Failed to check for Dockerfile",{appPath:e,error:r instanceof Error?r.message:String(r)}),!1}}o(a,"hasDockerfile");export{a as hasDockerfile};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
var p=Object.defineProperty;var c=(t,n)=>p(t,"name",{value:n,configurable:!0});const u=new Set(["verbose"]);function d(t){let n=0;const a=[],o={};for(const e of Object.keys(t)){if(u.has(e)){o[e]=t[e];continue}const s=t[e];typeof s=="function"&&(o[e]=(...r)=>{n+=1;const l={sequence:n,timestamp:new Date().toISOString()};return a.push({callbackName:e,args:[...r],metadata:l}),s(...r)})}return{callbacks:o,getEvents:c(()=>[...a],"getEvents"),clearEvents:c(()=>{a.length=0},"clearEvents")}}c(d,"createSequencedCallbacks");export{d as createSequencedCallbacks};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
var u=Object.defineProperty;var r=(t,e)=>u(t,"name",{value:e,configurable:!0});function m(t,e){return e?.aborted===!0?Promise.resolve():new Promise(o=>{const i=setTimeout(()=>{e?.removeEventListener("abort",n),o()},t),n=r(()=>{clearTimeout(i),o()},"onAbort");e?.addEventListener("abort",n,{once:!0})})}r(m,"sleepAbortable");export{m as sleepAbortable};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fjall/deploy-core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"description": "Shared deployment engine for Fjall — used by CLI and webapp worker",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -80,14 +80,15 @@
|
|
|
80
80
|
"@aws-sdk/client-organizations": "^3.1038.0",
|
|
81
81
|
"@aws-sdk/client-ram": "^3.1038.0",
|
|
82
82
|
"@aws-sdk/client-rds": "^3.1038.0",
|
|
83
|
+
"@aws-sdk/client-route-53": "^3.1038.0",
|
|
83
84
|
"@aws-sdk/client-s3": "^3.1038.0",
|
|
84
85
|
"@aws-sdk/client-secrets-manager": "^3.1038.0",
|
|
85
86
|
"@aws-sdk/client-sqs": "^3.1067.0",
|
|
86
87
|
"@aws-sdk/client-ssm": "^3.1038.0",
|
|
87
88
|
"@aws-sdk/client-sso-admin": "^3.1038.0",
|
|
88
89
|
"@aws-sdk/client-sts": "^3.1038.0",
|
|
89
|
-
"@fjall/generator": "^
|
|
90
|
-
"@fjall/util": "^
|
|
90
|
+
"@fjall/generator": "^3.1.0",
|
|
91
|
+
"@fjall/util": "^3.1.0",
|
|
91
92
|
"@smithy/node-http-handler": "^4.6.1",
|
|
92
93
|
"aws-cdk": "^2.1128.1",
|
|
93
94
|
"tsx": "^4.21.0",
|
|
@@ -98,5 +99,5 @@
|
|
|
98
99
|
"typescript": "^6.0.3",
|
|
99
100
|
"vitest": "^4.1.5"
|
|
100
101
|
},
|
|
101
|
-
"gitHead": "
|
|
102
|
+
"gitHead": "0f27cc5e260fdf218d33de546ba8610be89e1d81"
|
|
102
103
|
}
|