@empire-builder-kit/nx 1.0.0-rc.2 → 1.0.0-rc.21
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 +10 -0
- package/package.json +4 -4
- package/src/cli/output.js +1 -1
- package/src/developer-agent/model.js +4 -4
- package/src/developer-agent/model.js.map +1 -1
- package/src/developer-agent/operation-registry.js +67 -10
- package/src/developer-agent/operation-registry.js.map +1 -1
- package/src/developer-agent/planning.js +7 -9
- package/src/developer-agent/planning.js.map +1 -1
- package/src/developer-agent/workspace-inspection.js +12 -0
- package/src/developer-agent/workspace-inspection.js.map +1 -1
- package/src/executors/blueprint-trust/blueprint-trust.js +6 -0
- package/src/executors/blueprint-trust/blueprint-trust.js.map +1 -1
- package/src/executors/deployment-plan/deployment-plan.js +5 -0
- package/src/executors/deployment-plan/deployment-plan.js.map +1 -1
- package/src/executors/foundation-preflight/foundation-preflight.d.ts +2 -0
- package/src/executors/foundation-preflight/foundation-preflight.js +6 -2
- package/src/executors/foundation-preflight/foundation-preflight.js.map +1 -1
- package/src/executors/foundation-preflight/schema.json +10 -0
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +2 -0
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +2 -1
- package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +1 -1
- package/src/executors/foundation-profile-preflight/schema.json +19 -3
- package/src/executors/github-bootstrap/github-bootstrap.js +1 -0
- package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -1
- package/src/executors/infrastructure-plan/infrastructure-plan.d.ts +229 -5
- package/src/executors/infrastructure-plan/infrastructure-plan.js +2298 -175
- package/src/executors/infrastructure-plan/infrastructure-plan.js.map +1 -1
- package/src/executors/infrastructure-plan/schema.json +16 -0
- package/src/executors/local-deploy/fixtures/local-deploy-state-machine.mjs +53 -0
- package/src/executors/local-deploy/local-approval.d.ts +23 -0
- package/src/executors/local-deploy/local-approval.js +43 -0
- package/src/executors/local-deploy/local-approval.js.map +1 -0
- package/src/executors/local-deploy/local-deploy.d.ts +69 -0
- package/src/executors/local-deploy/local-deploy.js +911 -0
- package/src/executors/local-deploy/local-deploy.js.map +1 -0
- package/src/executors/local-deploy/schema.json +42 -0
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.d.ts +3 -0
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js +94 -0
- package/src/executors/router-waf-rehearsal/router-waf-rehearsal.js.map +1 -0
- package/src/executors/router-waf-rehearsal/schema.json +9 -0
- package/src/executors/secret-metadata/schema.json +5 -0
- package/src/executors/secret-metadata/secret-metadata.d.ts +12 -1
- package/src/executors/secret-metadata/secret-metadata.js +68 -16
- package/src/executors/secret-metadata/secret-metadata.js.map +1 -1
- package/src/executors/sst-lifecycle/logging-preflight.d.ts +5 -0
- package/src/executors/sst-lifecycle/logging-preflight.js +23 -13
- package/src/executors/sst-lifecycle/logging-preflight.js.map +1 -1
- package/src/executors/sst-lifecycle/run-sst-command.d.ts +8 -1
- package/src/executors/sst-lifecycle/run-sst-command.js +144 -12
- package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -1
- package/src/executors/sst-lifecycle/schema.json +13 -1
- package/src/executors/sst-lifecycle/sst-environment-source.d.ts +25 -0
- package/src/executors/sst-lifecycle/sst-environment-source.js +213 -0
- package/src/executors/sst-lifecycle/sst-environment-source.js.map +1 -0
- package/src/foundation/index.d.ts +2 -0
- package/src/foundation/index.js +2 -0
- package/src/foundation/index.js.map +1 -1
- package/src/foundation/logging-preflight.js +1 -1
- package/src/foundation/logging-preflight.js.map +1 -1
- package/src/foundation/logging.d.ts +3 -1
- package/src/foundation/logging.js +1 -1
- package/src/foundation/logging.js.map +1 -1
- package/src/foundation/partial-state.d.ts +10 -0
- package/src/foundation/partial-state.js +21 -0
- package/src/foundation/partial-state.js.map +1 -0
- package/src/foundation/router-waf.d.ts +98 -0
- package/src/foundation/router-waf.js +401 -0
- package/src/foundation/router-waf.js.map +1 -0
- package/src/generators/function/function.js +2 -1
- package/src/generators/function/function.js.map +1 -1
- package/src/generators/post-generation-install.d.ts +1 -0
- package/src/generators/post-generation-install.js +134 -67
- package/src/generators/post-generation-install.js.map +1 -1
- package/src/generators/preset/generator.js +23 -3
- package/src/generators/preset/generator.js.map +1 -1
- package/src/generators/preset/schema.d.ts +7 -0
- package/src/generators/preset/schema.json +47 -0
- package/src/generators/preset/tool-versions.d.ts +5 -5
- package/src/generators/preset/tool-versions.js +4 -4
- package/src/generators/preset/workspace-files-ci-acceptance.d.ts +1 -0
- package/src/generators/preset/workspace-files-ci-acceptance.js +791 -0
- package/src/generators/preset/workspace-files-ci-acceptance.js.map +1 -0
- package/src/generators/preset/workspace-files-developer-agent.d.ts +2 -0
- package/src/generators/preset/workspace-files-developer-agent.js +25 -11
- package/src/generators/preset/workspace-files-developer-agent.js.map +1 -1
- package/src/generators/preset/workspace-files-foundation-workload-roles.js +5 -2
- package/src/generators/preset/workspace-files-foundation-workload-roles.js.map +1 -1
- package/src/generators/preset/workspace-files-performance-load.js +2 -1
- package/src/generators/preset/workspace-files-performance-load.js.map +1 -1
- package/src/generators/preset/workspace-files-workload-role-baseline.js +254 -42
- package/src/generators/preset/workspace-files-workload-role-baseline.js.map +1 -1
- package/src/generators/preset/workspace-files.d.ts +8 -4
- package/src/generators/preset/workspace-files.js +1039 -68
- package/src/generators/preset/workspace-files.js.map +1 -1
- package/src/generators/repository-policy/repository-policy.js +65 -3
- package/src/generators/repository-policy/repository-policy.js.map +1 -1
- package/src/generators/repository-policy/schema.d.ts +6 -0
- package/src/generators/repository-policy/schema.json +46 -0
- package/src/generators/slice/built-in-plan-api-files.js +2 -1
- package/src/generators/slice/built-in-plan-api-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js +19 -1
- package/src/generators/slice/built-in-plan-authorization-infrastructure-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-files.js +16 -5
- package/src/generators/slice/built-in-plan-data-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-data-retention-job-files.js +10 -6
- package/src/generators/slice/built-in-plan-data-retention-job-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js +25 -10
- package/src/generators/slice/built-in-plan-database-lifecycle-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-foundation-files.js +2 -3
- package/src/generators/slice/built-in-plan-foundation-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-infrastructure-files.js +364 -29
- package/src/generators/slice/built-in-plan-infrastructure-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js +67 -11
- package/src/generators/slice/built-in-plan-infrastructure-safety-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-metadata-files.js +1 -0
- package/src/generators/slice/built-in-plan-metadata-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-operations-files.js +442 -5
- package/src/generators/slice/built-in-plan-operations-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-performance-files.d.ts +2 -1
- package/src/generators/slice/built-in-plan-performance-files.js +41 -47
- package/src/generators/slice/built-in-plan-performance-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-project-files.js +14 -1
- package/src/generators/slice/built-in-plan-project-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-release-files.js +235 -56
- package/src/generators/slice/built-in-plan-release-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-testing-files.js +92 -5
- package/src/generators/slice/built-in-plan-testing-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-web-files.js +13 -0
- package/src/generators/slice/built-in-plan-web-files.js.map +1 -1
- package/src/generators/slice/built-in-plan-workload-role-files.js +5 -2
- package/src/generators/slice/built-in-plan-workload-role-files.js.map +1 -1
- package/src/generators/slice/built-in-plan.d.ts +2 -1
- package/src/generators/slice/built-in-plan.js +8 -5
- package/src/generators/slice/built-in-plan.js.map +1 -1
- package/src/generators/slice/slice.js +11 -3
- package/src/generators/slice/slice.js.map +1 -1
- package/src/generators/upgrade/upgrade.js +35 -0
- package/src/generators/upgrade/upgrade.js.map +1 -1
- package/src/generators/workload/frozen-container.d.ts +3 -2
- package/src/generators/workload/frozen-container.js +6 -4
- package/src/generators/workload/frozen-container.js.map +1 -1
- package/src/generators/workload/workload.js +2 -2
- package/src/generators/workload/workload.js.map +1 -1
- package/src/git-policy/github-bootstrap.d.ts +3 -1
- package/src/git-policy/github-bootstrap.js +22 -5
- package/src/git-policy/github-bootstrap.js.map +1 -1
- package/src/git-policy/routing.d.ts +2 -0
- package/src/git-policy/routing.js +12 -1
- package/src/git-policy/routing.js.map +1 -1
- package/src/infrastructure-change/local-capability.d.ts +73 -0
- package/src/infrastructure-change/local-capability.js +114 -0
- package/src/infrastructure-change/local-capability.js.map +1 -0
- package/src/infrastructure-change/model.d.ts +25 -4
- package/src/infrastructure-change/model.js +1 -0
- package/src/infrastructure-change/model.js.map +1 -1
- package/src/infrastructure-change/normalize.d.ts +4 -0
- package/src/infrastructure-change/normalize.js +47 -7
- package/src/infrastructure-change/normalize.js.map +1 -1
- package/src/infrastructure-change/plan.d.ts +30 -3
- package/src/infrastructure-change/plan.js +323 -13
- package/src/infrastructure-change/plan.js.map +1 -1
- package/src/infrastructure-change/risk.d.ts +3 -1
- package/src/infrastructure-change/risk.js +96 -16
- package/src/infrastructure-change/risk.js.map +1 -1
- package/src/local-dev/environment-inspector.d.ts +1 -0
- package/src/local-dev/environment-inspector.js +21 -9
- package/src/local-dev/environment-inspector.js.map +1 -1
- package/src/local-dev/private-state.d.ts +2 -0
- package/src/local-dev/private-state.js +3 -1
- package/src/local-dev/private-state.js.map +1 -1
- package/src/performance/cost-controls.d.ts +5 -3
- package/src/performance/cost-controls.js +30 -24
- package/src/performance/cost-controls.js.map +1 -1
- package/src/performance/model.d.ts +1 -1
- package/src/performance/model.js +0 -2
- package/src/performance/model.js.map +1 -1
- package/src/performance/test-fixtures.js +0 -2
- package/src/performance/test-fixtures.js.map +1 -1
- package/src/release/source-authority.d.ts +1 -0
- package/src/release/source-authority.js +136 -9
- package/src/release/source-authority.js.map +1 -1
- package/src/repository-policy/deployment-plan.d.ts +4 -1
- package/src/repository-policy/deployment-plan.js +8 -0
- package/src/repository-policy/deployment-plan.js.map +1 -1
- package/src/repository-policy/foundation-profile.js +1 -2
- package/src/repository-policy/foundation-profile.js.map +1 -1
- package/src/repository-policy/policy.d.ts +25 -1
- package/src/repository-policy/policy.js +145 -4
- package/src/repository-policy/policy.js.map +1 -1
- package/src/schemas/performance-policy-v1.json +0 -2
- package/src/schemas/repository-policy-v1.json +41 -0
- package/src/secrets/operator.js +22 -4
- package/src/secrets/operator.js.map +1 -1
- package/src/secrets/verification.js +9 -1
- package/src/secrets/verification.js.map +1 -1
- package/src/sst-environment-source-format.d.ts +3 -0
- package/src/sst-environment-source-format.js +179 -0
- package/src/sst-environment-source-format.js.map +1 -0
- package/src/supply-chain/blueprint-trust-git.js +72 -21
- package/src/supply-chain/blueprint-trust-git.js.map +1 -1
- package/src/supply-chain/blueprint-verification-authority.js +55 -3
- package/src/supply-chain/blueprint-verification-authority.js.map +1 -1
- package/src/supply-chain/blueprint-verification-execution.js +17 -2
- package/src/supply-chain/blueprint-verification-execution.js.map +1 -1
- package/src/supply-chain/build-output.d.ts +7 -1
- package/src/supply-chain/build-output.js +160 -20
- package/src/supply-chain/build-output.js.map +1 -1
- package/src/supply-chain/generated-command.js +131 -43
- package/src/supply-chain/generated-command.js.map +1 -1
- package/src/supply-chain/generated-container-release-command.js +187 -38
- package/src/supply-chain/generated-container-release-command.js.map +1 -1
- package/src/supply-chain/generated-ecr-collector-command.js +12 -2
- package/src/supply-chain/generated-ecr-collector-command.js.map +1 -1
- package/src/supply-chain/generated-scanner-command.js +114 -54
- package/src/supply-chain/generated-scanner-command.js.map +1 -1
- package/src/supply-chain/inventory.d.ts +17 -0
- package/src/supply-chain/inventory.js +114 -3
- package/src/supply-chain/inventory.js.map +1 -1
- package/src/supply-chain/pnpm-toolchain-authority.d.ts +4 -3
- package/src/supply-chain/pnpm-toolchain-authority.js +20 -34
- package/src/supply-chain/pnpm-toolchain-authority.js.map +1 -1
- package/src/supply-chain/policy.js +4 -1
- package/src/supply-chain/policy.js.map +1 -1
- package/src/supply-chain/sbom.d.ts +1 -1
- package/src/supply-chain/sbom.js +30 -5
- package/src/supply-chain/sbom.js.map +1 -1
- package/src/supply-chain/scanner.js +10 -1
- package/src/supply-chain/scanner.js.map +1 -1
- package/src/workload-roles/account-baseline.d.ts +11 -0
- package/src/workload-roles/account-baseline.js +253 -16
- package/src/workload-roles/account-baseline.js.map +1 -1
- package/src/workload-roles/authority.d.ts +3 -1
- package/src/workload-roles/authority.js +48 -2
- package/src/workload-roles/authority.js.map +1 -1
- package/src/workload-roles/aws-s3-state.js +27 -0
- package/src/workload-roles/aws-s3-state.js.map +1 -1
- package/src/workload-roles/boundary.d.ts +2 -1
- package/src/workload-roles/boundary.js +9 -2
- package/src/workload-roles/boundary.js.map +1 -1
- package/src/workload-roles/handler.js +52 -24
- package/src/workload-roles/handler.js.map +1 -1
- package/src/workload-roles/injection.js +1 -1
- package/src/workload-roles/injection.js.map +1 -1
- package/src/workload-roles/provisioner.js +12 -4
- package/src/workload-roles/provisioner.js.map +1 -1
- package/src/workload-roles/registration.d.ts +1 -0
- package/src/workload-roles/registration.js +5 -0
- package/src/workload-roles/registration.js.map +1 -1
- package/src/workload-roles/stage-boundary.js +1 -1
- package/src/workload-roles/stage-boundary.js.map +1 -1
- package/src/workload-roles/standard-slice.js +1 -0
- package/src/workload-roles/standard-slice.js.map +1 -1
|
@@ -133,6 +133,7 @@ export function resolveStandardContainerImage(input: {
|
|
|
133
133
|
process.env.EBK_SOURCE_COMMIT?.trim() ?? input.sourceCommit,
|
|
134
134
|
releaseSourceCommit: input.sourceCommit,
|
|
135
135
|
repositoryRoot,
|
|
136
|
+
sstEnvironmentProjectRoot: resolve(repositoryRoot, 'packages/${name}'),
|
|
136
137
|
});
|
|
137
138
|
const controls = readJson(
|
|
138
139
|
repositoryRoot,
|
|
@@ -1661,11 +1662,20 @@ import {
|
|
|
1661
1662
|
lstatSync,
|
|
1662
1663
|
mkdirSync,
|
|
1663
1664
|
readFileSync,
|
|
1665
|
+
readlinkSync,
|
|
1664
1666
|
readdirSync,
|
|
1665
1667
|
realpathSync,
|
|
1666
1668
|
writeFileSync,
|
|
1667
1669
|
} from 'node:fs';
|
|
1668
|
-
import {
|
|
1670
|
+
import {
|
|
1671
|
+
basename,
|
|
1672
|
+
dirname,
|
|
1673
|
+
isAbsolute,
|
|
1674
|
+
join,
|
|
1675
|
+
relative,
|
|
1676
|
+
resolve,
|
|
1677
|
+
sep,
|
|
1678
|
+
} from 'node:path';
|
|
1669
1679
|
import {
|
|
1670
1680
|
createNextJsBuildOutputInventory,
|
|
1671
1681
|
validateContainerArtifactIdentity,
|
|
@@ -1680,12 +1690,41 @@ const sourceCommit =
|
|
|
1680
1690
|
if (!sourceCommit || !/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/.test(sourceCommit)) {
|
|
1681
1691
|
throw new Error('EBK_SOURCE_COMMIT must be one exact Git object ID.');
|
|
1682
1692
|
}
|
|
1683
|
-
const repositoryRoot =
|
|
1684
|
-
'git',
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
)
|
|
1688
|
-
const repositoryRootReal =
|
|
1693
|
+
const repositoryRoot = realpathSync(
|
|
1694
|
+
execFileSync('git', ['rev-parse', '--show-toplevel'], {
|
|
1695
|
+
encoding: 'utf8',
|
|
1696
|
+
}).trim(),
|
|
1697
|
+
);
|
|
1698
|
+
const repositoryRootReal = repositoryRoot;
|
|
1699
|
+
const repositoryRootIdentity = lstatSync(repositoryRootReal, {
|
|
1700
|
+
bigint: true,
|
|
1701
|
+
});
|
|
1702
|
+
if (
|
|
1703
|
+
!repositoryRootIdentity.isDirectory() ||
|
|
1704
|
+
repositoryRootIdentity.ino === 0n
|
|
1705
|
+
) {
|
|
1706
|
+
throw new Error('Artifact capture cannot bind the repository identity.');
|
|
1707
|
+
}
|
|
1708
|
+
const repositoryRelativeRealPath = (absolute, pointer) => {
|
|
1709
|
+
const segments = [];
|
|
1710
|
+
let current = absolute;
|
|
1711
|
+
for (let depth = 0; depth <= 1024; depth += 1) {
|
|
1712
|
+
const identity = lstatSync(current, { bigint: true });
|
|
1713
|
+
if (
|
|
1714
|
+
identity.dev === repositoryRootIdentity.dev &&
|
|
1715
|
+
identity.ino === repositoryRootIdentity.ino
|
|
1716
|
+
) {
|
|
1717
|
+
return segments.reverse().join(sep);
|
|
1718
|
+
}
|
|
1719
|
+
const parent = dirname(current);
|
|
1720
|
+
if (parent === current) break;
|
|
1721
|
+
const segment = basename(current);
|
|
1722
|
+
if (!segment || segment === '.' || segment === '..') break;
|
|
1723
|
+
segments.push(segment);
|
|
1724
|
+
current = parent;
|
|
1725
|
+
}
|
|
1726
|
+
throw new Error(pointer + ' resolves outside the repository.');
|
|
1727
|
+
};
|
|
1689
1728
|
const requireCleanTree = () => {
|
|
1690
1729
|
const status = execFileSync(
|
|
1691
1730
|
'git',
|
|
@@ -1896,7 +1935,7 @@ if (
|
|
|
1896
1935
|
) {
|
|
1897
1936
|
throw new Error('Generated artifact inventory names must be unique.');
|
|
1898
1937
|
}
|
|
1899
|
-
const safeFiles = (paths, pointer) => {
|
|
1938
|
+
const safeFiles = (paths, pointer, { allowSymbolicLinks = false } = {}) => {
|
|
1900
1939
|
if (!Array.isArray(paths) || paths.length === 0) {
|
|
1901
1940
|
throw new Error(pointer + ' must name at least one artifact path.');
|
|
1902
1941
|
}
|
|
@@ -1916,33 +1955,61 @@ const safeFiles = (paths, pointer) => {
|
|
|
1916
1955
|
throw new Error(pointer + ' contains a path outside the repository.');
|
|
1917
1956
|
}
|
|
1918
1957
|
let walked = repositoryRootReal;
|
|
1919
|
-
|
|
1958
|
+
const segments = pathFromRoot.split(sep);
|
|
1959
|
+
for (const [index, segment] of segments.entries()) {
|
|
1920
1960
|
walked = resolve(walked, segment);
|
|
1921
|
-
if (
|
|
1961
|
+
if (
|
|
1962
|
+
lstatSync(walked).isSymbolicLink() &&
|
|
1963
|
+
(!allowSymbolicLinks || index !== segments.length - 1)
|
|
1964
|
+
) {
|
|
1922
1965
|
throw new Error(pointer + ' may not traverse symbolic links.');
|
|
1923
1966
|
}
|
|
1924
1967
|
}
|
|
1925
1968
|
const real = realpathSync(absolute);
|
|
1926
|
-
const realFromRoot =
|
|
1927
|
-
if (
|
|
1928
|
-
realFromRoot === '..' ||
|
|
1929
|
-
realFromRoot.startsWith('..' + sep) ||
|
|
1930
|
-
isAbsolute(realFromRoot)
|
|
1931
|
-
) {
|
|
1932
|
-
throw new Error(pointer + ' resolves outside the repository.');
|
|
1933
|
-
}
|
|
1969
|
+
const realFromRoot = repositoryRelativeRealPath(real, pointer);
|
|
1934
1970
|
const stat = lstatSync(absolute);
|
|
1935
|
-
|
|
1971
|
+
const normalized = pathFromRoot.split(sep).join('/');
|
|
1972
|
+
if (stat.isSymbolicLink()) {
|
|
1973
|
+
const targetText = readlinkSync(absolute, 'utf8');
|
|
1974
|
+
const target = realFromRoot.split(sep).join('/');
|
|
1975
|
+
const targetStat = lstatSync(real);
|
|
1976
|
+
const targetKind = targetStat.isDirectory()
|
|
1977
|
+
? 'directory'
|
|
1978
|
+
: targetStat.isFile()
|
|
1979
|
+
? 'file'
|
|
1980
|
+
: undefined;
|
|
1981
|
+
if (
|
|
1982
|
+
!allowSymbolicLinks ||
|
|
1983
|
+
Buffer.byteLength(targetText, 'utf8') > 4096 ||
|
|
1984
|
+
!targetKind
|
|
1985
|
+
) {
|
|
1986
|
+
throw new Error(
|
|
1987
|
+
pointer + ' contains an unsupported symbolic link.',
|
|
1988
|
+
);
|
|
1989
|
+
}
|
|
1990
|
+
if (seen.has(normalized)) {
|
|
1991
|
+
throw new Error(pointer + ' contains overlapping artifact paths.');
|
|
1992
|
+
}
|
|
1993
|
+
seen.add(normalized);
|
|
1994
|
+
files.push({
|
|
1995
|
+
kind: 'link',
|
|
1996
|
+
path: normalized,
|
|
1997
|
+
target,
|
|
1998
|
+
targetKind,
|
|
1999
|
+
targetTextSha256: createHash('sha256')
|
|
2000
|
+
.update(targetText, 'utf8')
|
|
2001
|
+
.digest('hex'),
|
|
2002
|
+
});
|
|
2003
|
+
} else if (stat.isDirectory()) {
|
|
1936
2004
|
for (const child of readdirSync(absolute).sort()) {
|
|
1937
2005
|
visit(join(pathFromRoot, child));
|
|
1938
2006
|
}
|
|
1939
2007
|
} else if (stat.isFile()) {
|
|
1940
|
-
const normalized = pathFromRoot.split(sep).join('/');
|
|
1941
2008
|
if (seen.has(normalized)) {
|
|
1942
2009
|
throw new Error(pointer + ' contains overlapping artifact paths.');
|
|
1943
2010
|
}
|
|
1944
2011
|
seen.add(normalized);
|
|
1945
|
-
files.push(
|
|
2012
|
+
files.push({ absolute: real, kind: 'file', path: normalized });
|
|
1946
2013
|
} else {
|
|
1947
2014
|
throw new Error(pointer + ' may contain only regular files.');
|
|
1948
2015
|
}
|
|
@@ -1957,16 +2024,29 @@ const safeFiles = (paths, pointer) => {
|
|
|
1957
2024
|
}
|
|
1958
2025
|
visit(candidate);
|
|
1959
2026
|
}
|
|
1960
|
-
return files.sort((
|
|
2027
|
+
return files.sort(({ path: left }, { path: right }) =>
|
|
1961
2028
|
left < right ? -1 : left > right ? 1 : 0,
|
|
1962
2029
|
);
|
|
1963
2030
|
};
|
|
1964
|
-
const digestPaths = (paths, pointer) => {
|
|
2031
|
+
const digestPaths = (paths, pointer, options) => {
|
|
1965
2032
|
const hash = createHash('sha256');
|
|
1966
|
-
for (const
|
|
1967
|
-
const
|
|
2033
|
+
for (const entry of safeFiles(paths, pointer, options)) {
|
|
2034
|
+
const { path } = entry;
|
|
1968
2035
|
hash.update(path, 'utf8');
|
|
1969
2036
|
hash.update('\\0');
|
|
2037
|
+
if (entry.kind === 'link') {
|
|
2038
|
+
hash.update(entry.kind, 'utf8');
|
|
2039
|
+
hash.update('\\0');
|
|
2040
|
+
hash.update(entry.target, 'utf8');
|
|
2041
|
+
hash.update('\\0');
|
|
2042
|
+
hash.update(entry.targetKind, 'utf8');
|
|
2043
|
+
hash.update('\\0');
|
|
2044
|
+
hash.update(entry.targetTextSha256, 'utf8');
|
|
2045
|
+
hash.update('\\0');
|
|
2046
|
+
continue;
|
|
2047
|
+
}
|
|
2048
|
+
const { absolute } = entry;
|
|
2049
|
+
const content = readFileSync(absolute);
|
|
1970
2050
|
hash.update(String(content.byteLength), 'utf8');
|
|
1971
2051
|
hash.update('\\0');
|
|
1972
2052
|
hash.update(content);
|
|
@@ -2019,6 +2099,11 @@ const artifacts = inventory.map((artifact, index) => {
|
|
|
2019
2099
|
pointer + ' does not match the generated candidate recipe.',
|
|
2020
2100
|
);
|
|
2021
2101
|
}
|
|
2102
|
+
const materialDigestOptions =
|
|
2103
|
+
artifact.buildArtifact?.support === 'supported' &&
|
|
2104
|
+
artifact.buildArtifact.family === 'nextjs-build-output'
|
|
2105
|
+
? { allowSymbolicLinks: true }
|
|
2106
|
+
: undefined;
|
|
2022
2107
|
const common = {
|
|
2023
2108
|
buildRecipeDigest: digestPaths(
|
|
2024
2109
|
binding.recipePaths,
|
|
@@ -2038,6 +2123,7 @@ const artifacts = inventory.map((artifact, index) => {
|
|
|
2038
2123
|
digest: digestPaths(
|
|
2039
2124
|
binding.materialPaths,
|
|
2040
2125
|
pointer + '.materialPaths',
|
|
2126
|
+
materialDigestOptions,
|
|
2041
2127
|
),
|
|
2042
2128
|
stages: ['production', 'staging'],
|
|
2043
2129
|
};
|
|
@@ -2048,6 +2134,7 @@ const artifacts = inventory.map((artifact, index) => {
|
|
|
2048
2134
|
candidateDigest: digestPaths(
|
|
2049
2135
|
binding.materialPaths,
|
|
2050
2136
|
pointer + '.materialPaths',
|
|
2137
|
+
materialDigestOptions,
|
|
2051
2138
|
),
|
|
2052
2139
|
classification: 'stage-specific',
|
|
2053
2140
|
providerEvidence: artifact.providerEvidence,
|
|
@@ -2080,20 +2167,53 @@ const buildOutputs = inventory.flatMap((declared, index) => {
|
|
|
2080
2167
|
];
|
|
2081
2168
|
});
|
|
2082
2169
|
requireCleanTree();
|
|
2083
|
-
const
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2170
|
+
const localFederated =
|
|
2171
|
+
process.env.GITHUB_ACTIONS !== 'true' &&
|
|
2172
|
+
process.env.EBK_LOCAL_DEPLOYMENT_MODE === 'federated';
|
|
2173
|
+
const localStage = process.env.EBK_STAGE?.trim() ?? '';
|
|
2174
|
+
const localAccount = process.env.AWS_EXPECTED_ACCOUNT_ID?.trim() ?? '';
|
|
2175
|
+
const localRegion = process.env.AWS_REGION?.trim() ?? '';
|
|
2176
|
+
if (localFederated) {
|
|
2177
|
+
const policy = JSON.parse(
|
|
2178
|
+
readFileSync(join(repositoryRoot, 'ebk.repository-policy.json'), 'utf8'),
|
|
2179
|
+
);
|
|
2180
|
+
if (
|
|
2181
|
+
policy.deploymentProfile !== 'starter' ||
|
|
2182
|
+
!['development', 'staging'].includes(localStage) ||
|
|
2183
|
+
policy.deploymentAccounts?.[localStage] !== localAccount ||
|
|
2184
|
+
policy.deploymentRegion !== localRegion
|
|
2185
|
+
) {
|
|
2186
|
+
throw new Error(
|
|
2187
|
+
'Local release artifact capture requires a locally admitted exact starter deployment target; production requires protected GitHub authority.',
|
|
2188
|
+
);
|
|
2189
|
+
}
|
|
2190
|
+
}
|
|
2191
|
+
const provenance = localFederated
|
|
2192
|
+
? {
|
|
2193
|
+
runAttempt: '1',
|
|
2194
|
+
runId: (BigInt('0x' + sourceCommit.slice(0, 15)) + 1n).toString(),
|
|
2195
|
+
workflow:
|
|
2196
|
+
'local-federated/' +
|
|
2197
|
+
localStage +
|
|
2198
|
+
'/' +
|
|
2199
|
+
localAccount +
|
|
2200
|
+
'/' +
|
|
2201
|
+
localRegion,
|
|
2202
|
+
}
|
|
2203
|
+
: {
|
|
2204
|
+
runAttempt: process.env.GITHUB_RUN_ATTEMPT?.trim(),
|
|
2205
|
+
runId: process.env.GITHUB_RUN_ID?.trim(),
|
|
2206
|
+
workflow: process.env.GITHUB_WORKFLOW_REF?.trim(),
|
|
2207
|
+
};
|
|
2088
2208
|
if (
|
|
2089
|
-
process.env.GITHUB_ACTIONS
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2209
|
+
(!localFederated && process.env.GITHUB_ACTIONS !== 'true') ||
|
|
2210
|
+
!/^[1-9][0-9]*$/.test(provenance.runAttempt ?? '') ||
|
|
2211
|
+
!/^[1-9][0-9]*$/.test(provenance.runId ?? '') ||
|
|
2212
|
+
!provenance.workflow ||
|
|
2213
|
+
provenance.workflow.length > 512
|
|
2094
2214
|
) {
|
|
2095
2215
|
throw new Error(
|
|
2096
|
-
'
|
|
2216
|
+
'Release artifact capture requires exact GitHub or local-federated provenance.',
|
|
2097
2217
|
);
|
|
2098
2218
|
}
|
|
2099
2219
|
const evidence = {
|
|
@@ -2141,19 +2261,9 @@ import { isBoundedSafeReference } from '@empire-builder-kit/runtime/safe-referen
|
|
|
2141
2261
|
import ts from 'typescript';
|
|
2142
2262
|
|
|
2143
2263
|
const sourceCommit = process.env.EBK_SOURCE_COMMIT?.trim();
|
|
2144
|
-
|
|
2145
|
-
const runAttempt = process.env.GITHUB_RUN_ATTEMPT?.trim();
|
|
2146
|
-
const workflow = process.env.GITHUB_WORKFLOW_REF?.trim();
|
|
2147
|
-
if (
|
|
2148
|
-
process.env.GITHUB_ACTIONS !== 'true' ||
|
|
2149
|
-
!sourceCommit ||
|
|
2150
|
-
!/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/.test(sourceCommit) ||
|
|
2151
|
-
!/^[1-9][0-9]*$/.test(runId ?? '') ||
|
|
2152
|
-
!/^[1-9][0-9]*$/.test(runAttempt ?? '') ||
|
|
2153
|
-
!isBoundedSafeReference(workflow, 'repository-evidence')
|
|
2154
|
-
) {
|
|
2264
|
+
if (!sourceCommit || !/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/.test(sourceCommit)) {
|
|
2155
2265
|
throw new Error(
|
|
2156
|
-
'Release candidates require exact
|
|
2266
|
+
'Release candidates require one exact source commit.',
|
|
2157
2267
|
);
|
|
2158
2268
|
}
|
|
2159
2269
|
const git = (...args) =>
|
|
@@ -2167,6 +2277,51 @@ if (
|
|
|
2167
2277
|
);
|
|
2168
2278
|
}
|
|
2169
2279
|
const repository = git('remote', 'get-url', 'origin');
|
|
2280
|
+
const localFederated =
|
|
2281
|
+
process.env.GITHUB_ACTIONS !== 'true' &&
|
|
2282
|
+
process.env.EBK_LOCAL_DEPLOYMENT_MODE === 'federated';
|
|
2283
|
+
const localStage = process.env.EBK_STAGE?.trim() ?? '';
|
|
2284
|
+
const localAccount = process.env.AWS_EXPECTED_ACCOUNT_ID?.trim() ?? '';
|
|
2285
|
+
const localRegion = process.env.AWS_REGION?.trim() ?? '';
|
|
2286
|
+
if (localFederated) {
|
|
2287
|
+
const policy = JSON.parse(
|
|
2288
|
+
readFileSync(new URL('../../../ebk.repository-policy.json', import.meta.url), 'utf8'),
|
|
2289
|
+
);
|
|
2290
|
+
if (
|
|
2291
|
+
policy.deploymentProfile !== 'starter' ||
|
|
2292
|
+
!['development', 'staging'].includes(localStage) ||
|
|
2293
|
+
policy.deploymentAccounts?.[localStage] !== localAccount ||
|
|
2294
|
+
policy.deploymentRegion !== localRegion
|
|
2295
|
+
) {
|
|
2296
|
+
throw new Error(
|
|
2297
|
+
'Local release candidates require a locally admitted exact starter deployment target; production requires protected GitHub authority.',
|
|
2298
|
+
);
|
|
2299
|
+
}
|
|
2300
|
+
}
|
|
2301
|
+
const runId = localFederated
|
|
2302
|
+
? (BigInt('0x' + sourceCommit.slice(0, 15)) + 1n).toString()
|
|
2303
|
+
: process.env.GITHUB_RUN_ID?.trim();
|
|
2304
|
+
const runAttempt = localFederated
|
|
2305
|
+
? '1'
|
|
2306
|
+
: process.env.GITHUB_RUN_ATTEMPT?.trim();
|
|
2307
|
+
const workflow = localFederated
|
|
2308
|
+
? 'local-federated/' +
|
|
2309
|
+
localStage +
|
|
2310
|
+
'/' +
|
|
2311
|
+
localAccount +
|
|
2312
|
+
'/' +
|
|
2313
|
+
localRegion
|
|
2314
|
+
: process.env.GITHUB_WORKFLOW_REF?.trim();
|
|
2315
|
+
if (
|
|
2316
|
+
(!localFederated && process.env.GITHUB_ACTIONS !== 'true') ||
|
|
2317
|
+
!/^[1-9][0-9]*$/.test(runId ?? '') ||
|
|
2318
|
+
!/^[1-9][0-9]*$/.test(runAttempt ?? '') ||
|
|
2319
|
+
!isBoundedSafeReference(workflow, 'repository-evidence')
|
|
2320
|
+
) {
|
|
2321
|
+
throw new Error(
|
|
2322
|
+
'Release candidates require exact GitHub or local-federated provenance.',
|
|
2323
|
+
);
|
|
2324
|
+
}
|
|
2170
2325
|
const builtAt = new Date(
|
|
2171
2326
|
git('show', '-s', '--format=%cI', sourceCommit),
|
|
2172
2327
|
).toISOString();
|
|
@@ -3987,7 +4142,7 @@ const requireSupplyChainManifest = (path) => {
|
|
|
3987
4142
|
).value;
|
|
3988
4143
|
if (
|
|
3989
4144
|
finalSbom?.bomFormat !== 'CycloneDX' ||
|
|
3990
|
-
finalSbom.specVersion !== '1.
|
|
4145
|
+
finalSbom.specVersion !== '1.7' ||
|
|
3991
4146
|
finalSbom.version !== 1 ||
|
|
3992
4147
|
finalSbom.serialNumber?.toLowerCase() !== reference.serialNumber ||
|
|
3993
4148
|
!Array.isArray(finalSbom.components) ||
|
|
@@ -3997,7 +4152,7 @@ const requireSupplyChainManifest = (path) => {
|
|
|
3997
4152
|
typeof finalSbom.metadata !== 'object' ||
|
|
3998
4153
|
!Array.isArray(finalSbom.metadata.properties)
|
|
3999
4154
|
) {
|
|
4000
|
-
throw new Error('Final OCI SBOM is not complete CycloneDX 1.
|
|
4155
|
+
throw new Error('Final OCI SBOM is not complete CycloneDX 1.7 evidence.');
|
|
4001
4156
|
}
|
|
4002
4157
|
const properties = new Map();
|
|
4003
4158
|
for (const property of finalSbom.metadata.properties) {
|
|
@@ -4097,7 +4252,7 @@ const requireSupplyChainManifest = (path) => {
|
|
|
4097
4252
|
).value;
|
|
4098
4253
|
if (
|
|
4099
4254
|
platformSbom?.bomFormat !== 'CycloneDX' ||
|
|
4100
|
-
platformSbom.specVersion !== '1.
|
|
4255
|
+
platformSbom.specVersion !== '1.7' ||
|
|
4101
4256
|
platformSbom.version !== 1 ||
|
|
4102
4257
|
platformSbom.serialNumber?.toLowerCase() !==
|
|
4103
4258
|
platform.sbom.serialNumber ||
|
|
@@ -4112,7 +4267,7 @@ const requireSupplyChainManifest = (path) => {
|
|
|
4112
4267
|
name: component?.name,
|
|
4113
4268
|
purl: component?.purl ?? '',
|
|
4114
4269
|
type: component?.type,
|
|
4115
|
-
version: component?.version,
|
|
4270
|
+
version: component?.version ?? '',
|
|
4116
4271
|
}))
|
|
4117
4272
|
.sort((left, right) =>
|
|
4118
4273
|
JSON.stringify(left) < JSON.stringify(right)
|
|
@@ -4122,11 +4277,31 @@ const requireSupplyChainManifest = (path) => {
|
|
|
4122
4277
|
: 0,
|
|
4123
4278
|
);
|
|
4124
4279
|
if (
|
|
4125
|
-
|
|
4280
|
+
platformSbom.components.some(
|
|
4126
4281
|
(component) =>
|
|
4127
|
-
typeof component
|
|
4282
|
+
typeof component?.name !== 'string' ||
|
|
4283
|
+
component.name.length === 0 ||
|
|
4128
4284
|
typeof component.type !== 'string' ||
|
|
4129
|
-
|
|
4285
|
+
component.type.length === 0 ||
|
|
4286
|
+
!(
|
|
4287
|
+
(typeof component.version === 'string' &&
|
|
4288
|
+
component.version.length > 0) ||
|
|
4289
|
+
(component.type === 'file' &&
|
|
4290
|
+
component.version === undefined &&
|
|
4291
|
+
component.purl === undefined &&
|
|
4292
|
+
component.name.startsWith('/') &&
|
|
4293
|
+
component.name.length <= 4_096 &&
|
|
4294
|
+
Array.isArray(component.hashes) &&
|
|
4295
|
+
component.hashes.length === 2 &&
|
|
4296
|
+
component.hashes[0]?.alg === 'SHA-1' &&
|
|
4297
|
+
/^[a-f0-9]{40}$/.test(
|
|
4298
|
+
component.hashes[0]?.content ?? '',
|
|
4299
|
+
) &&
|
|
4300
|
+
component.hashes[1]?.alg === 'SHA-256' &&
|
|
4301
|
+
/^[a-f0-9]{64}$/.test(
|
|
4302
|
+
component.hashes[1]?.content ?? '',
|
|
4303
|
+
))
|
|
4304
|
+
),
|
|
4130
4305
|
) ||
|
|
4131
4306
|
supplyChainDigest(componentSet) !== platform.sbom.componentSetDigest
|
|
4132
4307
|
) {
|
|
@@ -6165,7 +6340,11 @@ if (['stopped', 'recovering'].includes(result.rollout.phase)) {
|
|
|
6165
6340
|
sourceInputPaths: [
|
|
6166
6341
|
`packages/${name}/configuration`,
|
|
6167
6342
|
`packages/${name}/infra`,
|
|
6168
|
-
`packages/${name}/web`,
|
|
6343
|
+
`packages/${name}/web/next-env.d.ts`,
|
|
6344
|
+
`packages/${name}/web/next.config.ts`,
|
|
6345
|
+
`packages/${name}/web/open-next.config.ts`,
|
|
6346
|
+
`packages/${name}/web/src`,
|
|
6347
|
+
`packages/${name}/web/tsconfig.json`,
|
|
6169
6348
|
],
|
|
6170
6349
|
},
|
|
6171
6350
|
buildArtifact: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-plan-release-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-release-files.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"built-in-plan-release-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-release-files.ts"],"names":[],"mappings":";;AAmBA,8DAg6MC;AAn7MD,uEAAiD;AAEjD,SAAS,sBAAsB,CAAC,IAAY;IAK1C,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO;QACL,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;QAClC,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,UAAU,CAAC,CAAC,WAAW,EAAE;QACzE,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,WAAW,EAAE;KACxE,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,SAAgB,yBAAyB,CACvC,IAAY,EACZ,iBAAyB;IAEzB,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;IACrE,OAAO;QACL,2BAA2B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAsFL,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mEA8BmC,IAAI;;;;gBAIvD,IAAI;;;;;;;;;;;;gDAY4B,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBA0E/B,IAAI;;;;;;;gBAOT,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCnB;QACG,iCAAiC,EAAE,IAAA,8BAAI,EAAC;YACtC,YAAY,EAAE;gBACZ;oBACE,YAAY,EAAE,KAAK;oBACnB,WAAW,EACT,0DAA0D;oBAC5D,EAAE,EAAE,GAAG,IAAI,uBAAuB;oBAClC,OAAO,EAAE;wBACP,cAAc,EAAE,CAAC,uBAAuB,CAAC;wBACzC,iBAAiB,EAAE,GAAG;wBACtB,oBAAoB,EAAE,SAAS;qBAChC;oBACD,IAAI,EAAE,SAAS;iBAChB;gBACD;oBACE,YAAY,EAAE,CAAC;oBACf,WAAW,EACT,2EAA2E;oBAC7E,EAAE,EAAE,GAAG,IAAI,+BAA+B;oBAC1C,OAAO,EAAE,GAAG;oBACZ,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE;wBACP,cAAc,EAAE,CAAC,uBAAuB,CAAC;wBACzC,iBAAiB,EAAE,GAAG;wBACtB,oBAAoB,EAAE,SAAS;qBAChC;oBACD,IAAI,EAAE,SAAS;iBAChB;gBACD;oBACE,YAAY,EAAE,EAAE;oBAChB,WAAW,EACT,0DAA0D;oBAC5D,EAAE,EAAE,GAAG,IAAI,sBAAsB;oBACjC,OAAO,EAAE,EAAE;oBACX,OAAO,EAAE,CAAC;oBACV,IAAI,EAAE,SAAS;iBAChB;aACF;YACD,QAAQ,EAAE;gBACR,GAAG,EAAE;oBACH,WAAW,EAAE,OAAO,IAAI,EAAE;oBAC1B,eAAe,EAAE,EAAE;oBACnB,cAAc,EAAE,+BAA+B;oBAC/C,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,aAAa;iBACzB;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,iCAAiC;oBACvC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,QAAQ,EAAE,wBAAwB;aACnC;YACD,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC;QACF,iCAAiC,EAAE,IAAA,8BAAI,EAAC;YACtC,aAAa,EAAE,CAAC;YAChB,MAAM,EAAE;gBACN,CAAC,GAAG,IAAI,sBAAsB,CAAC,EAAE,EAAE;gBACnC,CAAC,GAAG,IAAI,+BAA+B,CAAC,EAAE,CAAC;gBAC3C,CAAC,GAAG,IAAI,uBAAuB,CAAC,EAAE,KAAK;aACxC;SACF,CAAC;QACF,+BAA+B,EAAE;;;;;;;;;;;;;;SAc5B,IAAI;SACJ,IAAI;SACJ,IAAI;SACJ,IAAI;;;;;kBAKK,kBAAkB,CAAC,SAAS;;;;;kBAK5B,kBAAkB,CAAC,SAAS;YAClC,IAAI;;;cAGF,IAAI;;;;;iBAKD,kBAAkB,CAAC,QAAQ;;;;;;;;;;;SAWnC,IAAI;SACJ,IAAI;SACJ,IAAI;SACJ,IAAI;;;;;kBAKK,kBAAkB,CAAC,SAAS;;;;;kBAK5B,kBAAkB,CAAC,SAAS;YAClC,IAAI;;;cAGF,IAAI;;;;;iBAKD,kBAAkB,CAAC,QAAQ;;;;;;;;;;;;;;;;SAgBnC,IAAI;SACJ,IAAI;SACJ,IAAI;SACJ,IAAI;;;;;kBAKK,kBAAkB,CAAC,SAAS;;;;;kBAK5B,kBAAkB,CAAC,SAAS;YAClC,IAAI;;;cAGF,IAAI;;;;;iBAKD,kBAAkB,CAAC,QAAQ;;;;;;;;;;;;;;;CAe3C;QACG,2BAA2B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAuMjB,IAAI;;;;;;;gBAOJ,IAAI;;;;;;;gBAOJ,IAAI;;;;;;;;;;CAUnB;QACG,gCAAgC,EAAE;;;;;;;;;;;;;;;;;;;iBAmBrB,IAAI;iBACJ,IAAI;iBACJ,IAAI;;;;;;;;;;;;;;;;;;;;WAoBV,IAAI;;;;WAIJ,IAAI;;;;WAIJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA2CQ,IAAI;uBACJ,IAAI;uBACJ,IAAI;;;;;;;;;;;;;;;;;;;;;;WAsBhB,IAAI;;;;;;;;;WASJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA6BJ,IAAI;;;;;;;;;;;CAWd;QACG,0BAA0B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAkCvB,IAAI;;;;SAIJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAkCO,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyCN,IAAI;;;;CAIrB;QACG,+BAA+B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmPpC;QACG,kCAAkC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDvC;QACG,4CAA4C,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCjD;QACG,iCAAiC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyIlC,IAAI;;;;;KAKJ,IAAI;;;;;KAKJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA+BO,IAAI;;;;;;;gBAOJ,IAAI;;;;;;;gBAOJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFnB;QACG,oCAAoC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAyC5B,IAAI;;;;0CAIwB,IAAI;;;cAGhC,IAAI;;;;;qCAKmB,IAAI;;;cAG3B,IAAI;;;;0CAIwB,IAAI;;;;;;;;;;;;;;;;;;;;;CAqB7C;QACG,+BAA+B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA8Qc,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAyOf,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0F3C;QACG,+BAA+B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA2KrB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sCAkFkB,IAAI;;;;;;;cAO5B,IAAI;;;;;;;;;;;;;;;;;;;;;;kBAsBA,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA+BV,IAAI;;;sCAGsB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA0ElB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAkChB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA0CJ,IAAI;;;;;;;;;;;;;;eAcD,IAAI;;;;;;;;;;;;eAYJ,IAAI;;;;gBAIH,IAAI;;;;eAIL,IAAI;;;;;;;;;;;;;;;;;;OAkBZ,IAAI;;;OAGJ,IAAI;;;OAGJ,IAAI;;;;;;;;;;;;;;;YAeC,IAAI;;;;;;;;;;;cAWF,IAAI;SACT,IAAI;;YAED,IAAI;;;;;;;;;;;;;;;;CAgBf;QACG,8BAA8B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAqHN,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCA8PM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAqHJ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmD9B,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4cjB;QACG,+BAA+B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCAqFE,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAmKC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAkHZ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA0eT,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAmNN,IAAI;;;;;;;;yCAQQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAgLrB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;0BAwBF,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqJ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"}
|
|
@@ -334,14 +334,16 @@ export function reconcileRunnerQuarantine(options) {
|
|
|
334
334
|
import { createHash, randomUUID } from 'node:crypto';
|
|
335
335
|
import {
|
|
336
336
|
existsSync,
|
|
337
|
+
lstatSync,
|
|
337
338
|
mkdirSync,
|
|
338
339
|
readFileSync,
|
|
340
|
+
realpathSync,
|
|
339
341
|
readdirSync,
|
|
340
342
|
rmSync,
|
|
341
343
|
statSync,
|
|
342
344
|
writeFileSync,
|
|
343
345
|
} from 'node:fs';
|
|
344
|
-
import { join, relative, resolve } from 'node:path';
|
|
346
|
+
import { dirname, isAbsolute, join, relative, resolve, sep } from 'node:path';
|
|
345
347
|
import { createRequire } from 'node:module';
|
|
346
348
|
import { TextDecoder } from 'node:util';
|
|
347
349
|
import pg from 'pg';
|
|
@@ -406,6 +408,93 @@ const frameworkCandidate =
|
|
|
406
408
|
if (typeof frameworkCandidate !== 'string' || !frameworkCandidate) {
|
|
407
409
|
throw new Error('The workspace runtime candidate is unavailable.');
|
|
408
410
|
}
|
|
411
|
+
|
|
412
|
+
function pathIsInsideInstalledRoot(root, candidate) {
|
|
413
|
+
const fromRoot = relative(root, candidate);
|
|
414
|
+
return (
|
|
415
|
+
fromRoot.length > 0 &&
|
|
416
|
+
fromRoot !== '..' &&
|
|
417
|
+
!fromRoot.startsWith('..' + sep) &&
|
|
418
|
+
!isAbsolute(fromRoot)
|
|
419
|
+
);
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
function resolveInstalledVitestCommand(options = {}) {
|
|
423
|
+
const expectedVersion = workspacePackage.devDependencies?.vitest;
|
|
424
|
+
if (
|
|
425
|
+
typeof expectedVersion !== 'string' ||
|
|
426
|
+
!/^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$/.test(expectedVersion)
|
|
427
|
+
) {
|
|
428
|
+
throw new Error(
|
|
429
|
+
'Integration tests require one exact workspace Vitest version.',
|
|
430
|
+
);
|
|
431
|
+
}
|
|
432
|
+
const nodeModulesPath = join(workspaceRoot, 'node_modules');
|
|
433
|
+
const nodeModulesMetadata = lstatSync(nodeModulesPath);
|
|
434
|
+
if (
|
|
435
|
+
nodeModulesMetadata.isSymbolicLink() ||
|
|
436
|
+
!nodeModulesMetadata.isDirectory()
|
|
437
|
+
) {
|
|
438
|
+
throw new Error(
|
|
439
|
+
'Integration tests require one real workspace node_modules authority.',
|
|
440
|
+
);
|
|
441
|
+
}
|
|
442
|
+
const canonicalNodeModules = realpathSync(nodeModulesPath);
|
|
443
|
+
const packageResolver =
|
|
444
|
+
options.packageResolver ?? ((specifier) => require.resolve(specifier));
|
|
445
|
+
const requestedManifest = packageResolver('vitest/package.json');
|
|
446
|
+
const manifestMetadata = lstatSync(requestedManifest);
|
|
447
|
+
const canonicalManifest = realpathSync(requestedManifest);
|
|
448
|
+
if (
|
|
449
|
+
manifestMetadata.isSymbolicLink() ||
|
|
450
|
+
!manifestMetadata.isFile() ||
|
|
451
|
+
manifestMetadata.size < 2 ||
|
|
452
|
+
manifestMetadata.size > 64 * 1024 ||
|
|
453
|
+
!pathIsInsideInstalledRoot(canonicalNodeModules, canonicalManifest)
|
|
454
|
+
) {
|
|
455
|
+
throw new Error(
|
|
456
|
+
'Integration tests require one confined regular Vitest manifest.',
|
|
457
|
+
);
|
|
458
|
+
}
|
|
459
|
+
const manifest = readJson(canonicalManifest);
|
|
460
|
+
if (
|
|
461
|
+
manifest.name !== 'vitest' ||
|
|
462
|
+
manifest.version !== expectedVersion ||
|
|
463
|
+
manifest.bin?.vitest !== './vitest.mjs'
|
|
464
|
+
) {
|
|
465
|
+
throw new Error(
|
|
466
|
+
'Integration tests require the exact installed Vitest package authority.',
|
|
467
|
+
);
|
|
468
|
+
}
|
|
469
|
+
const packageRoot = dirname(canonicalManifest);
|
|
470
|
+
const requestedEntryPoint = resolve(packageRoot, manifest.bin.vitest);
|
|
471
|
+
const entryMetadata = lstatSync(requestedEntryPoint);
|
|
472
|
+
const canonicalEntryPoint = realpathSync(requestedEntryPoint);
|
|
473
|
+
if (
|
|
474
|
+
entryMetadata.isSymbolicLink() ||
|
|
475
|
+
!entryMetadata.isFile() ||
|
|
476
|
+
entryMetadata.size < 2 ||
|
|
477
|
+
entryMetadata.size > 64 * 1024 ||
|
|
478
|
+
!pathIsInsideInstalledRoot(packageRoot, canonicalEntryPoint) ||
|
|
479
|
+
!pathIsInsideInstalledRoot(canonicalNodeModules, canonicalEntryPoint)
|
|
480
|
+
) {
|
|
481
|
+
throw new Error(
|
|
482
|
+
'Integration tests require one confined regular Vitest entrypoint.',
|
|
483
|
+
);
|
|
484
|
+
}
|
|
485
|
+
const requestedNode = options.nodeExecutable ?? process.execPath;
|
|
486
|
+
if (typeof requestedNode !== 'string' || !isAbsolute(requestedNode)) {
|
|
487
|
+
throw new Error('Integration tests require one absolute Node authority.');
|
|
488
|
+
}
|
|
489
|
+
const canonicalNode = realpathSync(requestedNode);
|
|
490
|
+
const nodeMetadata = lstatSync(canonicalNode);
|
|
491
|
+
if (nodeMetadata.isSymbolicLink() || !nodeMetadata.isFile()) {
|
|
492
|
+
throw new Error('Integration tests require one real Node executable.');
|
|
493
|
+
}
|
|
494
|
+
return { command: canonicalNode, entryPoint: canonicalEntryPoint };
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
const installedVitestCommand = resolveInstalledVitestCommand();
|
|
409
498
|
const blueprintCandidates = [
|
|
410
499
|
ownership.blueprint.name + '@' + ownership.blueprint.version,
|
|
411
500
|
];
|
|
@@ -595,10 +684,8 @@ async function prepareDatabase(adminUrl, databaseName) {
|
|
|
595
684
|
}
|
|
596
685
|
|
|
597
686
|
function runWorker(worker, databaseUrl, reportPath, attempt) {
|
|
598
|
-
const executable = process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm';
|
|
599
687
|
const arguments_ = [
|
|
600
|
-
|
|
601
|
-
'vitest',
|
|
688
|
+
installedVitestCommand.entryPoint,
|
|
602
689
|
'run',
|
|
603
690
|
'--config',
|
|
604
691
|
'vitest.integration.config.ts',
|
|
@@ -633,7 +720,7 @@ function runWorker(worker, databaseUrl, reportPath, attempt) {
|
|
|
633
720
|
workerEnvironmentNames.has(name) && typeof value === 'string',
|
|
634
721
|
),
|
|
635
722
|
);
|
|
636
|
-
const child = spawn(
|
|
723
|
+
const child = spawn(installedVitestCommand.command, arguments_, {
|
|
637
724
|
cwd: projectRoot,
|
|
638
725
|
env: {
|
|
639
726
|
...childEnvironment,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-plan-testing-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-testing-files.ts"],"names":[],"mappings":";;AAGA,
|
|
1
|
+
{"version":3,"file":"built-in-plan-testing-files.js","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/slice/built-in-plan-testing-files.ts"],"names":[],"mappings":"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"}
|