@upcloud/pulumi-upcloud 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,298 +0,0 @@
1
- import * as pulumi from "@pulumi/pulumi";
2
- import * as inputs from "./types/input";
3
- import * as outputs from "./types/output";
4
- /**
5
- * > Redis is deprecated in favor of Valkey. Please use Valkey for new key value store instances.
6
- *
7
- * This resource represents Redis managed database. See UpCloud [Managed Databases](https://upcloud.com/products/managed-databases) product page for more details about the service.
8
- *
9
- * ## Example Usage
10
- *
11
- * ```typescript
12
- * import * as pulumi from "@pulumi/pulumi";
13
- * import * as upcloud from "@upcloud/pulumi-upcloud";
14
- *
15
- * // Minimal config
16
- * const example1 = new upcloud.ManagedDatabaseRedis("example_1", {
17
- * name: "redis-1",
18
- * title: "redis-1-example-2",
19
- * plan: "1x1xCPU-2GB",
20
- * zone: "fi-hel2",
21
- * });
22
- * // Service with custom properties
23
- * const example2 = new upcloud.ManagedDatabaseRedis("example_2", {
24
- * name: "redis-2",
25
- * title: "redis-2-example-2",
26
- * plan: "1x1xCPU-2GB",
27
- * zone: "fi-hel1",
28
- * properties: {
29
- * publicAccess: false,
30
- * },
31
- * });
32
- * ```
33
- */
34
- export declare class ManagedDatabaseRedis extends pulumi.CustomResource {
35
- /**
36
- * Get an existing ManagedDatabaseRedis resource's state with the given name, ID, and optional extra
37
- * properties used to qualify the lookup.
38
- *
39
- * @param name The _unique_ name of the resulting resource.
40
- * @param id The _unique_ provider ID of the resource to lookup.
41
- * @param state Any extra arguments used during the lookup.
42
- * @param opts Optional settings to control the behavior of the CustomResource.
43
- */
44
- static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagedDatabaseRedisState, opts?: pulumi.CustomResourceOptions): ManagedDatabaseRedis;
45
- /**
46
- * Returns true if the given object is an instance of ManagedDatabaseRedis. This is designed to work even
47
- * when multiple copies of the Pulumi SDK have been loaded into the same process.
48
- */
49
- static isInstance(obj: any): obj is ManagedDatabaseRedis;
50
- /**
51
- * Not supported for `redis` databases. Should be left unconfigured.
52
- */
53
- readonly additionalDiskSpaceGib: pulumi.Output<number>;
54
- /**
55
- * Service component information
56
- */
57
- readonly components: pulumi.Output<outputs.ManagedDatabaseRedisComponent[]>;
58
- /**
59
- * User defined key-value pairs to classify the managed database.
60
- */
61
- readonly labels: pulumi.Output<{
62
- [key: string]: string;
63
- } | undefined>;
64
- /**
65
- * Maintenance window day of week. Lower case weekday name (monday, tuesday, ...)
66
- */
67
- readonly maintenanceWindowDow: pulumi.Output<string>;
68
- /**
69
- * Maintenance window UTC time in hh:mm:ss format
70
- */
71
- readonly maintenanceWindowTime: pulumi.Output<string>;
72
- /**
73
- * Name of the service. The name is used as a prefix for the logical hostname. Must be unique within an account
74
- */
75
- readonly name: pulumi.Output<string>;
76
- /**
77
- * Private networks attached to the managed database
78
- */
79
- readonly networks: pulumi.Output<outputs.ManagedDatabaseRedisNetwork[] | undefined>;
80
- /**
81
- * Information about nodes providing the managed service
82
- */
83
- readonly nodeStates: pulumi.Output<outputs.ManagedDatabaseRedisNodeState[]>;
84
- /**
85
- * Service plan to use. This determines how much resources the instance will have. You can list available plans with `upctl database plans redis`.
86
- */
87
- readonly plan: pulumi.Output<string>;
88
- /**
89
- * The administrative power state of the service
90
- */
91
- readonly powered: pulumi.Output<boolean | undefined>;
92
- /**
93
- * Primary database name
94
- */
95
- readonly primaryDatabase: pulumi.Output<string>;
96
- /**
97
- * Database Engine properties for Redis
98
- */
99
- readonly properties: pulumi.Output<outputs.ManagedDatabaseRedisProperties>;
100
- /**
101
- * Hostname to the service instance
102
- */
103
- readonly serviceHost: pulumi.Output<string>;
104
- /**
105
- * Primary username's password to the service instance
106
- */
107
- readonly servicePassword: pulumi.Output<string>;
108
- /**
109
- * Port to the service instance
110
- */
111
- readonly servicePort: pulumi.Output<string>;
112
- /**
113
- * URI to the service instance
114
- */
115
- readonly serviceUri: pulumi.Output<string>;
116
- /**
117
- * Primary username to the service instance
118
- */
119
- readonly serviceUsername: pulumi.Output<string>;
120
- /**
121
- * State of the service
122
- */
123
- readonly state: pulumi.Output<string>;
124
- /**
125
- * If set to true, prevents the managed service from being powered off, or deleted.
126
- */
127
- readonly terminationProtection: pulumi.Output<boolean | undefined>;
128
- /**
129
- * Title of a managed database instance
130
- */
131
- readonly title: pulumi.Output<string>;
132
- /**
133
- * Type of the service
134
- */
135
- readonly type: pulumi.Output<string>;
136
- /**
137
- * Zone where the instance resides, e.g. `de-fra1`. You can list available zones with `upctl zone list`.
138
- */
139
- readonly zone: pulumi.Output<string>;
140
- /**
141
- * Create a ManagedDatabaseRedis resource with the given unique name, arguments, and options.
142
- *
143
- * @param name The _unique_ name of the resource.
144
- * @param args The arguments to use to populate this resource's properties.
145
- * @param opts A bag of options that control this resource's behavior.
146
- */
147
- constructor(name: string, args: ManagedDatabaseRedisArgs, opts?: pulumi.CustomResourceOptions);
148
- }
149
- /**
150
- * Input properties used for looking up and filtering ManagedDatabaseRedis resources.
151
- */
152
- export interface ManagedDatabaseRedisState {
153
- /**
154
- * Not supported for `redis` databases. Should be left unconfigured.
155
- */
156
- additionalDiskSpaceGib?: pulumi.Input<number>;
157
- /**
158
- * Service component information
159
- */
160
- components?: pulumi.Input<pulumi.Input<inputs.ManagedDatabaseRedisComponent>[]>;
161
- /**
162
- * User defined key-value pairs to classify the managed database.
163
- */
164
- labels?: pulumi.Input<{
165
- [key: string]: pulumi.Input<string>;
166
- }>;
167
- /**
168
- * Maintenance window day of week. Lower case weekday name (monday, tuesday, ...)
169
- */
170
- maintenanceWindowDow?: pulumi.Input<string>;
171
- /**
172
- * Maintenance window UTC time in hh:mm:ss format
173
- */
174
- maintenanceWindowTime?: pulumi.Input<string>;
175
- /**
176
- * Name of the service. The name is used as a prefix for the logical hostname. Must be unique within an account
177
- */
178
- name?: pulumi.Input<string>;
179
- /**
180
- * Private networks attached to the managed database
181
- */
182
- networks?: pulumi.Input<pulumi.Input<inputs.ManagedDatabaseRedisNetwork>[]>;
183
- /**
184
- * Information about nodes providing the managed service
185
- */
186
- nodeStates?: pulumi.Input<pulumi.Input<inputs.ManagedDatabaseRedisNodeState>[]>;
187
- /**
188
- * Service plan to use. This determines how much resources the instance will have. You can list available plans with `upctl database plans redis`.
189
- */
190
- plan?: pulumi.Input<string>;
191
- /**
192
- * The administrative power state of the service
193
- */
194
- powered?: pulumi.Input<boolean>;
195
- /**
196
- * Primary database name
197
- */
198
- primaryDatabase?: pulumi.Input<string>;
199
- /**
200
- * Database Engine properties for Redis
201
- */
202
- properties?: pulumi.Input<inputs.ManagedDatabaseRedisProperties>;
203
- /**
204
- * Hostname to the service instance
205
- */
206
- serviceHost?: pulumi.Input<string>;
207
- /**
208
- * Primary username's password to the service instance
209
- */
210
- servicePassword?: pulumi.Input<string>;
211
- /**
212
- * Port to the service instance
213
- */
214
- servicePort?: pulumi.Input<string>;
215
- /**
216
- * URI to the service instance
217
- */
218
- serviceUri?: pulumi.Input<string>;
219
- /**
220
- * Primary username to the service instance
221
- */
222
- serviceUsername?: pulumi.Input<string>;
223
- /**
224
- * State of the service
225
- */
226
- state?: pulumi.Input<string>;
227
- /**
228
- * If set to true, prevents the managed service from being powered off, or deleted.
229
- */
230
- terminationProtection?: pulumi.Input<boolean>;
231
- /**
232
- * Title of a managed database instance
233
- */
234
- title?: pulumi.Input<string>;
235
- /**
236
- * Type of the service
237
- */
238
- type?: pulumi.Input<string>;
239
- /**
240
- * Zone where the instance resides, e.g. `de-fra1`. You can list available zones with `upctl zone list`.
241
- */
242
- zone?: pulumi.Input<string>;
243
- }
244
- /**
245
- * The set of arguments for constructing a ManagedDatabaseRedis resource.
246
- */
247
- export interface ManagedDatabaseRedisArgs {
248
- /**
249
- * Not supported for `redis` databases. Should be left unconfigured.
250
- */
251
- additionalDiskSpaceGib?: pulumi.Input<number>;
252
- /**
253
- * User defined key-value pairs to classify the managed database.
254
- */
255
- labels?: pulumi.Input<{
256
- [key: string]: pulumi.Input<string>;
257
- }>;
258
- /**
259
- * Maintenance window day of week. Lower case weekday name (monday, tuesday, ...)
260
- */
261
- maintenanceWindowDow?: pulumi.Input<string>;
262
- /**
263
- * Maintenance window UTC time in hh:mm:ss format
264
- */
265
- maintenanceWindowTime?: pulumi.Input<string>;
266
- /**
267
- * Name of the service. The name is used as a prefix for the logical hostname. Must be unique within an account
268
- */
269
- name?: pulumi.Input<string>;
270
- /**
271
- * Private networks attached to the managed database
272
- */
273
- networks?: pulumi.Input<pulumi.Input<inputs.ManagedDatabaseRedisNetwork>[]>;
274
- /**
275
- * Service plan to use. This determines how much resources the instance will have. You can list available plans with `upctl database plans redis`.
276
- */
277
- plan: pulumi.Input<string>;
278
- /**
279
- * The administrative power state of the service
280
- */
281
- powered?: pulumi.Input<boolean>;
282
- /**
283
- * Database Engine properties for Redis
284
- */
285
- properties?: pulumi.Input<inputs.ManagedDatabaseRedisProperties>;
286
- /**
287
- * If set to true, prevents the managed service from being powered off, or deleted.
288
- */
289
- terminationProtection?: pulumi.Input<boolean>;
290
- /**
291
- * Title of a managed database instance
292
- */
293
- title: pulumi.Input<string>;
294
- /**
295
- * Zone where the instance resides, e.g. `de-fra1`. You can list available zones with `upctl zone list`.
296
- */
297
- zone: pulumi.Input<string>;
298
- }
@@ -1,132 +0,0 @@
1
- "use strict";
2
- // *** WARNING: this file was generated by pulumi-language-nodejs. ***
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.ManagedDatabaseRedis = void 0;
6
- const pulumi = require("@pulumi/pulumi");
7
- const utilities = require("./utilities");
8
- /**
9
- * > Redis is deprecated in favor of Valkey. Please use Valkey for new key value store instances.
10
- *
11
- * This resource represents Redis managed database. See UpCloud [Managed Databases](https://upcloud.com/products/managed-databases) product page for more details about the service.
12
- *
13
- * ## Example Usage
14
- *
15
- * ```typescript
16
- * import * as pulumi from "@pulumi/pulumi";
17
- * import * as upcloud from "@upcloud/pulumi-upcloud";
18
- *
19
- * // Minimal config
20
- * const example1 = new upcloud.ManagedDatabaseRedis("example_1", {
21
- * name: "redis-1",
22
- * title: "redis-1-example-2",
23
- * plan: "1x1xCPU-2GB",
24
- * zone: "fi-hel2",
25
- * });
26
- * // Service with custom properties
27
- * const example2 = new upcloud.ManagedDatabaseRedis("example_2", {
28
- * name: "redis-2",
29
- * title: "redis-2-example-2",
30
- * plan: "1x1xCPU-2GB",
31
- * zone: "fi-hel1",
32
- * properties: {
33
- * publicAccess: false,
34
- * },
35
- * });
36
- * ```
37
- */
38
- class ManagedDatabaseRedis extends pulumi.CustomResource {
39
- /**
40
- * Get an existing ManagedDatabaseRedis 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 ManagedDatabaseRedis(name, state, { ...opts, id: id });
50
- }
51
- /**
52
- * Returns true if the given object is an instance of ManagedDatabaseRedis. 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'] === ManagedDatabaseRedis.__pulumiType;
60
- }
61
- constructor(name, argsOrState, opts) {
62
- let resourceInputs = {};
63
- opts = opts || {};
64
- if (opts.id) {
65
- const state = argsOrState;
66
- resourceInputs["additionalDiskSpaceGib"] = state?.additionalDiskSpaceGib;
67
- resourceInputs["components"] = state?.components;
68
- resourceInputs["labels"] = state?.labels;
69
- resourceInputs["maintenanceWindowDow"] = state?.maintenanceWindowDow;
70
- resourceInputs["maintenanceWindowTime"] = state?.maintenanceWindowTime;
71
- resourceInputs["name"] = state?.name;
72
- resourceInputs["networks"] = state?.networks;
73
- resourceInputs["nodeStates"] = state?.nodeStates;
74
- resourceInputs["plan"] = state?.plan;
75
- resourceInputs["powered"] = state?.powered;
76
- resourceInputs["primaryDatabase"] = state?.primaryDatabase;
77
- resourceInputs["properties"] = state?.properties;
78
- resourceInputs["serviceHost"] = state?.serviceHost;
79
- resourceInputs["servicePassword"] = state?.servicePassword;
80
- resourceInputs["servicePort"] = state?.servicePort;
81
- resourceInputs["serviceUri"] = state?.serviceUri;
82
- resourceInputs["serviceUsername"] = state?.serviceUsername;
83
- resourceInputs["state"] = state?.state;
84
- resourceInputs["terminationProtection"] = state?.terminationProtection;
85
- resourceInputs["title"] = state?.title;
86
- resourceInputs["type"] = state?.type;
87
- resourceInputs["zone"] = state?.zone;
88
- }
89
- else {
90
- const args = argsOrState;
91
- if (args?.plan === undefined && !opts.urn) {
92
- throw new Error("Missing required property 'plan'");
93
- }
94
- if (args?.title === undefined && !opts.urn) {
95
- throw new Error("Missing required property 'title'");
96
- }
97
- if (args?.zone === undefined && !opts.urn) {
98
- throw new Error("Missing required property 'zone'");
99
- }
100
- resourceInputs["additionalDiskSpaceGib"] = args?.additionalDiskSpaceGib;
101
- resourceInputs["labels"] = args?.labels;
102
- resourceInputs["maintenanceWindowDow"] = args?.maintenanceWindowDow;
103
- resourceInputs["maintenanceWindowTime"] = args?.maintenanceWindowTime;
104
- resourceInputs["name"] = args?.name;
105
- resourceInputs["networks"] = args?.networks;
106
- resourceInputs["plan"] = args?.plan;
107
- resourceInputs["powered"] = args?.powered;
108
- resourceInputs["properties"] = args?.properties;
109
- resourceInputs["terminationProtection"] = args?.terminationProtection;
110
- resourceInputs["title"] = args?.title;
111
- resourceInputs["zone"] = args?.zone;
112
- resourceInputs["components"] = undefined /*out*/;
113
- resourceInputs["nodeStates"] = undefined /*out*/;
114
- resourceInputs["primaryDatabase"] = undefined /*out*/;
115
- resourceInputs["serviceHost"] = undefined /*out*/;
116
- resourceInputs["servicePassword"] = undefined /*out*/;
117
- resourceInputs["servicePort"] = undefined /*out*/;
118
- resourceInputs["serviceUri"] = undefined /*out*/;
119
- resourceInputs["serviceUsername"] = undefined /*out*/;
120
- resourceInputs["state"] = undefined /*out*/;
121
- resourceInputs["type"] = undefined /*out*/;
122
- }
123
- opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
124
- const secretOpts = { additionalSecretOutputs: ["servicePassword", "serviceUri"] };
125
- opts = pulumi.mergeOptions(opts, secretOpts);
126
- super(ManagedDatabaseRedis.__pulumiType, name, resourceInputs, opts);
127
- }
128
- }
129
- exports.ManagedDatabaseRedis = ManagedDatabaseRedis;
130
- /** @internal */
131
- ManagedDatabaseRedis.__pulumiType = 'upcloud:index/managedDatabaseRedis:ManagedDatabaseRedis';
132
- //# sourceMappingURL=managedDatabaseRedis.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"managedDatabaseRedis.js","sourceRoot":"","sources":["../managedDatabaseRedis.ts"],"names":[],"mappings":"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"}