@empire-builder-kit/nx 1.0.0-rc.30 → 1.0.0-rc.32
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/executors.json +8 -3
- package/package.json +14 -7
- package/src/aws/child-environment.d.ts +10 -0
- package/src/aws/child-environment.js +77 -0
- package/src/aws/child-environment.js.map +1 -0
- package/src/aws/identity.d.ts +13 -0
- package/src/aws/identity.js +41 -0
- package/src/aws/identity.js.map +1 -0
- package/src/aws-authority/index.d.ts +1 -0
- package/src/aws-authority/index.js +5 -0
- package/src/aws-authority/index.js.map +1 -0
- package/src/aws-authority/stage-authority.d.ts +240 -0
- package/src/aws-authority/stage-authority.js +2968 -0
- package/src/aws-authority/stage-authority.js.map +1 -0
- package/src/cli/main.d.ts +2 -0
- package/src/cli/main.js +11 -0
- package/src/cli/main.js.map +1 -1
- package/src/developer-agent/generator-planning.js +4 -4
- package/src/developer-agent/generator-planning.js.map +1 -1
- package/src/developer-agent/operation-registry.js +14 -6
- package/src/developer-agent/operation-registry.js.map +1 -1
- package/src/developer-agent/workspace-inspection.js +11 -2
- package/src/developer-agent/workspace-inspection.js.map +1 -1
- package/src/executors/deployment-plan/deployment-plan.js +1 -1
- package/src/executors/deployment-plan/deployment-plan.js.map +1 -1
- package/src/executors/foundation-preflight/foundation-preflight.d.ts +0 -1
- package/src/executors/foundation-preflight/foundation-preflight.js.map +1 -1
- package/src/executors/foundation-preflight/schema.json +0 -5
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +12 -3
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +95 -32
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +1 -1
- package/src/executors/foundation-profile-preflight/production-database-safeguard.d.ts +64 -0
- package/src/executors/foundation-profile-preflight/production-database-safeguard.js +221 -0
- package/src/executors/foundation-profile-preflight/production-database-safeguard.js.map +1 -0
- package/src/executors/foundation-profile-preflight/schema.json +1 -6
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.d.ts +11 -1
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js +44 -21
- package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js.map +1 -1
- package/src/executors/foundation-remove-preflight/schema.json +6 -1
- package/src/executors/github-bootstrap/github-bootstrap.d.ts +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -1
- package/src/executors/github-bootstrap/schema.json +7 -1
- package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +27 -369
- package/src/executors/infrastructure-plan/infrastructure-plan.js +237 -5470
- package/src/executors/infrastructure-plan/infrastructure-plan.js.map +1 -1
- package/src/executors/infrastructure-plan/schema.json +8 -64
- package/src/executors/local-deploy/federated-credential-transport.d.ts +48 -0
- package/src/executors/local-deploy/federated-credential-transport.js +252 -0
- package/src/executors/local-deploy/federated-credential-transport.js.map +1 -0
- package/src/executors/local-deploy/local-approval.d.ts +4 -9
- package/src/executors/local-deploy/local-approval.js +3 -7
- package/src/executors/local-deploy/local-approval.js.map +1 -1
- package/src/executors/local-deploy/local-deploy.d.ts +60 -43
- package/src/executors/local-deploy/local-deploy.js +955 -804
- package/src/executors/local-deploy/local-deploy.js.map +1 -1
- package/src/executors/local-deploy/schema.json +3 -20
- package/src/executors/refresh/refresh.js +2 -2
- package/src/executors/refresh/refresh.js.map +1 -1
- package/src/executors/remove/remove.js +2 -2
- package/src/executors/remove/remove.js.map +1 -1
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.d.ts +27 -1
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js +907 -22
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js.map +1 -1
- package/src/executors/router-waf-rehearsal/schema.json +17 -2
- package/src/executors/secret-initialize/schema.json +42 -0
- package/src/executors/secret-initialize/secret-initialize.d.ts +32 -0
- package/src/executors/secret-initialize/secret-initialize.js +243 -0
- package/src/executors/secret-initialize/secret-initialize.js.map +1 -0
- package/src/executors/secret-metadata/secret-metadata.d.ts +4 -1
- package/src/executors/secret-metadata/secret-metadata.js +76 -29
- package/src/executors/secret-metadata/secret-metadata.js.map +1 -1
- package/src/executors/sst-lifecycle/generated-secret-retirement.d.ts +53 -0
- package/src/executors/sst-lifecycle/generated-secret-retirement.js +192 -0
- package/src/executors/sst-lifecycle/generated-secret-retirement.js.map +1 -0
- package/src/executors/sst-lifecycle/governed-native-operation.d.ts +46 -0
- package/src/executors/sst-lifecycle/governed-native-operation.js +153 -0
- package/src/executors/sst-lifecycle/governed-native-operation.js.map +1 -0
- package/src/executors/sst-lifecycle/run-sst-command.d.ts +27 -7
- package/src/executors/sst-lifecycle/run-sst-command.js +474 -89
- package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -1
- package/src/executors/sst-lifecycle/schema.json +0 -5
- package/src/executors/sst-lifecycle/secret-preflight.d.ts +2 -0
- package/src/executors/sst-lifecycle/secret-preflight.js +13 -7
- package/src/executors/sst-lifecycle/secret-preflight.js.map +1 -1
- package/src/executors/unlock/unlock.js +2 -2
- package/src/executors/unlock/unlock.js.map +1 -1
- package/src/foundation/provision-logical-database.js +2 -0
- package/src/foundation/provision-logical-database.js.map +1 -1
- package/src/foundation/router-waf-rate-rehearsal.d.ts +97 -0
- package/src/foundation/router-waf-rate-rehearsal.js +210 -0
- package/src/foundation/router-waf-rate-rehearsal.js.map +1 -0
- package/src/foundation/router-waf.d.ts +59 -9
- package/src/foundation/router-waf.js +427 -32
- package/src/foundation/router-waf.js.map +1 -1
- package/src/foundation/stages.d.ts +1 -0
- package/src/foundation/stages.js +11 -0
- package/src/foundation/stages.js.map +1 -1
- package/src/generators/formatting.d.ts +8 -0
- package/src/generators/formatting.js +118 -0
- package/src/generators/formatting.js.map +1 -0
- package/src/generators/function/function.js +37 -17
- package/src/generators/function/function.js.map +1 -1
- package/src/generators/post-generation-install.js +2 -2
- package/src/generators/post-generation-install.js.map +1 -1
- package/src/generators/preset/generator.js +28 -8
- package/src/generators/preset/generator.js.map +1 -1
- package/src/generators/preset/schema.d.ts +3 -0
- package/src/generators/preset/schema.json +5 -5
- package/src/generators/preset/workspace-files-developer-agent.js +15 -7
- package/src/generators/preset/workspace-files-developer-agent.js.map +1 -1
- package/src/generators/preset/workspace-files-ecr-inspector.d.ts +18 -0
- package/src/generators/preset/workspace-files-ecr-inspector.js +298 -0
- package/src/generators/preset/workspace-files-ecr-inspector.js.map +1 -0
- package/src/generators/preset/workspace-files-performance-cost.d.ts +2 -2
- package/src/generators/preset/workspace-files-performance-cost.js +8 -8
- package/src/generators/preset/workspace-files-performance-cost.js.map +1 -1
- package/src/generators/preset/workspace-files-performance-load.d.ts +1 -1
- package/src/generators/preset/workspace-files-performance-load.js +29 -24
- package/src/generators/preset/workspace-files-performance-load.js.map +1 -1
- package/src/generators/preset/workspace-files-stage-authority.d.ts +6 -0
- package/src/generators/preset/workspace-files-stage-authority.js +479 -0
- package/src/generators/preset/workspace-files-stage-authority.js.map +1 -0
- package/src/generators/preset/workspace-files-thin-deploy.d.ts +40 -0
- package/src/generators/preset/workspace-files-thin-deploy.js +1500 -0
- package/src/generators/preset/workspace-files-thin-deploy.js.map +1 -0
- package/src/generators/preset/workspace-files-thin-docs.d.ts +5 -0
- package/src/generators/preset/workspace-files-thin-docs.js +240 -0
- package/src/generators/preset/workspace-files-thin-docs.js.map +1 -0
- package/src/generators/preset/workspace-files-thin-release.d.ts +14 -0
- package/src/generators/preset/workspace-files-thin-release.js +26 -0
- package/src/generators/preset/workspace-files-thin-release.js.map +1 -0
- package/src/generators/preset/workspace-files.d.ts +2 -1
- package/src/generators/preset/workspace-files.js +448 -680
- package/src/generators/preset/workspace-files.js.map +1 -1
- package/src/generators/repository-policy/repository-policy.js +149 -19
- package/src/generators/repository-policy/repository-policy.js.map +1 -1
- package/src/generators/repository-policy/schema.d.ts +2 -0
- package/src/generators/repository-policy/schema.json +11 -1
- package/src/generators/repository-policy/tree-policy.d.ts +3 -0
- package/src/generators/repository-policy/tree-policy.js +25 -0
- package/src/generators/repository-policy/tree-policy.js.map +1 -0
- package/src/generators/slice/built-in-plan-api-files.js +1 -0
- package/src/generators/slice/built-in-plan-api-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-async-work-files.js +41 -0
- package/src/generators/slice/built-in-plan-async-work-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +6 -0
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js +5 -31
- package/src/generators/slice/built-in-plan-data-export-infrastructure-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-data-files.js +89 -30
- package/src/generators/slice/built-in-plan-data-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js +19 -0
- package/src/generators/slice/built-in-plan-data-lifecycle-runtime-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js +21 -3
- package/src/generators/slice/built-in-plan-data-retention-launcher-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js +20 -1
- package/src/generators/slice/built-in-plan-database-retirement-rehearsal-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-foundation-files.js +3 -5
- package/src/generators/slice/built-in-plan-foundation-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-frontend-files.js +5 -1
- package/src/generators/slice/built-in-plan-frontend-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-infrastructure-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-infrastructure-files.js +199 -188
- package/src/generators/slice/built-in-plan-infrastructure-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-metadata-files.js +13 -0
- package/src/generators/slice/built-in-plan-metadata-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-native-runtime-authority-files.d.ts +2 -0
- package/src/generators/slice/built-in-plan-native-runtime-authority-files.js +307 -0
- package/src/generators/slice/built-in-plan-native-runtime-authority-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-operations-files.js +65 -51
- package/src/generators/slice/built-in-plan-operations-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-performance-files.js +97 -19
- package/src/generators/slice/built-in-plan-performance-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-project-files.js +9 -68
- package/src/generators/slice/built-in-plan-project-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-secret-runtime-files.d.ts +1 -1
- package/src/generators/slice/built-in-plan-secret-runtime-files.js +87 -76
- package/src/generators/slice/built-in-plan-secret-runtime-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-testing-files.js +94 -47
- package/src/generators/slice/built-in-plan-testing-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-thin-release-files.d.ts +11 -0
- package/src/generators/slice/built-in-plan-thin-release-files.js +129 -0
- package/src/generators/slice/built-in-plan-thin-release-files.js.map +1 -0
- package/src/generators/slice/built-in-plan-verification-files.js +6 -2
- package/src/generators/slice/built-in-plan-verification-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-web-files.js +4 -2
- package/src/generators/slice/built-in-plan-web-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-workload-role-files.js +26 -4
- package/src/generators/slice/built-in-plan-workload-role-files.js.map +1 -1
- package/src/generators/slice/built-in-plan.d.ts +1 -0
- package/src/generators/slice/built-in-plan.js +28 -11
- package/src/generators/slice/built-in-plan.js.map +1 -1
- package/src/generators/slice/slice.js +30 -32
- package/src/generators/slice/slice.js.map +1 -1
- package/src/generators/upgrade/upgrade.d.ts +1 -1
- package/src/generators/upgrade/upgrade.js +200 -48
- package/src/generators/upgrade/upgrade.js.map +1 -1
- package/src/generators/workload/performance-registration.d.ts +1 -0
- package/src/generators/workload/performance-registration.js +9 -11
- package/src/generators/workload/performance-registration.js.map +1 -1
- package/src/generators/workload/service-performance-files.d.ts +1 -0
- package/src/generators/workload/service-performance-files.js +27 -7
- package/src/generators/workload/service-performance-files.js.map +1 -1
- package/src/generators/workload/workload.d.ts +1 -1
- package/src/generators/workload/workload.js +55 -28
- package/src/generators/workload/workload.js.map +1 -1
- package/src/git-policy/github-bootstrap.d.ts +28 -7
- package/src/git-policy/github-bootstrap.js +205 -163
- package/src/git-policy/github-bootstrap.js.map +1 -1
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/local-dev/private-state.d.ts +3 -0
- package/src/local-dev/private-state.js +17 -5
- package/src/local-dev/private-state.js.map +1 -1
- package/src/local-dev/tls.js +5 -1
- package/src/local-dev/tls.js.map +1 -1
- package/src/performance/cost-collection.d.ts +1 -1
- package/src/performance/cost-collection.js +4 -2
- package/src/performance/cost-collection.js.map +1 -1
- package/src/performance/cost-controls.d.ts +3 -1
- package/src/performance/cost-controls.js +9 -4
- package/src/performance/cost-controls.js.map +1 -1
- package/src/performance/evidence.d.ts +1 -1
- package/src/performance/evidence.js +5 -3
- package/src/performance/evidence.js.map +1 -1
- package/src/performance/load-safety.js +5 -3
- package/src/performance/load-safety.js.map +1 -1
- package/src/performance/model.d.ts +2 -2
- package/src/performance/model.js +4 -3
- package/src/performance/model.js.map +1 -1
- package/src/release/index.d.ts +0 -2
- package/src/release/index.js +0 -2
- package/src/release/index.js.map +1 -1
- package/src/release/source-authority.d.ts +4 -5
- package/src/release/source-authority.js +13 -123
- package/src/release/source-authority.js.map +1 -1
- package/src/repository-policy/aurora-preflight.d.ts +1 -1
- package/src/repository-policy/aurora-preflight.js +4 -1
- package/src/repository-policy/aurora-preflight.js.map +1 -1
- package/src/repository-policy/policy.d.ts +21 -2
- package/src/repository-policy/policy.js +290 -25
- package/src/repository-policy/policy.js.map +1 -1
- package/src/schemas/performance-policy-v1.json +3 -1
- package/src/schemas/repository-policy-v1.json +46 -2
- package/src/secrets/adapters.d.ts +7 -2
- package/src/secrets/adapters.js +34 -3
- package/src/secrets/adapters.js.map +1 -1
- package/src/secrets/aws-control-plane.d.ts +10 -1
- package/src/secrets/aws-control-plane.js +67 -0
- package/src/secrets/aws-control-plane.js.map +1 -1
- package/src/secrets/generated-aws-control-plane.d.ts +23 -0
- package/src/secrets/generated-aws-control-plane.js +259 -0
- package/src/secrets/generated-aws-control-plane.js.map +1 -0
- package/src/secrets/metadata.js +38 -10
- package/src/secrets/metadata.js.map +1 -1
- package/src/secrets/model.d.ts +8 -1
- package/src/secrets/model.js +24 -3
- package/src/secrets/model.js.map +1 -1
- package/src/secrets/operator.d.ts +89 -3
- package/src/secrets/operator.js +422 -9
- package/src/secrets/operator.js.map +1 -1
- package/src/secrets/registry.d.ts +2 -1
- package/src/secrets/registry.js +18 -1
- package/src/secrets/registry.js.map +1 -1
- package/src/secrets/workload-access.js +10 -2
- package/src/secrets/workload-access.js.map +1 -1
- package/src/supply-chain/action-pins.js +61 -7
- package/src/supply-chain/action-pins.js.map +1 -1
- package/src/supply-chain/build-output-bounds.d.ts +2 -0
- package/src/supply-chain/build-output-bounds.js +12 -0
- package/src/supply-chain/build-output-bounds.js.map +1 -0
- package/src/supply-chain/build-output.js +2 -4
- package/src/supply-chain/build-output.js.map +1 -1
- package/src/supply-chain/ecr-scanning.d.ts +5 -3
- package/src/supply-chain/ecr-scanning.js +11 -7
- package/src/supply-chain/ecr-scanning.js.map +1 -1
- package/src/supply-chain/ecs-deployed-image.d.ts +5 -3
- package/src/supply-chain/ecs-deployed-image.js +6 -4
- package/src/supply-chain/ecs-deployed-image.js.map +1 -1
- package/src/supply-chain/generated-container-release-command.js +849 -44
- package/src/supply-chain/generated-container-release-command.js.map +1 -1
- package/src/supply-chain/generated-ecr-collector-command.d.ts +0 -1
- package/src/supply-chain/generated-ecr-collector-command.js +188 -91
- package/src/supply-chain/generated-ecr-collector-command.js.map +1 -1
- package/src/supply-chain/generated-files.js +4 -3
- package/src/supply-chain/generated-files.js.map +1 -1
- package/src/supply-chain/index.d.ts +1 -1
- package/src/supply-chain/index.js +2 -1
- package/src/supply-chain/index.js.map +1 -1
- package/src/workload-roles/index.d.ts +10 -17
- package/src/workload-roles/index.js +5 -18
- package/src/workload-roles/index.js.map +1 -1
- package/src/workspace-deployment/identity.d.ts +3 -0
- package/src/workspace-deployment/identity.js +22 -0
- package/src/workspace-deployment/identity.js.map +1 -0
- package/src/workspace-deployment/index.d.ts +3 -0
- package/src/workspace-deployment/index.js +7 -0
- package/src/workspace-deployment/index.js.map +1 -0
- package/src/workspace-deployment/migration-evidence.d.ts +29 -0
- package/src/workspace-deployment/migration-evidence.js +83 -0
- package/src/workspace-deployment/migration-evidence.js.map +1 -0
- package/src/workspace-deployment/migration.d.ts +27 -0
- package/src/workspace-deployment/migration.js +109 -0
- package/src/workspace-deployment/migration.js.map +1 -0
- package/src/workspace-deployment/ownership.d.ts +81 -0
- package/src/workspace-deployment/ownership.js +381 -0
- package/src/workspace-deployment/ownership.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-container-release-command.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-container-release-command.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"generated-container-release-command.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-container-release-command.ts"],"names":[],"mappings":"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CAAC,SAAS,CAAC,0BAA0B,CAAC;;;;+BAIhD,IAAI,CAAC,SAAS,CAAC,IAAA,2CAA0B,GAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4zF1E,CAAC;AACF,CAAC"}
|
|
@@ -15,7 +15,6 @@ export declare const SYFT_COLLECTOR_RELEASES: Readonly<Record<string, SyftCollec
|
|
|
15
15
|
*/
|
|
16
16
|
export declare function renderEcrInspectorCollectorCommand(options?: {
|
|
17
17
|
moduleSpecifier?: string;
|
|
18
|
-
releaseModuleSpecifier?: string;
|
|
19
18
|
releases?: Readonly<Record<string, SyftCollectorRelease>>;
|
|
20
19
|
syftVersion?: string;
|
|
21
20
|
}): string;
|
|
@@ -47,11 +47,9 @@ function validatedReleases(releases) {
|
|
|
47
47
|
*/
|
|
48
48
|
function renderEcrInspectorCollectorCommand(options = {}) {
|
|
49
49
|
const moduleSpecifier = options.moduleSpecifier ?? '@empire-builder-kit/nx/supply-chain';
|
|
50
|
-
const releaseModuleSpecifier = options.releaseModuleSpecifier ?? '@empire-builder-kit/nx/release';
|
|
51
50
|
const releases = validatedReleases(options.releases ?? exports.SYFT_COLLECTOR_RELEASES);
|
|
52
51
|
const syftVersion = options.syftVersion ?? exports.SYFT_VERSION;
|
|
53
52
|
if (!/^(?:@empire-builder-kit\/nx\/supply-chain|file:\/\/\/[^'"\n]+)$/.test(moduleSpecifier) ||
|
|
54
|
-
!/^(?:@empire-builder-kit\/nx\/release|file:\/\/\/[^'"\n]+)$/.test(releaseModuleSpecifier) ||
|
|
55
53
|
!/^\d+\.\d+\.\d+$/.test(syftVersion)) {
|
|
56
54
|
throw new Error('The generated ECR collector configuration is invalid.');
|
|
57
55
|
}
|
|
@@ -80,7 +78,6 @@ import {
|
|
|
80
78
|
verifyEcrInspectorScanEvidence,
|
|
81
79
|
verifyEcsDeployedImageBinding,
|
|
82
80
|
} from '${moduleSpecifier}';
|
|
83
|
-
import { validateReleaseManifest } from '${releaseModuleSpecifier}';
|
|
84
81
|
|
|
85
82
|
const SYFT_VERSION = ${JSON.stringify(syftVersion)};
|
|
86
83
|
const SYFT_RELEASES = Object.freeze(${JSON.stringify(releases)});
|
|
@@ -282,15 +279,21 @@ if (
|
|
|
282
279
|
'accountId',
|
|
283
280
|
'artifactId',
|
|
284
281
|
'deployment',
|
|
282
|
+
'deployRunAttempt',
|
|
283
|
+
'deployRunId',
|
|
284
|
+
'deploymentReceiptPath',
|
|
285
285
|
'outputDirectory',
|
|
286
|
+
'postdeployBindingPath',
|
|
286
287
|
'region',
|
|
287
|
-
'
|
|
288
|
+
'releaseCandidatePath',
|
|
288
289
|
'schemaVersion',
|
|
289
290
|
'stage',
|
|
290
291
|
'taskDefinitionFamily',
|
|
291
292
|
].includes(key),
|
|
292
293
|
) ||
|
|
293
294
|
!/^\\d{12}$/.test(input.accountId ?? '') ||
|
|
295
|
+
!/^[1-9]\\d*$/.test(input.deployRunAttempt ?? '') ||
|
|
296
|
+
!/^[1-9]\\d*$/.test(input.deployRunId ?? '') ||
|
|
294
297
|
!/^[a-z]{2}(?:-gov)?-[a-z]+(?:-[a-z]+)*-\\d$/.test(input.region ?? '') ||
|
|
295
298
|
!['production', 'staging'].includes(input.stage) ||
|
|
296
299
|
typeof input.artifactId !== 'string' ||
|
|
@@ -341,9 +344,17 @@ if (
|
|
|
341
344
|
'ECR collector deployment must identify one exact ECS service or task.',
|
|
342
345
|
);
|
|
343
346
|
}
|
|
344
|
-
const
|
|
345
|
-
input.
|
|
346
|
-
'
|
|
347
|
+
const candidatePath = safePath(
|
|
348
|
+
input.releaseCandidatePath,
|
|
349
|
+
'releaseCandidatePath',
|
|
350
|
+
);
|
|
351
|
+
const deploymentReceiptPath = safePath(
|
|
352
|
+
input.deploymentReceiptPath,
|
|
353
|
+
'deploymentReceiptPath',
|
|
354
|
+
);
|
|
355
|
+
const postdeployBindingPath = safePath(
|
|
356
|
+
input.postdeployBindingPath,
|
|
357
|
+
'postdeployBindingPath',
|
|
347
358
|
);
|
|
348
359
|
const outputDirectory = safePath(
|
|
349
360
|
input.outputDirectory ??
|
|
@@ -351,43 +362,125 @@ const outputDirectory = safePath(
|
|
|
351
362
|
'outputDirectory',
|
|
352
363
|
{ directory: true, output: true },
|
|
353
364
|
);
|
|
354
|
-
const
|
|
355
|
-
|
|
365
|
+
const candidateBytes = readBoundedFile(
|
|
366
|
+
candidatePath,
|
|
356
367
|
MAX_INPUT_BYTES,
|
|
357
|
-
'Release
|
|
368
|
+
'Release candidate exceeds its bounded input size.',
|
|
358
369
|
);
|
|
359
|
-
const
|
|
360
|
-
JSON.parse(
|
|
361
|
-
'Release
|
|
370
|
+
const candidate = requireRecord(
|
|
371
|
+
JSON.parse(candidateBytes.toString('utf8')),
|
|
372
|
+
'Release candidate must be an object.',
|
|
362
373
|
);
|
|
363
|
-
const
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
374
|
+
const deploymentReceipt = requireRecord(
|
|
375
|
+
readJson(deploymentReceiptPath, 'Deployment receipt is invalid.'),
|
|
376
|
+
'Deployment receipt must be an object.',
|
|
377
|
+
);
|
|
378
|
+
const postdeployBinding = requireRecord(
|
|
379
|
+
readJson(postdeployBindingPath, 'Postdeploy binding is invalid.'),
|
|
380
|
+
'Postdeploy binding must be an object.',
|
|
381
|
+
);
|
|
382
|
+
const postdeployBindingKeys = [
|
|
383
|
+
'accountId',
|
|
384
|
+
'deploymentCommit',
|
|
385
|
+
'kind',
|
|
386
|
+
'materialDigest',
|
|
387
|
+
'profile',
|
|
388
|
+
'region',
|
|
389
|
+
'releaseCandidateArtifactDigest',
|
|
390
|
+
'releaseCandidateArtifactId',
|
|
391
|
+
'releaseCandidateProducerRunAttempt',
|
|
392
|
+
'releaseCandidateProducerRunId',
|
|
393
|
+
'releaseSourceCommit',
|
|
394
|
+
'runAttempt',
|
|
395
|
+
'runId',
|
|
396
|
+
'schemaVersion',
|
|
397
|
+
'stage',
|
|
398
|
+
].sort();
|
|
367
399
|
const sliceRoot = realpathSync(process.cwd());
|
|
368
400
|
const slice = basename(sliceRoot);
|
|
369
401
|
if (
|
|
370
|
-
manifest.kind !== 'ebk-release-manifest' ||
|
|
371
|
-
manifest.schemaVersion !== 1 ||
|
|
372
|
-
typeof manifest.releaseId !== 'string' ||
|
|
373
|
-
!REFERENCE.test(manifest.releaseId) ||
|
|
374
|
-
typeof manifest.materialDigest !== 'string' ||
|
|
375
|
-
!SHA256.test(manifest.materialDigest) ||
|
|
376
|
-
!manifest.source ||
|
|
377
|
-
!COMMIT.test(manifest.source.commit ?? '') ||
|
|
378
|
-
!Array.isArray(manifest.projects) ||
|
|
379
|
-
!manifest.projects.includes(slice) ||
|
|
380
402
|
relative(repositoryRoot, sliceRoot).split(sep).join('/') !==
|
|
381
|
-
'packages/' + slice
|
|
403
|
+
'packages/' + slice ||
|
|
404
|
+
candidate.kind !== 'ebk-release-candidate' ||
|
|
405
|
+
candidate.schemaVersion !== 1 ||
|
|
406
|
+
candidate.slice !== slice ||
|
|
407
|
+
!COMMIT.test(candidate.sourceCommit ?? '') ||
|
|
408
|
+
!SHA256.test(candidate.artifactEvidenceDigest ?? '') ||
|
|
409
|
+
!SHA256.test(candidate.inventoryDigest ?? '') ||
|
|
410
|
+
!candidate.provenance ||
|
|
411
|
+
candidate.provenance.kind !== 'ebk-release-candidate-provenance' ||
|
|
412
|
+
candidate.provenance.schemaVersion !== 1 ||
|
|
413
|
+
candidate.provenance.sourceCommit !== candidate.sourceCommit ||
|
|
414
|
+
!/^[1-9]\\d*$/.test(candidate.provenance.runAttempt ?? '') ||
|
|
415
|
+
!/^[1-9]\\d*$/.test(candidate.provenance.runId ?? '') ||
|
|
416
|
+
typeof candidate.provenance.workflow !== 'string' ||
|
|
417
|
+
candidate.provenance.workflow.length === 0 ||
|
|
418
|
+
deploymentReceipt.kind !== 'ebk-deployment-receipt' ||
|
|
419
|
+
deploymentReceipt.schemaVersion !== 1 ||
|
|
420
|
+
deploymentReceipt.outcome !== 'succeeded' ||
|
|
421
|
+
deploymentReceipt.authority !== 'github' ||
|
|
422
|
+
deploymentReceipt.account !== input.accountId ||
|
|
423
|
+
deploymentReceipt.region !== input.region ||
|
|
424
|
+
deploymentReceipt.stage !== input.stage ||
|
|
425
|
+
!['starter', 'production-isolated', 'fully-isolated'].includes(
|
|
426
|
+
deploymentReceipt.profile,
|
|
427
|
+
) ||
|
|
428
|
+
deploymentReceipt.source?.clean !== true ||
|
|
429
|
+
!COMMIT.test(deploymentReceipt.source?.commit ?? '') ||
|
|
430
|
+
!Array.isArray(deploymentReceipt.children) ||
|
|
431
|
+
deploymentReceipt.children.length === 0 ||
|
|
432
|
+
deploymentReceipt.children.some((child) => child?.outcome !== 'succeeded') ||
|
|
433
|
+
postdeployBinding.kind !== 'ebk-postdeploy-supply-chain-binding' ||
|
|
434
|
+
postdeployBinding.schemaVersion !== 1 ||
|
|
435
|
+
postdeployBinding.accountId !== input.accountId ||
|
|
436
|
+
postdeployBinding.region !== input.region ||
|
|
437
|
+
postdeployBinding.stage !== input.stage ||
|
|
438
|
+
postdeployBinding.profile !== deploymentReceipt.profile ||
|
|
439
|
+
postdeployBinding.deploymentCommit !== deploymentReceipt.source.commit ||
|
|
440
|
+
postdeployBinding.releaseSourceCommit !== candidate.sourceCommit ||
|
|
441
|
+
postdeployBinding.releaseCandidateProducerRunAttempt !==
|
|
442
|
+
candidate.provenance.runAttempt ||
|
|
443
|
+
postdeployBinding.releaseCandidateProducerRunId !==
|
|
444
|
+
candidate.provenance.runId ||
|
|
445
|
+
JSON.stringify(Object.keys(postdeployBinding).sort()) !==
|
|
446
|
+
JSON.stringify(postdeployBindingKeys) ||
|
|
447
|
+
!/^sha256:[a-f0-9]{64}$/.test(
|
|
448
|
+
postdeployBinding.releaseCandidateArtifactDigest ?? '',
|
|
449
|
+
) ||
|
|
450
|
+
!/^[1-9]\\d*$/.test(postdeployBinding.releaseCandidateArtifactId ?? '') ||
|
|
451
|
+
!/^[1-9]\\d*$/.test(
|
|
452
|
+
postdeployBinding.releaseCandidateProducerRunAttempt ?? '',
|
|
453
|
+
) ||
|
|
454
|
+
!/^[1-9]\\d*$/.test(
|
|
455
|
+
postdeployBinding.releaseCandidateProducerRunId ?? '',
|
|
456
|
+
) ||
|
|
457
|
+
!/^[1-9]\\d*$/.test(postdeployBinding.runAttempt ?? '') ||
|
|
458
|
+
!/^[1-9]\\d*$/.test(postdeployBinding.runId ?? '') ||
|
|
459
|
+
postdeployBinding.runAttempt !== input.deployRunAttempt ||
|
|
460
|
+
postdeployBinding.runId !== input.deployRunId ||
|
|
461
|
+
postdeployBinding.materialDigest !==
|
|
462
|
+
digestValue(
|
|
463
|
+
Object.fromEntries(
|
|
464
|
+
Object.entries(postdeployBinding).filter(
|
|
465
|
+
([key]) => key !== 'materialDigest',
|
|
466
|
+
),
|
|
467
|
+
),
|
|
468
|
+
)
|
|
382
469
|
) {
|
|
383
|
-
throw new Error(
|
|
470
|
+
throw new Error(
|
|
471
|
+
'Release candidate, deployment receipt, and postdeploy binding are not exact.',
|
|
472
|
+
);
|
|
384
473
|
}
|
|
385
474
|
if (
|
|
386
|
-
relative(
|
|
387
|
-
'.ebk/evidence/release-
|
|
475
|
+
relative(repositoryRoot, candidatePath).split(sep).join('/') !==
|
|
476
|
+
'.ebk/evidence/ecr-original-release-candidate/packages/' + slice + '/candidate.json' ||
|
|
477
|
+
relative(repositoryRoot, deploymentReceiptPath).split(sep).join('/') !==
|
|
478
|
+
'.ebk/evidence/deployment/latest.json' ||
|
|
479
|
+
relative(repositoryRoot, postdeployBindingPath).split(sep).join('/') !==
|
|
480
|
+
'.ebk/evidence/deployment/postdeploy-supply-chain.json'
|
|
388
481
|
) {
|
|
389
482
|
throw new Error(
|
|
390
|
-
'
|
|
483
|
+
'Postdeploy evidence must use its canonical immutable paths.',
|
|
391
484
|
);
|
|
392
485
|
}
|
|
393
486
|
const controlsPath = realpathSync(
|
|
@@ -398,35 +491,34 @@ const releaseControls = requireRecord(
|
|
|
398
491
|
'Release controls must be an object.',
|
|
399
492
|
);
|
|
400
493
|
const artifactEvidencePath = realpathSync(
|
|
401
|
-
join(
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
494
|
+
join(dirname(candidatePath), 'release-artifacts.json'),
|
|
495
|
+
);
|
|
496
|
+
const artifactEvidenceBytes = readBoundedFile(
|
|
497
|
+
artifactEvidencePath,
|
|
498
|
+
MAX_INPUT_BYTES,
|
|
499
|
+
'Release artifact evidence exceeds its bounded input size.',
|
|
406
500
|
);
|
|
407
501
|
const artifacts = requireRecord(
|
|
408
|
-
|
|
409
|
-
artifactEvidencePath,
|
|
410
|
-
'Release artifact evidence is invalid.',
|
|
411
|
-
),
|
|
502
|
+
JSON.parse(artifactEvidenceBytes.toString('utf8')),
|
|
412
503
|
'Release artifact evidence must be an object.',
|
|
413
504
|
);
|
|
414
505
|
if (
|
|
506
|
+
candidate.artifactEvidenceDigest !== digestBytes(artifactEvidenceBytes) ||
|
|
415
507
|
artifacts.kind !== 'ebk-release-artifact-evidence' ||
|
|
416
508
|
artifacts.schemaVersion !== 1 ||
|
|
417
|
-
artifacts.sourceCommit !==
|
|
509
|
+
artifacts.sourceCommit !== candidate.sourceCommit ||
|
|
418
510
|
!artifacts.provenance ||
|
|
419
511
|
!/^[1-9]\\d*$/.test(artifacts.provenance.runAttempt ?? '') ||
|
|
420
512
|
!/^[1-9]\\d*$/.test(artifacts.provenance.runId ?? '') ||
|
|
421
513
|
typeof artifacts.provenance.workflow !== 'string' ||
|
|
422
|
-
artifacts.provenance.runId !==
|
|
423
|
-
artifacts.provenance.
|
|
514
|
+
artifacts.provenance.runId !== candidate.provenance.runId ||
|
|
515
|
+
artifacts.provenance.runAttempt !== candidate.provenance.runAttempt ||
|
|
516
|
+
artifacts.provenance.workflow !== candidate.provenance.workflow ||
|
|
424
517
|
!Array.isArray(artifacts.artifacts) ||
|
|
425
|
-
!Array.isArray(manifest.artifacts) ||
|
|
426
518
|
!Array.isArray(releaseControls.artifactInventory)
|
|
427
519
|
) {
|
|
428
520
|
throw new Error(
|
|
429
|
-
'Release
|
|
521
|
+
'Release candidate and artifact evidence are not exactly bound.',
|
|
430
522
|
);
|
|
431
523
|
}
|
|
432
524
|
const inventoryDigest = digestBytes(
|
|
@@ -435,48 +527,34 @@ const inventoryDigest = digestBytes(
|
|
|
435
527
|
const capturedByName = new Map(
|
|
436
528
|
artifacts.artifacts.map((artifact) => [artifact?.name, artifact]),
|
|
437
529
|
);
|
|
438
|
-
const manifestByName = new Map(
|
|
439
|
-
manifest.artifacts.map((artifact) => [artifact?.name, artifact]),
|
|
440
|
-
);
|
|
441
530
|
if (
|
|
531
|
+
candidate.inventoryDigest !== inventoryDigest ||
|
|
442
532
|
artifacts.inventoryDigest !== inventoryDigest ||
|
|
443
533
|
artifacts.artifacts.length !== releaseControls.artifactInventory.length ||
|
|
444
|
-
manifest.artifacts.length !== releaseControls.artifactInventory.length ||
|
|
445
534
|
capturedByName.size !== artifacts.artifacts.length ||
|
|
446
|
-
manifestByName.size !== manifest.artifacts.length ||
|
|
447
535
|
releaseControls.artifactInventory.some((registered) => {
|
|
448
536
|
const captured = capturedByName.get(registered.name);
|
|
449
|
-
const retained = manifestByName.get(registered.name);
|
|
450
537
|
const capturedDigest =
|
|
451
538
|
captured?.classification === 'stage-neutral'
|
|
452
539
|
? captured.digest
|
|
453
540
|
: captured?.candidateDigest;
|
|
454
|
-
const retainedDigest =
|
|
455
|
-
retained?.classification === 'stage-neutral'
|
|
456
|
-
? retained.digest
|
|
457
|
-
: retained?.candidateDigest;
|
|
458
541
|
return (
|
|
459
542
|
!captured ||
|
|
460
|
-
!retained ||
|
|
461
543
|
captured.name !== registered.name ||
|
|
462
544
|
captured.workload !== registered.workload ||
|
|
463
545
|
captured.classification !== registered.classification ||
|
|
464
|
-
retained.workload !== registered.workload ||
|
|
465
|
-
retained.classification !== registered.classification ||
|
|
466
|
-
capturedDigest !== retainedDigest ||
|
|
467
546
|
!SHA256.test(capturedDigest ?? '') ||
|
|
468
547
|
(registered.classification === 'stage-specific' &&
|
|
469
548
|
(captured.reason !== registered.reason ||
|
|
470
|
-
captured.providerEvidence !== registered.providerEvidence
|
|
471
|
-
retained.reason !== registered.reason ||
|
|
472
|
-
retained.providerEvidence !== registered.providerEvidence))
|
|
549
|
+
captured.providerEvidence !== registered.providerEvidence))
|
|
473
550
|
);
|
|
474
551
|
})
|
|
475
552
|
) {
|
|
476
553
|
throw new Error(
|
|
477
|
-
'Release controls
|
|
554
|
+
'Release controls and candidate evidence do not reconcile exactly.',
|
|
478
555
|
);
|
|
479
556
|
}
|
|
557
|
+
const releaseCandidateDigest = digestBytes(candidateBytes);
|
|
480
558
|
const applicability = assessEcrScanApplicability(
|
|
481
559
|
releaseControls,
|
|
482
560
|
slice,
|
|
@@ -514,13 +592,13 @@ if (
|
|
|
514
592
|
'OCI artifacts must use the exact <slice>.<kind>.<workload> identity.',
|
|
515
593
|
);
|
|
516
594
|
}
|
|
517
|
-
const
|
|
595
|
+
const capturedArtifact = capturedByName.get(declared.name);
|
|
518
596
|
const candidateArtifactDigest =
|
|
519
|
-
|
|
520
|
-
?
|
|
521
|
-
:
|
|
597
|
+
capturedArtifact?.classification === 'stage-neutral'
|
|
598
|
+
? capturedArtifact.digest
|
|
599
|
+
: capturedArtifact?.candidateDigest;
|
|
522
600
|
if (
|
|
523
|
-
!
|
|
601
|
+
!capturedArtifact ||
|
|
524
602
|
!SHA256.test(candidateArtifactDigest ?? '') ||
|
|
525
603
|
artifacts.artifacts.filter(({ name }) => name === declared.name).length !== 1
|
|
526
604
|
) {
|
|
@@ -557,7 +635,7 @@ const containerBinding = validateContainerReleaseBinding(
|
|
|
557
635
|
candidateDigests: containerCandidateDigests,
|
|
558
636
|
region: input.region,
|
|
559
637
|
slice,
|
|
560
|
-
sourceCommit:
|
|
638
|
+
sourceCommit: candidate.sourceCommit,
|
|
561
639
|
stage: input.stage,
|
|
562
640
|
},
|
|
563
641
|
);
|
|
@@ -565,7 +643,6 @@ const containerArtifact = resolveContainerReleaseArtifact(containerBinding, {
|
|
|
565
643
|
artifactId: input.artifactId,
|
|
566
644
|
candidateArtifactDigest,
|
|
567
645
|
});
|
|
568
|
-
const releaseManifestDigest = digestBytes(manifestBytes);
|
|
569
646
|
const expected = {
|
|
570
647
|
accountId: input.accountId,
|
|
571
648
|
artifactId: input.artifactId,
|
|
@@ -574,11 +651,16 @@ const expected = {
|
|
|
574
651
|
containerImageDigest: containerArtifact.imageDigest,
|
|
575
652
|
imageReference: containerArtifact.imageReference,
|
|
576
653
|
region: input.region,
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
654
|
+
releaseCandidateArtifactDigest:
|
|
655
|
+
postdeployBinding.releaseCandidateArtifactDigest,
|
|
656
|
+
releaseCandidateArtifactId: postdeployBinding.releaseCandidateArtifactId,
|
|
657
|
+
releaseCandidateDigest,
|
|
658
|
+
releaseCandidateProducerRunAttempt:
|
|
659
|
+
postdeployBinding.releaseCandidateProducerRunAttempt,
|
|
660
|
+
releaseCandidateProducerRunId:
|
|
661
|
+
postdeployBinding.releaseCandidateProducerRunId,
|
|
580
662
|
repositoryName: containerArtifact.repositoryName,
|
|
581
|
-
sourceCommit:
|
|
663
|
+
sourceCommit: candidate.sourceCommit,
|
|
582
664
|
stage: input.stage,
|
|
583
665
|
taskDefinitionFamily: input.taskDefinitionFamily,
|
|
584
666
|
deployment: input.deployment,
|
|
@@ -1092,7 +1174,8 @@ try {
|
|
|
1092
1174
|
}
|
|
1093
1175
|
|
|
1094
1176
|
const prefix =
|
|
1095
|
-
|
|
1177
|
+
'release-candidate-' + releaseCandidateDigest.slice(0, 32) + '-' +
|
|
1178
|
+
declared.name.replaceAll('/', '-');
|
|
1096
1179
|
const sbom = createCycloneDxPlatformSbomUnion({
|
|
1097
1180
|
artifact: {
|
|
1098
1181
|
'bom-ref': deploymentBinding.imageReference,
|
|
@@ -1150,9 +1233,15 @@ try {
|
|
|
1150
1233
|
{ name: 'ebk:image:digest', value: imageDigest },
|
|
1151
1234
|
{ name: 'ebk:image:reference', value: deploymentBinding.imageReference },
|
|
1152
1235
|
{ name: 'ebk:inventory:scope', value: 'final-oci-contents' },
|
|
1153
|
-
{
|
|
1154
|
-
|
|
1155
|
-
|
|
1236
|
+
{
|
|
1237
|
+
name: 'ebk:release-candidate:artifact-digest',
|
|
1238
|
+
value: postdeployBinding.releaseCandidateArtifactDigest,
|
|
1239
|
+
},
|
|
1240
|
+
{
|
|
1241
|
+
name: 'ebk:release-candidate:sha256',
|
|
1242
|
+
value: releaseCandidateDigest,
|
|
1243
|
+
},
|
|
1244
|
+
{ name: 'ebk:source:commit', value: candidate.sourceCommit },
|
|
1156
1245
|
],
|
|
1157
1246
|
});
|
|
1158
1247
|
const serializedSbom = JSON.stringify(sbom, null, 2) + '\\n';
|
|
@@ -1166,8 +1255,8 @@ try {
|
|
|
1166
1255
|
accountId: input.accountId,
|
|
1167
1256
|
artifactId: declared.name,
|
|
1168
1257
|
region: input.region,
|
|
1169
|
-
|
|
1170
|
-
sourceCommit:
|
|
1258
|
+
releaseCandidateDigest,
|
|
1259
|
+
sourceCommit: candidate.sourceCommit,
|
|
1171
1260
|
stage: input.stage,
|
|
1172
1261
|
},
|
|
1173
1262
|
};
|
|
@@ -1182,12 +1271,17 @@ try {
|
|
|
1182
1271
|
collectorTranscriptDigest: transcript.materialDigest,
|
|
1183
1272
|
deploymentBindingDigest: deploymentBinding.materialDigest,
|
|
1184
1273
|
region: input.region,
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1274
|
+
releaseCandidateArtifactDigest:
|
|
1275
|
+
postdeployBinding.releaseCandidateArtifactDigest,
|
|
1276
|
+
releaseCandidateArtifactId: postdeployBinding.releaseCandidateArtifactId,
|
|
1277
|
+
releaseCandidateDigest,
|
|
1278
|
+
releaseCandidateProducerRunAttempt:
|
|
1279
|
+
postdeployBinding.releaseCandidateProducerRunAttempt,
|
|
1280
|
+
releaseCandidateProducerRunId:
|
|
1281
|
+
postdeployBinding.releaseCandidateProducerRunId,
|
|
1188
1282
|
repositoryName,
|
|
1189
1283
|
sbomInventoryScope: 'final-oci-contents',
|
|
1190
|
-
sourceCommit:
|
|
1284
|
+
sourceCommit: candidate.sourceCommit,
|
|
1191
1285
|
stage: input.stage,
|
|
1192
1286
|
};
|
|
1193
1287
|
const target = {
|
|
@@ -1285,11 +1379,14 @@ try {
|
|
|
1285
1379
|
})),
|
|
1286
1380
|
),
|
|
1287
1381
|
kind: 'ebk-production-release-component-impact',
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1382
|
+
releaseCandidate: {
|
|
1383
|
+
artifactDigest: postdeployBinding.releaseCandidateArtifactDigest,
|
|
1384
|
+
artifactId: postdeployBinding.releaseCandidateArtifactId,
|
|
1385
|
+
digest: releaseCandidateDigest,
|
|
1386
|
+
producerRunAttempt:
|
|
1387
|
+
postdeployBinding.releaseCandidateProducerRunAttempt,
|
|
1388
|
+
producerRunId: postdeployBinding.releaseCandidateProducerRunId,
|
|
1389
|
+
sourceCommit: candidate.sourceCommit,
|
|
1293
1390
|
stage: input.stage,
|
|
1294
1391
|
},
|
|
1295
1392
|
sbom: {
|
|
@@ -1334,7 +1431,7 @@ try {
|
|
|
1334
1431
|
deploymentBindingDigest: deploymentBinding.materialDigest,
|
|
1335
1432
|
imageDigest,
|
|
1336
1433
|
impactDigest: impact.materialDigest,
|
|
1337
|
-
|
|
1434
|
+
releaseCandidateDigest,
|
|
1338
1435
|
platformScanEvidenceDigests: scanEvidence.platformScans,
|
|
1339
1436
|
scanEvidenceDigest: scanEvidence.materialDigest,
|
|
1340
1437
|
sbomDigest,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-ecr-collector-command.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-ecr-collector-command.ts"],"names":[],"mappings":";;;AAsEA,
|
|
1
|
+
{"version":3,"file":"generated-ecr-collector-command.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-ecr-collector-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -307,9 +307,10 @@ accounts must differ.
|
|
|
307
307
|
|
|
308
308
|
The v1 executable-action inventory admits only reviewed external actions
|
|
309
309
|
pinned to full Git commit SHAs and Docker actions pinned to immutable image
|
|
310
|
-
digests.
|
|
311
|
-
|
|
312
|
-
|
|
310
|
+
digests. Static job-level \`uses: ./.github/workflows/*.yml\` calls are admitted
|
|
311
|
+
only when the exact repository target exists and declares \`workflow_call\`.
|
|
312
|
+
Repository-local step actions remain rejected instead of silently trusting a
|
|
313
|
+
local composite execution graph.
|
|
313
314
|
|
|
314
315
|
Default workspace verification runs the explicit
|
|
315
316
|
\`structural-scanner-input.json\` sentinel. Its output records that no scanner
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-files.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-files.ts"],"names":[],"mappings":";;;AAgDA,8EAmDC;AAMD,kEAyBC;AAED,
|
|
1
|
+
{"version":3,"file":"generated-files.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/generated-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ export * from './blueprint-verification-execution.js';
|
|
|
6
6
|
export * from './pnpm-toolchain-authority.js';
|
|
7
7
|
export * from './container-artifact-contract.js';
|
|
8
8
|
export * from './container-release.js';
|
|
9
|
-
export { supplyChainDigest } from './common.js';
|
|
9
|
+
export { hasSensitiveSupplyChainShape, supplyChainDigest } from './common.js';
|
|
10
10
|
export * from './ecs-deployed-image.js';
|
|
11
11
|
export * from './errors.js';
|
|
12
12
|
export * from './build-output.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.frameworkActionPinInventory = exports.supplyChainDigest = void 0;
|
|
3
|
+
exports.frameworkActionPinInventory = exports.supplyChainDigest = exports.hasSensitiveSupplyChainShape = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
tslib_1.__exportStar(require("./action-pins.js"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./blueprint-trust.js"), exports);
|
|
@@ -11,6 +11,7 @@ tslib_1.__exportStar(require("./pnpm-toolchain-authority.js"), exports);
|
|
|
11
11
|
tslib_1.__exportStar(require("./container-artifact-contract.js"), exports);
|
|
12
12
|
tslib_1.__exportStar(require("./container-release.js"), exports);
|
|
13
13
|
var common_js_1 = require("./common.js");
|
|
14
|
+
Object.defineProperty(exports, "hasSensitiveSupplyChainShape", { enumerable: true, get: function () { return common_js_1.hasSensitiveSupplyChainShape; } });
|
|
14
15
|
Object.defineProperty(exports, "supplyChainDigest", { enumerable: true, get: function () { return common_js_1.supplyChainDigest; } });
|
|
15
16
|
tslib_1.__exportStar(require("./ecs-deployed-image.js"), exports);
|
|
16
17
|
tslib_1.__exportStar(require("./errors.js"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/index.ts"],"names":[],"mappings":";;;;AAAA,2DAAiC;AACjC,+DAAqC;AACrC,mEAAyC;AACzC,gFAAsD;AACtD,gFAAsD;AACtD,wEAA8C;AAC9C,2EAAiD;AACjD,iEAAuC;AACvC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/nx/src/supply-chain/index.ts"],"names":[],"mappings":";;;;AAAA,2DAAiC;AACjC,+DAAqC;AACrC,mEAAyC;AACzC,gFAAsD;AACtD,gFAAsD;AACtD,wEAA8C;AAC9C,2EAAiD;AACjD,iEAAuC;AACvC,yCAA8E;AAArE,yHAAA,4BAA4B,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AACxD,kEAAwC;AACxC,sDAA4B;AAC5B,4DAAkC;AAClC,iEAAuC;AACvC,4DAAkC;AAClC,+DAAqC;AACrC,2DAAmE;AAA1D,iIAAA,2BAA2B,OAAA;AACpC,+EAAqD;AACrD,iFAAuD;AACvD,mFAAyD;AACzD,yEAA+C;AAC/C,yDAA+B;AAC/B,kEAAwC;AACxC,sDAA4B;AAC5B,2DAAiC;AACjC,yEAA+C;AAC/C,uDAA6B;AAC7B,oDAA0B;AAC1B,+DAAqC"}
|
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export
|
|
10
|
-
export
|
|
11
|
-
export * from './history.js';
|
|
12
|
-
export * from './injection.js';
|
|
13
|
-
export * from './manifest.js';
|
|
14
|
-
export * from './provisioner.js';
|
|
15
|
-
export * from './registration.js';
|
|
16
|
-
export * from './standard-slice.js';
|
|
17
|
-
export * from './stage-boundary.js';
|
|
1
|
+
/**
|
|
2
|
+
* Runtime-intent helpers used by SST-owned workload role creation.
|
|
3
|
+
*
|
|
4
|
+
* Candidate-bound manifests, provisioners, registrations, convergence, and
|
|
5
|
+
* AWS control-plane adapters are intentionally not public in the thin
|
|
6
|
+
* lifecycle. Native SST creates the roles; generated infrastructure consumes
|
|
7
|
+
* only this topology and permission-intent surface.
|
|
8
|
+
*/
|
|
9
|
+
export type { WorkloadRolePermissionIntent } from './effective-policy.js';
|
|
10
|
+
export { STANDARD_SLICE_WORKLOAD_EXTENSION_KINDS, StandardSliceWorkloadRoleError, createStandardSliceWorkloadRoleTopology, type StandardSliceServiceAdapterMetadata, type StandardSliceWorkloadExtension, type StandardSliceWorkloadExtensionKind, type StandardSliceWorkloadRoleFailureClassification, type StandardSliceWorkloadRoleTopology, type StandardSliceWorkloadRoleTopologyEntry, } from './standard-slice.js';
|
|
@@ -1,21 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
tslib_1.__exportStar(require("./account-baseline.js"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./authority.js"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./boundary.js"), exports);
|
|
11
|
-
tslib_1.__exportStar(require("./convergence.js"), exports);
|
|
12
|
-
tslib_1.__exportStar(require("./effective-policy.js"), exports);
|
|
13
|
-
tslib_1.__exportStar(require("./handler.js"), exports);
|
|
14
|
-
tslib_1.__exportStar(require("./history.js"), exports);
|
|
15
|
-
tslib_1.__exportStar(require("./injection.js"), exports);
|
|
16
|
-
tslib_1.__exportStar(require("./manifest.js"), exports);
|
|
17
|
-
tslib_1.__exportStar(require("./provisioner.js"), exports);
|
|
18
|
-
tslib_1.__exportStar(require("./registration.js"), exports);
|
|
19
|
-
tslib_1.__exportStar(require("./standard-slice.js"), exports);
|
|
20
|
-
tslib_1.__exportStar(require("./stage-boundary.js"), exports);
|
|
3
|
+
exports.createStandardSliceWorkloadRoleTopology = exports.StandardSliceWorkloadRoleError = exports.STANDARD_SLICE_WORKLOAD_EXTENSION_KINDS = void 0;
|
|
4
|
+
var standard_slice_js_1 = require("./standard-slice.js");
|
|
5
|
+
Object.defineProperty(exports, "STANDARD_SLICE_WORKLOAD_EXTENSION_KINDS", { enumerable: true, get: function () { return standard_slice_js_1.STANDARD_SLICE_WORKLOAD_EXTENSION_KINDS; } });
|
|
6
|
+
Object.defineProperty(exports, "StandardSliceWorkloadRoleError", { enumerable: true, get: function () { return standard_slice_js_1.StandardSliceWorkloadRoleError; } });
|
|
7
|
+
Object.defineProperty(exports, "createStandardSliceWorkloadRoleTopology", { enumerable: true, get: function () { return standard_slice_js_1.createStandardSliceWorkloadRoleTopology; } });
|
|
21
8
|
//# sourceMappingURL=index.js.map
|