cdktn 0.25.0-pre.38 → 0.25.0-pre.39
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/.jsii +354 -51
- package/lib/annotations.js +1 -1
- package/lib/app.js +1 -1
- package/lib/aspect.js +1 -1
- package/lib/asset-hash.js +1 -1
- package/lib/asset-staging.d.ts +99 -21
- package/lib/asset-staging.js +261 -47
- package/lib/assets.d.ts +124 -3
- package/lib/assets.js +62 -3
- package/lib/backends/azurerm-backend.js +2 -2
- package/lib/backends/cloud-backend.js +4 -4
- package/lib/backends/consul-backend.js +2 -2
- package/lib/backends/cos-backend.js +2 -2
- package/lib/backends/gcs-backend.js +2 -2
- package/lib/backends/http-backend.js +2 -2
- package/lib/backends/local-backend.js +2 -2
- package/lib/backends/oss-backend.js +2 -2
- package/lib/backends/pg-backend.js +2 -2
- package/lib/backends/remote-backend.js +4 -4
- package/lib/backends/s3-backend.js +2 -2
- package/lib/backends/swift-backend.js +2 -2
- package/lib/complex-computed-list.js +26 -26
- package/lib/errors.d.ts +3 -0
- package/lib/errors.js +14 -3
- package/lib/functions/provider-function.js +1 -1
- package/lib/functions/terraform-functions.generated.js +1 -1
- package/lib/ignore-strategy.js +1 -1
- package/lib/importable-resource.js +1 -1
- package/lib/manifest.js +1 -1
- package/lib/resource.js +1 -1
- package/lib/terraform-asset.d.ts +16 -5
- package/lib/terraform-asset.js +10 -8
- package/lib/terraform-backend.js +1 -1
- package/lib/terraform-count.js +1 -1
- package/lib/terraform-data-resource.js +1 -1
- package/lib/terraform-data-source.js +1 -1
- package/lib/terraform-element.js +1 -1
- package/lib/terraform-ephemeral-resource.js +1 -1
- package/lib/terraform-functions.js +1 -1
- package/lib/terraform-hcl-module.js +1 -1
- package/lib/terraform-iterator.js +5 -5
- package/lib/terraform-local.js +1 -1
- package/lib/terraform-module.js +1 -1
- package/lib/terraform-operators.js +1 -1
- package/lib/terraform-output.js +1 -1
- package/lib/terraform-provider.js +1 -1
- package/lib/terraform-provisioner.js +1 -1
- package/lib/terraform-remote-state.js +1 -1
- package/lib/terraform-resource-targets.js +1 -1
- package/lib/terraform-resource.js +1 -1
- package/lib/terraform-stack.js +1 -1
- package/lib/terraform-variable.js +2 -2
- package/lib/testing/index.js +1 -1
- package/lib/testing/matchers.js +1 -1
- package/lib/tokens/lazy.js +2 -2
- package/lib/tokens/resolvable.js +2 -2
- package/lib/tokens/string-fragments.js +1 -1
- package/lib/tokens/token.js +2 -2
- package/lib/upgrade-id-aspect.js +1 -1
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -1651,7 +1651,7 @@
|
|
|
1651
1651
|
"kind": "class",
|
|
1652
1652
|
"locationInModule": {
|
|
1653
1653
|
"filename": "src/assets.ts",
|
|
1654
|
-
"line":
|
|
1654
|
+
"line": 220
|
|
1655
1655
|
},
|
|
1656
1656
|
"name": "AssetPackaging",
|
|
1657
1657
|
"properties": [
|
|
@@ -1664,7 +1664,7 @@
|
|
|
1664
1664
|
"immutable": true,
|
|
1665
1665
|
"locationInModule": {
|
|
1666
1666
|
"filename": "src/assets.ts",
|
|
1667
|
-
"line":
|
|
1667
|
+
"line": 229
|
|
1668
1668
|
},
|
|
1669
1669
|
"name": "DIRECTORY",
|
|
1670
1670
|
"static": true,
|
|
@@ -1681,7 +1681,7 @@
|
|
|
1681
1681
|
"immutable": true,
|
|
1682
1682
|
"locationInModule": {
|
|
1683
1683
|
"filename": "src/assets.ts",
|
|
1684
|
-
"line":
|
|
1684
|
+
"line": 224
|
|
1685
1685
|
},
|
|
1686
1686
|
"name": "FILE",
|
|
1687
1687
|
"static": true,
|
|
@@ -1698,7 +1698,7 @@
|
|
|
1698
1698
|
"immutable": true,
|
|
1699
1699
|
"locationInModule": {
|
|
1700
1700
|
"filename": "src/assets.ts",
|
|
1701
|
-
"line":
|
|
1701
|
+
"line": 234
|
|
1702
1702
|
},
|
|
1703
1703
|
"name": "ZIP",
|
|
1704
1704
|
"static": true,
|
|
@@ -1713,9 +1713,9 @@
|
|
|
1713
1713
|
"assembly": "cdktn",
|
|
1714
1714
|
"base": "constructs.Construct",
|
|
1715
1715
|
"docs": {
|
|
1716
|
-
"remarks": "
|
|
1716
|
+
"remarks": "The hash is available immediately after construction; the filesystem write\nis deferred to `stage()`, the one window where it is safe. Hashing is\ncached per synth (see {@link hashCachesByRoot}) so an asset referenced from\nseveral places is walked once. Without a bundler, `SOURCE` and `OUTPUT` both\nhash the source; with one they diverge, as `AssetStagingOptions.bundler`\ndescribes.",
|
|
1717
1717
|
"stability": "experimental",
|
|
1718
|
-
"summary": "Resolves an asset's identity
|
|
1718
|
+
"summary": "Resolves an asset's identity and stages its content to disk."
|
|
1719
1719
|
},
|
|
1720
1720
|
"fqn": "cdktn.AssetStaging",
|
|
1721
1721
|
"initializer": {
|
|
@@ -1724,7 +1724,7 @@
|
|
|
1724
1724
|
},
|
|
1725
1725
|
"locationInModule": {
|
|
1726
1726
|
"filename": "src/asset-staging.ts",
|
|
1727
|
-
"line":
|
|
1727
|
+
"line": 220
|
|
1728
1728
|
},
|
|
1729
1729
|
"parameters": [
|
|
1730
1730
|
{
|
|
@@ -1753,25 +1753,22 @@
|
|
|
1753
1753
|
"kind": "class",
|
|
1754
1754
|
"locationInModule": {
|
|
1755
1755
|
"filename": "src/asset-staging.ts",
|
|
1756
|
-
"line":
|
|
1756
|
+
"line": 193
|
|
1757
1757
|
},
|
|
1758
1758
|
"methods": [
|
|
1759
1759
|
{
|
|
1760
1760
|
"docs": {
|
|
1761
|
-
"remarks": "Called from the owning
|
|
1761
|
+
"remarks": "Called from the owning construct's `onSynthesize` hook. Without a bundler\nthe source is packaged verbatim; with one, the bundler's output is, built\neagerly for `OUTPUT` hashing or deferred to here for `SOURCE`.",
|
|
1762
1762
|
"stability": "experimental",
|
|
1763
|
-
"summary": "
|
|
1763
|
+
"summary": "Stage the asset's content to `targetPath`."
|
|
1764
1764
|
},
|
|
1765
1765
|
"locationInModule": {
|
|
1766
1766
|
"filename": "src/asset-staging.ts",
|
|
1767
|
-
"line":
|
|
1767
|
+
"line": 420
|
|
1768
1768
|
},
|
|
1769
1769
|
"name": "stage",
|
|
1770
1770
|
"parameters": [
|
|
1771
1771
|
{
|
|
1772
|
-
"docs": {
|
|
1773
|
-
"summary": "- path the packaged result should be written to."
|
|
1774
|
-
},
|
|
1775
1772
|
"name": "targetPath",
|
|
1776
1773
|
"type": {
|
|
1777
1774
|
"primitive": "string"
|
|
@@ -1791,7 +1788,7 @@
|
|
|
1791
1788
|
"immutable": true,
|
|
1792
1789
|
"locationInModule": {
|
|
1793
1790
|
"filename": "src/asset-staging.ts",
|
|
1794
|
-
"line":
|
|
1791
|
+
"line": 218
|
|
1795
1792
|
},
|
|
1796
1793
|
"name": "assetHash",
|
|
1797
1794
|
"overrides": "cdktn.IAsset",
|
|
@@ -1806,7 +1803,7 @@
|
|
|
1806
1803
|
"immutable": true,
|
|
1807
1804
|
"locationInModule": {
|
|
1808
1805
|
"filename": "src/asset-staging.ts",
|
|
1809
|
-
"line":
|
|
1806
|
+
"line": 217
|
|
1810
1807
|
},
|
|
1811
1808
|
"name": "isDirectory",
|
|
1812
1809
|
"type": {
|
|
@@ -1820,7 +1817,7 @@
|
|
|
1820
1817
|
"immutable": true,
|
|
1821
1818
|
"locationInModule": {
|
|
1822
1819
|
"filename": "src/asset-staging.ts",
|
|
1823
|
-
"line":
|
|
1820
|
+
"line": 216
|
|
1824
1821
|
},
|
|
1825
1822
|
"name": "packaging",
|
|
1826
1823
|
"type": {
|
|
@@ -1844,7 +1841,7 @@
|
|
|
1844
1841
|
"kind": "interface",
|
|
1845
1842
|
"locationInModule": {
|
|
1846
1843
|
"filename": "src/asset-staging.ts",
|
|
1847
|
-
"line":
|
|
1844
|
+
"line": 123
|
|
1848
1845
|
},
|
|
1849
1846
|
"name": "AssetStagingOptions",
|
|
1850
1847
|
"properties": [
|
|
@@ -1858,7 +1855,7 @@
|
|
|
1858
1855
|
"immutable": true,
|
|
1859
1856
|
"locationInModule": {
|
|
1860
1857
|
"filename": "src/asset-staging.ts",
|
|
1861
|
-
"line":
|
|
1858
|
+
"line": 135
|
|
1862
1859
|
},
|
|
1863
1860
|
"name": "packaging",
|
|
1864
1861
|
"type": {
|
|
@@ -1875,13 +1872,50 @@
|
|
|
1875
1872
|
"immutable": true,
|
|
1876
1873
|
"locationInModule": {
|
|
1877
1874
|
"filename": "src/asset-staging.ts",
|
|
1878
|
-
"line":
|
|
1875
|
+
"line": 128
|
|
1879
1876
|
},
|
|
1880
1877
|
"name": "sourcePath",
|
|
1881
1878
|
"type": {
|
|
1882
1879
|
"primitive": "string"
|
|
1883
1880
|
}
|
|
1884
1881
|
},
|
|
1882
|
+
{
|
|
1883
|
+
"abstract": true,
|
|
1884
|
+
"docs": {
|
|
1885
|
+
"default": "- the source is staged verbatim, with no build step",
|
|
1886
|
+
"remarks": "Under the default `SOURCE` hashing the build is deferred to `stage()` and\nstays skippable; `OUTPUT` hashing builds eagerly at construction time to\nhash the artifact, forgoing skippability. A bundler always produces a\ndirectory, so single-file packaging (`AssetType.FILE`) is rejected.",
|
|
1887
|
+
"stability": "experimental",
|
|
1888
|
+
"summary": "A bundler that builds the source into an artifact before staging."
|
|
1889
|
+
},
|
|
1890
|
+
"immutable": true,
|
|
1891
|
+
"locationInModule": {
|
|
1892
|
+
"filename": "src/asset-staging.ts",
|
|
1893
|
+
"line": 172
|
|
1894
|
+
},
|
|
1895
|
+
"name": "bundler",
|
|
1896
|
+
"optional": true,
|
|
1897
|
+
"type": {
|
|
1898
|
+
"fqn": "cdktn.IAssetBundler"
|
|
1899
|
+
}
|
|
1900
|
+
},
|
|
1901
|
+
{
|
|
1902
|
+
"abstract": true,
|
|
1903
|
+
"docs": {
|
|
1904
|
+
"default": "- the staging construct's own id",
|
|
1905
|
+
"stability": "experimental",
|
|
1906
|
+
"summary": "Identifier used in error messages, so they name the user-facing construct (e.g. the `TerraformAsset`) rather than this internal staging child."
|
|
1907
|
+
},
|
|
1908
|
+
"immutable": true,
|
|
1909
|
+
"locationInModule": {
|
|
1910
|
+
"filename": "src/asset-staging.ts",
|
|
1911
|
+
"line": 180
|
|
1912
|
+
},
|
|
1913
|
+
"name": "displayName",
|
|
1914
|
+
"optional": true,
|
|
1915
|
+
"type": {
|
|
1916
|
+
"primitive": "string"
|
|
1917
|
+
}
|
|
1918
|
+
},
|
|
1885
1919
|
{
|
|
1886
1920
|
"abstract": true,
|
|
1887
1921
|
"docs": {
|
|
@@ -1893,7 +1927,7 @@
|
|
|
1893
1927
|
"immutable": true,
|
|
1894
1928
|
"locationInModule": {
|
|
1895
1929
|
"filename": "src/asset-staging.ts",
|
|
1896
|
-
"line":
|
|
1930
|
+
"line": 144
|
|
1897
1931
|
},
|
|
1898
1932
|
"name": "exclude",
|
|
1899
1933
|
"optional": true,
|
|
@@ -1916,7 +1950,7 @@
|
|
|
1916
1950
|
"immutable": true,
|
|
1917
1951
|
"locationInModule": {
|
|
1918
1952
|
"filename": "src/asset-staging.ts",
|
|
1919
|
-
"line":
|
|
1953
|
+
"line": 160
|
|
1920
1954
|
},
|
|
1921
1955
|
"name": "extraHash",
|
|
1922
1956
|
"optional": true,
|
|
@@ -1934,7 +1968,7 @@
|
|
|
1934
1968
|
"immutable": true,
|
|
1935
1969
|
"locationInModule": {
|
|
1936
1970
|
"filename": "src/asset-staging.ts",
|
|
1937
|
-
"line":
|
|
1971
|
+
"line": 152
|
|
1938
1972
|
},
|
|
1939
1973
|
"name": "ignoreStrategy",
|
|
1940
1974
|
"optional": true,
|
|
@@ -1954,7 +1988,7 @@
|
|
|
1954
1988
|
"kind": "enum",
|
|
1955
1989
|
"locationInModule": {
|
|
1956
1990
|
"filename": "src/terraform-asset.ts",
|
|
1957
|
-
"line":
|
|
1991
|
+
"line": 76
|
|
1958
1992
|
},
|
|
1959
1993
|
"members": [
|
|
1960
1994
|
{
|
|
@@ -3386,6 +3420,177 @@
|
|
|
3386
3420
|
],
|
|
3387
3421
|
"symbolId": "src/complex-computed-list:BooleanMapMap"
|
|
3388
3422
|
},
|
|
3423
|
+
"cdktn.BundleOptions": {
|
|
3424
|
+
"assembly": "cdktn",
|
|
3425
|
+
"datatype": true,
|
|
3426
|
+
"docs": {
|
|
3427
|
+
"remarks": "A struct rather than positional parameters: adding a field is additive,\nadding a method parameter is not, and `bundle` is called through JSII where\nthat distinction is a breaking-change boundary.",
|
|
3428
|
+
"stability": "experimental",
|
|
3429
|
+
"summary": "Options handed to an {@link IAssetBundler} when it runs."
|
|
3430
|
+
},
|
|
3431
|
+
"fqn": "cdktn.BundleOptions",
|
|
3432
|
+
"kind": "interface",
|
|
3433
|
+
"locationInModule": {
|
|
3434
|
+
"filename": "src/assets.ts",
|
|
3435
|
+
"line": 246
|
|
3436
|
+
},
|
|
3437
|
+
"name": "BundleOptions",
|
|
3438
|
+
"properties": [
|
|
3439
|
+
{
|
|
3440
|
+
"abstract": true,
|
|
3441
|
+
"docs": {
|
|
3442
|
+
"remarks": "The bundler produces its output here (or in a subdirectory) and\nreturns the directory that holds the finished artifact — see\n{@link IAssetBundler.bundle}.",
|
|
3443
|
+
"stability": "experimental",
|
|
3444
|
+
"summary": "A scratch directory the bundler may write into, owned and created by the caller."
|
|
3445
|
+
},
|
|
3446
|
+
"immutable": true,
|
|
3447
|
+
"locationInModule": {
|
|
3448
|
+
"filename": "src/assets.ts",
|
|
3449
|
+
"line": 263
|
|
3450
|
+
},
|
|
3451
|
+
"name": "outputDir",
|
|
3452
|
+
"type": {
|
|
3453
|
+
"primitive": "string"
|
|
3454
|
+
}
|
|
3455
|
+
},
|
|
3456
|
+
{
|
|
3457
|
+
"abstract": true,
|
|
3458
|
+
"docs": {
|
|
3459
|
+
"remarks": "Exclusions (`exclude` / `ignoreStrategy`) are already applied: when any\nare configured this points at a filtered copy, not the original tree, so\nthe bundler reads exactly the file set the asset hash was taken over.",
|
|
3460
|
+
"stability": "experimental",
|
|
3461
|
+
"summary": "Absolute path to the asset's source file or directory. The bundler reads from here and must not modify it."
|
|
3462
|
+
},
|
|
3463
|
+
"immutable": true,
|
|
3464
|
+
"locationInModule": {
|
|
3465
|
+
"filename": "src/assets.ts",
|
|
3466
|
+
"line": 255
|
|
3467
|
+
},
|
|
3468
|
+
"name": "source",
|
|
3469
|
+
"type": {
|
|
3470
|
+
"primitive": "string"
|
|
3471
|
+
}
|
|
3472
|
+
}
|
|
3473
|
+
],
|
|
3474
|
+
"symbolId": "src/assets:BundleOptions"
|
|
3475
|
+
},
|
|
3476
|
+
"cdktn.BundlerKey": {
|
|
3477
|
+
"assembly": "cdktn",
|
|
3478
|
+
"docs": {
|
|
3479
|
+
"example": "const key = BundlerKey.of(\"docker\", image, command)\n .withEnv({ NODE_ENV: nodeEnv })\n .toString();",
|
|
3480
|
+
"remarks": "A `bundlerKey` has to serialize everything that can move a build's output;\ndone ad hoc, every bundler invents its own delimiter and forgets an input\ndifferently. This gives the convention one implementation: parts are joined\nwith a separator that is escaped where it appears in a value, so distinct\ninputs can never collide into the same key (`[\"a:b\", \"c\"]` and\n`[\"a\", \"b:c\"]` stay different).",
|
|
3481
|
+
"stability": "experimental",
|
|
3482
|
+
"summary": "Builds an {@link IAssetBundler.bundlerKey} from an ordered set of parts."
|
|
3483
|
+
},
|
|
3484
|
+
"fqn": "cdktn.BundlerKey",
|
|
3485
|
+
"kind": "class",
|
|
3486
|
+
"locationInModule": {
|
|
3487
|
+
"filename": "src/assets.ts",
|
|
3488
|
+
"line": 333
|
|
3489
|
+
},
|
|
3490
|
+
"methods": [
|
|
3491
|
+
{
|
|
3492
|
+
"docs": {
|
|
3493
|
+
"remarks": "Order is significant: it is part of what the key identifies.",
|
|
3494
|
+
"stability": "experimental",
|
|
3495
|
+
"summary": "Start a key from an ordered list of parts."
|
|
3496
|
+
},
|
|
3497
|
+
"locationInModule": {
|
|
3498
|
+
"filename": "src/assets.ts",
|
|
3499
|
+
"line": 339
|
|
3500
|
+
},
|
|
3501
|
+
"name": "of",
|
|
3502
|
+
"parameters": [
|
|
3503
|
+
{
|
|
3504
|
+
"name": "parts",
|
|
3505
|
+
"type": {
|
|
3506
|
+
"primitive": "string"
|
|
3507
|
+
},
|
|
3508
|
+
"variadic": true
|
|
3509
|
+
}
|
|
3510
|
+
],
|
|
3511
|
+
"returns": {
|
|
3512
|
+
"type": {
|
|
3513
|
+
"fqn": "cdktn.BundlerKey"
|
|
3514
|
+
}
|
|
3515
|
+
},
|
|
3516
|
+
"static": true,
|
|
3517
|
+
"variadic": true
|
|
3518
|
+
},
|
|
3519
|
+
{
|
|
3520
|
+
"docs": {
|
|
3521
|
+
"stability": "experimental",
|
|
3522
|
+
"summary": "Append parts, returning a new key."
|
|
3523
|
+
},
|
|
3524
|
+
"locationInModule": {
|
|
3525
|
+
"filename": "src/assets.ts",
|
|
3526
|
+
"line": 352
|
|
3527
|
+
},
|
|
3528
|
+
"name": "add",
|
|
3529
|
+
"parameters": [
|
|
3530
|
+
{
|
|
3531
|
+
"name": "parts",
|
|
3532
|
+
"type": {
|
|
3533
|
+
"primitive": "string"
|
|
3534
|
+
},
|
|
3535
|
+
"variadic": true
|
|
3536
|
+
}
|
|
3537
|
+
],
|
|
3538
|
+
"returns": {
|
|
3539
|
+
"type": {
|
|
3540
|
+
"fqn": "cdktn.BundlerKey"
|
|
3541
|
+
}
|
|
3542
|
+
},
|
|
3543
|
+
"variadic": true
|
|
3544
|
+
},
|
|
3545
|
+
{
|
|
3546
|
+
"docs": {
|
|
3547
|
+
"stability": "experimental",
|
|
3548
|
+
"summary": "Render the collected parts to the string passed as `bundlerKey`."
|
|
3549
|
+
},
|
|
3550
|
+
"locationInModule": {
|
|
3551
|
+
"filename": "src/assets.ts",
|
|
3552
|
+
"line": 370
|
|
3553
|
+
},
|
|
3554
|
+
"name": "toString",
|
|
3555
|
+
"returns": {
|
|
3556
|
+
"type": {
|
|
3557
|
+
"primitive": "string"
|
|
3558
|
+
}
|
|
3559
|
+
}
|
|
3560
|
+
},
|
|
3561
|
+
{
|
|
3562
|
+
"docs": {
|
|
3563
|
+
"stability": "experimental",
|
|
3564
|
+
"summary": "Append `key=value` parts for a record, sorted by key so the result does not depend on property order."
|
|
3565
|
+
},
|
|
3566
|
+
"locationInModule": {
|
|
3567
|
+
"filename": "src/assets.ts",
|
|
3568
|
+
"line": 360
|
|
3569
|
+
},
|
|
3570
|
+
"name": "withEnv",
|
|
3571
|
+
"parameters": [
|
|
3572
|
+
{
|
|
3573
|
+
"name": "entries",
|
|
3574
|
+
"type": {
|
|
3575
|
+
"collection": {
|
|
3576
|
+
"elementtype": {
|
|
3577
|
+
"primitive": "string"
|
|
3578
|
+
},
|
|
3579
|
+
"kind": "map"
|
|
3580
|
+
}
|
|
3581
|
+
}
|
|
3582
|
+
}
|
|
3583
|
+
],
|
|
3584
|
+
"returns": {
|
|
3585
|
+
"type": {
|
|
3586
|
+
"fqn": "cdktn.BundlerKey"
|
|
3587
|
+
}
|
|
3588
|
+
}
|
|
3589
|
+
}
|
|
3590
|
+
],
|
|
3591
|
+
"name": "BundlerKey",
|
|
3592
|
+
"symbolId": "src/assets:BundlerKey"
|
|
3593
|
+
},
|
|
3389
3594
|
"cdktn.CloudBackend": {
|
|
3390
3595
|
"assembly": "cdktn",
|
|
3391
3596
|
"base": "cdktn.TerraformBackend",
|
|
@@ -12080,6 +12285,71 @@
|
|
|
12080
12285
|
],
|
|
12081
12286
|
"symbolId": "src/assets:IAsset"
|
|
12082
12287
|
},
|
|
12288
|
+
"cdktn.IAssetBundler": {
|
|
12289
|
+
"assembly": "cdktn",
|
|
12290
|
+
"docs": {
|
|
12291
|
+
"remarks": "This is the extension point for asset bundling: core ships no bundler.\nDocker, esbuild, pip, `go build`, and similar are an open-ended set that\nis not cloud-specific, so each lives in its own package and implements this\none interface — the same way {@link IIgnoreStrategy} lets richer exclusion\nlive outside core without core taking on a glob parser. A third party\ndevelops a bundler by implementing this interface and publishing it as a\npackage; users pass an instance via the consuming construct's `bundler`\noption.\n\n`bundle` runs during the owning construct's `onSynthesize` hook and may\ntouch the filesystem. Deferring it there keeps it skippable when the asset's\nstack is not being synthesized, which holds as long as the hash is taken\nover the source rather than the built output.",
|
|
12292
|
+
"stability": "experimental",
|
|
12293
|
+
"summary": "Transforms a source tree into a built artifact. Runs at synth, before the output is packaged and staged."
|
|
12294
|
+
},
|
|
12295
|
+
"fqn": "cdktn.IAssetBundler",
|
|
12296
|
+
"kind": "interface",
|
|
12297
|
+
"locationInModule": {
|
|
12298
|
+
"filename": "src/assets.ts",
|
|
12299
|
+
"line": 284
|
|
12300
|
+
},
|
|
12301
|
+
"methods": [
|
|
12302
|
+
{
|
|
12303
|
+
"abstract": true,
|
|
12304
|
+
"docs": {
|
|
12305
|
+
"remarks": "Implementations write into `options.outputDir` and return it or a\nsubdirectory, never writing back to `options.source`. The returned\ndirectory is then packaged as an unbundled source directory would be.\nReturning a file, or a path that does not exist, is rejected — the\ncontract is a directory, and packaging always treats the result as one.",
|
|
12306
|
+
"stability": "experimental",
|
|
12307
|
+
"summary": "Produce the artifact and return the directory holding it."
|
|
12308
|
+
},
|
|
12309
|
+
"locationInModule": {
|
|
12310
|
+
"filename": "src/assets.ts",
|
|
12311
|
+
"line": 315
|
|
12312
|
+
},
|
|
12313
|
+
"name": "bundle",
|
|
12314
|
+
"parameters": [
|
|
12315
|
+
{
|
|
12316
|
+
"name": "options",
|
|
12317
|
+
"type": {
|
|
12318
|
+
"fqn": "cdktn.BundleOptions"
|
|
12319
|
+
}
|
|
12320
|
+
}
|
|
12321
|
+
],
|
|
12322
|
+
"returns": {
|
|
12323
|
+
"type": {
|
|
12324
|
+
"primitive": "string"
|
|
12325
|
+
}
|
|
12326
|
+
}
|
|
12327
|
+
}
|
|
12328
|
+
],
|
|
12329
|
+
"name": "IAssetBundler",
|
|
12330
|
+
"properties": [
|
|
12331
|
+
{
|
|
12332
|
+
"abstract": true,
|
|
12333
|
+
"docs": {
|
|
12334
|
+
"default": "- the build does not contribute to the hash",
|
|
12335
|
+
"remarks": "The source tree alone cannot see the build, so swapping a `node:18` base\nimage for `node:20` would otherwise leave identity unchanged. A value\ncapturing the build (e.g. `docker:<image>:<command>`) closes that gap.\n\nUnder `SOURCE` hashing this is the only channel by which the build reaches\nidentity, so it must serialize every input that can move the output —\nbase image, command, tool version, environment, arguments. Anything left\nout means a changed build silently reuses a stale artifact. {@link * BundlerKey} builds one from an ordered set of parts so the format is not\nreinvented per bundler.\n\nMirrors {@link IIgnoreStrategy.cacheKey}: omit it when the build cannot be\nsummarized as a string, and fall back to `extraHash`.",
|
|
12336
|
+
"stability": "experimental",
|
|
12337
|
+
"summary": "A value identifying the build, folded into the asset hash."
|
|
12338
|
+
},
|
|
12339
|
+
"immutable": true,
|
|
12340
|
+
"locationInModule": {
|
|
12341
|
+
"filename": "src/assets.ts",
|
|
12342
|
+
"line": 304
|
|
12343
|
+
},
|
|
12344
|
+
"name": "bundlerKey",
|
|
12345
|
+
"optional": true,
|
|
12346
|
+
"type": {
|
|
12347
|
+
"primitive": "string"
|
|
12348
|
+
}
|
|
12349
|
+
}
|
|
12350
|
+
],
|
|
12351
|
+
"symbolId": "src/assets:IAssetBundler"
|
|
12352
|
+
},
|
|
12083
12353
|
"cdktn.IAssetPackaging": {
|
|
12084
12354
|
"assembly": "cdktn",
|
|
12085
12355
|
"docs": {
|
|
@@ -12098,18 +12368,15 @@
|
|
|
12098
12368
|
"abstract": true,
|
|
12099
12369
|
"docs": {
|
|
12100
12370
|
"stability": "experimental",
|
|
12101
|
-
"summary": "
|
|
12371
|
+
"summary": "Write the packaged result to `options.target`."
|
|
12102
12372
|
},
|
|
12103
12373
|
"locationInModule": {
|
|
12104
12374
|
"filename": "src/assets.ts",
|
|
12105
|
-
"line":
|
|
12375
|
+
"line": 131
|
|
12106
12376
|
},
|
|
12107
12377
|
"name": "pack",
|
|
12108
12378
|
"parameters": [
|
|
12109
12379
|
{
|
|
12110
|
-
"docs": {
|
|
12111
|
-
"summary": "- see {@link PackOptions}."
|
|
12112
|
-
},
|
|
12113
12380
|
"name": "options",
|
|
12114
12381
|
"type": {
|
|
12115
12382
|
"fqn": "cdktn.PackOptions"
|
|
@@ -12120,6 +12387,23 @@
|
|
|
12120
12387
|
],
|
|
12121
12388
|
"name": "IAssetPackaging",
|
|
12122
12389
|
"properties": [
|
|
12390
|
+
{
|
|
12391
|
+
"abstract": true,
|
|
12392
|
+
"docs": {
|
|
12393
|
+
"remarks": "Independent of `producesDirectory` and `omitsDirectoryEntries`, both of\nwhich describe the output: a `tar.gz` packaging takes a directory source\nyet emits a single file. Bundler output is always a directory, so a\npackaging that is `false` here cannot stage it.",
|
|
12394
|
+
"stability": "experimental",
|
|
12395
|
+
"summary": "Whether `pack` accepts a directory as its `source`."
|
|
12396
|
+
},
|
|
12397
|
+
"immutable": true,
|
|
12398
|
+
"locationInModule": {
|
|
12399
|
+
"filename": "src/assets.ts",
|
|
12400
|
+
"line": 113
|
|
12401
|
+
},
|
|
12402
|
+
"name": "acceptsDirectorySource",
|
|
12403
|
+
"type": {
|
|
12404
|
+
"primitive": "boolean"
|
|
12405
|
+
}
|
|
12406
|
+
},
|
|
12123
12407
|
{
|
|
12124
12408
|
"abstract": true,
|
|
12125
12409
|
"docs": {
|
|
@@ -12146,7 +12430,7 @@
|
|
|
12146
12430
|
"immutable": true,
|
|
12147
12431
|
"locationInModule": {
|
|
12148
12432
|
"filename": "src/assets.ts",
|
|
12149
|
-
"line":
|
|
12433
|
+
"line": 126
|
|
12150
12434
|
},
|
|
12151
12435
|
"name": "omitsDirectoryEntries",
|
|
12152
12436
|
"type": {
|
|
@@ -17293,7 +17577,7 @@
|
|
|
17293
17577
|
"kind": "interface",
|
|
17294
17578
|
"locationInModule": {
|
|
17295
17579
|
"filename": "src/assets.ts",
|
|
17296
|
-
"line":
|
|
17580
|
+
"line": 141
|
|
17297
17581
|
},
|
|
17298
17582
|
"name": "PackOptions",
|
|
17299
17583
|
"properties": [
|
|
@@ -17306,7 +17590,7 @@
|
|
|
17306
17590
|
"immutable": true,
|
|
17307
17591
|
"locationInModule": {
|
|
17308
17592
|
"filename": "src/assets.ts",
|
|
17309
|
-
"line":
|
|
17593
|
+
"line": 145
|
|
17310
17594
|
},
|
|
17311
17595
|
"name": "source",
|
|
17312
17596
|
"type": {
|
|
@@ -17322,7 +17606,7 @@
|
|
|
17322
17606
|
"immutable": true,
|
|
17323
17607
|
"locationInModule": {
|
|
17324
17608
|
"filename": "src/assets.ts",
|
|
17325
|
-
"line":
|
|
17609
|
+
"line": 150
|
|
17326
17610
|
},
|
|
17327
17611
|
"name": "target",
|
|
17328
17612
|
"type": {
|
|
@@ -17340,7 +17624,7 @@
|
|
|
17340
17624
|
"immutable": true,
|
|
17341
17625
|
"locationInModule": {
|
|
17342
17626
|
"filename": "src/assets.ts",
|
|
17343
|
-
"line":
|
|
17627
|
+
"line": 159
|
|
17344
17628
|
},
|
|
17345
17629
|
"name": "ignoreStrategy",
|
|
17346
17630
|
"optional": true,
|
|
@@ -20459,7 +20743,7 @@
|
|
|
20459
20743
|
"kind": "interface",
|
|
20460
20744
|
"locationInModule": {
|
|
20461
20745
|
"filename": "src/assets.ts",
|
|
20462
|
-
"line":
|
|
20746
|
+
"line": 383
|
|
20463
20747
|
},
|
|
20464
20748
|
"name": "StagedAsset",
|
|
20465
20749
|
"properties": [
|
|
@@ -20473,7 +20757,7 @@
|
|
|
20473
20757
|
"immutable": true,
|
|
20474
20758
|
"locationInModule": {
|
|
20475
20759
|
"filename": "src/assets.ts",
|
|
20476
|
-
"line":
|
|
20760
|
+
"line": 389
|
|
20477
20761
|
},
|
|
20478
20762
|
"name": "assetHash",
|
|
20479
20763
|
"type": {
|
|
@@ -20490,7 +20774,7 @@
|
|
|
20490
20774
|
"immutable": true,
|
|
20491
20775
|
"locationInModule": {
|
|
20492
20776
|
"filename": "src/assets.ts",
|
|
20493
|
-
"line":
|
|
20777
|
+
"line": 402
|
|
20494
20778
|
},
|
|
20495
20779
|
"name": "isDirectory",
|
|
20496
20780
|
"type": {
|
|
@@ -20506,7 +20790,7 @@
|
|
|
20506
20790
|
"immutable": true,
|
|
20507
20791
|
"locationInModule": {
|
|
20508
20792
|
"filename": "src/assets.ts",
|
|
20509
|
-
"line":
|
|
20793
|
+
"line": 394
|
|
20510
20794
|
},
|
|
20511
20795
|
"name": "path",
|
|
20512
20796
|
"type": {
|
|
@@ -21991,7 +22275,7 @@
|
|
|
21991
22275
|
},
|
|
21992
22276
|
"locationInModule": {
|
|
21993
22277
|
"filename": "src/terraform-asset.ts",
|
|
21994
|
-
"line":
|
|
22278
|
+
"line": 117
|
|
21995
22279
|
},
|
|
21996
22280
|
"parameters": [
|
|
21997
22281
|
{
|
|
@@ -22020,7 +22304,7 @@
|
|
|
22020
22304
|
"kind": "class",
|
|
22021
22305
|
"locationInModule": {
|
|
22022
22306
|
"filename": "src/terraform-asset.ts",
|
|
22023
|
-
"line":
|
|
22307
|
+
"line": 100
|
|
22024
22308
|
},
|
|
22025
22309
|
"name": "TerraformAsset",
|
|
22026
22310
|
"properties": [
|
|
@@ -22033,7 +22317,7 @@
|
|
|
22033
22317
|
"immutable": true,
|
|
22034
22318
|
"locationInModule": {
|
|
22035
22319
|
"filename": "src/terraform-asset.ts",
|
|
22036
|
-
"line":
|
|
22320
|
+
"line": 104
|
|
22037
22321
|
},
|
|
22038
22322
|
"name": "assetHash",
|
|
22039
22323
|
"overrides": "cdktn.IAsset",
|
|
@@ -22049,7 +22333,7 @@
|
|
|
22049
22333
|
"immutable": true,
|
|
22050
22334
|
"locationInModule": {
|
|
22051
22335
|
"filename": "src/terraform-asset.ts",
|
|
22052
|
-
"line":
|
|
22336
|
+
"line": 205
|
|
22053
22337
|
},
|
|
22054
22338
|
"name": "fileName",
|
|
22055
22339
|
"type": {
|
|
@@ -22064,7 +22348,7 @@
|
|
|
22064
22348
|
"immutable": true,
|
|
22065
22349
|
"locationInModule": {
|
|
22066
22350
|
"filename": "src/terraform-asset.ts",
|
|
22067
|
-
"line":
|
|
22351
|
+
"line": 192
|
|
22068
22352
|
},
|
|
22069
22353
|
"name": "path",
|
|
22070
22354
|
"type": {
|
|
@@ -22077,7 +22361,7 @@
|
|
|
22077
22361
|
},
|
|
22078
22362
|
"locationInModule": {
|
|
22079
22363
|
"filename": "src/terraform-asset.ts",
|
|
22080
|
-
"line":
|
|
22364
|
+
"line": 106
|
|
22081
22365
|
},
|
|
22082
22366
|
"name": "type",
|
|
22083
22367
|
"type": {
|
|
@@ -22097,7 +22381,7 @@
|
|
|
22097
22381
|
"kind": "interface",
|
|
22098
22382
|
"locationInModule": {
|
|
22099
22383
|
"filename": "src/terraform-asset.ts",
|
|
22100
|
-
"line":
|
|
22384
|
+
"line": 24
|
|
22101
22385
|
},
|
|
22102
22386
|
"name": "TerraformAssetConfig",
|
|
22103
22387
|
"properties": [
|
|
@@ -22109,7 +22393,7 @@
|
|
|
22109
22393
|
"immutable": true,
|
|
22110
22394
|
"locationInModule": {
|
|
22111
22395
|
"filename": "src/terraform-asset.ts",
|
|
22112
|
-
"line":
|
|
22396
|
+
"line": 26
|
|
22113
22397
|
},
|
|
22114
22398
|
"name": "path",
|
|
22115
22399
|
"type": {
|
|
@@ -22124,7 +22408,7 @@
|
|
|
22124
22408
|
"immutable": true,
|
|
22125
22409
|
"locationInModule": {
|
|
22126
22410
|
"filename": "src/terraform-asset.ts",
|
|
22127
|
-
"line":
|
|
22411
|
+
"line": 30
|
|
22128
22412
|
},
|
|
22129
22413
|
"name": "assetHash",
|
|
22130
22414
|
"optional": true,
|
|
@@ -22136,7 +22420,7 @@
|
|
|
22136
22420
|
"abstract": true,
|
|
22137
22421
|
"docs": {
|
|
22138
22422
|
"default": "AssetHashType.SOURCE",
|
|
22139
|
-
"remarks": "`SOURCE` (the default) hashes the source path. `CUSTOM` uses the\n`assetHash` value verbatim and requires it to be set. `OUTPUT`
|
|
22423
|
+
"remarks": "`SOURCE` (the default) hashes the source path. `CUSTOM` uses the\n`assetHash` value verbatim and requires it to be set. `OUTPUT` hashes the\nsource too, unless a `bundler` is set — then it hashes the bundler's\nbuilt output, which forces an eager build (see `bundler`).\n\nIf `assetHash` is set, this must be `undefined` or `AssetHashType.CUSTOM`.",
|
|
22140
22424
|
"stability": "experimental",
|
|
22141
22425
|
"summary": "How the `assetHash` is derived."
|
|
22142
22426
|
},
|
|
@@ -22151,6 +22435,25 @@
|
|
|
22151
22435
|
"fqn": "cdktn.AssetHashType"
|
|
22152
22436
|
}
|
|
22153
22437
|
},
|
|
22438
|
+
{
|
|
22439
|
+
"abstract": true,
|
|
22440
|
+
"docs": {
|
|
22441
|
+
"default": "- the source is staged verbatim, with no build step",
|
|
22442
|
+
"remarks": "Core ships no bundler; implement `IAssetBundler` or use one from a bundler\npackage. Under the default `SOURCE` hashing the build is deferred to synth\nand stays skippable; `OUTPUT` hashing builds eagerly to hash the artifact.\n`AssetType.FILE` is rejected, since bundler output is always a directory.\nSee `AssetStagingOptions.bundler`.",
|
|
22443
|
+
"stability": "experimental",
|
|
22444
|
+
"summary": "A bundler that builds the source into an artifact before staging."
|
|
22445
|
+
},
|
|
22446
|
+
"immutable": true,
|
|
22447
|
+
"locationInModule": {
|
|
22448
|
+
"filename": "src/terraform-asset.ts",
|
|
22449
|
+
"line": 73
|
|
22450
|
+
},
|
|
22451
|
+
"name": "bundler",
|
|
22452
|
+
"optional": true,
|
|
22453
|
+
"type": {
|
|
22454
|
+
"fqn": "cdktn.IAssetBundler"
|
|
22455
|
+
}
|
|
22456
|
+
},
|
|
22154
22457
|
{
|
|
22155
22458
|
"abstract": true,
|
|
22156
22459
|
"docs": {
|
|
@@ -22201,7 +22504,7 @@
|
|
|
22201
22504
|
"immutable": true,
|
|
22202
22505
|
"locationInModule": {
|
|
22203
22506
|
"filename": "src/terraform-asset.ts",
|
|
22204
|
-
"line":
|
|
22507
|
+
"line": 28
|
|
22205
22508
|
},
|
|
22206
22509
|
"name": "type",
|
|
22207
22510
|
"optional": true,
|
|
@@ -32075,6 +32378,6 @@
|
|
|
32075
32378
|
"symbolId": "src/testing/matchers:TerraformConstructor"
|
|
32076
32379
|
}
|
|
32077
32380
|
},
|
|
32078
|
-
"version": "0.25.0-pre.
|
|
32079
|
-
"fingerprint": "
|
|
32381
|
+
"version": "0.25.0-pre.39",
|
|
32382
|
+
"fingerprint": "Mm8DFV8p3EqPwv9VKU0HHSxr3LzTcN0VloMAb2Daxx0="
|
|
32080
32383
|
}
|