@drunk-pulumi/azure 1.0.22 → 1.0.24

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.
Files changed (140) hide show
  1. package/Aks/Identity.d.ts +1 -1
  2. package/Aks/Identity.js +1 -1
  3. package/Aks/index.d.ts +2 -3
  4. package/Aks/index.js +2 -2
  5. package/AzAd/EnvRoles.Consts.d.ts +6 -5
  6. package/AzAd/EnvRoles.Consts.js +48 -42
  7. package/AzAd/Helper.js +7 -1
  8. package/AzAd/Identities/AzDevOpsIdentity.d.ts +1 -1
  9. package/AzAd/Identities/AzDevOpsIdentity.js +1 -1
  10. package/AzAd/Identities/AzUserAdRevertSync.d.ts +1 -1
  11. package/AzAd/Identity.d.ts +2 -11
  12. package/AzAd/Identity.js +2 -2
  13. package/AzAd/UserAssignedIdentity.js +6 -1
  14. package/Builder/AcrBuilder.d.ts +8 -0
  15. package/Builder/AcrBuilder.js +176 -0
  16. package/Builder/AksBuilder.d.ts +5 -0
  17. package/Builder/AksBuilder.js +90 -6
  18. package/Builder/ApimApiBuilder.js +2 -3
  19. package/Builder/ApimBuilder.js +3 -7
  20. package/Builder/ApimPolicyBuilder.js +1 -1
  21. package/Builder/ApimProductBuilder.d.ts +6 -5
  22. package/Builder/ApimProductBuilder.js +53 -27
  23. package/Builder/AppCertBuilder.d.ts +3 -0
  24. package/Builder/AppCertBuilder.js +75 -0
  25. package/Builder/AppConfigBuilder.d.ts +3 -0
  26. package/Builder/AppConfigBuilder.js +148 -0
  27. package/Builder/AutomationBuilder.d.ts +3 -0
  28. package/Builder/AutomationBuilder.js +106 -0
  29. package/Builder/IotHubBuilder.d.ts +3 -0
  30. package/Builder/IotHubBuilder.js +240 -0
  31. package/Builder/LogicAppBuilder.d.ts +3 -0
  32. package/Builder/LogicAppBuilder.js +69 -0
  33. package/Builder/MySqlBuilder.d.ts +3 -0
  34. package/Builder/MySqlBuilder.js +225 -0
  35. package/Builder/PostgreSqlBuilder.d.ts +3 -0
  36. package/Builder/PostgreSqlBuilder.js +231 -0
  37. package/Builder/RedisCacheBuilder.d.ts +3 -0
  38. package/Builder/RedisCacheBuilder.js +144 -0
  39. package/Builder/ResourceBuilder.js +14 -4
  40. package/Builder/ServiceBusBuilder.js +4 -11
  41. package/Builder/SignalRBuilder.d.ts +3 -0
  42. package/Builder/SignalRBuilder.js +172 -0
  43. package/Builder/VaultBuilder.js +7 -26
  44. package/Builder/index.d.ts +10 -0
  45. package/Builder/index.js +22 -2
  46. package/Builder/types/acrBuilder.d.ts +54 -0
  47. package/Builder/types/acrBuilder.js +3 -0
  48. package/Builder/types/apimBuilder.d.ts +109 -5
  49. package/Builder/types/apimPolicyBuilder.d.ts +129 -7
  50. package/Builder/types/apimPolicyBuilder.js +4 -1
  51. package/Builder/types/apimProductBuilder.d.ts +152 -5
  52. package/Builder/types/appCertBuilder.d.ts +31 -0
  53. package/Builder/types/appCertBuilder.js +3 -0
  54. package/Builder/types/appConfigBuilder.d.ts +37 -0
  55. package/Builder/types/appConfigBuilder.js +3 -0
  56. package/Builder/types/askBuilder.d.ts +79 -1
  57. package/Builder/types/automationBuilder.d.ts +28 -0
  58. package/Builder/types/automationBuilder.js +3 -0
  59. package/Builder/types/cdnBuilder.d.ts +11 -0
  60. package/Builder/types/dnsZoneBuilder.d.ts +20 -0
  61. package/Builder/types/envRoleBuilder.d.ts +28 -0
  62. package/Builder/types/genericBuilder.d.ts +78 -0
  63. package/Builder/types/genericBuilder.js +9 -1
  64. package/Builder/types/index.d.ts +11 -0
  65. package/Builder/types/index.js +12 -1
  66. package/Builder/types/iotHubBuilder.d.ts +64 -0
  67. package/Builder/types/iotHubBuilder.js +3 -0
  68. package/Builder/types/logicAppBuilder.d.ts +27 -0
  69. package/Builder/types/logicAppBuilder.js +3 -0
  70. package/Builder/types/mySqlBuilder.d.ts +98 -0
  71. package/Builder/types/mySqlBuilder.js +3 -0
  72. package/Builder/types/posgreSqlBuilder.d.ts +107 -0
  73. package/Builder/types/posgreSqlBuilder.js +3 -0
  74. package/Builder/types/privateDnsZoneBuilder.d.ts +26 -0
  75. package/Builder/types/redisCacheBuilder.d.ts +46 -0
  76. package/Builder/types/redisCacheBuilder.js +3 -0
  77. package/Builder/types/resourceBuilder.d.ts +173 -7
  78. package/Builder/types/serviceBusBuilder.d.ts +55 -0
  79. package/Builder/types/signalRBuilder.d.ts +97 -0
  80. package/Builder/types/signalRBuilder.js +3 -0
  81. package/Builder/types/sqlBuilder.d.ts +88 -1
  82. package/Builder/types/storageBuilder.d.ts +63 -0
  83. package/Builder/types/vaultBuilder.d.ts +43 -1
  84. package/Builder/types/vdiBuilder.d.ts +41 -2
  85. package/Builder/types/vmBuilder.d.ts +83 -1
  86. package/Builder/types/vnetBuilder.d.ts +107 -0
  87. package/Common/OpenApi/index.js +37 -0
  88. package/{Web → Common/OpenApi}/types.js +1 -1
  89. package/Common/index.d.ts +1 -0
  90. package/Common/index.js +3 -2
  91. package/CustomRoles/index.js +4 -4
  92. package/KeyVault/Helper.d.ts +1 -0
  93. package/KeyVault/Helper.js +2 -1
  94. package/KeyVault/index.d.ts +1 -11
  95. package/KeyVault/index.js +3 -21
  96. package/Sql/index.js +3 -6
  97. package/Storage/index.js +4 -8
  98. package/VNet/PrivateEndpoint.d.ts +10 -3
  99. package/VNet/PrivateEndpoint.js +62 -2
  100. package/VNet/index.d.ts +11 -0
  101. package/VNet/index.js +18 -2
  102. package/package.json +1 -1
  103. package/types.d.ts +173 -6
  104. package/Apim/ApiProduct/OpenApi.js +0 -3
  105. package/Apim/ApiProduct/SwaggerHelper.js +0 -37
  106. package/Apps/LogicApp.d.ts +0 -5
  107. package/Apps/LogicApp.js +0 -38
  108. package/Automation/index.d.ts +0 -6
  109. package/Automation/index.js +0 -78
  110. package/ContainerRegistry/Helper.d.ts +0 -15
  111. package/ContainerRegistry/Helper.js +0 -77
  112. package/ContainerRegistry/index.d.ts +0 -15
  113. package/ContainerRegistry/index.js +0 -93
  114. package/CosmosDb/index.d.ts +0 -28
  115. package/CosmosDb/index.js +0 -142
  116. package/IOT/Hub/index.d.ts +0 -26
  117. package/IOT/Hub/index.js +0 -191
  118. package/MySql/index.d.ts +0 -16
  119. package/MySql/index.js +0 -185
  120. package/Postgresql/index.d.ts +0 -16
  121. package/Postgresql/index.js +0 -157
  122. package/RedisCache/index.d.ts +0 -15
  123. package/RedisCache/index.js +0 -111
  124. package/SignalR/index.d.ts +0 -19
  125. package/SignalR/index.js +0 -128
  126. package/Sql/Auditing.d.ts +0 -0
  127. package/Sql/Auditing.js +0 -2
  128. package/Sql/Helper.d.ts +0 -9
  129. package/Sql/Helper.js +0 -11
  130. package/VNet/GlobalNetworkPeering.d.ts +0 -9
  131. package/VNet/GlobalNetworkPeering.js +0 -40
  132. package/Web/AppCertOrder.d.ts +0 -8
  133. package/Web/AppCertOrder.js +0 -52
  134. package/Web/AppConfig.d.ts +0 -10
  135. package/Web/AppConfig.js +0 -93
  136. package/Web/AppGateway.d.ts +0 -15
  137. package/Web/AppGateway.js +0 -58
  138. package/Web/types.d.ts +0 -37
  139. /package/{Apim/ApiProduct/SwaggerHelper.d.ts → Common/OpenApi/index.d.ts} +0 -0
  140. /package/{Apim/ApiProduct/OpenApi.d.ts → Common/OpenApi/types.d.ts} +0 -0
@@ -1,14 +1,25 @@
1
+ export * from './acrBuilder';
1
2
  export * from './apimBuilder';
2
3
  export * from './apimPolicyBuilder';
3
4
  export * from './apimProductBuilder';
4
5
  export * from './apimWorkspaceBuilder';
6
+ export * from './appCertBuilder';
7
+ export * from './appConfigBuilder';
5
8
  export * from './askBuilder';
9
+ export * from './automationBuilder';
6
10
  export * from './cdnBuilder';
7
11
  export * from './dnsZoneBuilder';
8
12
  export * from './envRoleBuilder';
9
13
  export * from './genericBuilder';
14
+ export * from './iotHubBuilder';
15
+ export * from './logicAppBuilder';
16
+ export * from './mySqlBuilder';
17
+ export * from './posgreSqlBuilder';
18
+ export * from './privateDnsZoneBuilder';
19
+ export * from './redisCacheBuilder';
10
20
  export * from './resourceBuilder';
11
21
  export * from './serviceBusBuilder';
22
+ export * from './signalRBuilder';
12
23
  export * from './sqlBuilder';
13
24
  export * from './storageBuilder';
14
25
  export * from './vdiBuilder';
@@ -14,20 +14,31 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./acrBuilder"), exports);
17
18
  __exportStar(require("./apimBuilder"), exports);
18
19
  __exportStar(require("./apimPolicyBuilder"), exports);
19
20
  __exportStar(require("./apimProductBuilder"), exports);
20
21
  __exportStar(require("./apimWorkspaceBuilder"), exports);
22
+ __exportStar(require("./appCertBuilder"), exports);
23
+ __exportStar(require("./appConfigBuilder"), exports);
21
24
  __exportStar(require("./askBuilder"), exports);
25
+ __exportStar(require("./automationBuilder"), exports);
22
26
  __exportStar(require("./cdnBuilder"), exports);
23
27
  __exportStar(require("./dnsZoneBuilder"), exports);
24
28
  __exportStar(require("./envRoleBuilder"), exports);
25
29
  __exportStar(require("./genericBuilder"), exports);
30
+ __exportStar(require("./iotHubBuilder"), exports);
31
+ __exportStar(require("./logicAppBuilder"), exports);
32
+ __exportStar(require("./mySqlBuilder"), exports);
33
+ __exportStar(require("./posgreSqlBuilder"), exports);
34
+ __exportStar(require("./privateDnsZoneBuilder"), exports);
35
+ __exportStar(require("./redisCacheBuilder"), exports);
26
36
  __exportStar(require("./resourceBuilder"), exports);
27
37
  __exportStar(require("./serviceBusBuilder"), exports);
38
+ __exportStar(require("./signalRBuilder"), exports);
28
39
  __exportStar(require("./sqlBuilder"), exports);
29
40
  __exportStar(require("./storageBuilder"), exports);
30
41
  __exportStar(require("./vdiBuilder"), exports);
31
42
  __exportStar(require("./vmBuilder"), exports);
32
43
  __exportStar(require("./vnetBuilder"), exports);
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQThCO0FBQzlCLHNEQUFvQztBQUNwQyx1REFBcUM7QUFDckMseURBQXVDO0FBQ3ZDLCtDQUE2QjtBQUM3QiwrQ0FBNkI7QUFDN0IsbURBQWlDO0FBQ2pDLG1EQUFpQztBQUNqQyxtREFBaUM7QUFDakMsb0RBQWtDO0FBQ2xDLHNEQUFvQztBQUNwQywrQ0FBNkI7QUFDN0IsbURBQWlDO0FBQ2pDLCtDQUE2QjtBQUM3Qiw4Q0FBNEI7QUFDNUIsZ0RBQThCIn0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQTZCO0FBQzdCLGdEQUE4QjtBQUM5QixzREFBb0M7QUFDcEMsdURBQXFDO0FBQ3JDLHlEQUF1QztBQUN2QyxtREFBaUM7QUFDakMscURBQW1DO0FBQ25DLCtDQUE2QjtBQUM3QixzREFBb0M7QUFDcEMsK0NBQTZCO0FBQzdCLG1EQUFpQztBQUNqQyxtREFBaUM7QUFDakMsbURBQWlDO0FBQ2pDLGtEQUFnQztBQUNoQyxvREFBa0M7QUFDbEMsaURBQStCO0FBQy9CLHFEQUFtQztBQUNuQywwREFBd0M7QUFDeEMsc0RBQW9DO0FBQ3BDLG9EQUFrQztBQUNsQyxzREFBb0M7QUFDcEMsbURBQWlDO0FBQ2pDLCtDQUE2QjtBQUM3QixtREFBaUM7QUFDakMsK0NBQTZCO0FBQzdCLDhDQUE0QjtBQUM1QixnREFBOEIifQ==
@@ -0,0 +1,64 @@
1
+ import { BuilderProps, IBuilder } from './genericBuilder';
2
+ import { ResourceInfo, WithEncryptionInfo } from '../../types';
3
+ import * as devices from '@pulumi/azure-native/devices';
4
+ import { Input } from '@pulumi/pulumi';
5
+ /**
6
+ * Arguments for the IoT Hub Builder.
7
+ */
8
+ export type IotHubBuilderArgs = BuilderProps & WithEncryptionInfo;
9
+ /**
10
+ * Properties for configuring the SKU of an IoT Hub.
11
+ */
12
+ export type IotHubSkuBuilderType = {
13
+ name: devices.IotHubSku;
14
+ capacity?: number;
15
+ };
16
+ /**
17
+ * Properties for configuring the service bus settings of an IoT Hub.
18
+ */
19
+ export type IotHubBusBuilderType = {
20
+ /** Provide the queue connection string to enable messages to be pushed to the service bus queue */
21
+ queueMessageConnectionString?: Input<string>;
22
+ /** Provide the topic connection string to enable messages to be pushed to the service bus topic */
23
+ topicMessageConnectionString?: Input<string>;
24
+ };
25
+ /**
26
+ * Properties for configuring the storage settings of an IoT Hub.
27
+ */
28
+ export type IotHubStorageBuilderType = {
29
+ connectionString: Input<string>;
30
+ /** Provide the file container name to enable files to be uploaded in IoT Hub */
31
+ fileContainerName?: Input<string>;
32
+ /** Provide the message container name to enable messages to be pushed to storage */
33
+ messageContainerName?: Input<string>;
34
+ /** Provide the event container name to enable events to be pushed to storage */
35
+ eventContainerName?: Input<string>;
36
+ };
37
+ /**
38
+ * Interface for building the SKU of an IoT Hub.
39
+ */
40
+ export interface IIotHubSkuBuilder {
41
+ /**
42
+ * Method to set the SKU for the IoT Hub.
43
+ * @param props - Properties for the IoT Hub SKU.
44
+ * @returns An instance of IIotHubBuilder.
45
+ */
46
+ withSku(props: IotHubSkuBuilderType): IIotHubBuilder;
47
+ }
48
+ /**
49
+ * Interface for building an IoT Hub.
50
+ */
51
+ export interface IIotHubBuilder extends IBuilder<ResourceInfo> {
52
+ /**
53
+ * Method to set the service bus properties for the IoT Hub.
54
+ * @param props - Properties for the service bus.
55
+ * @returns An instance of IIotHubBuilder.
56
+ */
57
+ withBus(props: IotHubBusBuilderType): IIotHubBuilder;
58
+ /**
59
+ * Method to set the storage properties for the IoT Hub.
60
+ * @param props - Properties for the storage.
61
+ * @returns An instance of IIotHubBuilder.
62
+ */
63
+ withStorage(props: IotHubStorageBuilderType): IIotHubBuilder;
64
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW90SHViQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CdWlsZGVyL3R5cGVzL2lvdEh1YkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1,27 @@
1
+ import { BuilderProps, IBuilder } from './genericBuilder';
2
+ import { ResourceInfo } from '../../types';
3
+ import * as logic from '@pulumi/azure-native/logic';
4
+ /**
5
+ * Arguments for the Logic App Builder.
6
+ */
7
+ export type LogicAppBuilderArgs = BuilderProps;
8
+ /**
9
+ * Type for specifying the SKU of a Logic App.
10
+ */
11
+ export type LogicAppSku = logic.IntegrationAccountSkuName | string;
12
+ /**
13
+ * Interface for building the SKU of a Logic App.
14
+ */
15
+ export interface ILogicAppSkuBuilder {
16
+ /**
17
+ * Method to set the SKU for the Logic App.
18
+ * @param props - The SKU name or a custom SKU string.
19
+ * @returns An instance of ILogicAppBuilder.
20
+ */
21
+ withSku(props: LogicAppSku): ILogicAppBuilder;
22
+ }
23
+ /**
24
+ * Interface for building a Logic App.
25
+ */
26
+ export interface ILogicAppBuilder extends IBuilder<ResourceInfo> {
27
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naWNBcHBCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0J1aWxkZXIvdHlwZXMvbG9naWNBcHBCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,98 @@
1
+ import { BuilderProps, IBuilder } from './genericBuilder';
2
+ import { LoginArgs, NetworkPropsType, ResourceInfo, WithEncryptionInfo } from '../../types';
3
+ import * as pulumi from '@pulumi/pulumi';
4
+ import * as dbformysql from '@pulumi/azure-native/dbformysql';
5
+ import { Input } from '@pulumi/pulumi';
6
+ import { enums } from '@pulumi/azure-native/types';
7
+ /**
8
+ * Arguments for the MySQL Builder.
9
+ */
10
+ export type MySqlBuilderArgs = BuilderProps & WithEncryptionInfo;
11
+ /**
12
+ * Properties for configuring the SKU of a MySQL server.
13
+ */
14
+ type MySqlSkuArgs = {
15
+ /**
16
+ * The name of the SKU, e.g. Standard_D32s_v3.
17
+ */
18
+ name: pulumi.Input<string>;
19
+ /**
20
+ * The tier of the particular SKU, e.g. GeneralPurpose.
21
+ */
22
+ tier: pulumi.Input<string | enums.dbformysql.SkuTier>;
23
+ };
24
+ /**
25
+ * Properties for configuring the MySQL SKU and version.
26
+ */
27
+ export type MySqlSkuBuilderType = {
28
+ sku: MySqlSkuArgs;
29
+ version: dbformysql.ServerVersion;
30
+ };
31
+ /**
32
+ * Properties for configuring the network settings of a MySQL server.
33
+ */
34
+ export type MySqlNetworkBuilderType = NetworkPropsType & {
35
+ allowsPublicAccess?: Input<boolean>;
36
+ };
37
+ /**
38
+ * Properties for configuring additional options of a MySQL server.
39
+ */
40
+ export type MySqlOptionsBuilderType = {
41
+ storageSizeGB?: Input<number>;
42
+ maintenanceWindow?: {
43
+ dayOfWeek: Input<number>;
44
+ startHour: Input<number>;
45
+ startMinute: Input<number>;
46
+ };
47
+ };
48
+ /**
49
+ * Interface for building the SKU of a MySQL server.
50
+ */
51
+ export interface IMySqlSkuBuilder {
52
+ /**
53
+ * Method to set the SKU for the MySQL server.
54
+ * @param props - Properties for the MySQL SKU and version.
55
+ * @returns An instance of IMySqlLoginBuilder.
56
+ */
57
+ withSku(props: MySqlSkuBuilderType): IMySqlLoginBuilder;
58
+ }
59
+ /**
60
+ * Interface for building login credentials for a MySQL server.
61
+ */
62
+ export interface IMySqlLoginBuilder {
63
+ /**
64
+ * Method to set login credentials for the MySQL server.
65
+ * @param props - Properties for the login credentials.
66
+ * @returns An instance of IMySqlBuilder.
67
+ */
68
+ withLogin(props: LoginArgs): IMySqlBuilder;
69
+ /**
70
+ * Method to generate login credentials for the MySQL server.
71
+ * @returns An instance of IMySqlBuilder.
72
+ */
73
+ generateLogin(): IMySqlBuilder;
74
+ }
75
+ /**
76
+ * Interface for building a MySQL server.
77
+ */
78
+ export interface IMySqlBuilder extends IBuilder<ResourceInfo> {
79
+ /**
80
+ * Method to set network properties for the MySQL server.
81
+ * @param props - Properties for the network configuration.
82
+ * @returns An instance of IMySqlBuilder.
83
+ */
84
+ withNetwork(props: MySqlNetworkBuilderType): IMySqlBuilder;
85
+ /**
86
+ * Method to set additional options for the MySQL server.
87
+ * @param props - Properties for the additional options.
88
+ * @returns An instance of IMySqlBuilder.
89
+ */
90
+ withOptions(props: MySqlOptionsBuilderType): IMySqlBuilder;
91
+ /**
92
+ * Method to add databases to the MySQL server.
93
+ * @param props - Names of the databases to add.
94
+ * @returns An instance of IMySqlBuilder.
95
+ */
96
+ withDatabases(...props: string[]): IMySqlBuilder;
97
+ }
98
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlTcWxCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0J1aWxkZXIvdHlwZXMvbXlTcWxCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,107 @@
1
+ import { BuilderProps, IBuilder } from './genericBuilder';
2
+ import { LoginArgs, NetworkPropsType, ResourceInfo, WithEncryptionInfo } from '../../types';
3
+ import * as pulumi from '@pulumi/pulumi';
4
+ import * as postgresql from '@pulumi/azure-native/dbforpostgresql';
5
+ import { Input } from '@pulumi/pulumi';
6
+ import { enums } from '@pulumi/azure-native/types';
7
+ /**
8
+ * Arguments required for building a PostgreSQL resource.
9
+ */
10
+ export type PostgreSqlBuilderArgs = BuilderProps & WithEncryptionInfo;
11
+ /**
12
+ * Arguments for defining the SKU of a PostgreSQL server.
13
+ */
14
+ type PostgreSkuArgs = {
15
+ /**
16
+ * The name of the SKU, typically tier + family + cores, e.g., Standard_D4s_v3.
17
+ */
18
+ name: pulumi.Input<string>;
19
+ /**
20
+ * The tier of the particular SKU, e.g., Burstable.
21
+ */
22
+ tier: pulumi.Input<string | enums.dbforpostgresql.SkuTier>;
23
+ };
24
+ /**
25
+ * Type for defining the SKU and version of a PostgreSQL server.
26
+ */
27
+ export type PostgreSqlSkuBuilderType = {
28
+ sku: PostgreSkuArgs;
29
+ version: postgresql.ServerVersion;
30
+ };
31
+ /**
32
+ * Type for defining network properties for a PostgreSQL server.
33
+ */
34
+ export type PostgreSqlNetworkBuilderType = NetworkPropsType & {
35
+ /**
36
+ * Whether the server allows public access.
37
+ */
38
+ allowsPublicAccess?: Input<boolean>;
39
+ };
40
+ /**
41
+ * Type for defining additional options for a PostgreSQL server.
42
+ */
43
+ export type PostgreSqlOptionsBuilderType = {
44
+ /**
45
+ * The storage size in GB.
46
+ */
47
+ storageSizeGB?: Input<number>;
48
+ /**
49
+ * Maintenance window settings.
50
+ */
51
+ maintenanceWindow?: {
52
+ dayOfWeek: Input<number>;
53
+ startHour: Input<number>;
54
+ startMinute: Input<number>;
55
+ };
56
+ };
57
+ /**
58
+ * Interface for building the SKU of a PostgreSQL server.
59
+ */
60
+ export interface IPostgreSqlSkuBuilder {
61
+ /**
62
+ * Sets the SKU properties for the PostgreSQL server.
63
+ * @param props - The SKU properties.
64
+ * @returns An instance of IPostgreSqlLoginBuilder.
65
+ */
66
+ withSku(props: PostgreSqlSkuBuilderType): IPostgreSqlLoginBuilder;
67
+ }
68
+ /**
69
+ * Interface for building the login credentials of a PostgreSQL server.
70
+ */
71
+ export interface IPostgreSqlLoginBuilder {
72
+ /**
73
+ * Sets the login credentials for the PostgreSQL server.
74
+ * @param props - The login arguments.
75
+ * @returns An instance of IPostgreSqlBuilder.
76
+ */
77
+ withLogin(props: LoginArgs): IPostgreSqlBuilder;
78
+ /**
79
+ * Generates login credentials for the PostgreSQL server.
80
+ * @returns An instance of IPostgreSqlBuilder.
81
+ */
82
+ generateLogin(): IPostgreSqlBuilder;
83
+ }
84
+ /**
85
+ * Interface for building a PostgreSQL server.
86
+ */
87
+ export interface IPostgreSqlBuilder extends IBuilder<ResourceInfo> {
88
+ /**
89
+ * Sets the network properties for the PostgreSQL server.
90
+ * @param props - The network properties.
91
+ * @returns An instance of IPostgreSqlBuilder.
92
+ */
93
+ withNetwork(props: PostgreSqlNetworkBuilderType): IPostgreSqlBuilder;
94
+ /**
95
+ * Sets additional options for the PostgreSQL server.
96
+ * @param props - The options properties.
97
+ * @returns An instance of IPostgreSqlBuilder.
98
+ */
99
+ withOptions(props: PostgreSqlOptionsBuilderType): IPostgreSqlBuilder;
100
+ /**
101
+ * Adds databases to the PostgreSQL server.
102
+ * @param props - The names of the databases.
103
+ * @returns An instance of IPostgreSqlBuilder.
104
+ */
105
+ withDatabases(...props: string[]): IPostgreSqlBuilder;
106
+ }
107
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zZ3JlU3FsQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CdWlsZGVyL3R5cGVzL3Bvc2dyZVNxbEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -1,12 +1,38 @@
1
1
  import { Input } from '@pulumi/pulumi';
2
2
  import { ResourceInfo } from '../../types';
3
3
  import { DnsZoneARecordType } from './dnsZoneBuilder';
4
+ /**
5
+ * Type for defining the virtual network linking properties for a private DNS zone.
6
+ */
4
7
  export type PrivateDnsZoneVnetLinkingType = {
8
+ /**
9
+ * List of virtual network IDs to link to the private DNS zone.
10
+ */
5
11
  vnetIds?: Input<string>[];
12
+ /**
13
+ * List of subnet IDs to link to the private DNS zone. The vnetId will be calculated based on subnetId.
14
+ */
6
15
  subnetIds?: Input<string>[];
7
16
  };
17
+ /**
18
+ * Interface for building a private DNS zone.
19
+ */
8
20
  export interface IPrivateDnsZoneBuilder {
21
+ /**
22
+ * Adds an A record to the private DNS zone.
23
+ * @param props - The properties of the A record.
24
+ * @returns An instance of IPrivateDnsZoneBuilder.
25
+ */
9
26
  withARecord(props: DnsZoneARecordType): IPrivateDnsZoneBuilder;
27
+ /**
28
+ * Links the private DNS zone to virtual networks.
29
+ * @param props - The linking properties.
30
+ * @returns An instance of IPrivateDnsZoneBuilder.
31
+ */
10
32
  linkTo(props: PrivateDnsZoneVnetLinkingType): IPrivateDnsZoneBuilder;
33
+ /**
34
+ * Builds the private DNS zone and returns the resource information.
35
+ * @returns The resource information of the built private DNS zone.
36
+ */
11
37
  build(): ResourceInfo;
12
38
  }
@@ -0,0 +1,46 @@
1
+ import { BuilderProps, IBuilder } from './genericBuilder';
2
+ import * as cache from '@pulumi/azure-native/cache';
3
+ import { NetworkPropsType, ResourceInfo } from '../../types';
4
+ /**
5
+ * Arguments required for building a Redis Cache resource.
6
+ */
7
+ export type RedisCacheBuilderArgs = BuilderProps;
8
+ /**
9
+ * Arguments for defining the SKU of a Redis Cache.
10
+ */
11
+ export type RedisCacheSkuBuilder = {
12
+ /**
13
+ * The name of the SKU.
14
+ */
15
+ name: cache.SkuName | string;
16
+ /**
17
+ * The family of the SKU.
18
+ */
19
+ family: cache.SkuFamily | string;
20
+ /**
21
+ * The capacity of the SKU.
22
+ */
23
+ capacity: number;
24
+ };
25
+ /**
26
+ * Interface for building the SKU of a Redis Cache.
27
+ */
28
+ export interface IRedisCacheSkuBuilder {
29
+ /**
30
+ * Sets the SKU properties for the Redis Cache.
31
+ * @param props - The SKU properties.
32
+ * @returns An instance of IRedisCacheBuilder.
33
+ */
34
+ withSku(props: RedisCacheSkuBuilder): IRedisCacheBuilder;
35
+ }
36
+ /**
37
+ * Interface for building a Redis Cache.
38
+ */
39
+ export interface IRedisCacheBuilder extends IBuilder<ResourceInfo> {
40
+ /**
41
+ * Sets the network properties for the Redis Cache.
42
+ * @param props - The network properties.
43
+ * @returns An instance of IRedisCacheBuilder.
44
+ */
45
+ withNetwork(props: NetworkPropsType): IRedisCacheBuilder;
46
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNDYWNoZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9yZWRpc0NhY2hlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=