@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,169 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "./types";
3
+ /**
4
+ * The Clickhouse Grant resource allows the creation and management of Grants in Aiven Clickhouse services.
5
+ *
6
+ * Notes:
7
+ * * Due to a ambiguity in the GRANT syntax in clickhouse you should not have users and roles with the same name. It is not clear if a grant refers to the user or the role.
8
+ * * Currently changes will first revoke all grants and then reissue the remaining grants for convergence.
9
+ *
10
+ * ## Example Usage
11
+ *
12
+ * ```typescript
13
+ * import * as pulumi from "@pulumi/pulumi";
14
+ * import * as aiven from "@pulumi/aiven";
15
+ *
16
+ * const clickhouse = new aiven.Clickhouse("clickhouse", {
17
+ * project: _var.aiven_project_name,
18
+ * cloudName: "google-europe-west1",
19
+ * plan: "startup-8",
20
+ * serviceName: "exapmle-clickhouse",
21
+ * });
22
+ * const demodb = new aiven.ClickhouseDatabase("demodb", {
23
+ * project: clickhouse.project,
24
+ * serviceName: clickhouse.serviceName,
25
+ * });
26
+ * const demoClickhouseRole = new aiven.ClickhouseRole("demoClickhouseRole", {
27
+ * project: clickhouse.project,
28
+ * serviceName: clickhouse.serviceName,
29
+ * role: "demo-role",
30
+ * });
31
+ * const demo_role_grant = new aiven.ClickhouseGrant("demo-role-grant", {
32
+ * project: clickhouse.project,
33
+ * serviceName: clickhouse.serviceName,
34
+ * role: demoClickhouseRole.role,
35
+ * privilegeGrants: [
36
+ * {
37
+ * privilege: "INSERT",
38
+ * database: demodb.name,
39
+ * table: "*",
40
+ * },
41
+ * {
42
+ * privilege: "SELECT",
43
+ * database: demodb.name,
44
+ * table: "*",
45
+ * },
46
+ * ],
47
+ * });
48
+ * const demoClickhouseUser = new aiven.ClickhouseUser("demoClickhouseUser", {
49
+ * project: clickhouse.project,
50
+ * serviceName: clickhouse.serviceName,
51
+ * username: "demo-user",
52
+ * });
53
+ * const demo_user_grant = new aiven.ClickhouseGrant("demo-user-grant", {
54
+ * project: clickhouse.project,
55
+ * serviceName: clickhouse.serviceName,
56
+ * user: demoClickhouseUser.username,
57
+ * roleGrants: [{
58
+ * role: demoClickhouseRole.role,
59
+ * }],
60
+ * });
61
+ * ```
62
+ */
63
+ export declare class ClickhouseGrant extends pulumi.CustomResource {
64
+ /**
65
+ * Get an existing ClickhouseGrant resource's state with the given name, ID, and optional extra
66
+ * properties used to qualify the lookup.
67
+ *
68
+ * @param name The _unique_ name of the resulting resource.
69
+ * @param id The _unique_ provider ID of the resource to lookup.
70
+ * @param state Any extra arguments used during the lookup.
71
+ * @param opts Optional settings to control the behavior of the CustomResource.
72
+ */
73
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClickhouseGrantState, opts?: pulumi.CustomResourceOptions): ClickhouseGrant;
74
+ /**
75
+ * Returns true if the given object is an instance of ClickhouseGrant. This is designed to work even
76
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
77
+ */
78
+ static isInstance(obj: any): obj is ClickhouseGrant;
79
+ /**
80
+ * Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
81
+ */
82
+ readonly privilegeGrants: pulumi.Output<outputs.ClickhouseGrantPrivilegeGrant[] | undefined>;
83
+ /**
84
+ * 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.
85
+ */
86
+ readonly project: pulumi.Output<string>;
87
+ /**
88
+ * The role to grant privileges or roles 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.
89
+ */
90
+ readonly role: pulumi.Output<string | undefined>;
91
+ /**
92
+ * Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
93
+ */
94
+ readonly roleGrants: pulumi.Output<outputs.ClickhouseGrantRoleGrant[] | undefined>;
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
+ readonly serviceName: pulumi.Output<string>;
99
+ /**
100
+ * The user to grant privileges or roles 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.
101
+ */
102
+ readonly user: pulumi.Output<string | undefined>;
103
+ /**
104
+ * Create a ClickhouseGrant resource with the given unique name, arguments, and options.
105
+ *
106
+ * @param name The _unique_ name of the resource.
107
+ * @param args The arguments to use to populate this resource's properties.
108
+ * @param opts A bag of options that control this resource's behavior.
109
+ */
110
+ constructor(name: string, args: ClickhouseGrantArgs, opts?: pulumi.CustomResourceOptions);
111
+ }
112
+ /**
113
+ * Input properties used for looking up and filtering ClickhouseGrant resources.
114
+ */
115
+ export interface ClickhouseGrantState {
116
+ /**
117
+ * Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
118
+ */
119
+ privilegeGrants?: pulumi.Input<pulumi.Input<inputs.ClickhouseGrantPrivilegeGrant>[]>;
120
+ /**
121
+ * 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.
122
+ */
123
+ project?: pulumi.Input<string>;
124
+ /**
125
+ * The role to grant privileges or roles 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.
126
+ */
127
+ role?: pulumi.Input<string>;
128
+ /**
129
+ * Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
130
+ */
131
+ roleGrants?: pulumi.Input<pulumi.Input<inputs.ClickhouseGrantRoleGrant>[]>;
132
+ /**
133
+ * 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.
134
+ */
135
+ serviceName?: pulumi.Input<string>;
136
+ /**
137
+ * The user to grant privileges or roles 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.
138
+ */
139
+ user?: pulumi.Input<string>;
140
+ }
141
+ /**
142
+ * The set of arguments for constructing a ClickhouseGrant resource.
143
+ */
144
+ export interface ClickhouseGrantArgs {
145
+ /**
146
+ * Configuration to grant a privilege. This property cannot be changed, doing so forces recreation of the resource.
147
+ */
148
+ privilegeGrants?: pulumi.Input<pulumi.Input<inputs.ClickhouseGrantPrivilegeGrant>[]>;
149
+ /**
150
+ * 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.
151
+ */
152
+ project: pulumi.Input<string>;
153
+ /**
154
+ * The role to grant privileges or roles 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.
155
+ */
156
+ role?: pulumi.Input<string>;
157
+ /**
158
+ * Configuration to grant a role. This property cannot be changed, doing so forces recreation of the resource.
159
+ */
160
+ roleGrants?: pulumi.Input<pulumi.Input<inputs.ClickhouseGrantRoleGrant>[]>;
161
+ /**
162
+ * 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.
163
+ */
164
+ serviceName: pulumi.Input<string>;
165
+ /**
166
+ * The user to grant privileges or roles 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.
167
+ */
168
+ user?: pulumi.Input<string>;
169
+ }
@@ -0,0 +1,125 @@
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.ClickhouseGrant = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The Clickhouse Grant resource allows the creation and management of Grants in Aiven Clickhouse services.
10
+ *
11
+ * Notes:
12
+ * * Due to a ambiguity in the GRANT syntax in clickhouse you should not have users and roles with the same name. It is not clear if a grant refers to the user or the role.
13
+ * * Currently changes will first revoke all grants and then reissue the remaining grants for convergence.
14
+ *
15
+ * ## Example Usage
16
+ *
17
+ * ```typescript
18
+ * import * as pulumi from "@pulumi/pulumi";
19
+ * import * as aiven from "@pulumi/aiven";
20
+ *
21
+ * const clickhouse = new aiven.Clickhouse("clickhouse", {
22
+ * project: _var.aiven_project_name,
23
+ * cloudName: "google-europe-west1",
24
+ * plan: "startup-8",
25
+ * serviceName: "exapmle-clickhouse",
26
+ * });
27
+ * const demodb = new aiven.ClickhouseDatabase("demodb", {
28
+ * project: clickhouse.project,
29
+ * serviceName: clickhouse.serviceName,
30
+ * });
31
+ * const demoClickhouseRole = new aiven.ClickhouseRole("demoClickhouseRole", {
32
+ * project: clickhouse.project,
33
+ * serviceName: clickhouse.serviceName,
34
+ * role: "demo-role",
35
+ * });
36
+ * const demo_role_grant = new aiven.ClickhouseGrant("demo-role-grant", {
37
+ * project: clickhouse.project,
38
+ * serviceName: clickhouse.serviceName,
39
+ * role: demoClickhouseRole.role,
40
+ * privilegeGrants: [
41
+ * {
42
+ * privilege: "INSERT",
43
+ * database: demodb.name,
44
+ * table: "*",
45
+ * },
46
+ * {
47
+ * privilege: "SELECT",
48
+ * database: demodb.name,
49
+ * table: "*",
50
+ * },
51
+ * ],
52
+ * });
53
+ * const demoClickhouseUser = new aiven.ClickhouseUser("demoClickhouseUser", {
54
+ * project: clickhouse.project,
55
+ * serviceName: clickhouse.serviceName,
56
+ * username: "demo-user",
57
+ * });
58
+ * const demo_user_grant = new aiven.ClickhouseGrant("demo-user-grant", {
59
+ * project: clickhouse.project,
60
+ * serviceName: clickhouse.serviceName,
61
+ * user: demoClickhouseUser.username,
62
+ * roleGrants: [{
63
+ * role: demoClickhouseRole.role,
64
+ * }],
65
+ * });
66
+ * ```
67
+ */
68
+ class ClickhouseGrant extends pulumi.CustomResource {
69
+ constructor(name, argsOrState, opts) {
70
+ let resourceInputs = {};
71
+ opts = opts || {};
72
+ if (opts.id) {
73
+ const state = argsOrState;
74
+ resourceInputs["privilegeGrants"] = state ? state.privilegeGrants : undefined;
75
+ resourceInputs["project"] = state ? state.project : undefined;
76
+ resourceInputs["role"] = state ? state.role : undefined;
77
+ resourceInputs["roleGrants"] = state ? state.roleGrants : undefined;
78
+ resourceInputs["serviceName"] = state ? state.serviceName : undefined;
79
+ resourceInputs["user"] = state ? state.user : undefined;
80
+ }
81
+ else {
82
+ const args = argsOrState;
83
+ if ((!args || args.project === undefined) && !opts.urn) {
84
+ throw new Error("Missing required property 'project'");
85
+ }
86
+ if ((!args || args.serviceName === undefined) && !opts.urn) {
87
+ throw new Error("Missing required property 'serviceName'");
88
+ }
89
+ resourceInputs["privilegeGrants"] = args ? args.privilegeGrants : undefined;
90
+ resourceInputs["project"] = args ? args.project : undefined;
91
+ resourceInputs["role"] = args ? args.role : undefined;
92
+ resourceInputs["roleGrants"] = args ? args.roleGrants : undefined;
93
+ resourceInputs["serviceName"] = args ? args.serviceName : undefined;
94
+ resourceInputs["user"] = args ? args.user : undefined;
95
+ }
96
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
97
+ super(ClickhouseGrant.__pulumiType, name, resourceInputs, opts);
98
+ }
99
+ /**
100
+ * Get an existing ClickhouseGrant resource's state with the given name, ID, and optional extra
101
+ * properties used to qualify the lookup.
102
+ *
103
+ * @param name The _unique_ name of the resulting resource.
104
+ * @param id The _unique_ provider ID of the resource to lookup.
105
+ * @param state Any extra arguments used during the lookup.
106
+ * @param opts Optional settings to control the behavior of the CustomResource.
107
+ */
108
+ static get(name, id, state, opts) {
109
+ return new ClickhouseGrant(name, state, Object.assign(Object.assign({}, opts), { id: id }));
110
+ }
111
+ /**
112
+ * Returns true if the given object is an instance of ClickhouseGrant. This is designed to work even
113
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
114
+ */
115
+ static isInstance(obj) {
116
+ if (obj === undefined || obj === null) {
117
+ return false;
118
+ }
119
+ return obj['__pulumiType'] === ClickhouseGrant.__pulumiType;
120
+ }
121
+ }
122
+ exports.ClickhouseGrant = ClickhouseGrant;
123
+ /** @internal */
124
+ ClickhouseGrant.__pulumiType = 'aiven:index/clickhouseGrant:ClickhouseGrant';
125
+ //# sourceMappingURL=clickhouseGrant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickhouseGrant.js","sourceRoot":"","sources":["../clickhouseGrant.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * The Clickhouse Role resource allows the creation and management of Roles in Aiven Clickhouse services
4
+ */
5
+ export declare class ClickhouseRole extends pulumi.CustomResource {
6
+ /**
7
+ * Get an existing ClickhouseRole resource's state with the given name, ID, and optional extra
8
+ * properties used to qualify the lookup.
9
+ *
10
+ * @param name The _unique_ name of the resulting resource.
11
+ * @param id The _unique_ provider ID of the resource to lookup.
12
+ * @param state Any extra arguments used during the lookup.
13
+ * @param opts Optional settings to control the behavior of the CustomResource.
14
+ */
15
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClickhouseRoleState, opts?: pulumi.CustomResourceOptions): ClickhouseRole;
16
+ /**
17
+ * Returns true if the given object is an instance of ClickhouseRole. This is designed to work even
18
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
19
+ */
20
+ static isInstance(obj: any): obj is ClickhouseRole;
21
+ /**
22
+ * 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.
23
+ */
24
+ readonly project: pulumi.Output<string>;
25
+ /**
26
+ * The role that is to be created. This property cannot be changed, doing so forces recreation of the resource.
27
+ */
28
+ readonly role: pulumi.Output<string>;
29
+ /**
30
+ * 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.
31
+ */
32
+ readonly serviceName: pulumi.Output<string>;
33
+ /**
34
+ * Create a ClickhouseRole resource with the given unique name, arguments, and options.
35
+ *
36
+ * @param name The _unique_ name of the resource.
37
+ * @param args The arguments to use to populate this resource's properties.
38
+ * @param opts A bag of options that control this resource's behavior.
39
+ */
40
+ constructor(name: string, args: ClickhouseRoleArgs, opts?: pulumi.CustomResourceOptions);
41
+ }
42
+ /**
43
+ * Input properties used for looking up and filtering ClickhouseRole resources.
44
+ */
45
+ export interface ClickhouseRoleState {
46
+ /**
47
+ * 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.
48
+ */
49
+ project?: pulumi.Input<string>;
50
+ /**
51
+ * The role that is to be created. This property cannot be changed, doing so forces recreation of the resource.
52
+ */
53
+ role?: pulumi.Input<string>;
54
+ /**
55
+ * 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.
56
+ */
57
+ serviceName?: pulumi.Input<string>;
58
+ }
59
+ /**
60
+ * The set of arguments for constructing a ClickhouseRole resource.
61
+ */
62
+ export interface ClickhouseRoleArgs {
63
+ /**
64
+ * 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.
65
+ */
66
+ project: pulumi.Input<string>;
67
+ /**
68
+ * The role that is to be created. This property cannot be changed, doing so forces recreation of the resource.
69
+ */
70
+ role: pulumi.Input<string>;
71
+ /**
72
+ * 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.
73
+ */
74
+ serviceName: pulumi.Input<string>;
75
+ }
@@ -0,0 +1,65 @@
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.ClickhouseRole = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The Clickhouse Role resource allows the creation and management of Roles in Aiven Clickhouse services
10
+ */
11
+ class ClickhouseRole extends pulumi.CustomResource {
12
+ constructor(name, argsOrState, opts) {
13
+ let resourceInputs = {};
14
+ opts = opts || {};
15
+ if (opts.id) {
16
+ const state = argsOrState;
17
+ resourceInputs["project"] = state ? state.project : undefined;
18
+ resourceInputs["role"] = state ? state.role : undefined;
19
+ resourceInputs["serviceName"] = state ? state.serviceName : undefined;
20
+ }
21
+ else {
22
+ const args = argsOrState;
23
+ if ((!args || args.project === undefined) && !opts.urn) {
24
+ throw new Error("Missing required property 'project'");
25
+ }
26
+ if ((!args || args.role === undefined) && !opts.urn) {
27
+ throw new Error("Missing required property 'role'");
28
+ }
29
+ if ((!args || args.serviceName === undefined) && !opts.urn) {
30
+ throw new Error("Missing required property 'serviceName'");
31
+ }
32
+ resourceInputs["project"] = args ? args.project : undefined;
33
+ resourceInputs["role"] = args ? args.role : undefined;
34
+ resourceInputs["serviceName"] = args ? args.serviceName : undefined;
35
+ }
36
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
37
+ super(ClickhouseRole.__pulumiType, name, resourceInputs, opts);
38
+ }
39
+ /**
40
+ * Get an existing ClickhouseRole resource's state with the given name, ID, and optional extra
41
+ * properties used to qualify the lookup.
42
+ *
43
+ * @param name The _unique_ name of the resulting resource.
44
+ * @param id The _unique_ provider ID of the resource to lookup.
45
+ * @param state Any extra arguments used during the lookup.
46
+ * @param opts Optional settings to control the behavior of the CustomResource.
47
+ */
48
+ static get(name, id, state, opts) {
49
+ return new ClickhouseRole(name, state, Object.assign(Object.assign({}, opts), { id: id }));
50
+ }
51
+ /**
52
+ * Returns true if the given object is an instance of ClickhouseRole. This is designed to work even
53
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
54
+ */
55
+ static isInstance(obj) {
56
+ if (obj === undefined || obj === null) {
57
+ return false;
58
+ }
59
+ return obj['__pulumiType'] === ClickhouseRole.__pulumiType;
60
+ }
61
+ }
62
+ exports.ClickhouseRole = ClickhouseRole;
63
+ /** @internal */
64
+ ClickhouseRole.__pulumiType = 'aiven:index/clickhouseRole:ClickhouseRole';
65
+ //# sourceMappingURL=clickhouseRole.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickhouseRole.js","sourceRoot":"","sources":["../clickhouseRole.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;GAEG;AACH,MAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IAiDrD,YAAY,IAAY,EAAE,WAAsD,EAAE,IAAmC;QACjH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8C,CAAC;YAC7D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;SACzE;aAAM;YACH,MAAM,IAAI,GAAG,WAA6C,CAAC;YAC3D,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,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;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,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;SACvE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IAzED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2B,EAAE,IAAmC;QACzH,OAAO,IAAI,cAAc,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACrE,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,cAAc,CAAC,YAAY,CAAC;IAC/D,CAAC;;AA1BL,wCA2EC;AA7DG,gBAAgB;AACO,2BAAY,GAAG,2CAA2C,CAAC"}
@@ -0,0 +1,112 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * The Clickhouse User resource allows the creation and management of Aiven Clikhouse Users.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as aiven from "@pulumi/aiven";
10
+ *
11
+ * const ch_user = new aiven.ClickhouseUser("ch-user", {
12
+ * project: aiven_project.myproject.project,
13
+ * serviceName: aiven_clickhouse.myservice.service_name,
14
+ * username: "<USERNAME>",
15
+ * });
16
+ * ```
17
+ */
18
+ export declare class ClickhouseUser extends pulumi.CustomResource {
19
+ /**
20
+ * Get an existing ClickhouseUser resource's state with the given name, ID, and optional extra
21
+ * properties used to qualify the lookup.
22
+ *
23
+ * @param name The _unique_ name of the resulting resource.
24
+ * @param id The _unique_ provider ID of the resource to lookup.
25
+ * @param state Any extra arguments used during the lookup.
26
+ * @param opts Optional settings to control the behavior of the CustomResource.
27
+ */
28
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClickhouseUserState, opts?: pulumi.CustomResourceOptions): ClickhouseUser;
29
+ /**
30
+ * Returns true if the given object is an instance of ClickhouseUser. This is designed to work even
31
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
32
+ */
33
+ static isInstance(obj: any): obj is ClickhouseUser;
34
+ /**
35
+ * The password of the clickhouse user.
36
+ */
37
+ readonly password: pulumi.Output<string>;
38
+ /**
39
+ * 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.
40
+ */
41
+ readonly project: pulumi.Output<string>;
42
+ /**
43
+ * Indicates if a clickhouse user is required
44
+ */
45
+ readonly required: pulumi.Output<boolean>;
46
+ /**
47
+ * 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.
48
+ */
49
+ readonly serviceName: pulumi.Output<string>;
50
+ /**
51
+ * The actual name of the Clickhouse user. This property cannot be changed, doing so forces recreation of the resource.
52
+ */
53
+ readonly username: pulumi.Output<string>;
54
+ /**
55
+ * UUID of the clickhouse user.
56
+ */
57
+ readonly uuid: pulumi.Output<string>;
58
+ /**
59
+ * Create a ClickhouseUser resource with the given unique name, arguments, and options.
60
+ *
61
+ * @param name The _unique_ name of the resource.
62
+ * @param args The arguments to use to populate this resource's properties.
63
+ * @param opts A bag of options that control this resource's behavior.
64
+ */
65
+ constructor(name: string, args: ClickhouseUserArgs, opts?: pulumi.CustomResourceOptions);
66
+ }
67
+ /**
68
+ * Input properties used for looking up and filtering ClickhouseUser resources.
69
+ */
70
+ export interface ClickhouseUserState {
71
+ /**
72
+ * The password of the clickhouse user.
73
+ */
74
+ password?: pulumi.Input<string>;
75
+ /**
76
+ * 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.
77
+ */
78
+ project?: pulumi.Input<string>;
79
+ /**
80
+ * Indicates if a clickhouse user is required
81
+ */
82
+ required?: pulumi.Input<boolean>;
83
+ /**
84
+ * 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.
85
+ */
86
+ serviceName?: pulumi.Input<string>;
87
+ /**
88
+ * The actual name of the Clickhouse user. This property cannot be changed, doing so forces recreation of the resource.
89
+ */
90
+ username?: pulumi.Input<string>;
91
+ /**
92
+ * UUID of the clickhouse user.
93
+ */
94
+ uuid?: pulumi.Input<string>;
95
+ }
96
+ /**
97
+ * The set of arguments for constructing a ClickhouseUser resource.
98
+ */
99
+ export interface ClickhouseUserArgs {
100
+ /**
101
+ * 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.
102
+ */
103
+ project: pulumi.Input<string>;
104
+ /**
105
+ * 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.
106
+ */
107
+ serviceName: pulumi.Input<string>;
108
+ /**
109
+ * The actual name of the Clickhouse user. This property cannot be changed, doing so forces recreation of the resource.
110
+ */
111
+ username: pulumi.Input<string>;
112
+ }
@@ -0,0 +1,84 @@
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.ClickhouseUser = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * The Clickhouse User resource allows the creation and management of Aiven Clikhouse Users.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as aiven from "@pulumi/aiven";
16
+ *
17
+ * const ch_user = new aiven.ClickhouseUser("ch-user", {
18
+ * project: aiven_project.myproject.project,
19
+ * serviceName: aiven_clickhouse.myservice.service_name,
20
+ * username: "<USERNAME>",
21
+ * });
22
+ * ```
23
+ */
24
+ class ClickhouseUser extends pulumi.CustomResource {
25
+ constructor(name, argsOrState, opts) {
26
+ let resourceInputs = {};
27
+ opts = opts || {};
28
+ if (opts.id) {
29
+ const state = argsOrState;
30
+ resourceInputs["password"] = state ? state.password : undefined;
31
+ resourceInputs["project"] = state ? state.project : undefined;
32
+ resourceInputs["required"] = state ? state.required : undefined;
33
+ resourceInputs["serviceName"] = state ? state.serviceName : undefined;
34
+ resourceInputs["username"] = state ? state.username : undefined;
35
+ resourceInputs["uuid"] = state ? state.uuid : undefined;
36
+ }
37
+ else {
38
+ const args = argsOrState;
39
+ if ((!args || args.project === undefined) && !opts.urn) {
40
+ throw new Error("Missing required property 'project'");
41
+ }
42
+ if ((!args || args.serviceName === undefined) && !opts.urn) {
43
+ throw new Error("Missing required property 'serviceName'");
44
+ }
45
+ if ((!args || args.username === undefined) && !opts.urn) {
46
+ throw new Error("Missing required property 'username'");
47
+ }
48
+ resourceInputs["project"] = args ? args.project : undefined;
49
+ resourceInputs["serviceName"] = args ? args.serviceName : undefined;
50
+ resourceInputs["username"] = args ? args.username : undefined;
51
+ resourceInputs["password"] = undefined /*out*/;
52
+ resourceInputs["required"] = undefined /*out*/;
53
+ resourceInputs["uuid"] = undefined /*out*/;
54
+ }
55
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
56
+ super(ClickhouseUser.__pulumiType, name, resourceInputs, opts);
57
+ }
58
+ /**
59
+ * Get an existing ClickhouseUser resource's state with the given name, ID, and optional extra
60
+ * properties used to qualify the lookup.
61
+ *
62
+ * @param name The _unique_ name of the resulting resource.
63
+ * @param id The _unique_ provider ID of the resource to lookup.
64
+ * @param state Any extra arguments used during the lookup.
65
+ * @param opts Optional settings to control the behavior of the CustomResource.
66
+ */
67
+ static get(name, id, state, opts) {
68
+ return new ClickhouseUser(name, state, Object.assign(Object.assign({}, opts), { id: id }));
69
+ }
70
+ /**
71
+ * Returns true if the given object is an instance of ClickhouseUser. This is designed to work even
72
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
73
+ */
74
+ static isInstance(obj) {
75
+ if (obj === undefined || obj === null) {
76
+ return false;
77
+ }
78
+ return obj['__pulumiType'] === ClickhouseUser.__pulumiType;
79
+ }
80
+ }
81
+ exports.ClickhouseUser = ClickhouseUser;
82
+ /** @internal */
83
+ ClickhouseUser.__pulumiType = 'aiven:index/clickhouseUser:ClickhouseUser';
84
+ //# sourceMappingURL=clickhouseUser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clickhouseUser.js","sourceRoot":"","sources":["../clickhouseUser.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;GAeG;AACH,MAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IA6DrD,YAAY,IAAY,EAAE,WAAsD,EAAE,IAAmC;QACjH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8C,CAAC;YAC7D,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;aAAM;YACH,MAAM,IAAI,GAAG,WAA6C,CAAC;YAC3D,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,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,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,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC9C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IA3FD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2B,EAAE,IAAmC;QACzH,OAAO,IAAI,cAAc,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACrE,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,cAAc,CAAC,YAAY,CAAC;IAC/D,CAAC;;AA1BL,wCA6FC;AA/EG,gBAAgB;AACO,2BAAY,GAAG,2CAA2C,CAAC"}