@pulumiverse/scaleway 1.25.0 → 1.26.0-alpha.1743166124

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 (144) hide show
  1. package/appleSiliconServer.d.ts +28 -0
  2. package/appleSiliconServer.js +8 -0
  3. package/appleSiliconServer.js.map +1 -1
  4. package/applesilicon/server.d.ts +28 -0
  5. package/applesilicon/server.js +8 -0
  6. package/applesilicon/server.js.map +1 -1
  7. package/domain/index.d.ts +3 -0
  8. package/domain/index.js +6 -1
  9. package/domain/index.js.map +1 -1
  10. package/domain/registration.d.ts +275 -0
  11. package/domain/registration.js +193 -0
  12. package/domain/registration.js.map +1 -0
  13. package/edgeServicesBackendStage.d.ts +171 -0
  14. package/edgeServicesBackendStage.js +131 -0
  15. package/edgeServicesBackendStage.js.map +1 -0
  16. package/edgeServicesCacheStage.d.ts +153 -0
  17. package/edgeServicesCacheStage.js +93 -0
  18. package/edgeServicesCacheStage.js.map +1 -0
  19. package/edgeServicesDnsStage.d.ts +159 -0
  20. package/edgeServicesDnsStage.js +95 -0
  21. package/edgeServicesDnsStage.js.map +1 -0
  22. package/edgeServicesHeadStage.d.ts +96 -0
  23. package/edgeServicesHeadStage.js +90 -0
  24. package/edgeServicesHeadStage.js.map +1 -0
  25. package/edgeServicesPipeline.d.ts +160 -0
  26. package/edgeServicesPipeline.js +123 -0
  27. package/edgeServicesPipeline.js.map +1 -0
  28. package/edgeServicesPlan.d.ts +84 -0
  29. package/edgeServicesPlan.js +75 -0
  30. package/edgeServicesPlan.js.map +1 -0
  31. package/edgeServicesRouteStage.d.ts +142 -0
  32. package/edgeServicesRouteStage.js +102 -0
  33. package/edgeServicesRouteStage.js.map +1 -0
  34. package/edgeServicesTlsStage.d.ts +176 -0
  35. package/edgeServicesTlsStage.js +110 -0
  36. package/edgeServicesTlsStage.js.map +1 -0
  37. package/edgeServicesWafStage.d.ts +140 -0
  38. package/edgeServicesWafStage.js +95 -0
  39. package/edgeServicesWafStage.js.map +1 -0
  40. package/elasticmetal/ip.d.ts +6 -3
  41. package/elasticmetal/ip.js +3 -0
  42. package/elasticmetal/ip.js.map +1 -1
  43. package/flexibleIp.d.ts +6 -3
  44. package/flexibleIp.js +3 -0
  45. package/flexibleIp.js.map +1 -1
  46. package/getLbFrontend.d.ts +1 -0
  47. package/getLbFrontend.js.map +1 -1
  48. package/getLbRoute.d.ts +1 -0
  49. package/getLbRoute.js.map +1 -1
  50. package/getSecret.d.ts +1 -0
  51. package/getSecret.js.map +1 -1
  52. package/getVpcPublicGateway.d.ts +3 -0
  53. package/getVpcPublicGateway.js.map +1 -1
  54. package/getVpcPublicGatewayDhcp.d.ts +8 -0
  55. package/getVpcPublicGatewayDhcp.js +8 -0
  56. package/getVpcPublicGatewayDhcp.js.map +1 -1
  57. package/getVpcPublicGatewayDhcpReservation.d.ts +8 -0
  58. package/getVpcPublicGatewayDhcpReservation.js +8 -0
  59. package/getVpcPublicGatewayDhcpReservation.js.map +1 -1
  60. package/index.d.ts +27 -0
  61. package/index.js +52 -7
  62. package/index.js.map +1 -1
  63. package/loadbalancerBackend.d.ts +1 -1
  64. package/loadbalancerBackend.js +1 -1
  65. package/loadbalancerFrontend.d.ts +12 -0
  66. package/loadbalancerFrontend.js +2 -0
  67. package/loadbalancerFrontend.js.map +1 -1
  68. package/loadbalancerRoute.d.ts +12 -0
  69. package/loadbalancerRoute.js +2 -0
  70. package/loadbalancerRoute.js.map +1 -1
  71. package/loadbalancers/backend.d.ts +1 -1
  72. package/loadbalancers/backend.js +1 -1
  73. package/loadbalancers/frontend.d.ts +12 -0
  74. package/loadbalancers/frontend.js +2 -0
  75. package/loadbalancers/frontend.js.map +1 -1
  76. package/loadbalancers/getFrontend.d.ts +1 -0
  77. package/loadbalancers/getFrontend.js.map +1 -1
  78. package/loadbalancers/getRoute.d.ts +1 -0
  79. package/loadbalancers/getRoute.js.map +1 -1
  80. package/loadbalancers/route.d.ts +12 -0
  81. package/loadbalancers/route.js +2 -0
  82. package/loadbalancers/route.js.map +1 -1
  83. package/network/acl.d.ts +138 -0
  84. package/network/acl.js +106 -0
  85. package/network/acl.js.map +1 -0
  86. package/network/gatewayNetwork.d.ts +54 -64
  87. package/network/gatewayNetwork.js +2 -48
  88. package/network/gatewayNetwork.js.map +1 -1
  89. package/network/getPublicGateway.d.ts +3 -0
  90. package/network/getPublicGateway.js.map +1 -1
  91. package/network/getPublicGatewayDhcp.d.ts +8 -0
  92. package/network/getPublicGatewayDhcp.js +8 -0
  93. package/network/getPublicGatewayDhcp.js.map +1 -1
  94. package/network/getPublicGatewayDhcpReservation.d.ts +8 -0
  95. package/network/getPublicGatewayDhcpReservation.js +8 -0
  96. package/network/getPublicGatewayDhcpReservation.js.map +1 -1
  97. package/network/index.d.ts +3 -0
  98. package/network/index.js +6 -1
  99. package/network/index.js.map +1 -1
  100. package/network/publicGateway.d.ts +33 -5
  101. package/network/publicGateway.js +7 -1
  102. package/network/publicGateway.js.map +1 -1
  103. package/network/publicGatewayDhcp.d.ts +4 -0
  104. package/network/publicGatewayDhcp.js +4 -0
  105. package/network/publicGatewayDhcp.js.map +1 -1
  106. package/network/publicGatewayDhcpReservation.d.ts +4 -0
  107. package/network/publicGatewayDhcpReservation.js +4 -0
  108. package/network/publicGatewayDhcpReservation.js.map +1 -1
  109. package/package.json +2 -2
  110. package/secret.d.ts +2 -0
  111. package/secret.js +2 -0
  112. package/secret.js.map +1 -1
  113. package/secrets/getSecret.d.ts +1 -0
  114. package/secrets/getSecret.js.map +1 -1
  115. package/secrets/secret.d.ts +2 -0
  116. package/secrets/secret.js +2 -0
  117. package/secrets/secret.js.map +1 -1
  118. package/tem/blockedList.d.ts +139 -0
  119. package/tem/blockedList.js +99 -0
  120. package/tem/blockedList.js.map +1 -0
  121. package/tem/domain.d.ts +3 -0
  122. package/tem/domain.js.map +1 -1
  123. package/tem/getOfferSubscription.d.ts +102 -0
  124. package/tem/getOfferSubscription.js +52 -0
  125. package/tem/getOfferSubscription.js.map +1 -0
  126. package/tem/index.d.ts +6 -0
  127. package/tem/index.js +9 -1
  128. package/tem/index.js.map +1 -1
  129. package/temDomain.d.ts +3 -0
  130. package/temDomain.js.map +1 -1
  131. package/types/input.d.ts +718 -0
  132. package/types/output.d.ts +790 -2
  133. package/vpcGatewayNetwork.d.ts +54 -64
  134. package/vpcGatewayNetwork.js +2 -48
  135. package/vpcGatewayNetwork.js.map +1 -1
  136. package/vpcPublicGateway.d.ts +33 -5
  137. package/vpcPublicGateway.js +7 -1
  138. package/vpcPublicGateway.js.map +1 -1
  139. package/vpcPublicGatewayDhcp.d.ts +4 -0
  140. package/vpcPublicGatewayDhcp.js +4 -0
  141. package/vpcPublicGatewayDhcp.js.map +1 -1
  142. package/vpcPublicGatewayDhcpReservation.d.ts +4 -0
  143. package/vpcPublicGatewayDhcpReservation.js +4 -0
  144. package/vpcPublicGatewayDhcpReservation.js.map +1 -1
@@ -0,0 +1,193 @@
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.Registration = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * The `scaleway.domain.Registration` resource allows you to purchase and manage domain registrations with Scaleway. Using this resource you can register one or more domains for a specified duration, configure auto-renewal and DNSSEC options, and set contact information. You can supply an owner contact either by providing an existing contact ID or by specifying the complete contact details. The resource automatically returns additional contact information (administrative and technical) as provided by the Scaleway API.
10
+ *
11
+ * Refer to the [Domains and DNS documentation](https://www.scaleway.com/en/docs/network/domains-and-dns/) and the [API documentation](https://developers.scaleway.com/) for more details.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ### Purchase a Single Domain
16
+ *
17
+ * The following example purchases a domain with a one-year registration period and specifies the owner contact details. Administrative and technical contacts are returned by the API.
18
+ *
19
+ * ```typescript
20
+ * import * as pulumi from "@pulumi/pulumi";
21
+ * import * as scaleway from "@pulumiverse/scaleway";
22
+ *
23
+ * const test = new scaleway.domain.Registration("test", {
24
+ * domainNames: ["example.com"],
25
+ * durationInYears: 1,
26
+ * ownerContact: {
27
+ * legalForm: "individual",
28
+ * firstname: "John",
29
+ * lastname: "DOE",
30
+ * email: "john.doe@example.com",
31
+ * phoneNumber: "+1.23456789",
32
+ * addressLine1: "123 Main Street",
33
+ * city: "Paris",
34
+ * zip: "75001",
35
+ * country: "FR",
36
+ * vatIdentificationCode: "FR12345678901",
37
+ * companyIdentificationCode: "123456789",
38
+ * },
39
+ * });
40
+ * ```
41
+ *
42
+ * ### Update Domain Settings
43
+ *
44
+ * You can update the resource to enable auto-renewal and DNSSEC:
45
+ *
46
+ * ```typescript
47
+ * import * as pulumi from "@pulumi/pulumi";
48
+ * import * as scaleway from "@pulumiverse/scaleway";
49
+ *
50
+ * const test = new scaleway.domain.Registration("test", {
51
+ * domainNames: ["example.com"],
52
+ * durationInYears: 1,
53
+ * ownerContact: {
54
+ * legalForm: "individual",
55
+ * firstname: "John",
56
+ * lastname: "DOE",
57
+ * email: "john.doe@example.com",
58
+ * phoneNumber: "+1.23456789",
59
+ * addressLine1: "123 Main Street",
60
+ * city: "Paris",
61
+ * zip: "75001",
62
+ * country: "FR",
63
+ * vatIdentificationCode: "FR12345678901",
64
+ * companyIdentificationCode: "123456789",
65
+ * },
66
+ * autoRenew: true,
67
+ * dnssec: true,
68
+ * });
69
+ * ```
70
+ *
71
+ * ### Purchase Multiple Domains
72
+ *
73
+ * The following example registers several domains in one go:
74
+ *
75
+ * ```typescript
76
+ * import * as pulumi from "@pulumi/pulumi";
77
+ * import * as scaleway from "@pulumiverse/scaleway";
78
+ *
79
+ * const multi = new scaleway.domain.Registration("multi", {
80
+ * domainNames: [
81
+ * "domain1.com",
82
+ * "domain2.com",
83
+ * "domain3.com",
84
+ * ],
85
+ * durationInYears: 1,
86
+ * ownerContact: {
87
+ * legalForm: "individual",
88
+ * firstname: "John",
89
+ * lastname: "DOE",
90
+ * email: "john.doe@example.com",
91
+ * phoneNumber: "+1.23456789",
92
+ * addressLine1: "123 Main Street",
93
+ * city: "Paris",
94
+ * zip: "75001",
95
+ * country: "FR",
96
+ * vatIdentificationCode: "FR12345678901",
97
+ * companyIdentificationCode: "123456789",
98
+ * },
99
+ * });
100
+ * ```
101
+ *
102
+ * ## Contact Blocks
103
+ *
104
+ * Each contact block supports the following attributes:
105
+ *
106
+ * - `legalForm` (Required, String): Legal form of the contact.
107
+ * - `firstname` (Required, String): First name.
108
+ * - `lastname` (Required, String): Last name.
109
+ * - `companyName` (Optional, String): Company name.
110
+ * - `email` (Required, String): Primary email.
111
+ * - `phoneNumber` (Required, String): Primary phone number.
112
+ * - `addressLine1` (Required, String): Primary address.
113
+ * - `zip` (Required, String): Postal code.
114
+ * - `city` (Required, String): City.
115
+ * - `country` (Required, String): Country code (ISO format).
116
+ * - `vatIdentificationCode` (Required, String): VAT identification code.
117
+ * - `companyIdentificationCode` (Required, String): Company identification code.
118
+ *
119
+ * ## Import
120
+ *
121
+ * To import an existing domain registration, use:
122
+ *
123
+ * bash
124
+ *
125
+ * ```sh
126
+ * $ pulumi import scaleway:domain/registration:Registration test <project_id>/<task_id>
127
+ * ```
128
+ */
129
+ class Registration extends pulumi.CustomResource {
130
+ /**
131
+ * Get an existing Registration resource's state with the given name, ID, and optional extra
132
+ * properties used to qualify the lookup.
133
+ *
134
+ * @param name The _unique_ name of the resulting resource.
135
+ * @param id The _unique_ provider ID of the resource to lookup.
136
+ * @param state Any extra arguments used during the lookup.
137
+ * @param opts Optional settings to control the behavior of the CustomResource.
138
+ */
139
+ static get(name, id, state, opts) {
140
+ return new Registration(name, state, Object.assign(Object.assign({}, opts), { id: id }));
141
+ }
142
+ /**
143
+ * Returns true if the given object is an instance of Registration. This is designed to work even
144
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
145
+ */
146
+ static isInstance(obj) {
147
+ if (obj === undefined || obj === null) {
148
+ return false;
149
+ }
150
+ return obj['__pulumiType'] === Registration.__pulumiType;
151
+ }
152
+ constructor(name, argsOrState, opts) {
153
+ let resourceInputs = {};
154
+ opts = opts || {};
155
+ if (opts.id) {
156
+ const state = argsOrState;
157
+ resourceInputs["administrativeContacts"] = state ? state.administrativeContacts : undefined;
158
+ resourceInputs["autoRenew"] = state ? state.autoRenew : undefined;
159
+ resourceInputs["dnssec"] = state ? state.dnssec : undefined;
160
+ resourceInputs["domainNames"] = state ? state.domainNames : undefined;
161
+ resourceInputs["dsRecords"] = state ? state.dsRecords : undefined;
162
+ resourceInputs["durationInYears"] = state ? state.durationInYears : undefined;
163
+ resourceInputs["ownerContact"] = state ? state.ownerContact : undefined;
164
+ resourceInputs["ownerContactId"] = state ? state.ownerContactId : undefined;
165
+ resourceInputs["projectId"] = state ? state.projectId : undefined;
166
+ resourceInputs["taskId"] = state ? state.taskId : undefined;
167
+ resourceInputs["technicalContacts"] = state ? state.technicalContacts : undefined;
168
+ }
169
+ else {
170
+ const args = argsOrState;
171
+ if ((!args || args.domainNames === undefined) && !opts.urn) {
172
+ throw new Error("Missing required property 'domainNames'");
173
+ }
174
+ resourceInputs["autoRenew"] = args ? args.autoRenew : undefined;
175
+ resourceInputs["dnssec"] = args ? args.dnssec : undefined;
176
+ resourceInputs["domainNames"] = args ? args.domainNames : undefined;
177
+ resourceInputs["durationInYears"] = args ? args.durationInYears : undefined;
178
+ resourceInputs["ownerContact"] = args ? args.ownerContact : undefined;
179
+ resourceInputs["ownerContactId"] = args ? args.ownerContactId : undefined;
180
+ resourceInputs["projectId"] = args ? args.projectId : undefined;
181
+ resourceInputs["administrativeContacts"] = undefined /*out*/;
182
+ resourceInputs["dsRecords"] = undefined /*out*/;
183
+ resourceInputs["taskId"] = undefined /*out*/;
184
+ resourceInputs["technicalContacts"] = undefined /*out*/;
185
+ }
186
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
187
+ super(Registration.__pulumiType, name, resourceInputs, opts);
188
+ }
189
+ }
190
+ exports.Registration = Registration;
191
+ /** @internal */
192
+ Registration.__pulumiType = 'scaleway:domain/registration:Registration';
193
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../domain/registration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,171 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * Creates and manages Scaleway Edge Services Backend Stages.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ### With object backend
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as scaleway from "@pulumiverse/scaleway";
14
+ *
15
+ * const main = new scaleway.object.Bucket("main", {
16
+ * name: "my-bucket-name",
17
+ * tags: {
18
+ * foo: "bar",
19
+ * },
20
+ * });
21
+ * const mainEdgeServicesPipeline = new scaleway.EdgeServicesPipeline("main", {name: "my-pipeline"});
22
+ * const mainEdgeServicesBackendStage = new scaleway.EdgeServicesBackendStage("main", {
23
+ * pipelineId: mainEdgeServicesPipeline.id,
24
+ * s3BackendConfig: {
25
+ * bucketName: main.name,
26
+ * bucketRegion: "fr-par",
27
+ * },
28
+ * });
29
+ * ```
30
+ *
31
+ * ### With LB backend
32
+ *
33
+ * ```typescript
34
+ * import * as pulumi from "@pulumi/pulumi";
35
+ * import * as scaleway from "@pulumiverse/scaleway";
36
+ *
37
+ * const main = new scaleway.loadbalancers.LoadBalancer("main", {
38
+ * ipIds: [mainScalewayLbIp.id],
39
+ * zone: "fr-par-1",
40
+ * type: "LB-S",
41
+ * });
42
+ * const mainFrontend = new scaleway.loadbalancers.Frontend("main", {
43
+ * lbId: main.id,
44
+ * backendId: mainScalewayLbBackend.id,
45
+ * name: "frontend01",
46
+ * inboundPort: 443,
47
+ * certificateIds: [cert01.id],
48
+ * });
49
+ * const mainEdgeServicesPipeline = new scaleway.EdgeServicesPipeline("main", {name: "my-pipeline"});
50
+ * const mainEdgeServicesBackendStage = new scaleway.EdgeServicesBackendStage("main", {
51
+ * pipelineId: mainEdgeServicesPipeline.id,
52
+ * lbBackendConfigs: [{
53
+ * lbConfig: {
54
+ * id: main.id,
55
+ * frontendId: id,
56
+ * isSsl: true,
57
+ * zone: "fr-par-1",
58
+ * },
59
+ * }],
60
+ * });
61
+ * ```
62
+ *
63
+ * ## Import
64
+ *
65
+ * Backend stages can be imported using the `{id}`, e.g.
66
+ *
67
+ * bash
68
+ *
69
+ * ```sh
70
+ * $ pulumi import scaleway:index/edgeServicesBackendStage:EdgeServicesBackendStage basic 11111111-1111-1111-1111-111111111111
71
+ * ```
72
+ */
73
+ export declare class EdgeServicesBackendStage extends pulumi.CustomResource {
74
+ /**
75
+ * Get an existing EdgeServicesBackendStage resource's state with the given name, ID, and optional extra
76
+ * properties used to qualify the lookup.
77
+ *
78
+ * @param name The _unique_ name of the resulting resource.
79
+ * @param id The _unique_ provider ID of the resource to lookup.
80
+ * @param state Any extra arguments used during the lookup.
81
+ * @param opts Optional settings to control the behavior of the CustomResource.
82
+ */
83
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EdgeServicesBackendStageState, opts?: pulumi.CustomResourceOptions): EdgeServicesBackendStage;
84
+ /**
85
+ * Returns true if the given object is an instance of EdgeServicesBackendStage. This is designed to work even
86
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
87
+ */
88
+ static isInstance(obj: any): obj is EdgeServicesBackendStage;
89
+ /**
90
+ * The date and time of the creation of the backend stage.
91
+ */
92
+ readonly createdAt: pulumi.Output<string>;
93
+ /**
94
+ * The Scaleway Load Balancer linked to the backend stage.
95
+ */
96
+ readonly lbBackendConfigs: pulumi.Output<outputs.EdgeServicesBackendStageLbBackendConfig[] | undefined>;
97
+ /**
98
+ * The ID of the pipeline.
99
+ */
100
+ readonly pipelineId: pulumi.Output<string>;
101
+ /**
102
+ * `projectId`) The ID of the project the backend stage is associated with.
103
+ */
104
+ readonly projectId: pulumi.Output<string>;
105
+ /**
106
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
107
+ */
108
+ readonly s3BackendConfig: pulumi.Output<outputs.EdgeServicesBackendStageS3BackendConfig | undefined>;
109
+ /**
110
+ * The date and time of the last update of the backend stage.
111
+ */
112
+ readonly updatedAt: pulumi.Output<string>;
113
+ /**
114
+ * Create a EdgeServicesBackendStage resource with the given unique name, arguments, and options.
115
+ *
116
+ * @param name The _unique_ name of the resource.
117
+ * @param args The arguments to use to populate this resource's properties.
118
+ * @param opts A bag of options that control this resource's behavior.
119
+ */
120
+ constructor(name: string, args: EdgeServicesBackendStageArgs, opts?: pulumi.CustomResourceOptions);
121
+ }
122
+ /**
123
+ * Input properties used for looking up and filtering EdgeServicesBackendStage resources.
124
+ */
125
+ export interface EdgeServicesBackendStageState {
126
+ /**
127
+ * The date and time of the creation of the backend stage.
128
+ */
129
+ createdAt?: pulumi.Input<string>;
130
+ /**
131
+ * The Scaleway Load Balancer linked to the backend stage.
132
+ */
133
+ lbBackendConfigs?: pulumi.Input<pulumi.Input<inputs.EdgeServicesBackendStageLbBackendConfig>[]>;
134
+ /**
135
+ * The ID of the pipeline.
136
+ */
137
+ pipelineId?: pulumi.Input<string>;
138
+ /**
139
+ * `projectId`) The ID of the project the backend stage is associated with.
140
+ */
141
+ projectId?: pulumi.Input<string>;
142
+ /**
143
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
144
+ */
145
+ s3BackendConfig?: pulumi.Input<inputs.EdgeServicesBackendStageS3BackendConfig>;
146
+ /**
147
+ * The date and time of the last update of the backend stage.
148
+ */
149
+ updatedAt?: pulumi.Input<string>;
150
+ }
151
+ /**
152
+ * The set of arguments for constructing a EdgeServicesBackendStage resource.
153
+ */
154
+ export interface EdgeServicesBackendStageArgs {
155
+ /**
156
+ * The Scaleway Load Balancer linked to the backend stage.
157
+ */
158
+ lbBackendConfigs?: pulumi.Input<pulumi.Input<inputs.EdgeServicesBackendStageLbBackendConfig>[]>;
159
+ /**
160
+ * The ID of the pipeline.
161
+ */
162
+ pipelineId: pulumi.Input<string>;
163
+ /**
164
+ * `projectId`) The ID of the project the backend stage is associated with.
165
+ */
166
+ projectId?: pulumi.Input<string>;
167
+ /**
168
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
169
+ */
170
+ s3BackendConfig?: pulumi.Input<inputs.EdgeServicesBackendStageS3BackendConfig>;
171
+ }
@@ -0,0 +1,131 @@
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.EdgeServicesBackendStage = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * Creates and manages Scaleway Edge Services Backend Stages.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ### With object backend
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as scaleway from "@pulumiverse/scaleway";
18
+ *
19
+ * const main = new scaleway.object.Bucket("main", {
20
+ * name: "my-bucket-name",
21
+ * tags: {
22
+ * foo: "bar",
23
+ * },
24
+ * });
25
+ * const mainEdgeServicesPipeline = new scaleway.EdgeServicesPipeline("main", {name: "my-pipeline"});
26
+ * const mainEdgeServicesBackendStage = new scaleway.EdgeServicesBackendStage("main", {
27
+ * pipelineId: mainEdgeServicesPipeline.id,
28
+ * s3BackendConfig: {
29
+ * bucketName: main.name,
30
+ * bucketRegion: "fr-par",
31
+ * },
32
+ * });
33
+ * ```
34
+ *
35
+ * ### With LB backend
36
+ *
37
+ * ```typescript
38
+ * import * as pulumi from "@pulumi/pulumi";
39
+ * import * as scaleway from "@pulumiverse/scaleway";
40
+ *
41
+ * const main = new scaleway.loadbalancers.LoadBalancer("main", {
42
+ * ipIds: [mainScalewayLbIp.id],
43
+ * zone: "fr-par-1",
44
+ * type: "LB-S",
45
+ * });
46
+ * const mainFrontend = new scaleway.loadbalancers.Frontend("main", {
47
+ * lbId: main.id,
48
+ * backendId: mainScalewayLbBackend.id,
49
+ * name: "frontend01",
50
+ * inboundPort: 443,
51
+ * certificateIds: [cert01.id],
52
+ * });
53
+ * const mainEdgeServicesPipeline = new scaleway.EdgeServicesPipeline("main", {name: "my-pipeline"});
54
+ * const mainEdgeServicesBackendStage = new scaleway.EdgeServicesBackendStage("main", {
55
+ * pipelineId: mainEdgeServicesPipeline.id,
56
+ * lbBackendConfigs: [{
57
+ * lbConfig: {
58
+ * id: main.id,
59
+ * frontendId: id,
60
+ * isSsl: true,
61
+ * zone: "fr-par-1",
62
+ * },
63
+ * }],
64
+ * });
65
+ * ```
66
+ *
67
+ * ## Import
68
+ *
69
+ * Backend stages can be imported using the `{id}`, e.g.
70
+ *
71
+ * bash
72
+ *
73
+ * ```sh
74
+ * $ pulumi import scaleway:index/edgeServicesBackendStage:EdgeServicesBackendStage basic 11111111-1111-1111-1111-111111111111
75
+ * ```
76
+ */
77
+ class EdgeServicesBackendStage extends pulumi.CustomResource {
78
+ /**
79
+ * Get an existing EdgeServicesBackendStage resource's state with the given name, ID, and optional extra
80
+ * properties used to qualify the lookup.
81
+ *
82
+ * @param name The _unique_ name of the resulting resource.
83
+ * @param id The _unique_ provider ID of the resource to lookup.
84
+ * @param state Any extra arguments used during the lookup.
85
+ * @param opts Optional settings to control the behavior of the CustomResource.
86
+ */
87
+ static get(name, id, state, opts) {
88
+ return new EdgeServicesBackendStage(name, state, Object.assign(Object.assign({}, opts), { id: id }));
89
+ }
90
+ /**
91
+ * Returns true if the given object is an instance of EdgeServicesBackendStage. This is designed to work even
92
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
93
+ */
94
+ static isInstance(obj) {
95
+ if (obj === undefined || obj === null) {
96
+ return false;
97
+ }
98
+ return obj['__pulumiType'] === EdgeServicesBackendStage.__pulumiType;
99
+ }
100
+ constructor(name, argsOrState, opts) {
101
+ let resourceInputs = {};
102
+ opts = opts || {};
103
+ if (opts.id) {
104
+ const state = argsOrState;
105
+ resourceInputs["createdAt"] = state ? state.createdAt : undefined;
106
+ resourceInputs["lbBackendConfigs"] = state ? state.lbBackendConfigs : undefined;
107
+ resourceInputs["pipelineId"] = state ? state.pipelineId : undefined;
108
+ resourceInputs["projectId"] = state ? state.projectId : undefined;
109
+ resourceInputs["s3BackendConfig"] = state ? state.s3BackendConfig : undefined;
110
+ resourceInputs["updatedAt"] = state ? state.updatedAt : undefined;
111
+ }
112
+ else {
113
+ const args = argsOrState;
114
+ if ((!args || args.pipelineId === undefined) && !opts.urn) {
115
+ throw new Error("Missing required property 'pipelineId'");
116
+ }
117
+ resourceInputs["lbBackendConfigs"] = args ? args.lbBackendConfigs : undefined;
118
+ resourceInputs["pipelineId"] = args ? args.pipelineId : undefined;
119
+ resourceInputs["projectId"] = args ? args.projectId : undefined;
120
+ resourceInputs["s3BackendConfig"] = args ? args.s3BackendConfig : undefined;
121
+ resourceInputs["createdAt"] = undefined /*out*/;
122
+ resourceInputs["updatedAt"] = undefined /*out*/;
123
+ }
124
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
125
+ super(EdgeServicesBackendStage.__pulumiType, name, resourceInputs, opts);
126
+ }
127
+ }
128
+ exports.EdgeServicesBackendStage = EdgeServicesBackendStage;
129
+ /** @internal */
130
+ EdgeServicesBackendStage.__pulumiType = 'scaleway:index/edgeServicesBackendStage:EdgeServicesBackendStage';
131
+ //# sourceMappingURL=edgeServicesBackendStage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edgeServicesBackendStage.js","sourceRoot":"","sources":["../edgeServicesBackendStage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * Creates and manages Scaleway Edge Services Cache Stages.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ### Basic
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as scaleway from "@pulumiverse/scaleway";
14
+ *
15
+ * const main = new scaleway.EdgeServicesCacheStage("main", {
16
+ * pipelineId: mainScalewayEdgeServicesPipeline.id,
17
+ * backendStageId: mainScalewayEdgeServicesBackendStage.id,
18
+ * });
19
+ * ```
20
+ *
21
+ * ## Import
22
+ *
23
+ * Cache stages can be imported using the `{id}`, e.g.
24
+ *
25
+ * bash
26
+ *
27
+ * ```sh
28
+ * $ pulumi import scaleway:index/edgeServicesCacheStage:EdgeServicesCacheStage basic 11111111-1111-1111-1111-111111111111
29
+ * ```
30
+ */
31
+ export declare class EdgeServicesCacheStage extends pulumi.CustomResource {
32
+ /**
33
+ * Get an existing EdgeServicesCacheStage resource's state with the given name, ID, and optional extra
34
+ * properties used to qualify the lookup.
35
+ *
36
+ * @param name The _unique_ name of the resulting resource.
37
+ * @param id The _unique_ provider ID of the resource to lookup.
38
+ * @param state Any extra arguments used during the lookup.
39
+ * @param opts Optional settings to control the behavior of the CustomResource.
40
+ */
41
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EdgeServicesCacheStageState, opts?: pulumi.CustomResourceOptions): EdgeServicesCacheStage;
42
+ /**
43
+ * Returns true if the given object is an instance of EdgeServicesCacheStage. This is designed to work even
44
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
45
+ */
46
+ static isInstance(obj: any): obj is EdgeServicesCacheStage;
47
+ /**
48
+ * The backend stage ID the cache stage will be linked to.
49
+ */
50
+ readonly backendStageId: pulumi.Output<string>;
51
+ /**
52
+ * The date and time of the creation of the cache stage.
53
+ */
54
+ readonly createdAt: pulumi.Output<string>;
55
+ /**
56
+ * The Time To Live (TTL) in seconds. Defines how long content is cached.
57
+ */
58
+ readonly fallbackTtl: pulumi.Output<number | undefined>;
59
+ /**
60
+ * The ID of the pipeline.
61
+ */
62
+ readonly pipelineId: pulumi.Output<string>;
63
+ /**
64
+ * `projectId`) The ID of the project the cache stage is associated with.
65
+ */
66
+ readonly projectId: pulumi.Output<string>;
67
+ /**
68
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
69
+ */
70
+ readonly purgeRequests: pulumi.Output<outputs.EdgeServicesCacheStagePurgeRequest[] | undefined>;
71
+ /**
72
+ * Trigger a refresh of the cache by changing this field's value.
73
+ */
74
+ readonly refreshCache: pulumi.Output<string | undefined>;
75
+ /**
76
+ * The date and time of the last update of the cache stage.
77
+ */
78
+ readonly updatedAt: pulumi.Output<string>;
79
+ /**
80
+ * Create a EdgeServicesCacheStage resource with the given unique name, arguments, and options.
81
+ *
82
+ * @param name The _unique_ name of the resource.
83
+ * @param args The arguments to use to populate this resource's properties.
84
+ * @param opts A bag of options that control this resource's behavior.
85
+ */
86
+ constructor(name: string, args: EdgeServicesCacheStageArgs, opts?: pulumi.CustomResourceOptions);
87
+ }
88
+ /**
89
+ * Input properties used for looking up and filtering EdgeServicesCacheStage resources.
90
+ */
91
+ export interface EdgeServicesCacheStageState {
92
+ /**
93
+ * The backend stage ID the cache stage will be linked to.
94
+ */
95
+ backendStageId?: pulumi.Input<string>;
96
+ /**
97
+ * The date and time of the creation of the cache stage.
98
+ */
99
+ createdAt?: pulumi.Input<string>;
100
+ /**
101
+ * The Time To Live (TTL) in seconds. Defines how long content is cached.
102
+ */
103
+ fallbackTtl?: pulumi.Input<number>;
104
+ /**
105
+ * The ID of the pipeline.
106
+ */
107
+ pipelineId?: pulumi.Input<string>;
108
+ /**
109
+ * `projectId`) The ID of the project the cache stage is associated with.
110
+ */
111
+ projectId?: pulumi.Input<string>;
112
+ /**
113
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
114
+ */
115
+ purgeRequests?: pulumi.Input<pulumi.Input<inputs.EdgeServicesCacheStagePurgeRequest>[]>;
116
+ /**
117
+ * Trigger a refresh of the cache by changing this field's value.
118
+ */
119
+ refreshCache?: pulumi.Input<string>;
120
+ /**
121
+ * The date and time of the last update of the cache stage.
122
+ */
123
+ updatedAt?: pulumi.Input<string>;
124
+ }
125
+ /**
126
+ * The set of arguments for constructing a EdgeServicesCacheStage resource.
127
+ */
128
+ export interface EdgeServicesCacheStageArgs {
129
+ /**
130
+ * The backend stage ID the cache stage will be linked to.
131
+ */
132
+ backendStageId?: pulumi.Input<string>;
133
+ /**
134
+ * The Time To Live (TTL) in seconds. Defines how long content is cached.
135
+ */
136
+ fallbackTtl?: pulumi.Input<number>;
137
+ /**
138
+ * The ID of the pipeline.
139
+ */
140
+ pipelineId: pulumi.Input<string>;
141
+ /**
142
+ * `projectId`) The ID of the project the cache stage is associated with.
143
+ */
144
+ projectId?: pulumi.Input<string>;
145
+ /**
146
+ * The Scaleway Object Storage origin bucket (S3) linked to the backend stage.
147
+ */
148
+ purgeRequests?: pulumi.Input<pulumi.Input<inputs.EdgeServicesCacheStagePurgeRequest>[]>;
149
+ /**
150
+ * Trigger a refresh of the cache by changing this field's value.
151
+ */
152
+ refreshCache?: pulumi.Input<string>;
153
+ }