@pulumi/aiven 4.4.0 → 4.5.1

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 (313) hide show
  1. package/account.d.ts +13 -31
  2. package/account.js +4 -6
  3. package/account.js.map +1 -1
  4. package/accountAuthentication.d.ts +31 -53
  5. package/accountAuthentication.js +5 -7
  6. package/accountAuthentication.js.map +1 -1
  7. package/accountTeam.d.ts +12 -22
  8. package/accountTeam.js +2 -4
  9. package/accountTeam.js.map +1 -1
  10. package/accountTeamMember.d.ts +16 -39
  11. package/accountTeamMember.js +4 -6
  12. package/accountTeamMember.js.map +1 -1
  13. package/accountTeamProject.d.ts +12 -17
  14. package/accountTeamProject.js +0 -2
  15. package/accountTeamProject.js.map +1 -1
  16. package/awsPrivatelink.d.ts +13 -27
  17. package/awsPrivatelink.js +0 -2
  18. package/awsPrivatelink.js.map +1 -1
  19. package/azurePrivatelink.d.ts +120 -0
  20. package/azurePrivatelink.js +86 -0
  21. package/azurePrivatelink.js.map +1 -0
  22. package/azurePrivatelinkConnectionApproval.d.ts +91 -0
  23. package/azurePrivatelinkConnectionApproval.js +66 -0
  24. package/azurePrivatelinkConnectionApproval.js.map +1 -0
  25. package/billingGroup.d.ts +0 -2
  26. package/billingGroup.js +0 -2
  27. package/billingGroup.js.map +1 -1
  28. package/cassandra.d.ts +101 -135
  29. package/cassandra.js +14 -4
  30. package/cassandra.js.map +1 -1
  31. package/clickhouse.d.ts +304 -0
  32. package/clickhouse.js +122 -0
  33. package/clickhouse.js.map +1 -0
  34. package/clickhouseDatabase.d.ts +105 -0
  35. package/clickhouseDatabase.js +76 -0
  36. package/clickhouseDatabase.js.map +1 -0
  37. package/clickhouseGrant.d.ts +169 -0
  38. package/clickhouseGrant.js +125 -0
  39. package/clickhouseGrant.js.map +1 -0
  40. package/clickhouseRole.d.ts +75 -0
  41. package/clickhouseRole.js +65 -0
  42. package/clickhouseRole.js.map +1 -0
  43. package/clickhouseUser.d.ts +112 -0
  44. package/clickhouseUser.js +84 -0
  45. package/clickhouseUser.js.map +1 -0
  46. package/connectionPool.d.ts +23 -53
  47. package/connectionPool.js +0 -4
  48. package/connectionPool.js.map +1 -1
  49. package/database.d.ts +18 -23
  50. package/database.js +0 -2
  51. package/database.js.map +1 -1
  52. package/elasticSearch.d.ts +97 -134
  53. package/elasticSearch.js +14 -4
  54. package/elasticSearch.js.map +1 -1
  55. package/elasticSearchAcl.d.ts +14 -26
  56. package/elasticSearchAcl.js +2 -5
  57. package/elasticSearchAcl.js.map +1 -1
  58. package/elasticSearchAclConfig.d.ts +12 -23
  59. package/elasticSearchAclConfig.js +0 -2
  60. package/elasticSearchAclConfig.js.map +1 -1
  61. package/elasticSearchAclRule.d.ts +15 -20
  62. package/elasticSearchAclRule.js +0 -2
  63. package/elasticSearchAclRule.js.map +1 -1
  64. package/flink.d.ts +311 -0
  65. package/flink.js +125 -0
  66. package/flink.js.map +1 -0
  67. package/flinkJob.d.ts +136 -0
  68. package/flinkJob.js +100 -0
  69. package/flinkJob.js.map +1 -0
  70. package/flinkJobTable.d.ts +224 -0
  71. package/flinkJobTable.js +114 -0
  72. package/flinkJobTable.js.map +1 -0
  73. package/getAccount.d.ts +10 -49
  74. package/getAccount.js +0 -7
  75. package/getAccount.js.map +1 -1
  76. package/getAccountAuthentication.d.ts +21 -103
  77. package/getAccountAuthentication.js +0 -12
  78. package/getAccountAuthentication.js.map +1 -1
  79. package/getAccountTeam.d.ts +13 -33
  80. package/getAccountTeam.js +0 -5
  81. package/getAccountTeam.js.map +1 -1
  82. package/getAccountTeamMember.d.ts +18 -43
  83. package/getAccountTeamMember.js +0 -5
  84. package/getAccountTeamMember.js.map +1 -1
  85. package/getAccountTeamProject.d.ts +17 -21
  86. package/getAccountTeamProject.js +0 -3
  87. package/getAccountTeamProject.js.map +1 -1
  88. package/getAwsPrivatelink.d.ts +14 -42
  89. package/getAwsPrivatelink.js +0 -5
  90. package/getAwsPrivatelink.js.map +1 -1
  91. package/getAzurePrivatelink.d.ts +81 -0
  92. package/getAzurePrivatelink.js +38 -0
  93. package/getAzurePrivatelink.js.map +1 -0
  94. package/getBillingGroup.d.ts +96 -0
  95. package/getBillingGroup.js +36 -0
  96. package/getBillingGroup.js.map +1 -0
  97. package/getCassanda.d.ts +118 -44
  98. package/getCassanda.js +15 -17
  99. package/getCassanda.js.map +1 -1
  100. package/getCassandra.d.ts +62 -223
  101. package/getCassandra.js +1 -20
  102. package/getCassandra.js.map +1 -1
  103. package/getClickhouse.d.ts +154 -0
  104. package/getClickhouse.js +38 -0
  105. package/getClickhouse.js.map +1 -0
  106. package/getClickhouseDatabase.d.ts +75 -0
  107. package/getClickhouseDatabase.js +40 -0
  108. package/getClickhouseDatabase.js.map +1 -0
  109. package/getClickhouseUser.d.ts +86 -0
  110. package/getClickhouseUser.js +40 -0
  111. package/getClickhouseUser.js.map +1 -0
  112. package/getConnectionPool.d.ts +26 -74
  113. package/getConnectionPool.js +0 -7
  114. package/getConnectionPool.js.map +1 -1
  115. package/getDatabase.d.ts +22 -29
  116. package/getDatabase.js +0 -5
  117. package/getDatabase.js.map +1 -1
  118. package/getElasticSearch.d.ts +61 -222
  119. package/getElasticSearch.js +0 -19
  120. package/getElasticSearch.js.map +1 -1
  121. package/getElasticSearchAcl.d.ts +22 -36
  122. package/getElasticSearchAcl.js +1 -7
  123. package/getElasticSearchAcl.js.map +1 -1
  124. package/getElasticSearchAclConfig.d.ts +41 -6
  125. package/getElasticSearchAclConfig.js +15 -2
  126. package/getElasticSearchAclConfig.js.map +1 -1
  127. package/getElasticSearchAclRule.d.ts +56 -2
  128. package/getElasticSearchAclRule.js +17 -1
  129. package/getElasticSearchAclRule.js.map +1 -1
  130. package/getFlink.d.ts +154 -0
  131. package/getFlink.js +38 -0
  132. package/getFlink.js.map +1 -0
  133. package/getGrafana.d.ts +61 -222
  134. package/getGrafana.js +0 -19
  135. package/getGrafana.js.map +1 -1
  136. package/getInfluxDb.d.ts +61 -222
  137. package/getInfluxDb.js +0 -19
  138. package/getInfluxDb.js.map +1 -1
  139. package/getKafka.d.ts +65 -221
  140. package/getKafka.js +0 -20
  141. package/getKafka.js.map +1 -1
  142. package/getKafkaAcl.d.ts +31 -21
  143. package/getKafkaAcl.js +2 -5
  144. package/getKafkaAcl.js.map +1 -1
  145. package/getKafkaConnect.d.ts +61 -222
  146. package/getKafkaConnect.js +0 -19
  147. package/getKafkaConnect.js.map +1 -1
  148. package/getKafkaConnector.d.ts +31 -73
  149. package/getKafkaConnector.js +0 -15
  150. package/getKafkaConnector.js.map +1 -1
  151. package/getKafkaMirrorMaker.d.ts +61 -222
  152. package/getKafkaMirrorMaker.js +0 -19
  153. package/getKafkaMirrorMaker.js.map +1 -1
  154. package/getKafkaSchema.d.ts +23 -37
  155. package/getKafkaSchema.js +1 -7
  156. package/getKafkaSchema.js.map +1 -1
  157. package/getKafkaSchemaConfiguration.d.ts +29 -41
  158. package/getKafkaSchemaConfiguration.js +4 -10
  159. package/getKafkaSchemaConfiguration.js.map +1 -1
  160. package/getKafkaTopic.d.ts +34 -95
  161. package/getKafkaTopic.js +0 -18
  162. package/getKafkaTopic.js.map +1 -1
  163. package/getM3Aggregator.d.ts +62 -223
  164. package/getM3Aggregator.js +1 -20
  165. package/getM3Aggregator.js.map +1 -1
  166. package/getM3Db.d.ts +61 -222
  167. package/getM3Db.js +0 -19
  168. package/getM3Db.js.map +1 -1
  169. package/getMirrorMakerReplicationFlow.d.ts +45 -52
  170. package/getMirrorMakerReplicationFlow.js +1 -11
  171. package/getMirrorMakerReplicationFlow.js.map +1 -1
  172. package/getMySql.d.ts +61 -222
  173. package/getMySql.js +0 -19
  174. package/getMySql.js.map +1 -1
  175. package/getOpenSearch.d.ts +61 -216
  176. package/getOpenSearch.js +0 -19
  177. package/getOpenSearch.js.map +1 -1
  178. package/getOpenSearchAclConfig.d.ts +41 -6
  179. package/getOpenSearchAclConfig.js +15 -2
  180. package/getOpenSearchAclConfig.js.map +1 -1
  181. package/getOpenSearchAclRule.d.ts +62 -0
  182. package/getOpenSearchAclRule.js +17 -0
  183. package/getOpenSearchAclRule.js.map +1 -1
  184. package/getPg.d.ts +61 -222
  185. package/getPg.js +0 -19
  186. package/getPg.js.map +1 -1
  187. package/getProject.d.ts +49 -166
  188. package/getProject.js +0 -20
  189. package/getProject.js.map +1 -1
  190. package/getProjectUser.d.ts +13 -34
  191. package/getProjectUser.js +0 -4
  192. package/getProjectUser.js.map +1 -1
  193. package/getProjectVpc.d.ts +13 -30
  194. package/getProjectVpc.js +0 -4
  195. package/getProjectVpc.js.map +1 -1
  196. package/getRedis.d.ts +60 -221
  197. package/getRedis.js +0 -19
  198. package/getRedis.js.map +1 -1
  199. package/getService.d.ts +203 -105
  200. package/getService.js +3 -37
  201. package/getService.js.map +1 -1
  202. package/getServiceComponent.d.ts +38 -90
  203. package/getServiceComponent.js +1 -22
  204. package/getServiceComponent.js.map +1 -1
  205. package/getServiceIntegration.d.ts +67 -95
  206. package/getServiceIntegration.js +1 -41
  207. package/getServiceIntegration.js.map +1 -1
  208. package/getServiceIntegrationEndpoint.d.ts +61 -63
  209. package/getServiceIntegrationEndpoint.js +1 -17
  210. package/getServiceIntegrationEndpoint.js.map +1 -1
  211. package/getServiceUser.d.ts +37 -78
  212. package/getServiceUser.js +0 -13
  213. package/getServiceUser.js.map +1 -1
  214. package/getTransitGatewayVpcAttachment.d.ts +29 -40
  215. package/getTransitGatewayVpcAttachment.js +1 -9
  216. package/getTransitGatewayVpcAttachment.js.map +1 -1
  217. package/getVpcPeeringConnection.d.ts +27 -92
  218. package/getVpcPeeringConnection.js +1 -11
  219. package/getVpcPeeringConnection.js.map +1 -1
  220. package/grafana.d.ts +97 -134
  221. package/grafana.js +14 -4
  222. package/grafana.js.map +1 -1
  223. package/index.d.ts +17 -0
  224. package/index.js +61 -0
  225. package/index.js.map +1 -1
  226. package/influxDb.d.ts +97 -131
  227. package/influxDb.js +14 -4
  228. package/influxDb.js.map +1 -1
  229. package/kafka.d.ts +110 -128
  230. package/kafka.js +14 -2
  231. package/kafka.js.map +1 -1
  232. package/kafkaAcl.d.ts +15 -29
  233. package/kafkaAcl.js +0 -2
  234. package/kafkaAcl.js.map +1 -1
  235. package/kafkaConnect.d.ts +97 -134
  236. package/kafkaConnect.js +14 -4
  237. package/kafkaConnect.js.map +1 -1
  238. package/kafkaConnector.d.ts +34 -44
  239. package/kafkaConnector.js +8 -16
  240. package/kafkaConnector.js.map +1 -1
  241. package/kafkaMirrorMaker.d.ts +97 -131
  242. package/kafkaMirrorMaker.js +14 -4
  243. package/kafkaMirrorMaker.js.map +1 -1
  244. package/kafkaSchema.d.ts +45 -31
  245. package/kafkaSchema.js +28 -2
  246. package/kafkaSchema.js.map +1 -1
  247. package/kafkaSchemaConfiguration.d.ts +11 -31
  248. package/kafkaSchemaConfiguration.js +0 -5
  249. package/kafkaSchemaConfiguration.js.map +1 -1
  250. package/kafkaTopic.d.ts +58 -48
  251. package/kafkaTopic.js +28 -0
  252. package/kafkaTopic.js.map +1 -1
  253. package/m3aggregator.d.ts +97 -131
  254. package/m3aggregator.js +14 -4
  255. package/m3aggregator.js.map +1 -1
  256. package/m3db.d.ts +97 -131
  257. package/m3db.js +14 -4
  258. package/m3db.js.map +1 -1
  259. package/mirrorMakerReplicationFlow.d.ts +34 -40
  260. package/mirrorMakerReplicationFlow.js +1 -4
  261. package/mirrorMakerReplicationFlow.js.map +1 -1
  262. package/mySql.d.ts +104 -150
  263. package/mySql.js +14 -4
  264. package/mySql.js.map +1 -1
  265. package/openSearch.d.ts +101 -132
  266. package/openSearch.js +14 -4
  267. package/openSearch.js.map +1 -1
  268. package/openSearchAclConfig.d.ts +31 -29
  269. package/openSearchAclConfig.js +19 -8
  270. package/openSearchAclConfig.js.map +1 -1
  271. package/openSearchAclRule.d.ts +30 -35
  272. package/openSearchAclRule.js +15 -17
  273. package/openSearchAclRule.js.map +1 -1
  274. package/package.json +2 -2
  275. package/package.json.dev +2 -2
  276. package/pg.d.ts +101 -126
  277. package/pg.js +15 -0
  278. package/pg.js.map +1 -1
  279. package/project.d.ts +60 -121
  280. package/project.js +3 -5
  281. package/project.js.map +1 -1
  282. package/projectUser.d.ts +11 -19
  283. package/projectUser.js +0 -2
  284. package/projectUser.js.map +1 -1
  285. package/projectVpc.d.ts +11 -18
  286. package/projectVpc.js +0 -2
  287. package/projectVpc.js.map +1 -1
  288. package/redis.d.ts +99 -136
  289. package/redis.js +13 -3
  290. package/redis.js.map +1 -1
  291. package/service.d.ts +184 -121
  292. package/service.js +44 -21
  293. package/service.js.map +1 -1
  294. package/serviceIntegration.d.ts +18 -185
  295. package/serviceIntegration.js +4 -40
  296. package/serviceIntegration.js.map +1 -1
  297. package/serviceIntegrationEndpoint.d.ts +9 -49
  298. package/serviceIntegrationEndpoint.js +0 -34
  299. package/serviceIntegrationEndpoint.js.map +1 -1
  300. package/serviceUser.d.ts +45 -40
  301. package/serviceUser.js +2 -4
  302. package/serviceUser.js.map +1 -1
  303. package/staticIp.d.ts +95 -0
  304. package/staticIp.js +68 -0
  305. package/staticIp.js.map +1 -0
  306. package/transitGatewayVpcAttachment.d.ts +16 -19
  307. package/transitGatewayVpcAttachment.js +1 -4
  308. package/transitGatewayVpcAttachment.js.map +1 -1
  309. package/types/input.d.ts +1440 -9809
  310. package/types/output.d.ts +1744 -3691
  311. package/vpcPeeringConnection.d.ts +27 -58
  312. package/vpcPeeringConnection.js +0 -22
  313. package/vpcPeeringConnection.js.map +1 -1
@@ -0,0 +1,304 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "./types";
3
+ /**
4
+ * The Clickhouse resource allows the creation and management of Aiven Clickhouse services.
5
+ *
6
+ * ## Example Usage
7
+ *
8
+ * ```typescript
9
+ * import * as pulumi from "@pulumi/pulumi";
10
+ * import * as aiven from "@pulumi/aiven";
11
+ *
12
+ * const clickhouse = new aiven.Clickhouse("clickhouse", {
13
+ * project: data.aiven_project.pr1.project,
14
+ * cloudName: "google-europe-west1",
15
+ * plan: "business-4",
16
+ * serviceName: "my-flink",
17
+ * maintenanceWindowDow: "monday",
18
+ * maintenanceWindowTime: "10:00:00",
19
+ * });
20
+ * ```
21
+ */
22
+ export declare class Clickhouse extends pulumi.CustomResource {
23
+ /**
24
+ * Get an existing Clickhouse resource's state with the given name, ID, and optional extra
25
+ * properties used to qualify the lookup.
26
+ *
27
+ * @param name The _unique_ name of the resulting resource.
28
+ * @param id The _unique_ provider ID of the resource to lookup.
29
+ * @param state Any extra arguments used during the lookup.
30
+ * @param opts Optional settings to control the behavior of the CustomResource.
31
+ */
32
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClickhouseState, opts?: pulumi.CustomResourceOptions): Clickhouse;
33
+ /**
34
+ * Returns true if the given object is an instance of Clickhouse. This is designed to work even
35
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
36
+ */
37
+ static isInstance(obj: any): obj is Clickhouse;
38
+ /**
39
+ * Clickhouse user configurable settings
40
+ */
41
+ readonly clickhouseUserConfig: pulumi.Output<outputs.ClickhouseClickhouseUserConfig | undefined>;
42
+ /**
43
+ * Clickhouse server provided values
44
+ */
45
+ readonly clickhouses: pulumi.Output<outputs.ClickhouseClickhouse[]>;
46
+ /**
47
+ * Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
48
+ */
49
+ readonly cloudName: pulumi.Output<string | undefined>;
50
+ /**
51
+ * Service component information objects
52
+ */
53
+ readonly components: pulumi.Output<outputs.ClickhouseComponent[]>;
54
+ /**
55
+ * The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service rebalancing.
56
+ */
57
+ readonly diskSpace: pulumi.Output<string | undefined>;
58
+ /**
59
+ * The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
60
+ */
61
+ readonly diskSpaceCap: pulumi.Output<string>;
62
+ /**
63
+ * The default disk space of the service, possible values depend on the service type, the cloud provider and the project. Its also the minimum value for `diskSpace`
64
+ */
65
+ readonly diskSpaceDefault: pulumi.Output<string>;
66
+ /**
67
+ * The default disk space step of the service, possible values depend on the service type, the cloud provider and the project. `diskSpace` needs to increment from `diskSpaceDefault` by increments of this size.
68
+ */
69
+ readonly diskSpaceStep: pulumi.Output<string>;
70
+ /**
71
+ * Disk space that service is currently using
72
+ */
73
+ readonly diskSpaceUsed: pulumi.Output<string>;
74
+ /**
75
+ * Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
76
+ */
77
+ readonly maintenanceWindowDow: pulumi.Output<string | undefined>;
78
+ /**
79
+ * Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
80
+ */
81
+ readonly maintenanceWindowTime: pulumi.Output<string | undefined>;
82
+ /**
83
+ * Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
84
+ */
85
+ readonly plan: pulumi.Output<string | undefined>;
86
+ /**
87
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
88
+ */
89
+ readonly project: pulumi.Output<string>;
90
+ /**
91
+ * Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
92
+ */
93
+ readonly projectVpcId: pulumi.Output<string | undefined>;
94
+ /**
95
+ * The hostname of the service.
96
+ */
97
+ readonly serviceHost: pulumi.Output<string>;
98
+ /**
99
+ * Service integrations to specify when creating a service. Not applied after initial service creation
100
+ */
101
+ readonly serviceIntegrations: pulumi.Output<outputs.ClickhouseServiceIntegration[] | undefined>;
102
+ /**
103
+ * Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
104
+ */
105
+ readonly serviceName: pulumi.Output<string>;
106
+ /**
107
+ * Password used for connecting to the service, if applicable
108
+ */
109
+ readonly servicePassword: pulumi.Output<string>;
110
+ /**
111
+ * The port of the service
112
+ */
113
+ readonly servicePort: pulumi.Output<number>;
114
+ /**
115
+ * Aiven internal service type code
116
+ */
117
+ readonly serviceType: pulumi.Output<string>;
118
+ /**
119
+ * URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
120
+ */
121
+ readonly serviceUri: pulumi.Output<string>;
122
+ /**
123
+ * Username used for connecting to the service, if applicable
124
+ */
125
+ readonly serviceUsername: pulumi.Output<string>;
126
+ /**
127
+ * Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
128
+ */
129
+ readonly state: pulumi.Output<string>;
130
+ /**
131
+ * Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
132
+ */
133
+ readonly staticIps: pulumi.Output<string[] | undefined>;
134
+ /**
135
+ * Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
136
+ */
137
+ readonly terminationProtection: pulumi.Output<boolean | undefined>;
138
+ /**
139
+ * Create a Clickhouse resource with the given unique name, arguments, and options.
140
+ *
141
+ * @param name The _unique_ name of the resource.
142
+ * @param args The arguments to use to populate this resource's properties.
143
+ * @param opts A bag of options that control this resource's behavior.
144
+ */
145
+ constructor(name: string, args: ClickhouseArgs, opts?: pulumi.CustomResourceOptions);
146
+ }
147
+ /**
148
+ * Input properties used for looking up and filtering Clickhouse resources.
149
+ */
150
+ export interface ClickhouseState {
151
+ /**
152
+ * Clickhouse user configurable settings
153
+ */
154
+ clickhouseUserConfig?: pulumi.Input<inputs.ClickhouseClickhouseUserConfig>;
155
+ /**
156
+ * Clickhouse server provided values
157
+ */
158
+ clickhouses?: pulumi.Input<pulumi.Input<inputs.ClickhouseClickhouse>[]>;
159
+ /**
160
+ * Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
161
+ */
162
+ cloudName?: pulumi.Input<string>;
163
+ /**
164
+ * Service component information objects
165
+ */
166
+ components?: pulumi.Input<pulumi.Input<inputs.ClickhouseComponent>[]>;
167
+ /**
168
+ * The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service rebalancing.
169
+ */
170
+ diskSpace?: pulumi.Input<string>;
171
+ /**
172
+ * The maximum disk space of the service, possible values depend on the service type, the cloud provider and the project.
173
+ */
174
+ diskSpaceCap?: pulumi.Input<string>;
175
+ /**
176
+ * The default disk space of the service, possible values depend on the service type, the cloud provider and the project. Its also the minimum value for `diskSpace`
177
+ */
178
+ diskSpaceDefault?: pulumi.Input<string>;
179
+ /**
180
+ * The default disk space step of the service, possible values depend on the service type, the cloud provider and the project. `diskSpace` needs to increment from `diskSpaceDefault` by increments of this size.
181
+ */
182
+ diskSpaceStep?: pulumi.Input<string>;
183
+ /**
184
+ * Disk space that service is currently using
185
+ */
186
+ diskSpaceUsed?: pulumi.Input<string>;
187
+ /**
188
+ * Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
189
+ */
190
+ maintenanceWindowDow?: pulumi.Input<string>;
191
+ /**
192
+ * Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
193
+ */
194
+ maintenanceWindowTime?: pulumi.Input<string>;
195
+ /**
196
+ * Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
197
+ */
198
+ plan?: pulumi.Input<string>;
199
+ /**
200
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
201
+ */
202
+ project?: pulumi.Input<string>;
203
+ /**
204
+ * Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
205
+ */
206
+ projectVpcId?: pulumi.Input<string>;
207
+ /**
208
+ * The hostname of the service.
209
+ */
210
+ serviceHost?: pulumi.Input<string>;
211
+ /**
212
+ * Service integrations to specify when creating a service. Not applied after initial service creation
213
+ */
214
+ serviceIntegrations?: pulumi.Input<pulumi.Input<inputs.ClickhouseServiceIntegration>[]>;
215
+ /**
216
+ * Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
217
+ */
218
+ serviceName?: pulumi.Input<string>;
219
+ /**
220
+ * Password used for connecting to the service, if applicable
221
+ */
222
+ servicePassword?: pulumi.Input<string>;
223
+ /**
224
+ * The port of the service
225
+ */
226
+ servicePort?: pulumi.Input<number>;
227
+ /**
228
+ * Aiven internal service type code
229
+ */
230
+ serviceType?: pulumi.Input<string>;
231
+ /**
232
+ * URI for connecting to the service. Service specific info is under "kafka", "pg", etc.
233
+ */
234
+ serviceUri?: pulumi.Input<string>;
235
+ /**
236
+ * Username used for connecting to the service, if applicable
237
+ */
238
+ serviceUsername?: pulumi.Input<string>;
239
+ /**
240
+ * Service state. One of `POWEROFF`, `REBALANCING`, `REBUILDING` or `RUNNING`
241
+ */
242
+ state?: pulumi.Input<string>;
243
+ /**
244
+ * Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
245
+ */
246
+ staticIps?: pulumi.Input<pulumi.Input<string>[]>;
247
+ /**
248
+ * Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
249
+ */
250
+ terminationProtection?: pulumi.Input<boolean>;
251
+ }
252
+ /**
253
+ * The set of arguments for constructing a Clickhouse resource.
254
+ */
255
+ export interface ClickhouseArgs {
256
+ /**
257
+ * Clickhouse user configurable settings
258
+ */
259
+ clickhouseUserConfig?: pulumi.Input<inputs.ClickhouseClickhouseUserConfig>;
260
+ /**
261
+ * Defines where the cloud provider and region where the service is hosted in. This can be changed freely after service is created. Changing the value will trigger a potentially lengthy migration process for the service. Format is cloud provider name (`aws`, `azure`, `do` `google`, `upcloud`, etc.), dash, and the cloud provider specific region name. These are documented on each Cloud provider's own support articles, like [here for Google](https://cloud.google.com/compute/docs/regions-zones/) and [here for AWS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).
262
+ */
263
+ cloudName?: pulumi.Input<string>;
264
+ /**
265
+ * The disk space of the service, possible values depend on the service type, the cloud provider and the project. Reducing will result in the service rebalancing.
266
+ */
267
+ diskSpace?: pulumi.Input<string>;
268
+ /**
269
+ * Day of week when maintenance operations should be performed. One monday, tuesday, wednesday, etc.
270
+ */
271
+ maintenanceWindowDow?: pulumi.Input<string>;
272
+ /**
273
+ * Time of day when maintenance operations should be performed. UTC time in HH:mm:ss format.
274
+ */
275
+ maintenanceWindowTime?: pulumi.Input<string>;
276
+ /**
277
+ * Defines what kind of computing resources are allocated for the service. It can be changed after creation, though there are some restrictions when going to a smaller plan such as the new plan must have sufficient amount of disk space to store all current data and switching to a plan with fewer nodes might not be supported. The basic plan names are `hobbyist`, `startup-x`, `business-x` and `premium-x` where `x` is (roughly) the amount of memory on each node (also other attributes like number of CPUs and amount of disk space varies but naming is based on memory). The available options can be seem from the [Aiven pricing page](https://aiven.io/pricing).
278
+ */
279
+ plan?: pulumi.Input<string>;
280
+ /**
281
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
282
+ */
283
+ project: pulumi.Input<string>;
284
+ /**
285
+ * Specifies the VPC the service should run in. If the value is not set the service is not run inside a VPC. When set, the value should be given as a reference to set up dependencies correctly and the VPC must be in the same cloud and region as the service itself. Project can be freely moved to and from VPC after creation but doing so triggers migration to new servers so the operation can take significant amount of time to complete if the service has a lot of data.
286
+ */
287
+ projectVpcId?: pulumi.Input<string>;
288
+ /**
289
+ * Service integrations to specify when creating a service. Not applied after initial service creation
290
+ */
291
+ serviceIntegrations?: pulumi.Input<pulumi.Input<inputs.ClickhouseServiceIntegration>[]>;
292
+ /**
293
+ * Specifies the actual name of the service. The name cannot be changed later without destroying and re-creating the service so name should be picked based on intended service usage rather than current attributes.
294
+ */
295
+ serviceName: pulumi.Input<string>;
296
+ /**
297
+ * Static IPs that are going to be associated with this service. Please assign a value using the 'toset' function. Once a static ip resource is in the 'assigned' state it cannot be unbound from the node again
298
+ */
299
+ staticIps?: pulumi.Input<pulumi.Input<string>[]>;
300
+ /**
301
+ * Prevents the service from being deleted. It is recommended to set this to `true` for all production services to prevent unintentional service deletion. This does not shield against deleting databases or topics but for services with backups much of the content can at least be restored from backup in case accidental deletion is done.
302
+ */
303
+ terminationProtection?: pulumi.Input<boolean>;
304
+ }
package/clickhouse.js ADDED
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Clickhouse = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The Clickhouse resource allows the creation and management of Aiven Clickhouse services.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as aiven from "@pulumi/aiven";
16
+ *
17
+ * const clickhouse = new aiven.Clickhouse("clickhouse", {
18
+ * project: data.aiven_project.pr1.project,
19
+ * cloudName: "google-europe-west1",
20
+ * plan: "business-4",
21
+ * serviceName: "my-flink",
22
+ * maintenanceWindowDow: "monday",
23
+ * maintenanceWindowTime: "10:00:00",
24
+ * });
25
+ * ```
26
+ */
27
+ class Clickhouse extends pulumi.CustomResource {
28
+ constructor(name, argsOrState, opts) {
29
+ let resourceInputs = {};
30
+ opts = opts || {};
31
+ if (opts.id) {
32
+ const state = argsOrState;
33
+ resourceInputs["clickhouseUserConfig"] = state ? state.clickhouseUserConfig : undefined;
34
+ resourceInputs["clickhouses"] = state ? state.clickhouses : undefined;
35
+ resourceInputs["cloudName"] = state ? state.cloudName : undefined;
36
+ resourceInputs["components"] = state ? state.components : undefined;
37
+ resourceInputs["diskSpace"] = state ? state.diskSpace : undefined;
38
+ resourceInputs["diskSpaceCap"] = state ? state.diskSpaceCap : undefined;
39
+ resourceInputs["diskSpaceDefault"] = state ? state.diskSpaceDefault : undefined;
40
+ resourceInputs["diskSpaceStep"] = state ? state.diskSpaceStep : undefined;
41
+ resourceInputs["diskSpaceUsed"] = state ? state.diskSpaceUsed : undefined;
42
+ resourceInputs["maintenanceWindowDow"] = state ? state.maintenanceWindowDow : undefined;
43
+ resourceInputs["maintenanceWindowTime"] = state ? state.maintenanceWindowTime : undefined;
44
+ resourceInputs["plan"] = state ? state.plan : undefined;
45
+ resourceInputs["project"] = state ? state.project : undefined;
46
+ resourceInputs["projectVpcId"] = state ? state.projectVpcId : undefined;
47
+ resourceInputs["serviceHost"] = state ? state.serviceHost : undefined;
48
+ resourceInputs["serviceIntegrations"] = state ? state.serviceIntegrations : undefined;
49
+ resourceInputs["serviceName"] = state ? state.serviceName : undefined;
50
+ resourceInputs["servicePassword"] = state ? state.servicePassword : undefined;
51
+ resourceInputs["servicePort"] = state ? state.servicePort : undefined;
52
+ resourceInputs["serviceType"] = state ? state.serviceType : undefined;
53
+ resourceInputs["serviceUri"] = state ? state.serviceUri : undefined;
54
+ resourceInputs["serviceUsername"] = state ? state.serviceUsername : undefined;
55
+ resourceInputs["state"] = state ? state.state : undefined;
56
+ resourceInputs["staticIps"] = state ? state.staticIps : undefined;
57
+ resourceInputs["terminationProtection"] = state ? state.terminationProtection : undefined;
58
+ }
59
+ else {
60
+ const args = argsOrState;
61
+ if ((!args || args.project === undefined) && !opts.urn) {
62
+ throw new Error("Missing required property 'project'");
63
+ }
64
+ if ((!args || args.serviceName === undefined) && !opts.urn) {
65
+ throw new Error("Missing required property 'serviceName'");
66
+ }
67
+ resourceInputs["clickhouseUserConfig"] = args ? args.clickhouseUserConfig : undefined;
68
+ resourceInputs["cloudName"] = args ? args.cloudName : undefined;
69
+ resourceInputs["diskSpace"] = args ? args.diskSpace : undefined;
70
+ resourceInputs["maintenanceWindowDow"] = args ? args.maintenanceWindowDow : undefined;
71
+ resourceInputs["maintenanceWindowTime"] = args ? args.maintenanceWindowTime : undefined;
72
+ resourceInputs["plan"] = args ? args.plan : undefined;
73
+ resourceInputs["project"] = args ? args.project : undefined;
74
+ resourceInputs["projectVpcId"] = args ? args.projectVpcId : undefined;
75
+ resourceInputs["serviceIntegrations"] = args ? args.serviceIntegrations : undefined;
76
+ resourceInputs["serviceName"] = args ? args.serviceName : undefined;
77
+ resourceInputs["staticIps"] = args ? args.staticIps : undefined;
78
+ resourceInputs["terminationProtection"] = args ? args.terminationProtection : undefined;
79
+ resourceInputs["clickhouses"] = undefined /*out*/;
80
+ resourceInputs["components"] = undefined /*out*/;
81
+ resourceInputs["diskSpaceCap"] = undefined /*out*/;
82
+ resourceInputs["diskSpaceDefault"] = undefined /*out*/;
83
+ resourceInputs["diskSpaceStep"] = undefined /*out*/;
84
+ resourceInputs["diskSpaceUsed"] = undefined /*out*/;
85
+ resourceInputs["serviceHost"] = undefined /*out*/;
86
+ resourceInputs["servicePassword"] = undefined /*out*/;
87
+ resourceInputs["servicePort"] = undefined /*out*/;
88
+ resourceInputs["serviceType"] = undefined /*out*/;
89
+ resourceInputs["serviceUri"] = undefined /*out*/;
90
+ resourceInputs["serviceUsername"] = undefined /*out*/;
91
+ resourceInputs["state"] = undefined /*out*/;
92
+ }
93
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
94
+ super(Clickhouse.__pulumiType, name, resourceInputs, opts);
95
+ }
96
+ /**
97
+ * Get an existing Clickhouse resource's state with the given name, ID, and optional extra
98
+ * properties used to qualify the lookup.
99
+ *
100
+ * @param name The _unique_ name of the resulting resource.
101
+ * @param id The _unique_ provider ID of the resource to lookup.
102
+ * @param state Any extra arguments used during the lookup.
103
+ * @param opts Optional settings to control the behavior of the CustomResource.
104
+ */
105
+ static get(name, id, state, opts) {
106
+ return new Clickhouse(name, state, Object.assign(Object.assign({}, opts), { id: id }));
107
+ }
108
+ /**
109
+ * Returns true if the given object is an instance of Clickhouse. This is designed to work even
110
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
111
+ */
112
+ static isInstance(obj) {
113
+ if (obj === undefined || obj === null) {
114
+ return false;
115
+ }
116
+ return obj['__pulumiType'] === Clickhouse.__pulumiType;
117
+ }
118
+ }
119
+ exports.Clickhouse = Clickhouse;
120
+ /** @internal */
121
+ Clickhouse.__pulumiType = 'aiven:index/clickhouse:Clickhouse';
122
+ //# sourceMappingURL=clickhouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickhouse.js","sourceRoot":"","sources":["../clickhouse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,105 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * The Clickhouse Database resource allows the creation and management of Aiven Clickhouse Databases.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as aiven from "@pulumi/aiven";
10
+ *
11
+ * const clickhouseDb = new aiven.ClickhouseDatabase("clickhouseDb", {
12
+ * project: aiven_clickhouse.ch.project,
13
+ * serviceName: aiven_clickhouse.ch.service_name,
14
+ * });
15
+ * ```
16
+ */
17
+ export declare class ClickhouseDatabase extends pulumi.CustomResource {
18
+ /**
19
+ * Get an existing ClickhouseDatabase resource's state with the given name, ID, and optional extra
20
+ * properties used to qualify the lookup.
21
+ *
22
+ * @param name The _unique_ name of the resulting resource.
23
+ * @param id The _unique_ provider ID of the resource to lookup.
24
+ * @param state Any extra arguments used during the lookup.
25
+ * @param opts Optional settings to control the behavior of the CustomResource.
26
+ */
27
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClickhouseDatabaseState, opts?: pulumi.CustomResourceOptions): ClickhouseDatabase;
28
+ /**
29
+ * Returns true if the given object is an instance of ClickhouseDatabase. This is designed to work even
30
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
31
+ */
32
+ static isInstance(obj: any): obj is ClickhouseDatabase;
33
+ /**
34
+ * The name of the Clickhouse database. This property cannot be changed, doing so forces recreation of the resource.
35
+ */
36
+ readonly name: pulumi.Output<string>;
37
+ /**
38
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
39
+ */
40
+ readonly project: pulumi.Output<string>;
41
+ /**
42
+ * Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
43
+ */
44
+ readonly serviceName: pulumi.Output<string>;
45
+ /**
46
+ * It is a Terraform client-side deletion protections, which prevents the Clickhouse database from being deleted by
47
+ * Terraform. It is recommended to enable this for any production Clickhouse databases containing critical data. The
48
+ * default value is `false`.
49
+ */
50
+ readonly terminationProtection: pulumi.Output<boolean | undefined>;
51
+ /**
52
+ * Create a ClickhouseDatabase resource with the given unique name, arguments, and options.
53
+ *
54
+ * @param name The _unique_ name of the resource.
55
+ * @param args The arguments to use to populate this resource's properties.
56
+ * @param opts A bag of options that control this resource's behavior.
57
+ */
58
+ constructor(name: string, args: ClickhouseDatabaseArgs, opts?: pulumi.CustomResourceOptions);
59
+ }
60
+ /**
61
+ * Input properties used for looking up and filtering ClickhouseDatabase resources.
62
+ */
63
+ export interface ClickhouseDatabaseState {
64
+ /**
65
+ * The name of the Clickhouse database. This property cannot be changed, doing so forces recreation of the resource.
66
+ */
67
+ name?: pulumi.Input<string>;
68
+ /**
69
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
70
+ */
71
+ project?: pulumi.Input<string>;
72
+ /**
73
+ * Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
74
+ */
75
+ serviceName?: pulumi.Input<string>;
76
+ /**
77
+ * It is a Terraform client-side deletion protections, which prevents the Clickhouse database from being deleted by
78
+ * Terraform. It is recommended to enable this for any production Clickhouse databases containing critical data. The
79
+ * default value is `false`.
80
+ */
81
+ terminationProtection?: pulumi.Input<boolean>;
82
+ }
83
+ /**
84
+ * The set of arguments for constructing a ClickhouseDatabase resource.
85
+ */
86
+ export interface ClickhouseDatabaseArgs {
87
+ /**
88
+ * The name of the Clickhouse database. This property cannot be changed, doing so forces recreation of the resource.
89
+ */
90
+ name?: pulumi.Input<string>;
91
+ /**
92
+ * Identifies the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
93
+ */
94
+ project: pulumi.Input<string>;
95
+ /**
96
+ * Specifies the name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. This property cannot be changed, doing so forces recreation of the resource.
97
+ */
98
+ serviceName: pulumi.Input<string>;
99
+ /**
100
+ * It is a Terraform client-side deletion protections, which prevents the Clickhouse database from being deleted by
101
+ * Terraform. It is recommended to enable this for any production Clickhouse databases containing critical data. The
102
+ * default value is `false`.
103
+ */
104
+ terminationProtection?: pulumi.Input<boolean>;
105
+ }
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ClickhouseDatabase = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The Clickhouse Database resource allows the creation and management of Aiven Clickhouse Databases.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as aiven from "@pulumi/aiven";
16
+ *
17
+ * const clickhouseDb = new aiven.ClickhouseDatabase("clickhouseDb", {
18
+ * project: aiven_clickhouse.ch.project,
19
+ * serviceName: aiven_clickhouse.ch.service_name,
20
+ * });
21
+ * ```
22
+ */
23
+ class ClickhouseDatabase extends pulumi.CustomResource {
24
+ constructor(name, argsOrState, opts) {
25
+ let resourceInputs = {};
26
+ opts = opts || {};
27
+ if (opts.id) {
28
+ const state = argsOrState;
29
+ resourceInputs["name"] = state ? state.name : undefined;
30
+ resourceInputs["project"] = state ? state.project : undefined;
31
+ resourceInputs["serviceName"] = state ? state.serviceName : undefined;
32
+ resourceInputs["terminationProtection"] = state ? state.terminationProtection : undefined;
33
+ }
34
+ else {
35
+ const args = argsOrState;
36
+ if ((!args || args.project === undefined) && !opts.urn) {
37
+ throw new Error("Missing required property 'project'");
38
+ }
39
+ if ((!args || args.serviceName === undefined) && !opts.urn) {
40
+ throw new Error("Missing required property 'serviceName'");
41
+ }
42
+ resourceInputs["name"] = args ? args.name : undefined;
43
+ resourceInputs["project"] = args ? args.project : undefined;
44
+ resourceInputs["serviceName"] = args ? args.serviceName : undefined;
45
+ resourceInputs["terminationProtection"] = args ? args.terminationProtection : undefined;
46
+ }
47
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
48
+ super(ClickhouseDatabase.__pulumiType, name, resourceInputs, opts);
49
+ }
50
+ /**
51
+ * Get an existing ClickhouseDatabase resource's state with the given name, ID, and optional extra
52
+ * properties used to qualify the lookup.
53
+ *
54
+ * @param name The _unique_ name of the resulting resource.
55
+ * @param id The _unique_ provider ID of the resource to lookup.
56
+ * @param state Any extra arguments used during the lookup.
57
+ * @param opts Optional settings to control the behavior of the CustomResource.
58
+ */
59
+ static get(name, id, state, opts) {
60
+ return new ClickhouseDatabase(name, state, Object.assign(Object.assign({}, opts), { id: id }));
61
+ }
62
+ /**
63
+ * Returns true if the given object is an instance of ClickhouseDatabase. This is designed to work even
64
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
65
+ */
66
+ static isInstance(obj) {
67
+ if (obj === undefined || obj === null) {
68
+ return false;
69
+ }
70
+ return obj['__pulumiType'] === ClickhouseDatabase.__pulumiType;
71
+ }
72
+ }
73
+ exports.ClickhouseDatabase = ClickhouseDatabase;
74
+ /** @internal */
75
+ ClickhouseDatabase.__pulumiType = 'aiven:index/clickhouseDatabase:ClickhouseDatabase';
76
+ //# sourceMappingURL=clickhouseDatabase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickhouseDatabase.js","sourceRoot":"","sources":["../clickhouseDatabase.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;GAcG;AACH,MAAa,kBAAmB,SAAQ,MAAM,CAAC,cAAc;IAuDzD,YAAY,IAAY,EAAE,WAA8D,EAAE,IAAmC;QACzH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAkD,CAAC;YACjE,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7F;aAAM;YACH,MAAM,IAAI,GAAG,WAAiD,CAAC;YAC/D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC9D;YACD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3F;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;IA9ED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA+B,EAAE,IAAmC;QAC7H,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACzE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC,YAAY,CAAC;IACnE,CAAC;;AA1BL,gDAgFC;AAlEG,gBAAgB;AACO,+BAAY,GAAG,mDAAmD,CAAC"}