@fractal_cloud/sdk 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +191 -174
- package/dist/index.cjs +2922 -57
- package/dist/index.d.cts +1245 -2
- package/dist/index.d.mts +1245 -2
- package/dist/index.mjs +2748 -57
- package/package.json +15 -3
package/dist/index.d.mts
CHANGED
|
@@ -1563,6 +1563,29 @@ type LiveSystemBuilder = {
|
|
|
1563
1563
|
//#region src/live_system/index.d.ts
|
|
1564
1564
|
declare namespace LiveSystem$1 {
|
|
1565
1565
|
type Status = 'Unknown' | 'Mutating' | 'Active' | 'FailedMutation' | 'Processing' | 'Error' | 'Ready' | 'Deleting' | 'Stale';
|
|
1566
|
+
/**
|
|
1567
|
+
* Controls how deploy() behaves after submitting the live system to the API.
|
|
1568
|
+
*
|
|
1569
|
+
* - `'fire-and-forget'` (default): submit and return immediately. Errors are
|
|
1570
|
+
* logged to the console but not thrown. Suitable for applications and CLIs
|
|
1571
|
+
* where deployment is a background concern.
|
|
1572
|
+
*
|
|
1573
|
+
* - `'wait'`: submit then poll until the live system reaches `Active` status.
|
|
1574
|
+
* Throws if deployment fails or if the timeout is exceeded. Suitable for
|
|
1575
|
+
* CI/CD pipelines where the pipeline must not advance until infrastructure
|
|
1576
|
+
* is fully provisioned.
|
|
1577
|
+
*/
|
|
1578
|
+
type DeployOptions = {
|
|
1579
|
+
mode: 'fire-and-forget' | 'wait'; /** Polling interval in milliseconds. Default: 5000 (5 s). Only used with `mode: 'wait'`. */
|
|
1580
|
+
pollIntervalMs?: number; /** Maximum time to wait in milliseconds. Default: 600000 (10 min). Only used with `mode: 'wait'`. */
|
|
1581
|
+
timeoutMs?: number;
|
|
1582
|
+
/**
|
|
1583
|
+
* Suppress all SDK log output. Default: false.
|
|
1584
|
+
* Set to `true` when a CLI or wrapper layer owns the presentation layer.
|
|
1585
|
+
* Only applies to `mode: 'wait'` — `fire-and-forget` is always silent.
|
|
1586
|
+
*/
|
|
1587
|
+
quiet?: boolean;
|
|
1588
|
+
};
|
|
1566
1589
|
type Id = LiveSystemId;
|
|
1567
1590
|
namespace Id {
|
|
1568
1591
|
type Builder = LiveSystemIdBuilder;
|
|
@@ -1590,10 +1613,1230 @@ type LiveSystem$1 = {
|
|
|
1590
1613
|
environment: Environment$1;
|
|
1591
1614
|
createdAt: Date;
|
|
1592
1615
|
updatedAt: Date;
|
|
1593
|
-
deploy: (credentials: ServiceAccountCredentials$1) => Promise<void>;
|
|
1616
|
+
deploy: (credentials: ServiceAccountCredentials$1, options?: LiveSystem$1.DeployOptions) => Promise<void>;
|
|
1594
1617
|
destroy: (credentials: ServiceAccountCredentials$1) => Promise<void>;
|
|
1595
1618
|
};
|
|
1596
1619
|
//#endregion
|
|
1620
|
+
//#region src/fractal/component/network_and_compute/iaas/security_group.d.ts
|
|
1621
|
+
type IngressRule = {
|
|
1622
|
+
protocol?: string;
|
|
1623
|
+
fromPort: number;
|
|
1624
|
+
toPort?: number;
|
|
1625
|
+
sourceCidr?: string;
|
|
1626
|
+
sourceGroupId?: string;
|
|
1627
|
+
};
|
|
1628
|
+
type SecurityGroupBuilder = {
|
|
1629
|
+
withId: (id: string) => SecurityGroupBuilder;
|
|
1630
|
+
withVersion: (major: number, minor: number, patch: number) => SecurityGroupBuilder;
|
|
1631
|
+
withDisplayName: (displayName: string) => SecurityGroupBuilder;
|
|
1632
|
+
withDescription: (description: string) => SecurityGroupBuilder;
|
|
1633
|
+
withIngressRules: (rules: IngressRule[]) => SecurityGroupBuilder;
|
|
1634
|
+
withLinks: (links: ComponentLink[]) => SecurityGroupBuilder;
|
|
1635
|
+
build: () => SecurityGroupComponent;
|
|
1636
|
+
};
|
|
1637
|
+
type SecurityGroupConfig = {
|
|
1638
|
+
id: string;
|
|
1639
|
+
version: {
|
|
1640
|
+
major: number;
|
|
1641
|
+
minor: number;
|
|
1642
|
+
patch: number;
|
|
1643
|
+
};
|
|
1644
|
+
displayName: string;
|
|
1645
|
+
description: string;
|
|
1646
|
+
ingressRules?: IngressRule[];
|
|
1647
|
+
};
|
|
1648
|
+
/** A BlueprintComponent that is guaranteed to be a SecurityGroup. */
|
|
1649
|
+
type SecurityGroupComponent = BlueprintComponent & {
|
|
1650
|
+
readonly _brand: 'SecurityGroup';
|
|
1651
|
+
};
|
|
1652
|
+
declare namespace SecurityGroup {
|
|
1653
|
+
const getBuilder: () => SecurityGroupBuilder;
|
|
1654
|
+
const create: (config: SecurityGroupConfig) => SecurityGroupComponent;
|
|
1655
|
+
}
|
|
1656
|
+
//#endregion
|
|
1657
|
+
//#region src/fractal/component/network_and_compute/iaas/vm.d.ts
|
|
1658
|
+
type VmPortLink = {
|
|
1659
|
+
target: VirtualMachineComponent;
|
|
1660
|
+
fromPort: number;
|
|
1661
|
+
toPort?: number;
|
|
1662
|
+
protocol?: string;
|
|
1663
|
+
};
|
|
1664
|
+
type VirtualMachineComponent = {
|
|
1665
|
+
readonly component: BlueprintComponent;
|
|
1666
|
+
readonly components: ReadonlyArray<BlueprintComponent>; /** Declares a traffic rule from this VM to another. The agent derives managed SG egress/ingress rules. */
|
|
1667
|
+
linkToVirtualMachine: (links: VmPortLink[]) => VirtualMachineComponent; /** Declares SG membership. The agent assigns the VM to the given security group at launch. No settings required. */
|
|
1668
|
+
linkToSecurityGroup: (sgs: SecurityGroupComponent[]) => VirtualMachineComponent;
|
|
1669
|
+
};
|
|
1670
|
+
type VirtualMachineBuilder = {
|
|
1671
|
+
withId: (id: string) => VirtualMachineBuilder;
|
|
1672
|
+
withVersion: (major: number, minor: number, patch: number) => VirtualMachineBuilder;
|
|
1673
|
+
withDisplayName: (displayName: string) => VirtualMachineBuilder;
|
|
1674
|
+
withDescription: (description: string) => VirtualMachineBuilder;
|
|
1675
|
+
withLinks: (links: ComponentLink[]) => VirtualMachineBuilder;
|
|
1676
|
+
build: () => BlueprintComponent;
|
|
1677
|
+
};
|
|
1678
|
+
type VirtualMachineConfig = {
|
|
1679
|
+
id: string;
|
|
1680
|
+
version: {
|
|
1681
|
+
major: number;
|
|
1682
|
+
minor: number;
|
|
1683
|
+
patch: number;
|
|
1684
|
+
};
|
|
1685
|
+
displayName: string;
|
|
1686
|
+
description?: string;
|
|
1687
|
+
};
|
|
1688
|
+
declare namespace VirtualMachine {
|
|
1689
|
+
const getBuilder: () => VirtualMachineBuilder;
|
|
1690
|
+
const create: (config: VirtualMachineConfig) => VirtualMachineComponent;
|
|
1691
|
+
}
|
|
1692
|
+
//#endregion
|
|
1693
|
+
//#region src/fractal/component/custom_workloads/caas/workload.d.ts
|
|
1694
|
+
/**
|
|
1695
|
+
* Link from one Workload to another, declaring a traffic rule.
|
|
1696
|
+
* The agent derives managed SG egress/ingress rules from these.
|
|
1697
|
+
*/
|
|
1698
|
+
type WorkloadPortLink = {
|
|
1699
|
+
target: WorkloadComponent;
|
|
1700
|
+
fromPort: number;
|
|
1701
|
+
toPort?: number;
|
|
1702
|
+
protocol?: string;
|
|
1703
|
+
};
|
|
1704
|
+
type WorkloadComponent = {
|
|
1705
|
+
readonly component: BlueprintComponent;
|
|
1706
|
+
readonly components: ReadonlyArray<BlueprintComponent>; /** Declares a traffic rule from this workload to another. The agent derives managed SG egress/ingress rules. */
|
|
1707
|
+
linkToWorkload: (links: WorkloadPortLink[]) => WorkloadComponent; /** Declares SG membership. The agent assigns the workload to the given security group at launch. No settings required. */
|
|
1708
|
+
linkToSecurityGroup: (sgs: SecurityGroupComponent[]) => WorkloadComponent;
|
|
1709
|
+
};
|
|
1710
|
+
type WorkloadBuilder = {
|
|
1711
|
+
withId: (id: string) => WorkloadBuilder;
|
|
1712
|
+
withVersion: (major: number, minor: number, patch: number) => WorkloadBuilder;
|
|
1713
|
+
withDisplayName: (displayName: string) => WorkloadBuilder;
|
|
1714
|
+
withDescription: (description: string) => WorkloadBuilder;
|
|
1715
|
+
withContainerImage: (image: string) => WorkloadBuilder;
|
|
1716
|
+
withContainerPort: (port: number) => WorkloadBuilder;
|
|
1717
|
+
withContainerName: (name: string) => WorkloadBuilder;
|
|
1718
|
+
withCpu: (cpu: string) => WorkloadBuilder;
|
|
1719
|
+
withMemory: (memory: string) => WorkloadBuilder;
|
|
1720
|
+
withDesiredCount: (count: number) => WorkloadBuilder;
|
|
1721
|
+
build: () => BlueprintComponent;
|
|
1722
|
+
};
|
|
1723
|
+
type WorkloadConfig = {
|
|
1724
|
+
id: string;
|
|
1725
|
+
version: {
|
|
1726
|
+
major: number;
|
|
1727
|
+
minor: number;
|
|
1728
|
+
patch: number;
|
|
1729
|
+
};
|
|
1730
|
+
displayName: string;
|
|
1731
|
+
description?: string;
|
|
1732
|
+
containerImage: string;
|
|
1733
|
+
containerPort?: number;
|
|
1734
|
+
containerName?: string;
|
|
1735
|
+
cpu?: string;
|
|
1736
|
+
memory?: string;
|
|
1737
|
+
desiredCount?: number;
|
|
1738
|
+
};
|
|
1739
|
+
declare namespace Workload {
|
|
1740
|
+
const getBuilder: () => WorkloadBuilder;
|
|
1741
|
+
const create: (config: WorkloadConfig) => WorkloadComponent;
|
|
1742
|
+
}
|
|
1743
|
+
//#endregion
|
|
1744
|
+
//#region src/fractal/component/network_and_compute/iaas/subnet.d.ts
|
|
1745
|
+
type SubnetComponent = {
|
|
1746
|
+
readonly subnet: BlueprintComponent;
|
|
1747
|
+
readonly virtualMachines: ReadonlyArray<BlueprintComponent>;
|
|
1748
|
+
readonly workloads: ReadonlyArray<BlueprintComponent>;
|
|
1749
|
+
readonly components: ReadonlyArray<BlueprintComponent>;
|
|
1750
|
+
withVirtualMachines: (vms: VirtualMachineComponent[]) => SubnetComponent;
|
|
1751
|
+
withWorkloads: (workloads: ReadonlyArray<WorkloadComponent>) => SubnetComponent;
|
|
1752
|
+
};
|
|
1753
|
+
type SubnetResult = {
|
|
1754
|
+
readonly subnet: BlueprintComponent;
|
|
1755
|
+
readonly virtualMachines: ReadonlyArray<BlueprintComponent>;
|
|
1756
|
+
readonly components: ReadonlyArray<BlueprintComponent>;
|
|
1757
|
+
};
|
|
1758
|
+
type SubnetBuilder = {
|
|
1759
|
+
withId: (id: string) => SubnetBuilder;
|
|
1760
|
+
withVersion: (major: number, minor: number, patch: number) => SubnetBuilder;
|
|
1761
|
+
withDisplayName: (displayName: string) => SubnetBuilder;
|
|
1762
|
+
withDescription: (description: string) => SubnetBuilder;
|
|
1763
|
+
withCidrBlock: (cidrBlock: string) => SubnetBuilder;
|
|
1764
|
+
withVirtualMachine: (builder: VirtualMachineBuilder) => SubnetBuilder;
|
|
1765
|
+
withLinks: (links: ComponentLink[]) => SubnetBuilder;
|
|
1766
|
+
build: () => SubnetResult;
|
|
1767
|
+
};
|
|
1768
|
+
type SubnetConfig = {
|
|
1769
|
+
id: string;
|
|
1770
|
+
version: {
|
|
1771
|
+
major: number;
|
|
1772
|
+
minor: number;
|
|
1773
|
+
patch: number;
|
|
1774
|
+
};
|
|
1775
|
+
displayName: string;
|
|
1776
|
+
description?: string;
|
|
1777
|
+
cidrBlock?: string;
|
|
1778
|
+
};
|
|
1779
|
+
declare namespace Subnet {
|
|
1780
|
+
const getBuilder: () => SubnetBuilder;
|
|
1781
|
+
const create: (config: SubnetConfig) => SubnetComponent;
|
|
1782
|
+
}
|
|
1783
|
+
//#endregion
|
|
1784
|
+
//#region src/fractal/component/network_and_compute/iaas/virtual_network.d.ts
|
|
1785
|
+
type VirtualNetworkComponent = {
|
|
1786
|
+
readonly vpc: BlueprintComponent;
|
|
1787
|
+
readonly subnets: ReadonlyArray<BlueprintComponent>;
|
|
1788
|
+
readonly securityGroups: ReadonlyArray<BlueprintComponent>;
|
|
1789
|
+
readonly virtualMachines: ReadonlyArray<BlueprintComponent>;
|
|
1790
|
+
readonly workloads: ReadonlyArray<BlueprintComponent>;
|
|
1791
|
+
readonly components: ReadonlyArray<BlueprintComponent>;
|
|
1792
|
+
withSubnets: (subnets: SubnetComponent[]) => VirtualNetworkComponent;
|
|
1793
|
+
withSecurityGroups: (sgs: BlueprintComponent[]) => VirtualNetworkComponent;
|
|
1794
|
+
};
|
|
1795
|
+
type VirtualNetworkResult = {
|
|
1796
|
+
readonly vpc: BlueprintComponent;
|
|
1797
|
+
readonly subnets: ReadonlyArray<BlueprintComponent>;
|
|
1798
|
+
readonly securityGroups: ReadonlyArray<BlueprintComponent>;
|
|
1799
|
+
readonly virtualMachines: ReadonlyArray<BlueprintComponent>;
|
|
1800
|
+
readonly workloads: ReadonlyArray<BlueprintComponent>;
|
|
1801
|
+
readonly components: ReadonlyArray<BlueprintComponent>;
|
|
1802
|
+
};
|
|
1803
|
+
type VirtualNetworkBuilder = {
|
|
1804
|
+
withId: (id: string) => VirtualNetworkBuilder;
|
|
1805
|
+
withVersion: (major: number, minor: number, patch: number) => VirtualNetworkBuilder;
|
|
1806
|
+
withDisplayName: (displayName: string) => VirtualNetworkBuilder;
|
|
1807
|
+
withDescription: (description: string) => VirtualNetworkBuilder;
|
|
1808
|
+
withCidrBlock: (cidrBlock: string) => VirtualNetworkBuilder;
|
|
1809
|
+
withSubnet: (builder: SubnetBuilder) => VirtualNetworkBuilder;
|
|
1810
|
+
withSecurityGroup: (builder: SecurityGroupBuilder) => VirtualNetworkBuilder;
|
|
1811
|
+
withLinks: (links: ComponentLink[]) => VirtualNetworkBuilder;
|
|
1812
|
+
build: () => VirtualNetworkResult;
|
|
1813
|
+
};
|
|
1814
|
+
type VirtualNetworkConfig = {
|
|
1815
|
+
id: string;
|
|
1816
|
+
version: {
|
|
1817
|
+
major: number;
|
|
1818
|
+
minor: number;
|
|
1819
|
+
patch: number;
|
|
1820
|
+
};
|
|
1821
|
+
displayName: string;
|
|
1822
|
+
description?: string;
|
|
1823
|
+
cidrBlock?: string;
|
|
1824
|
+
};
|
|
1825
|
+
declare namespace VirtualNetwork {
|
|
1826
|
+
const getBuilder: () => VirtualNetworkBuilder;
|
|
1827
|
+
const create: (config: VirtualNetworkConfig) => VirtualNetworkComponent;
|
|
1828
|
+
}
|
|
1829
|
+
//#endregion
|
|
1830
|
+
//#region src/live_system/component/network_and_compute/iaas/vpc.d.ts
|
|
1831
|
+
/**
|
|
1832
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
1833
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
1834
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
1835
|
+
*/
|
|
1836
|
+
type SatisfiedAwsVpcBuilder = {
|
|
1837
|
+
withInstanceTenancy: (instanceTenancy: 'default' | 'dedicated') => SatisfiedAwsVpcBuilder;
|
|
1838
|
+
withEnableDnsSupport: (enable: boolean) => SatisfiedAwsVpcBuilder;
|
|
1839
|
+
withEnableDnsHostnames: (enable: boolean) => SatisfiedAwsVpcBuilder;
|
|
1840
|
+
build: () => LiveSystemComponent;
|
|
1841
|
+
};
|
|
1842
|
+
type AwsVpcBuilder = {
|
|
1843
|
+
withId: (id: string) => AwsVpcBuilder;
|
|
1844
|
+
withVersion: (major: number, minor: number, patch: number) => AwsVpcBuilder;
|
|
1845
|
+
withDisplayName: (displayName: string) => AwsVpcBuilder;
|
|
1846
|
+
withDescription: (description: string) => AwsVpcBuilder;
|
|
1847
|
+
withCidrBlock: (cidrBlock: string) => AwsVpcBuilder;
|
|
1848
|
+
withInstanceTenancy: (instanceTenancy: 'default' | 'dedicated') => AwsVpcBuilder;
|
|
1849
|
+
withEnableDnsSupport: (enable: boolean) => AwsVpcBuilder;
|
|
1850
|
+
withEnableDnsHostnames: (enable: boolean) => AwsVpcBuilder;
|
|
1851
|
+
build: () => LiveSystemComponent;
|
|
1852
|
+
};
|
|
1853
|
+
type AwsVpcConfig = {
|
|
1854
|
+
id: string;
|
|
1855
|
+
version: {
|
|
1856
|
+
major: number;
|
|
1857
|
+
minor: number;
|
|
1858
|
+
patch: number;
|
|
1859
|
+
};
|
|
1860
|
+
displayName: string;
|
|
1861
|
+
description?: string;
|
|
1862
|
+
cidrBlock: string;
|
|
1863
|
+
instanceTenancy?: 'default' | 'dedicated';
|
|
1864
|
+
enableDnsSupport?: boolean;
|
|
1865
|
+
enableDnsHostnames?: boolean;
|
|
1866
|
+
};
|
|
1867
|
+
declare namespace AwsVpc {
|
|
1868
|
+
const getBuilder: () => AwsVpcBuilder;
|
|
1869
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAwsVpcBuilder;
|
|
1870
|
+
const create: (config: AwsVpcConfig) => LiveSystemComponent;
|
|
1871
|
+
}
|
|
1872
|
+
//#endregion
|
|
1873
|
+
//#region src/live_system/component/network_and_compute/iaas/subnet.d.ts
|
|
1874
|
+
/**
|
|
1875
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
1876
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
1877
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
1878
|
+
*/
|
|
1879
|
+
type SatisfiedAwsSubnetBuilder = {
|
|
1880
|
+
withAvailabilityZone: (availabilityZone: string) => SatisfiedAwsSubnetBuilder;
|
|
1881
|
+
build: () => LiveSystemComponent;
|
|
1882
|
+
};
|
|
1883
|
+
type AwsSubnetBuilder = {
|
|
1884
|
+
withId: (id: string) => AwsSubnetBuilder;
|
|
1885
|
+
withVersion: (major: number, minor: number, patch: number) => AwsSubnetBuilder;
|
|
1886
|
+
withDisplayName: (displayName: string) => AwsSubnetBuilder;
|
|
1887
|
+
withDescription: (description: string) => AwsSubnetBuilder;
|
|
1888
|
+
withCidrBlock: (cidrBlock: string) => AwsSubnetBuilder;
|
|
1889
|
+
withAvailabilityZone: (availabilityZone: string) => AwsSubnetBuilder;
|
|
1890
|
+
build: () => LiveSystemComponent;
|
|
1891
|
+
};
|
|
1892
|
+
type AwsSubnetConfig = {
|
|
1893
|
+
id: string;
|
|
1894
|
+
version: {
|
|
1895
|
+
major: number;
|
|
1896
|
+
minor: number;
|
|
1897
|
+
patch: number;
|
|
1898
|
+
};
|
|
1899
|
+
displayName: string;
|
|
1900
|
+
description?: string;
|
|
1901
|
+
cidrBlock: string;
|
|
1902
|
+
availabilityZone: string;
|
|
1903
|
+
};
|
|
1904
|
+
declare namespace AwsSubnet {
|
|
1905
|
+
const getBuilder: () => AwsSubnetBuilder;
|
|
1906
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAwsSubnetBuilder;
|
|
1907
|
+
const create: (config: AwsSubnetConfig) => LiveSystemComponent;
|
|
1908
|
+
}
|
|
1909
|
+
//#endregion
|
|
1910
|
+
//#region src/live_system/component/network_and_compute/iaas/security_group.d.ts
|
|
1911
|
+
/**
|
|
1912
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
1913
|
+
* description, dependencies, links, ingressRules) are locked to the blueprint
|
|
1914
|
+
* and cannot be overridden.
|
|
1915
|
+
*/
|
|
1916
|
+
type SatisfiedAwsSecurityGroupBuilder = {
|
|
1917
|
+
build: () => LiveSystemComponent;
|
|
1918
|
+
};
|
|
1919
|
+
type AwsSecurityGroupBuilder = {
|
|
1920
|
+
withId: (id: string) => AwsSecurityGroupBuilder;
|
|
1921
|
+
withVersion: (major: number, minor: number, patch: number) => AwsSecurityGroupBuilder;
|
|
1922
|
+
withDisplayName: (displayName: string) => AwsSecurityGroupBuilder;
|
|
1923
|
+
withDescription: (description: string) => AwsSecurityGroupBuilder;
|
|
1924
|
+
withIngressRules: (rules: IngressRule[]) => AwsSecurityGroupBuilder;
|
|
1925
|
+
build: () => LiveSystemComponent;
|
|
1926
|
+
};
|
|
1927
|
+
type AwsSecurityGroupConfig = {
|
|
1928
|
+
id: string;
|
|
1929
|
+
version: {
|
|
1930
|
+
major: number;
|
|
1931
|
+
minor: number;
|
|
1932
|
+
patch: number;
|
|
1933
|
+
};
|
|
1934
|
+
displayName: string;
|
|
1935
|
+
description: string;
|
|
1936
|
+
ingressRules?: IngressRule[];
|
|
1937
|
+
};
|
|
1938
|
+
declare namespace AwsSecurityGroup {
|
|
1939
|
+
const getBuilder: () => AwsSecurityGroupBuilder;
|
|
1940
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAwsSecurityGroupBuilder;
|
|
1941
|
+
const create: (config: AwsSecurityGroupConfig) => LiveSystemComponent;
|
|
1942
|
+
}
|
|
1943
|
+
//#endregion
|
|
1944
|
+
//#region src/live_system/component/network_and_compute/iaas/ec2_instance.d.ts
|
|
1945
|
+
/**
|
|
1946
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
1947
|
+
* Structural properties (id, version, displayName, description, dependencies,
|
|
1948
|
+
* links) are locked to the blueprint and cannot be overridden.
|
|
1949
|
+
*/
|
|
1950
|
+
type SatisfiedEc2Builder = {
|
|
1951
|
+
withAmiId: (amiId: string) => SatisfiedEc2Builder;
|
|
1952
|
+
withInstanceType: (instanceType: string) => SatisfiedEc2Builder;
|
|
1953
|
+
withKeyName: (keyName: string) => SatisfiedEc2Builder;
|
|
1954
|
+
withUserData: (userData: string) => SatisfiedEc2Builder;
|
|
1955
|
+
withIamInstanceProfile: (profile: string) => SatisfiedEc2Builder;
|
|
1956
|
+
withAssociatePublicIp: (associate: boolean) => SatisfiedEc2Builder;
|
|
1957
|
+
build: () => LiveSystemComponent;
|
|
1958
|
+
};
|
|
1959
|
+
type Ec2InstanceBuilder = {
|
|
1960
|
+
withId: (id: string) => Ec2InstanceBuilder;
|
|
1961
|
+
withVersion: (major: number, minor: number, patch: number) => Ec2InstanceBuilder;
|
|
1962
|
+
withDisplayName: (displayName: string) => Ec2InstanceBuilder;
|
|
1963
|
+
withDescription: (description: string) => Ec2InstanceBuilder;
|
|
1964
|
+
withAmiId: (amiId: string) => Ec2InstanceBuilder;
|
|
1965
|
+
withInstanceType: (instanceType: string) => Ec2InstanceBuilder;
|
|
1966
|
+
withKeyName: (keyName: string) => Ec2InstanceBuilder;
|
|
1967
|
+
withUserData: (userData: string) => Ec2InstanceBuilder;
|
|
1968
|
+
withIamInstanceProfile: (profile: string) => Ec2InstanceBuilder;
|
|
1969
|
+
withAssociatePublicIp: (associate: boolean) => Ec2InstanceBuilder;
|
|
1970
|
+
build: () => LiveSystemComponent;
|
|
1971
|
+
};
|
|
1972
|
+
type Ec2InstanceConfig = {
|
|
1973
|
+
id: string;
|
|
1974
|
+
version: {
|
|
1975
|
+
major: number;
|
|
1976
|
+
minor: number;
|
|
1977
|
+
patch: number;
|
|
1978
|
+
};
|
|
1979
|
+
displayName: string;
|
|
1980
|
+
description?: string;
|
|
1981
|
+
amiId: string;
|
|
1982
|
+
instanceType: string;
|
|
1983
|
+
keyName?: string;
|
|
1984
|
+
userData?: string;
|
|
1985
|
+
iamInstanceProfile?: string;
|
|
1986
|
+
associatePublicIp?: boolean;
|
|
1987
|
+
};
|
|
1988
|
+
declare namespace Ec2Instance {
|
|
1989
|
+
const getBuilder: () => Ec2InstanceBuilder;
|
|
1990
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedEc2Builder;
|
|
1991
|
+
const create: (config: Ec2InstanceConfig) => LiveSystemComponent;
|
|
1992
|
+
}
|
|
1993
|
+
//#endregion
|
|
1994
|
+
//#region src/live_system/component/network_and_compute/iaas/azure_vnet.d.ts
|
|
1995
|
+
/**
|
|
1996
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
1997
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
1998
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
1999
|
+
*/
|
|
2000
|
+
type SatisfiedAzureVnetBuilder = {
|
|
2001
|
+
withLocation: (location: string) => SatisfiedAzureVnetBuilder;
|
|
2002
|
+
withResourceGroup: (rg: string) => SatisfiedAzureVnetBuilder;
|
|
2003
|
+
build: () => LiveSystemComponent;
|
|
2004
|
+
};
|
|
2005
|
+
type AzureVnetBuilder = {
|
|
2006
|
+
withId: (id: string) => AzureVnetBuilder;
|
|
2007
|
+
withVersion: (major: number, minor: number, patch: number) => AzureVnetBuilder;
|
|
2008
|
+
withDisplayName: (displayName: string) => AzureVnetBuilder;
|
|
2009
|
+
withDescription: (description: string) => AzureVnetBuilder;
|
|
2010
|
+
withCidrBlock: (cidrBlock: string) => AzureVnetBuilder;
|
|
2011
|
+
withLocation: (location: string) => AzureVnetBuilder;
|
|
2012
|
+
withResourceGroup: (rg: string) => AzureVnetBuilder;
|
|
2013
|
+
build: () => LiveSystemComponent;
|
|
2014
|
+
};
|
|
2015
|
+
type AzureVnetConfig = {
|
|
2016
|
+
id: string;
|
|
2017
|
+
version: {
|
|
2018
|
+
major: number;
|
|
2019
|
+
minor: number;
|
|
2020
|
+
patch: number;
|
|
2021
|
+
};
|
|
2022
|
+
displayName: string;
|
|
2023
|
+
description?: string;
|
|
2024
|
+
cidrBlock: string;
|
|
2025
|
+
location: string;
|
|
2026
|
+
resourceGroup: string;
|
|
2027
|
+
};
|
|
2028
|
+
declare namespace AzureVnet {
|
|
2029
|
+
const getBuilder: () => AzureVnetBuilder;
|
|
2030
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAzureVnetBuilder;
|
|
2031
|
+
const create: (config: AzureVnetConfig) => LiveSystemComponent;
|
|
2032
|
+
}
|
|
2033
|
+
//#endregion
|
|
2034
|
+
//#region src/live_system/component/network_and_compute/iaas/azure_subnet.d.ts
|
|
2035
|
+
/**
|
|
2036
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2037
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2038
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2039
|
+
*/
|
|
2040
|
+
type SatisfiedAzureSubnetBuilder = {
|
|
2041
|
+
withResourceGroup: (rg: string) => SatisfiedAzureSubnetBuilder;
|
|
2042
|
+
build: () => LiveSystemComponent;
|
|
2043
|
+
};
|
|
2044
|
+
type AzureSubnetBuilder = {
|
|
2045
|
+
withId: (id: string) => AzureSubnetBuilder;
|
|
2046
|
+
withVersion: (major: number, minor: number, patch: number) => AzureSubnetBuilder;
|
|
2047
|
+
withDisplayName: (displayName: string) => AzureSubnetBuilder;
|
|
2048
|
+
withDescription: (description: string) => AzureSubnetBuilder;
|
|
2049
|
+
withCidrBlock: (cidrBlock: string) => AzureSubnetBuilder;
|
|
2050
|
+
withResourceGroup: (rg: string) => AzureSubnetBuilder;
|
|
2051
|
+
build: () => LiveSystemComponent;
|
|
2052
|
+
};
|
|
2053
|
+
type AzureSubnetConfig = {
|
|
2054
|
+
id: string;
|
|
2055
|
+
version: {
|
|
2056
|
+
major: number;
|
|
2057
|
+
minor: number;
|
|
2058
|
+
patch: number;
|
|
2059
|
+
};
|
|
2060
|
+
displayName: string;
|
|
2061
|
+
description?: string;
|
|
2062
|
+
cidrBlock: string;
|
|
2063
|
+
resourceGroup: string;
|
|
2064
|
+
};
|
|
2065
|
+
declare namespace AzureSubnet {
|
|
2066
|
+
const getBuilder: () => AzureSubnetBuilder;
|
|
2067
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAzureSubnetBuilder;
|
|
2068
|
+
const create: (config: AzureSubnetConfig) => LiveSystemComponent;
|
|
2069
|
+
}
|
|
2070
|
+
//#endregion
|
|
2071
|
+
//#region src/live_system/component/network_and_compute/iaas/azure_nsg.d.ts
|
|
2072
|
+
/**
|
|
2073
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
2074
|
+
* description, dependencies, links, ingressRules) are locked to the blueprint
|
|
2075
|
+
* and cannot be overridden.
|
|
2076
|
+
*/
|
|
2077
|
+
type SatisfiedAzureNsgBuilder = {
|
|
2078
|
+
withLocation: (location: string) => SatisfiedAzureNsgBuilder;
|
|
2079
|
+
withResourceGroup: (rg: string) => SatisfiedAzureNsgBuilder;
|
|
2080
|
+
build: () => LiveSystemComponent;
|
|
2081
|
+
};
|
|
2082
|
+
type AzureNsgBuilder = {
|
|
2083
|
+
withId: (id: string) => AzureNsgBuilder;
|
|
2084
|
+
withVersion: (major: number, minor: number, patch: number) => AzureNsgBuilder;
|
|
2085
|
+
withDisplayName: (displayName: string) => AzureNsgBuilder;
|
|
2086
|
+
withDescription: (description: string) => AzureNsgBuilder;
|
|
2087
|
+
withIngressRules: (rules: IngressRule[]) => AzureNsgBuilder;
|
|
2088
|
+
withLocation: (location: string) => AzureNsgBuilder;
|
|
2089
|
+
withResourceGroup: (rg: string) => AzureNsgBuilder;
|
|
2090
|
+
build: () => LiveSystemComponent;
|
|
2091
|
+
};
|
|
2092
|
+
type AzureNsgConfig = {
|
|
2093
|
+
id: string;
|
|
2094
|
+
version: {
|
|
2095
|
+
major: number;
|
|
2096
|
+
minor: number;
|
|
2097
|
+
patch: number;
|
|
2098
|
+
};
|
|
2099
|
+
displayName: string;
|
|
2100
|
+
description?: string;
|
|
2101
|
+
ingressRules?: IngressRule[];
|
|
2102
|
+
location: string;
|
|
2103
|
+
resourceGroup: string;
|
|
2104
|
+
};
|
|
2105
|
+
declare namespace AzureNsg {
|
|
2106
|
+
const getBuilder: () => AzureNsgBuilder;
|
|
2107
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAzureNsgBuilder;
|
|
2108
|
+
const create: (config: AzureNsgConfig) => LiveSystemComponent;
|
|
2109
|
+
}
|
|
2110
|
+
//#endregion
|
|
2111
|
+
//#region src/live_system/component/network_and_compute/iaas/azure_vm.d.ts
|
|
2112
|
+
/**
|
|
2113
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2114
|
+
* Structural properties (id, version, displayName, description, dependencies,
|
|
2115
|
+
* links) are locked to the blueprint and cannot be overridden.
|
|
2116
|
+
*/
|
|
2117
|
+
type SatisfiedAzureVmBuilder = {
|
|
2118
|
+
withVmSize: (vmSize: string) => SatisfiedAzureVmBuilder;
|
|
2119
|
+
withLocation: (location: string) => SatisfiedAzureVmBuilder;
|
|
2120
|
+
withResourceGroup: (rg: string) => SatisfiedAzureVmBuilder;
|
|
2121
|
+
withAdminUsername: (username: string) => SatisfiedAzureVmBuilder;
|
|
2122
|
+
withImagePublisher: (publisher: string) => SatisfiedAzureVmBuilder;
|
|
2123
|
+
withImageOffer: (offer: string) => SatisfiedAzureVmBuilder;
|
|
2124
|
+
withImageSku: (sku: string) => SatisfiedAzureVmBuilder;
|
|
2125
|
+
withSshPublicKey: (key: string) => SatisfiedAzureVmBuilder;
|
|
2126
|
+
withOsDiskSizeGb: (gb: number) => SatisfiedAzureVmBuilder;
|
|
2127
|
+
build: () => LiveSystemComponent;
|
|
2128
|
+
};
|
|
2129
|
+
type AzureVmBuilder = {
|
|
2130
|
+
withId: (id: string) => AzureVmBuilder;
|
|
2131
|
+
withVersion: (major: number, minor: number, patch: number) => AzureVmBuilder;
|
|
2132
|
+
withDisplayName: (displayName: string) => AzureVmBuilder;
|
|
2133
|
+
withDescription: (description: string) => AzureVmBuilder;
|
|
2134
|
+
withVmSize: (vmSize: string) => AzureVmBuilder;
|
|
2135
|
+
withLocation: (location: string) => AzureVmBuilder;
|
|
2136
|
+
withResourceGroup: (rg: string) => AzureVmBuilder;
|
|
2137
|
+
withAdminUsername: (username: string) => AzureVmBuilder;
|
|
2138
|
+
withImagePublisher: (publisher: string) => AzureVmBuilder;
|
|
2139
|
+
withImageOffer: (offer: string) => AzureVmBuilder;
|
|
2140
|
+
withImageSku: (sku: string) => AzureVmBuilder;
|
|
2141
|
+
withSshPublicKey: (key: string) => AzureVmBuilder;
|
|
2142
|
+
withOsDiskSizeGb: (gb: number) => AzureVmBuilder;
|
|
2143
|
+
build: () => LiveSystemComponent;
|
|
2144
|
+
};
|
|
2145
|
+
type AzureVmConfig = {
|
|
2146
|
+
id: string;
|
|
2147
|
+
version: {
|
|
2148
|
+
major: number;
|
|
2149
|
+
minor: number;
|
|
2150
|
+
patch: number;
|
|
2151
|
+
};
|
|
2152
|
+
displayName: string;
|
|
2153
|
+
description?: string;
|
|
2154
|
+
vmSize: string;
|
|
2155
|
+
location: string;
|
|
2156
|
+
resourceGroup: string;
|
|
2157
|
+
adminUsername: string;
|
|
2158
|
+
imagePublisher: string;
|
|
2159
|
+
imageOffer: string;
|
|
2160
|
+
imageSku: string;
|
|
2161
|
+
sshPublicKey?: string;
|
|
2162
|
+
osDiskSizeGb?: number;
|
|
2163
|
+
};
|
|
2164
|
+
declare namespace AzureVm {
|
|
2165
|
+
const getBuilder: () => AzureVmBuilder;
|
|
2166
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedAzureVmBuilder;
|
|
2167
|
+
const create: (config: AzureVmConfig) => LiveSystemComponent;
|
|
2168
|
+
}
|
|
2169
|
+
//#endregion
|
|
2170
|
+
//#region src/live_system/component/network_and_compute/iaas/gcp_vpc.d.ts
|
|
2171
|
+
/**
|
|
2172
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2173
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2174
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2175
|
+
*/
|
|
2176
|
+
type SatisfiedGcpVpcBuilder = {
|
|
2177
|
+
withAutoCreateSubnetworks: (enabled: boolean) => SatisfiedGcpVpcBuilder;
|
|
2178
|
+
withRoutingMode: (mode: 'REGIONAL' | 'GLOBAL') => SatisfiedGcpVpcBuilder;
|
|
2179
|
+
build: () => LiveSystemComponent;
|
|
2180
|
+
};
|
|
2181
|
+
type GcpVpcBuilder = {
|
|
2182
|
+
withId: (id: string) => GcpVpcBuilder;
|
|
2183
|
+
withVersion: (major: number, minor: number, patch: number) => GcpVpcBuilder;
|
|
2184
|
+
withDisplayName: (displayName: string) => GcpVpcBuilder;
|
|
2185
|
+
withDescription: (description: string) => GcpVpcBuilder;
|
|
2186
|
+
withCidrBlock: (cidrBlock: string) => GcpVpcBuilder;
|
|
2187
|
+
withAutoCreateSubnetworks: (enabled: boolean) => GcpVpcBuilder;
|
|
2188
|
+
withRoutingMode: (mode: 'REGIONAL' | 'GLOBAL') => GcpVpcBuilder;
|
|
2189
|
+
build: () => LiveSystemComponent;
|
|
2190
|
+
};
|
|
2191
|
+
type GcpVpcConfig = {
|
|
2192
|
+
id: string;
|
|
2193
|
+
version: {
|
|
2194
|
+
major: number;
|
|
2195
|
+
minor: number;
|
|
2196
|
+
patch: number;
|
|
2197
|
+
};
|
|
2198
|
+
displayName: string;
|
|
2199
|
+
description?: string;
|
|
2200
|
+
cidrBlock: string;
|
|
2201
|
+
autoCreateSubnetworks?: boolean;
|
|
2202
|
+
routingMode?: 'REGIONAL' | 'GLOBAL';
|
|
2203
|
+
};
|
|
2204
|
+
declare namespace GcpVpc {
|
|
2205
|
+
const getBuilder: () => GcpVpcBuilder;
|
|
2206
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedGcpVpcBuilder;
|
|
2207
|
+
const create: (config: GcpVpcConfig) => LiveSystemComponent;
|
|
2208
|
+
}
|
|
2209
|
+
//#endregion
|
|
2210
|
+
//#region src/live_system/component/network_and_compute/iaas/gcp_subnet.d.ts
|
|
2211
|
+
/**
|
|
2212
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2213
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2214
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2215
|
+
*/
|
|
2216
|
+
type SatisfiedGcpSubnetBuilder = {
|
|
2217
|
+
withRegion: (region: string) => SatisfiedGcpSubnetBuilder;
|
|
2218
|
+
withPrivateIpGoogleAccess: (enabled: boolean) => SatisfiedGcpSubnetBuilder;
|
|
2219
|
+
build: () => LiveSystemComponent;
|
|
2220
|
+
};
|
|
2221
|
+
type GcpSubnetBuilder = {
|
|
2222
|
+
withId: (id: string) => GcpSubnetBuilder;
|
|
2223
|
+
withVersion: (major: number, minor: number, patch: number) => GcpSubnetBuilder;
|
|
2224
|
+
withDisplayName: (displayName: string) => GcpSubnetBuilder;
|
|
2225
|
+
withDescription: (description: string) => GcpSubnetBuilder;
|
|
2226
|
+
withCidrBlock: (cidrBlock: string) => GcpSubnetBuilder;
|
|
2227
|
+
withRegion: (region: string) => GcpSubnetBuilder;
|
|
2228
|
+
withPrivateIpGoogleAccess: (enabled: boolean) => GcpSubnetBuilder;
|
|
2229
|
+
build: () => LiveSystemComponent;
|
|
2230
|
+
};
|
|
2231
|
+
type GcpSubnetConfig = {
|
|
2232
|
+
id: string;
|
|
2233
|
+
version: {
|
|
2234
|
+
major: number;
|
|
2235
|
+
minor: number;
|
|
2236
|
+
patch: number;
|
|
2237
|
+
};
|
|
2238
|
+
displayName: string;
|
|
2239
|
+
description?: string;
|
|
2240
|
+
cidrBlock: string;
|
|
2241
|
+
region: string;
|
|
2242
|
+
privateIpGoogleAccess?: boolean;
|
|
2243
|
+
};
|
|
2244
|
+
declare namespace GcpSubnet {
|
|
2245
|
+
const getBuilder: () => GcpSubnetBuilder;
|
|
2246
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedGcpSubnetBuilder;
|
|
2247
|
+
const create: (config: GcpSubnetConfig) => LiveSystemComponent;
|
|
2248
|
+
}
|
|
2249
|
+
//#endregion
|
|
2250
|
+
//#region src/live_system/component/network_and_compute/iaas/gcp_firewall.d.ts
|
|
2251
|
+
/**
|
|
2252
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
2253
|
+
* description, dependencies, links, ingressRules) are locked to the blueprint
|
|
2254
|
+
* and cannot be overridden.
|
|
2255
|
+
*/
|
|
2256
|
+
type SatisfiedGcpFirewallBuilder = {
|
|
2257
|
+
build: () => LiveSystemComponent;
|
|
2258
|
+
};
|
|
2259
|
+
type GcpFirewallBuilder = {
|
|
2260
|
+
withId: (id: string) => GcpFirewallBuilder;
|
|
2261
|
+
withVersion: (major: number, minor: number, patch: number) => GcpFirewallBuilder;
|
|
2262
|
+
withDisplayName: (displayName: string) => GcpFirewallBuilder;
|
|
2263
|
+
withDescription: (description: string) => GcpFirewallBuilder;
|
|
2264
|
+
withIngressRules: (rules: IngressRule[]) => GcpFirewallBuilder;
|
|
2265
|
+
build: () => LiveSystemComponent;
|
|
2266
|
+
};
|
|
2267
|
+
type GcpFirewallConfig = {
|
|
2268
|
+
id: string;
|
|
2269
|
+
version: {
|
|
2270
|
+
major: number;
|
|
2271
|
+
minor: number;
|
|
2272
|
+
patch: number;
|
|
2273
|
+
};
|
|
2274
|
+
displayName: string;
|
|
2275
|
+
description?: string;
|
|
2276
|
+
ingressRules?: IngressRule[];
|
|
2277
|
+
};
|
|
2278
|
+
declare namespace GcpFirewall {
|
|
2279
|
+
const getBuilder: () => GcpFirewallBuilder;
|
|
2280
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedGcpFirewallBuilder;
|
|
2281
|
+
const create: (config: GcpFirewallConfig) => LiveSystemComponent;
|
|
2282
|
+
}
|
|
2283
|
+
//#endregion
|
|
2284
|
+
//#region src/live_system/component/network_and_compute/iaas/gcp_vm.d.ts
|
|
2285
|
+
/**
|
|
2286
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2287
|
+
* Structural properties (id, version, displayName, description, dependencies,
|
|
2288
|
+
* links) are locked to the blueprint and cannot be overridden.
|
|
2289
|
+
*/
|
|
2290
|
+
type SatisfiedGcpVmBuilder = {
|
|
2291
|
+
withMachineType: (machineType: string) => SatisfiedGcpVmBuilder;
|
|
2292
|
+
withZone: (zone: string) => SatisfiedGcpVmBuilder;
|
|
2293
|
+
withImageProject: (project: string) => SatisfiedGcpVmBuilder;
|
|
2294
|
+
withImageFamily: (family: string) => SatisfiedGcpVmBuilder;
|
|
2295
|
+
withServiceAccountEmail: (email: string) => SatisfiedGcpVmBuilder;
|
|
2296
|
+
build: () => LiveSystemComponent;
|
|
2297
|
+
};
|
|
2298
|
+
type GcpVmBuilder = {
|
|
2299
|
+
withId: (id: string) => GcpVmBuilder;
|
|
2300
|
+
withVersion: (major: number, minor: number, patch: number) => GcpVmBuilder;
|
|
2301
|
+
withDisplayName: (displayName: string) => GcpVmBuilder;
|
|
2302
|
+
withDescription: (description: string) => GcpVmBuilder;
|
|
2303
|
+
withMachineType: (machineType: string) => GcpVmBuilder;
|
|
2304
|
+
withZone: (zone: string) => GcpVmBuilder;
|
|
2305
|
+
withImageProject: (project: string) => GcpVmBuilder;
|
|
2306
|
+
withImageFamily: (family: string) => GcpVmBuilder;
|
|
2307
|
+
withServiceAccountEmail: (email: string) => GcpVmBuilder;
|
|
2308
|
+
build: () => LiveSystemComponent;
|
|
2309
|
+
};
|
|
2310
|
+
type GcpVmConfig = {
|
|
2311
|
+
id: string;
|
|
2312
|
+
version: {
|
|
2313
|
+
major: number;
|
|
2314
|
+
minor: number;
|
|
2315
|
+
patch: number;
|
|
2316
|
+
};
|
|
2317
|
+
displayName: string;
|
|
2318
|
+
description?: string;
|
|
2319
|
+
machineType: string;
|
|
2320
|
+
zone: string;
|
|
2321
|
+
imageProject: string;
|
|
2322
|
+
imageFamily?: string;
|
|
2323
|
+
serviceAccountEmail?: string;
|
|
2324
|
+
};
|
|
2325
|
+
declare namespace GcpVm {
|
|
2326
|
+
const getBuilder: () => GcpVmBuilder;
|
|
2327
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedGcpVmBuilder;
|
|
2328
|
+
const create: (config: GcpVmConfig) => LiveSystemComponent;
|
|
2329
|
+
}
|
|
2330
|
+
//#endregion
|
|
2331
|
+
//#region src/live_system/component/network_and_compute/iaas/oci_vcn.d.ts
|
|
2332
|
+
/**
|
|
2333
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2334
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2335
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2336
|
+
*/
|
|
2337
|
+
type SatisfiedOciVcnBuilder = {
|
|
2338
|
+
withCompartmentId: (id: string) => SatisfiedOciVcnBuilder;
|
|
2339
|
+
build: () => LiveSystemComponent;
|
|
2340
|
+
};
|
|
2341
|
+
type OciVcnBuilder = {
|
|
2342
|
+
withId: (id: string) => OciVcnBuilder;
|
|
2343
|
+
withVersion: (major: number, minor: number, patch: number) => OciVcnBuilder;
|
|
2344
|
+
withDisplayName: (displayName: string) => OciVcnBuilder;
|
|
2345
|
+
withDescription: (description: string) => OciVcnBuilder;
|
|
2346
|
+
withCidrBlock: (cidrBlock: string) => OciVcnBuilder;
|
|
2347
|
+
withCompartmentId: (id: string) => OciVcnBuilder;
|
|
2348
|
+
build: () => LiveSystemComponent;
|
|
2349
|
+
};
|
|
2350
|
+
type OciVcnConfig = {
|
|
2351
|
+
id: string;
|
|
2352
|
+
version: {
|
|
2353
|
+
major: number;
|
|
2354
|
+
minor: number;
|
|
2355
|
+
patch: number;
|
|
2356
|
+
};
|
|
2357
|
+
displayName: string;
|
|
2358
|
+
description?: string;
|
|
2359
|
+
cidrBlock: string;
|
|
2360
|
+
compartmentId: string;
|
|
2361
|
+
};
|
|
2362
|
+
declare namespace OciVcn {
|
|
2363
|
+
const getBuilder: () => OciVcnBuilder;
|
|
2364
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedOciVcnBuilder;
|
|
2365
|
+
const create: (config: OciVcnConfig) => LiveSystemComponent;
|
|
2366
|
+
}
|
|
2367
|
+
//#endregion
|
|
2368
|
+
//#region src/live_system/component/network_and_compute/iaas/oci_subnet.d.ts
|
|
2369
|
+
/**
|
|
2370
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2371
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2372
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2373
|
+
*/
|
|
2374
|
+
type SatisfiedOciSubnetBuilder = {
|
|
2375
|
+
withCompartmentId: (id: string) => SatisfiedOciSubnetBuilder;
|
|
2376
|
+
withAvailabilityDomain: (ad: string) => SatisfiedOciSubnetBuilder;
|
|
2377
|
+
withProhibitPublicIpOnVnic: (prohibit: boolean) => SatisfiedOciSubnetBuilder;
|
|
2378
|
+
build: () => LiveSystemComponent;
|
|
2379
|
+
};
|
|
2380
|
+
type OciSubnetBuilder = {
|
|
2381
|
+
withId: (id: string) => OciSubnetBuilder;
|
|
2382
|
+
withVersion: (major: number, minor: number, patch: number) => OciSubnetBuilder;
|
|
2383
|
+
withDisplayName: (displayName: string) => OciSubnetBuilder;
|
|
2384
|
+
withDescription: (description: string) => OciSubnetBuilder;
|
|
2385
|
+
withCidrBlock: (cidrBlock: string) => OciSubnetBuilder;
|
|
2386
|
+
withCompartmentId: (id: string) => OciSubnetBuilder;
|
|
2387
|
+
withAvailabilityDomain: (ad: string) => OciSubnetBuilder;
|
|
2388
|
+
withProhibitPublicIpOnVnic: (prohibit: boolean) => OciSubnetBuilder;
|
|
2389
|
+
build: () => LiveSystemComponent;
|
|
2390
|
+
};
|
|
2391
|
+
type OciSubnetConfig = {
|
|
2392
|
+
id: string;
|
|
2393
|
+
version: {
|
|
2394
|
+
major: number;
|
|
2395
|
+
minor: number;
|
|
2396
|
+
patch: number;
|
|
2397
|
+
};
|
|
2398
|
+
displayName: string;
|
|
2399
|
+
description?: string;
|
|
2400
|
+
cidrBlock: string;
|
|
2401
|
+
compartmentId: string;
|
|
2402
|
+
availabilityDomain?: string;
|
|
2403
|
+
prohibitPublicIpOnVnic?: boolean;
|
|
2404
|
+
};
|
|
2405
|
+
declare namespace OciSubnet {
|
|
2406
|
+
const getBuilder: () => OciSubnetBuilder;
|
|
2407
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedOciSubnetBuilder;
|
|
2408
|
+
const create: (config: OciSubnetConfig) => LiveSystemComponent;
|
|
2409
|
+
}
|
|
2410
|
+
//#endregion
|
|
2411
|
+
//#region src/live_system/component/network_and_compute/iaas/oci_security_list.d.ts
|
|
2412
|
+
/**
|
|
2413
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
2414
|
+
* description, dependencies, links, ingressRules) are locked to the blueprint
|
|
2415
|
+
* and cannot be overridden.
|
|
2416
|
+
*/
|
|
2417
|
+
type SatisfiedOciSecurityListBuilder = {
|
|
2418
|
+
withCompartmentId: (id: string) => SatisfiedOciSecurityListBuilder;
|
|
2419
|
+
build: () => LiveSystemComponent;
|
|
2420
|
+
};
|
|
2421
|
+
type OciSecurityListBuilder = {
|
|
2422
|
+
withId: (id: string) => OciSecurityListBuilder;
|
|
2423
|
+
withVersion: (major: number, minor: number, patch: number) => OciSecurityListBuilder;
|
|
2424
|
+
withDisplayName: (displayName: string) => OciSecurityListBuilder;
|
|
2425
|
+
withDescription: (description: string) => OciSecurityListBuilder;
|
|
2426
|
+
withIngressRules: (rules: IngressRule[]) => OciSecurityListBuilder;
|
|
2427
|
+
withCompartmentId: (id: string) => OciSecurityListBuilder;
|
|
2428
|
+
build: () => LiveSystemComponent;
|
|
2429
|
+
};
|
|
2430
|
+
type OciSecurityListConfig = {
|
|
2431
|
+
id: string;
|
|
2432
|
+
version: {
|
|
2433
|
+
major: number;
|
|
2434
|
+
minor: number;
|
|
2435
|
+
patch: number;
|
|
2436
|
+
};
|
|
2437
|
+
displayName: string;
|
|
2438
|
+
description?: string;
|
|
2439
|
+
ingressRules?: IngressRule[];
|
|
2440
|
+
compartmentId: string;
|
|
2441
|
+
};
|
|
2442
|
+
declare namespace OciSecurityList {
|
|
2443
|
+
const getBuilder: () => OciSecurityListBuilder;
|
|
2444
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedOciSecurityListBuilder;
|
|
2445
|
+
const create: (config: OciSecurityListConfig) => LiveSystemComponent;
|
|
2446
|
+
}
|
|
2447
|
+
//#endregion
|
|
2448
|
+
//#region src/live_system/component/network_and_compute/iaas/oci_instance.d.ts
|
|
2449
|
+
/**
|
|
2450
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2451
|
+
* Structural properties (id, version, displayName, description,
|
|
2452
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2453
|
+
*/
|
|
2454
|
+
type SatisfiedOciInstanceBuilder = {
|
|
2455
|
+
withCompartmentId: (id: string) => SatisfiedOciInstanceBuilder;
|
|
2456
|
+
withAvailabilityDomain: (ad: string) => SatisfiedOciInstanceBuilder;
|
|
2457
|
+
withShape: (shape: string) => SatisfiedOciInstanceBuilder;
|
|
2458
|
+
withImageId: (imageId: string) => SatisfiedOciInstanceBuilder;
|
|
2459
|
+
withOcpus: (ocpus: number) => SatisfiedOciInstanceBuilder;
|
|
2460
|
+
withMemoryInGbs: (gb: number) => SatisfiedOciInstanceBuilder;
|
|
2461
|
+
withSshPublicKey: (key: string) => SatisfiedOciInstanceBuilder;
|
|
2462
|
+
build: () => LiveSystemComponent;
|
|
2463
|
+
};
|
|
2464
|
+
type OciInstanceBuilder = {
|
|
2465
|
+
withId: (id: string) => OciInstanceBuilder;
|
|
2466
|
+
withVersion: (major: number, minor: number, patch: number) => OciInstanceBuilder;
|
|
2467
|
+
withDisplayName: (displayName: string) => OciInstanceBuilder;
|
|
2468
|
+
withDescription: (description: string) => OciInstanceBuilder;
|
|
2469
|
+
withCompartmentId: (id: string) => OciInstanceBuilder;
|
|
2470
|
+
withAvailabilityDomain: (ad: string) => OciInstanceBuilder;
|
|
2471
|
+
withShape: (shape: string) => OciInstanceBuilder;
|
|
2472
|
+
withImageId: (imageId: string) => OciInstanceBuilder;
|
|
2473
|
+
withOcpus: (ocpus: number) => OciInstanceBuilder;
|
|
2474
|
+
withMemoryInGbs: (gb: number) => OciInstanceBuilder;
|
|
2475
|
+
withSshPublicKey: (key: string) => OciInstanceBuilder;
|
|
2476
|
+
build: () => LiveSystemComponent;
|
|
2477
|
+
};
|
|
2478
|
+
type OciInstanceConfig = {
|
|
2479
|
+
id: string;
|
|
2480
|
+
version: {
|
|
2481
|
+
major: number;
|
|
2482
|
+
minor: number;
|
|
2483
|
+
patch: number;
|
|
2484
|
+
};
|
|
2485
|
+
displayName: string;
|
|
2486
|
+
description?: string;
|
|
2487
|
+
compartmentId: string;
|
|
2488
|
+
availabilityDomain: string;
|
|
2489
|
+
shape: string;
|
|
2490
|
+
imageId: string;
|
|
2491
|
+
ocpus?: number;
|
|
2492
|
+
memoryInGbs?: number;
|
|
2493
|
+
sshPublicKey?: string;
|
|
2494
|
+
};
|
|
2495
|
+
declare namespace OciInstance {
|
|
2496
|
+
const getBuilder: () => OciInstanceBuilder;
|
|
2497
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedOciInstanceBuilder;
|
|
2498
|
+
const create: (config: OciInstanceConfig) => LiveSystemComponent;
|
|
2499
|
+
}
|
|
2500
|
+
//#endregion
|
|
2501
|
+
//#region src/live_system/component/network_and_compute/iaas/hetzner_network.d.ts
|
|
2502
|
+
/**
|
|
2503
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
2504
|
+
* description, cidrBlock, dependencies, links) are locked to the blueprint
|
|
2505
|
+
* and cannot be overridden.
|
|
2506
|
+
*/
|
|
2507
|
+
type SatisfiedHetznerNetworkBuilder = {
|
|
2508
|
+
build: () => LiveSystemComponent;
|
|
2509
|
+
};
|
|
2510
|
+
type HetznerNetworkBuilder = {
|
|
2511
|
+
withId: (id: string) => HetznerNetworkBuilder;
|
|
2512
|
+
withVersion: (major: number, minor: number, patch: number) => HetznerNetworkBuilder;
|
|
2513
|
+
withDisplayName: (displayName: string) => HetznerNetworkBuilder;
|
|
2514
|
+
withDescription: (description: string) => HetznerNetworkBuilder;
|
|
2515
|
+
withCidrBlock: (cidrBlock: string) => HetznerNetworkBuilder;
|
|
2516
|
+
build: () => LiveSystemComponent;
|
|
2517
|
+
};
|
|
2518
|
+
type HetznerNetworkConfig = {
|
|
2519
|
+
id: string;
|
|
2520
|
+
version: {
|
|
2521
|
+
major: number;
|
|
2522
|
+
minor: number;
|
|
2523
|
+
patch: number;
|
|
2524
|
+
};
|
|
2525
|
+
displayName: string;
|
|
2526
|
+
description?: string;
|
|
2527
|
+
cidrBlock: string;
|
|
2528
|
+
};
|
|
2529
|
+
declare namespace HetznerNetwork {
|
|
2530
|
+
const getBuilder: () => HetznerNetworkBuilder;
|
|
2531
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedHetznerNetworkBuilder;
|
|
2532
|
+
const create: (config: HetznerNetworkConfig) => LiveSystemComponent;
|
|
2533
|
+
}
|
|
2534
|
+
//#endregion
|
|
2535
|
+
//#region src/live_system/component/network_and_compute/iaas/hetzner_subnet.d.ts
|
|
2536
|
+
/**
|
|
2537
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2538
|
+
* Structural properties (id, version, displayName, description, cidrBlock,
|
|
2539
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2540
|
+
*/
|
|
2541
|
+
type SatisfiedHetznerSubnetBuilder = {
|
|
2542
|
+
withNetworkZone: (zone: string) => SatisfiedHetznerSubnetBuilder;
|
|
2543
|
+
withType: (type: string) => SatisfiedHetznerSubnetBuilder;
|
|
2544
|
+
build: () => LiveSystemComponent;
|
|
2545
|
+
};
|
|
2546
|
+
type HetznerSubnetBuilder = {
|
|
2547
|
+
withId: (id: string) => HetznerSubnetBuilder;
|
|
2548
|
+
withVersion: (major: number, minor: number, patch: number) => HetznerSubnetBuilder;
|
|
2549
|
+
withDisplayName: (displayName: string) => HetznerSubnetBuilder;
|
|
2550
|
+
withDescription: (description: string) => HetznerSubnetBuilder;
|
|
2551
|
+
withCidrBlock: (cidrBlock: string) => HetznerSubnetBuilder;
|
|
2552
|
+
withNetworkZone: (zone: string) => HetznerSubnetBuilder;
|
|
2553
|
+
withType: (type: string) => HetznerSubnetBuilder;
|
|
2554
|
+
build: () => LiveSystemComponent;
|
|
2555
|
+
};
|
|
2556
|
+
type HetznerSubnetConfig = {
|
|
2557
|
+
id: string;
|
|
2558
|
+
version: {
|
|
2559
|
+
major: number;
|
|
2560
|
+
minor: number;
|
|
2561
|
+
patch: number;
|
|
2562
|
+
};
|
|
2563
|
+
displayName: string;
|
|
2564
|
+
description?: string;
|
|
2565
|
+
cidrBlock: string;
|
|
2566
|
+
networkZone: string;
|
|
2567
|
+
type?: string;
|
|
2568
|
+
};
|
|
2569
|
+
declare namespace HetznerSubnet {
|
|
2570
|
+
const getBuilder: () => HetznerSubnetBuilder;
|
|
2571
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedHetznerSubnetBuilder;
|
|
2572
|
+
const create: (config: HetznerSubnetConfig) => LiveSystemComponent;
|
|
2573
|
+
}
|
|
2574
|
+
//#endregion
|
|
2575
|
+
//#region src/live_system/component/network_and_compute/iaas/hetzner_firewall.d.ts
|
|
2576
|
+
/**
|
|
2577
|
+
* Returned by satisfy() — structural properties (id, version, displayName,
|
|
2578
|
+
* description, dependencies, links, ingressRules) are locked to the blueprint
|
|
2579
|
+
* and cannot be overridden.
|
|
2580
|
+
*/
|
|
2581
|
+
type SatisfiedHetznerFirewallBuilder = {
|
|
2582
|
+
build: () => LiveSystemComponent;
|
|
2583
|
+
};
|
|
2584
|
+
type HetznerFirewallBuilder = {
|
|
2585
|
+
withId: (id: string) => HetznerFirewallBuilder;
|
|
2586
|
+
withVersion: (major: number, minor: number, patch: number) => HetznerFirewallBuilder;
|
|
2587
|
+
withDisplayName: (displayName: string) => HetznerFirewallBuilder;
|
|
2588
|
+
withDescription: (description: string) => HetznerFirewallBuilder;
|
|
2589
|
+
withIngressRules: (rules: IngressRule[]) => HetznerFirewallBuilder;
|
|
2590
|
+
build: () => LiveSystemComponent;
|
|
2591
|
+
};
|
|
2592
|
+
type HetznerFirewallConfig = {
|
|
2593
|
+
id: string;
|
|
2594
|
+
version: {
|
|
2595
|
+
major: number;
|
|
2596
|
+
minor: number;
|
|
2597
|
+
patch: number;
|
|
2598
|
+
};
|
|
2599
|
+
displayName: string;
|
|
2600
|
+
description?: string;
|
|
2601
|
+
ingressRules?: IngressRule[];
|
|
2602
|
+
};
|
|
2603
|
+
declare namespace HetznerFirewall {
|
|
2604
|
+
const getBuilder: () => HetznerFirewallBuilder;
|
|
2605
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedHetznerFirewallBuilder;
|
|
2606
|
+
const create: (config: HetznerFirewallConfig) => LiveSystemComponent;
|
|
2607
|
+
}
|
|
2608
|
+
//#endregion
|
|
2609
|
+
//#region src/live_system/component/network_and_compute/iaas/hetzner_server.d.ts
|
|
2610
|
+
/**
|
|
2611
|
+
* Returned by satisfy() — only exposes vendor-specific parameters.
|
|
2612
|
+
* Structural properties (id, version, displayName, description,
|
|
2613
|
+
* dependencies, links) are locked to the blueprint and cannot be overridden.
|
|
2614
|
+
*/
|
|
2615
|
+
type SatisfiedHetznerServerBuilder = {
|
|
2616
|
+
withServerType: (serverType: string) => SatisfiedHetznerServerBuilder;
|
|
2617
|
+
withLocation: (location: string) => SatisfiedHetznerServerBuilder;
|
|
2618
|
+
withImage: (image: string) => SatisfiedHetznerServerBuilder;
|
|
2619
|
+
withSshKeys: (keys: string[]) => SatisfiedHetznerServerBuilder;
|
|
2620
|
+
withUserData: (userData: string) => SatisfiedHetznerServerBuilder;
|
|
2621
|
+
build: () => LiveSystemComponent;
|
|
2622
|
+
};
|
|
2623
|
+
type HetznerServerBuilder = {
|
|
2624
|
+
withId: (id: string) => HetznerServerBuilder;
|
|
2625
|
+
withVersion: (major: number, minor: number, patch: number) => HetznerServerBuilder;
|
|
2626
|
+
withDisplayName: (displayName: string) => HetznerServerBuilder;
|
|
2627
|
+
withDescription: (description: string) => HetznerServerBuilder;
|
|
2628
|
+
withServerType: (serverType: string) => HetznerServerBuilder;
|
|
2629
|
+
withLocation: (location: string) => HetznerServerBuilder;
|
|
2630
|
+
withImage: (image: string) => HetznerServerBuilder;
|
|
2631
|
+
withSshKeys: (keys: string[]) => HetznerServerBuilder;
|
|
2632
|
+
withUserData: (userData: string) => HetznerServerBuilder;
|
|
2633
|
+
build: () => LiveSystemComponent;
|
|
2634
|
+
};
|
|
2635
|
+
type HetznerServerConfig = {
|
|
2636
|
+
id: string;
|
|
2637
|
+
version: {
|
|
2638
|
+
major: number;
|
|
2639
|
+
minor: number;
|
|
2640
|
+
patch: number;
|
|
2641
|
+
};
|
|
2642
|
+
displayName: string;
|
|
2643
|
+
description?: string;
|
|
2644
|
+
serverType: string;
|
|
2645
|
+
location: string;
|
|
2646
|
+
image: string;
|
|
2647
|
+
sshKeys?: string[];
|
|
2648
|
+
userData?: string;
|
|
2649
|
+
};
|
|
2650
|
+
declare namespace HetznerServer {
|
|
2651
|
+
const getBuilder: () => HetznerServerBuilder;
|
|
2652
|
+
const satisfy: (blueprint: BlueprintComponent) => SatisfiedHetznerServerBuilder;
|
|
2653
|
+
const create: (config: HetznerServerConfig) => LiveSystemComponent;
|
|
2654
|
+
}
|
|
2655
|
+
//#endregion
|
|
2656
|
+
//#region src/fractal/component/network_and_compute/paas/container_platform.d.ts
|
|
2657
|
+
type ContainerPlatformComponent = {
|
|
2658
|
+
readonly platform: BlueprintComponent;
|
|
2659
|
+
/**
|
|
2660
|
+
* Workload nodes with the platform dependency auto-wired into each component.
|
|
2661
|
+
* Pass these to Subnet.withWorkloads() so the subnet dep is stacked on top.
|
|
2662
|
+
*/
|
|
2663
|
+
readonly workloads: ReadonlyArray<WorkloadComponent>;
|
|
2664
|
+
withWorkloads: (workloads: WorkloadComponent[]) => ContainerPlatformComponent;
|
|
2665
|
+
};
|
|
2666
|
+
type ContainerPlatformBuilder = {
|
|
2667
|
+
withId: (id: string) => ContainerPlatformBuilder;
|
|
2668
|
+
withVersion: (major: number, minor: number, patch: number) => ContainerPlatformBuilder;
|
|
2669
|
+
withDisplayName: (displayName: string) => ContainerPlatformBuilder;
|
|
2670
|
+
withDescription: (description: string) => ContainerPlatformBuilder;
|
|
2671
|
+
build: () => BlueprintComponent;
|
|
2672
|
+
};
|
|
2673
|
+
type ContainerPlatformConfig = {
|
|
2674
|
+
id: string;
|
|
2675
|
+
version: {
|
|
2676
|
+
major: number;
|
|
2677
|
+
minor: number;
|
|
2678
|
+
patch: number;
|
|
2679
|
+
};
|
|
2680
|
+
displayName: string;
|
|
2681
|
+
description?: string;
|
|
2682
|
+
};
|
|
2683
|
+
declare namespace ContainerPlatform {
|
|
2684
|
+
const getBuilder: () => ContainerPlatformBuilder;
|
|
2685
|
+
const create: (config: ContainerPlatformConfig) => ContainerPlatformComponent;
|
|
2686
|
+
}
|
|
2687
|
+
//#endregion
|
|
2688
|
+
//#region src/live_system/component/network_and_compute/paas/ecs_cluster.d.ts
|
|
2689
|
+
/**
|
|
2690
|
+
* Returned by satisfy() — id, version, and displayName are locked from the
|
|
2691
|
+
* blueprint ContainerPlatform. No AWS-specific parameters are needed for a
|
|
2692
|
+
* basic ECS cluster, so only build() is exposed.
|
|
2693
|
+
*/
|
|
2694
|
+
type SatisfiedAwsEcsClusterBuilder = {
|
|
2695
|
+
build: () => LiveSystemComponent;
|
|
2696
|
+
};
|
|
2697
|
+
type AwsEcsClusterBuilder = {
|
|
2698
|
+
withId: (id: string) => AwsEcsClusterBuilder;
|
|
2699
|
+
withVersion: (major: number, minor: number, patch: number) => AwsEcsClusterBuilder;
|
|
2700
|
+
withDisplayName: (displayName: string) => AwsEcsClusterBuilder;
|
|
2701
|
+
withDescription: (description: string) => AwsEcsClusterBuilder;
|
|
2702
|
+
build: () => LiveSystemComponent;
|
|
2703
|
+
};
|
|
2704
|
+
type AwsEcsClusterConfig = {
|
|
2705
|
+
id: string;
|
|
2706
|
+
version: {
|
|
2707
|
+
major: number;
|
|
2708
|
+
minor: number;
|
|
2709
|
+
patch: number;
|
|
2710
|
+
};
|
|
2711
|
+
displayName: string;
|
|
2712
|
+
description?: string;
|
|
2713
|
+
};
|
|
2714
|
+
declare namespace AwsEcsCluster {
|
|
2715
|
+
const getBuilder: () => AwsEcsClusterBuilder;
|
|
2716
|
+
/**
|
|
2717
|
+
* Satisfies a blueprint ContainerPlatform component as an AWS ECS Cluster.
|
|
2718
|
+
* Carries id, version, displayName, and description from the blueprint.
|
|
2719
|
+
*/
|
|
2720
|
+
const satisfy: (platform: BlueprintComponent) => SatisfiedAwsEcsClusterBuilder;
|
|
2721
|
+
const create: (config: AwsEcsClusterConfig) => LiveSystemComponent;
|
|
2722
|
+
}
|
|
2723
|
+
//#endregion
|
|
2724
|
+
//#region src/live_system/component/network_and_compute/paas/ecs_task_definition.d.ts
|
|
2725
|
+
/**
|
|
2726
|
+
* Returned by satisfy() — blueprint params (image, port, cpu, memory) are
|
|
2727
|
+
* locked. Only IAM role ARNs and network mode can be added here.
|
|
2728
|
+
*
|
|
2729
|
+
* The component ID is derived as `${workload.id}-task` to avoid collision
|
|
2730
|
+
* with the AwsEcsService component that satisfies the same blueprint workload.
|
|
2731
|
+
*/
|
|
2732
|
+
type SatisfiedAwsEcsTaskDefinitionBuilder = {
|
|
2733
|
+
withNetworkMode: (mode: string) => SatisfiedAwsEcsTaskDefinitionBuilder;
|
|
2734
|
+
withExecutionRoleArn: (arn: string) => SatisfiedAwsEcsTaskDefinitionBuilder;
|
|
2735
|
+
withTaskRoleArn: (arn: string) => SatisfiedAwsEcsTaskDefinitionBuilder;
|
|
2736
|
+
build: () => LiveSystemComponent;
|
|
2737
|
+
};
|
|
2738
|
+
type AwsEcsTaskDefinitionBuilder = {
|
|
2739
|
+
withId: (id: string) => AwsEcsTaskDefinitionBuilder;
|
|
2740
|
+
withVersion: (major: number, minor: number, patch: number) => AwsEcsTaskDefinitionBuilder;
|
|
2741
|
+
withDisplayName: (displayName: string) => AwsEcsTaskDefinitionBuilder;
|
|
2742
|
+
withDescription: (description: string) => AwsEcsTaskDefinitionBuilder;
|
|
2743
|
+
withContainerImage: (image: string) => AwsEcsTaskDefinitionBuilder;
|
|
2744
|
+
withContainerPort: (port: number) => AwsEcsTaskDefinitionBuilder;
|
|
2745
|
+
withContainerName: (name: string) => AwsEcsTaskDefinitionBuilder;
|
|
2746
|
+
withCpu: (cpu: string) => AwsEcsTaskDefinitionBuilder;
|
|
2747
|
+
withMemory: (memory: string) => AwsEcsTaskDefinitionBuilder;
|
|
2748
|
+
withNetworkMode: (mode: string) => AwsEcsTaskDefinitionBuilder;
|
|
2749
|
+
withExecutionRoleArn: (arn: string) => AwsEcsTaskDefinitionBuilder;
|
|
2750
|
+
withTaskRoleArn: (arn: string) => AwsEcsTaskDefinitionBuilder;
|
|
2751
|
+
build: () => LiveSystemComponent;
|
|
2752
|
+
};
|
|
2753
|
+
type AwsEcsTaskDefinitionConfig = {
|
|
2754
|
+
id: string;
|
|
2755
|
+
version: {
|
|
2756
|
+
major: number;
|
|
2757
|
+
minor: number;
|
|
2758
|
+
patch: number;
|
|
2759
|
+
};
|
|
2760
|
+
displayName: string;
|
|
2761
|
+
description?: string;
|
|
2762
|
+
containerImage: string;
|
|
2763
|
+
containerPort?: number;
|
|
2764
|
+
containerName?: string;
|
|
2765
|
+
cpu?: string;
|
|
2766
|
+
memory?: string;
|
|
2767
|
+
networkMode?: string;
|
|
2768
|
+
executionRoleArn?: string;
|
|
2769
|
+
taskRoleArn?: string;
|
|
2770
|
+
};
|
|
2771
|
+
declare namespace AwsEcsTaskDefinition {
|
|
2772
|
+
const getBuilder: () => AwsEcsTaskDefinitionBuilder;
|
|
2773
|
+
/**
|
|
2774
|
+
* Satisfies a blueprint Workload component as an AWS ECS Task Definition.
|
|
2775
|
+
* The component ID is `${workload.id}-task` to avoid collision with the
|
|
2776
|
+
* AwsEcsService that satisfies the same workload.
|
|
2777
|
+
*/
|
|
2778
|
+
const satisfy: (workload: BlueprintComponent) => SatisfiedAwsEcsTaskDefinitionBuilder;
|
|
2779
|
+
const create: (config: AwsEcsTaskDefinitionConfig) => LiveSystemComponent;
|
|
2780
|
+
}
|
|
2781
|
+
//#endregion
|
|
2782
|
+
//#region src/live_system/component/network_and_compute/paas/ecs_service.d.ts
|
|
2783
|
+
/**
|
|
2784
|
+
* Returned by satisfy() — all structural properties (dependencies, links,
|
|
2785
|
+
* desiredCount) are locked from the blueprint. Only AWS-specific launch
|
|
2786
|
+
* parameters and live-system sub-component dependencies are set here.
|
|
2787
|
+
*/
|
|
2788
|
+
type SatisfiedAwsEcsServiceBuilder = {
|
|
2789
|
+
withLaunchType: (type: string) => SatisfiedAwsEcsServiceBuilder;
|
|
2790
|
+
withAssignPublicIp: (assign: boolean) => SatisfiedAwsEcsServiceBuilder;
|
|
2791
|
+
/**
|
|
2792
|
+
* Declares a live-system-only dependency on the ECS Task Definition that
|
|
2793
|
+
* this service will run. This has no blueprint equivalent — it is an
|
|
2794
|
+
* AWS-specific sub-component relationship.
|
|
2795
|
+
*/
|
|
2796
|
+
withTaskDefinition: (taskDef: LiveSystemComponent) => SatisfiedAwsEcsServiceBuilder;
|
|
2797
|
+
build: () => LiveSystemComponent;
|
|
2798
|
+
};
|
|
2799
|
+
type AwsEcsServiceBuilder = {
|
|
2800
|
+
withId: (id: string) => AwsEcsServiceBuilder;
|
|
2801
|
+
withVersion: (major: number, minor: number, patch: number) => AwsEcsServiceBuilder;
|
|
2802
|
+
withDisplayName: (displayName: string) => AwsEcsServiceBuilder;
|
|
2803
|
+
withDescription: (description: string) => AwsEcsServiceBuilder;
|
|
2804
|
+
withDesiredCount: (count: number) => AwsEcsServiceBuilder;
|
|
2805
|
+
withLaunchType: (type: string) => AwsEcsServiceBuilder;
|
|
2806
|
+
withAssignPublicIp: (assign: boolean) => AwsEcsServiceBuilder;
|
|
2807
|
+
build: () => LiveSystemComponent;
|
|
2808
|
+
};
|
|
2809
|
+
type AwsEcsServiceConfig = {
|
|
2810
|
+
id: string;
|
|
2811
|
+
version: {
|
|
2812
|
+
major: number;
|
|
2813
|
+
minor: number;
|
|
2814
|
+
patch: number;
|
|
2815
|
+
};
|
|
2816
|
+
displayName: string;
|
|
2817
|
+
description?: string;
|
|
2818
|
+
desiredCount?: number;
|
|
2819
|
+
launchType?: string;
|
|
2820
|
+
assignPublicIp?: boolean;
|
|
2821
|
+
};
|
|
2822
|
+
declare namespace AwsEcsService {
|
|
2823
|
+
const getBuilder: () => AwsEcsServiceBuilder;
|
|
2824
|
+
/**
|
|
2825
|
+
* Satisfies a blueprint Workload component as an AWS ECS Service.
|
|
2826
|
+
* All structural properties — dependencies (subnet, cluster), links
|
|
2827
|
+
* (traffic rules, SG membership), and desiredCount — are carried from
|
|
2828
|
+
* the blueprint unchanged. Only AWS-specific launch parameters are added here.
|
|
2829
|
+
*/
|
|
2830
|
+
/**
|
|
2831
|
+
* Satisfies a blueprint Workload component as an AWS ECS Service.
|
|
2832
|
+
* All structural properties — dependencies (subnet, cluster), links
|
|
2833
|
+
* (traffic rules, SG membership), and desiredCount — are carried from
|
|
2834
|
+
* the blueprint unchanged. Only AWS-specific launch parameters are added here.
|
|
2835
|
+
*/
|
|
2836
|
+
const satisfy: (workload: BlueprintComponent) => SatisfiedAwsEcsServiceBuilder;
|
|
2837
|
+
const create: (config: AwsEcsServiceConfig) => LiveSystemComponent;
|
|
2838
|
+
}
|
|
2839
|
+
//#endregion
|
|
1597
2840
|
//#region src/index.d.ts
|
|
1598
2841
|
declare const BoundedContext: typeof BoundedContext$1;
|
|
1599
2842
|
type BoundedContext = BoundedContext$1;
|
|
@@ -1622,4 +2865,4 @@ type Environment = Environment$1;
|
|
|
1622
2865
|
declare const LiveSystem: typeof LiveSystem$1;
|
|
1623
2866
|
type LiveSystem = LiveSystem$1;
|
|
1624
2867
|
//#endregion
|
|
1625
|
-
export { BoundedContext, Environment, Fractal, InfrastructureDomain, KebabCaseString, LiveSystem, OwnerId, OwnerType, PascalCaseString, ServiceAccountCredentials, ServiceAccountId, ServiceDeliveryModel, Version };
|
|
2868
|
+
export { AwsEcsCluster, type AwsEcsClusterBuilder, type AwsEcsClusterConfig, AwsEcsService, type AwsEcsServiceBuilder, type AwsEcsServiceConfig, AwsEcsTaskDefinition, type AwsEcsTaskDefinitionBuilder, type AwsEcsTaskDefinitionConfig, AwsSecurityGroup, type AwsSecurityGroupBuilder, type AwsSecurityGroupConfig, AwsSubnet, type AwsSubnetBuilder, type AwsSubnetConfig, AwsVpc, type AwsVpcBuilder, type AwsVpcConfig, AzureNsg, type AzureNsgBuilder, type AzureNsgConfig, AzureSubnet, type AzureSubnetBuilder, type AzureSubnetConfig, AzureVm, type AzureVmBuilder, type AzureVmConfig, AzureVnet, type AzureVnetBuilder, type AzureVnetConfig, BoundedContext, ContainerPlatform, type ContainerPlatformBuilder, type ContainerPlatformComponent, type ContainerPlatformConfig, Ec2Instance, type Ec2InstanceBuilder, type Ec2InstanceConfig, Environment, Fractal, GcpFirewall, type GcpFirewallBuilder, type GcpFirewallConfig, GcpSubnet, type GcpSubnetBuilder, type GcpSubnetConfig, GcpVm, type GcpVmBuilder, type GcpVmConfig, GcpVpc, type GcpVpcBuilder, type GcpVpcConfig, HetznerFirewall, type HetznerFirewallBuilder, type HetznerFirewallConfig, HetznerNetwork, type HetznerNetworkBuilder, type HetznerNetworkConfig, HetznerServer, type HetznerServerBuilder, type HetznerServerConfig, HetznerSubnet, type HetznerSubnetBuilder, type HetznerSubnetConfig, InfrastructureDomain, type IngressRule, KebabCaseString, LiveSystem, OciInstance, type OciInstanceBuilder, type OciInstanceConfig, OciSecurityList, type OciSecurityListBuilder, type OciSecurityListConfig, OciSubnet, type OciSubnetBuilder, type OciSubnetConfig, OciVcn, type OciVcnBuilder, type OciVcnConfig, OwnerId, OwnerType, PascalCaseString, type SatisfiedAwsEcsClusterBuilder, type SatisfiedAwsEcsServiceBuilder, type SatisfiedAwsEcsTaskDefinitionBuilder, type SatisfiedAwsSecurityGroupBuilder, type SatisfiedAwsSubnetBuilder, type SatisfiedAwsVpcBuilder, type SatisfiedAzureNsgBuilder, type SatisfiedAzureSubnetBuilder, type SatisfiedAzureVmBuilder, type SatisfiedAzureVnetBuilder, type SatisfiedEc2Builder, type SatisfiedGcpFirewallBuilder, type SatisfiedGcpSubnetBuilder, type SatisfiedGcpVmBuilder, type SatisfiedGcpVpcBuilder, type SatisfiedHetznerFirewallBuilder, type SatisfiedHetznerNetworkBuilder, type SatisfiedHetznerServerBuilder, type SatisfiedHetznerSubnetBuilder, type SatisfiedOciInstanceBuilder, type SatisfiedOciSecurityListBuilder, type SatisfiedOciSubnetBuilder, type SatisfiedOciVcnBuilder, SecurityGroup, type SecurityGroupBuilder, type SecurityGroupComponent, type SecurityGroupConfig, ServiceAccountCredentials, ServiceAccountId, ServiceDeliveryModel, Subnet, type SubnetBuilder, type SubnetComponent, type SubnetConfig, type SubnetResult, Version, VirtualMachine, type VirtualMachineBuilder, type VirtualMachineComponent, type VirtualMachineConfig, VirtualNetwork, type VirtualNetworkBuilder, type VirtualNetworkComponent, type VirtualNetworkConfig, type VirtualNetworkResult, type VmPortLink, Workload, type WorkloadBuilder, type WorkloadComponent, type WorkloadConfig, type WorkloadPortLink };
|