@pulumiverse/scaleway 1.41.0 → 1.41.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.
- package/edgeServicesBackendStage.d.ts +9 -6
- package/edgeServicesBackendStage.js +11 -6
- package/edgeServicesBackendStage.js.map +1 -1
- package/edgeServicesCacheStage.d.ts +5 -2
- package/edgeServicesCacheStage.js +7 -2
- package/edgeServicesCacheStage.js.map +1 -1
- package/edgeServicesDnsStage.d.ts +4 -1
- package/edgeServicesDnsStage.js +6 -1
- package/edgeServicesDnsStage.js.map +1 -1
- package/edgeServicesHeadStage.d.ts +7 -4
- package/edgeServicesHeadStage.js +9 -4
- package/edgeServicesHeadStage.js.map +1 -1
- package/edgeServicesPipeline.d.ts +19 -16
- package/edgeServicesPipeline.js +21 -16
- package/edgeServicesPipeline.js.map +1 -1
- package/edgeServicesPlan.d.ts +4 -1
- package/edgeServicesPlan.js +6 -1
- package/edgeServicesPlan.js.map +1 -1
- package/edgeServicesRouteStage.d.ts +4 -1
- package/edgeServicesRouteStage.js +6 -1
- package/edgeServicesRouteStage.js.map +1 -1
- package/edgeServicesTlsStage.d.ts +5 -2
- package/edgeServicesTlsStage.js +7 -2
- package/edgeServicesTlsStage.js.map +1 -1
- package/edgeServicesWafStage.d.ts +4 -1
- package/edgeServicesWafStage.js +6 -1
- package/edgeServicesWafStage.js.map +1 -1
- package/edgeservices/backendStage.d.ts +171 -0
- package/edgeservices/backendStage.js +133 -0
- package/edgeservices/backendStage.js.map +1 -0
- package/edgeservices/cacheStage.d.ts +205 -0
- package/edgeservices/cacheStage.js +117 -0
- package/edgeservices/cacheStage.js.map +1 -0
- package/edgeservices/dnsStage.d.ts +167 -0
- package/edgeservices/dnsStage.js +99 -0
- package/edgeservices/dnsStage.js.map +1 -0
- package/edgeservices/headStage.d.ts +96 -0
- package/edgeservices/headStage.js +92 -0
- package/edgeservices/headStage.js.map +1 -0
- package/edgeservices/index.d.ts +27 -0
- package/edgeservices/index.js +62 -0
- package/edgeservices/index.js.map +1 -0
- package/edgeservices/pipeline.d.ts +183 -0
- package/edgeservices/pipeline.js +148 -0
- package/edgeservices/pipeline.js.map +1 -0
- package/edgeservices/plan.d.ts +84 -0
- package/edgeservices/plan.js +77 -0
- package/edgeservices/plan.js.map +1 -0
- package/edgeservices/routeStage.d.ts +142 -0
- package/edgeservices/routeStage.js +104 -0
- package/edgeservices/routeStage.js.map +1 -0
- package/edgeservices/tlsStage.d.ts +200 -0
- package/edgeservices/tlsStage.js +116 -0
- package/edgeservices/tlsStage.js.map +1 -0
- package/edgeservices/wafStage.d.ts +140 -0
- package/edgeservices/wafStage.js +97 -0
- package/edgeservices/wafStage.js.map +1 -0
- package/index.d.ts +2 -1
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/types/input.d.ts +98 -0
- package/types/output.d.ts +98 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* Creates and manages Scaleway Edge Services plans.
|
|
4
|
+
*
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
*
|
|
7
|
+
* ### Basic
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as scaleway from "@pulumiverse/scaleway";
|
|
12
|
+
*
|
|
13
|
+
* const main = new scaleway.edgeservices.Plan("main", {name: "starter"});
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* ## Import
|
|
17
|
+
*
|
|
18
|
+
* Plans can be imported using `{project_id}/{plan_name}`, e.g.
|
|
19
|
+
*
|
|
20
|
+
* bash
|
|
21
|
+
*
|
|
22
|
+
* ```sh
|
|
23
|
+
* $ pulumi import scaleway:edgeservices/plan:Plan main 11111111-1111-1111-1111-111111111111/starter
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class Plan extends pulumi.CustomResource {
|
|
27
|
+
/**
|
|
28
|
+
* Get an existing Plan resource's state with the given name, ID, and optional extra
|
|
29
|
+
* properties used to qualify the lookup.
|
|
30
|
+
*
|
|
31
|
+
* @param name The _unique_ name of the resulting resource.
|
|
32
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
33
|
+
* @param state Any extra arguments used during the lookup.
|
|
34
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
35
|
+
*/
|
|
36
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlanState, opts?: pulumi.CustomResourceOptions): Plan;
|
|
37
|
+
/**
|
|
38
|
+
* Returns true if the given object is an instance of Plan. This is designed to work even
|
|
39
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
40
|
+
*/
|
|
41
|
+
static isInstance(obj: any): obj is Plan;
|
|
42
|
+
/**
|
|
43
|
+
* The name of the plan.
|
|
44
|
+
*/
|
|
45
|
+
readonly name: pulumi.Output<string>;
|
|
46
|
+
/**
|
|
47
|
+
* `projectId`) The ID of the project the plan is associated with.
|
|
48
|
+
*/
|
|
49
|
+
readonly projectId: pulumi.Output<string>;
|
|
50
|
+
/**
|
|
51
|
+
* Create a Plan resource with the given unique name, arguments, and options.
|
|
52
|
+
*
|
|
53
|
+
* @param name The _unique_ name of the resource.
|
|
54
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
55
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
56
|
+
*/
|
|
57
|
+
constructor(name: string, args?: PlanArgs, opts?: pulumi.CustomResourceOptions);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Input properties used for looking up and filtering Plan resources.
|
|
61
|
+
*/
|
|
62
|
+
export interface PlanState {
|
|
63
|
+
/**
|
|
64
|
+
* The name of the plan.
|
|
65
|
+
*/
|
|
66
|
+
name?: pulumi.Input<string>;
|
|
67
|
+
/**
|
|
68
|
+
* `projectId`) The ID of the project the plan is associated with.
|
|
69
|
+
*/
|
|
70
|
+
projectId?: pulumi.Input<string>;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* The set of arguments for constructing a Plan resource.
|
|
74
|
+
*/
|
|
75
|
+
export interface PlanArgs {
|
|
76
|
+
/**
|
|
77
|
+
* The name of the plan.
|
|
78
|
+
*/
|
|
79
|
+
name?: pulumi.Input<string>;
|
|
80
|
+
/**
|
|
81
|
+
* `projectId`) The ID of the project the plan is associated with.
|
|
82
|
+
*/
|
|
83
|
+
projectId?: pulumi.Input<string>;
|
|
84
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
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.Plan = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* Creates and manages Scaleway Edge Services plans.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ### Basic
|
|
14
|
+
*
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
17
|
+
* import * as scaleway from "@pulumiverse/scaleway";
|
|
18
|
+
*
|
|
19
|
+
* const main = new scaleway.edgeservices.Plan("main", {name: "starter"});
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* ## Import
|
|
23
|
+
*
|
|
24
|
+
* Plans can be imported using `{project_id}/{plan_name}`, e.g.
|
|
25
|
+
*
|
|
26
|
+
* bash
|
|
27
|
+
*
|
|
28
|
+
* ```sh
|
|
29
|
+
* $ pulumi import scaleway:edgeservices/plan:Plan main 11111111-1111-1111-1111-111111111111/starter
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
class Plan extends pulumi.CustomResource {
|
|
33
|
+
/**
|
|
34
|
+
* Get an existing Plan resource's state with the given name, ID, and optional extra
|
|
35
|
+
* properties used to qualify the lookup.
|
|
36
|
+
*
|
|
37
|
+
* @param name The _unique_ name of the resulting resource.
|
|
38
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
39
|
+
* @param state Any extra arguments used during the lookup.
|
|
40
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
41
|
+
*/
|
|
42
|
+
static get(name, id, state, opts) {
|
|
43
|
+
return new Plan(name, state, { ...opts, id: id });
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Returns true if the given object is an instance of Plan. 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) {
|
|
50
|
+
if (obj === undefined || obj === null) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
return obj['__pulumiType'] === Plan.__pulumiType;
|
|
54
|
+
}
|
|
55
|
+
constructor(name, argsOrState, opts) {
|
|
56
|
+
let resourceInputs = {};
|
|
57
|
+
opts = opts || {};
|
|
58
|
+
if (opts.id) {
|
|
59
|
+
const state = argsOrState;
|
|
60
|
+
resourceInputs["name"] = state?.name;
|
|
61
|
+
resourceInputs["projectId"] = state?.projectId;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
const args = argsOrState;
|
|
65
|
+
resourceInputs["name"] = args?.name;
|
|
66
|
+
resourceInputs["projectId"] = args?.projectId;
|
|
67
|
+
}
|
|
68
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
69
|
+
const aliasOpts = { aliases: [{ type: "scaleway:index/edgeServicesPlan:EdgeServicesPlan" }] };
|
|
70
|
+
opts = pulumi.mergeOptions(opts, aliasOpts);
|
|
71
|
+
super(Plan.__pulumiType, name, resourceInputs, opts);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
exports.Plan = Plan;
|
|
75
|
+
/** @internal */
|
|
76
|
+
Plan.__pulumiType = 'scaleway:edgeservices/plan:Plan';
|
|
77
|
+
//# sourceMappingURL=plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../edgeservices/plan.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAa,IAAK,SAAQ,MAAM,CAAC,cAAc;IAC3C;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAiB,EAAE,IAAmC;QAC/G,OAAO,IAAI,IAAI,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,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,IAAI,CAAC,YAAY,CAAC;IACrD,CAAC;IAmBD,YAAY,IAAY,EAAE,WAAkC,EAAE,IAAmC;QAC7F,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAoC,CAAC;YACnD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;SAClD;aAAM;YACH,MAAM,IAAI,GAAG,WAAmC,CAAC;YACjD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;SACjD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,kDAAkD,EAAE,CAAC,EAAE,CAAC;QAC9F,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;;AA7DL,oBA8DC;AAhDG,gBAAgB;AACO,iBAAY,GAAG,iCAAiC,CAAC"}
|
|
@@ -0,0 +1,142 @@
|
|
|
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 Route 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.edgeservices.RouteStage("main", {
|
|
16
|
+
* pipelineId: mainScalewayEdgeServicesPipeline.id,
|
|
17
|
+
* wafStageId: waf.id,
|
|
18
|
+
* rules: [{
|
|
19
|
+
* backendStageId: backend.id,
|
|
20
|
+
* ruleHttpMatch: {
|
|
21
|
+
* methodFilters: [
|
|
22
|
+
* "get",
|
|
23
|
+
* "post",
|
|
24
|
+
* ],
|
|
25
|
+
* pathFilter: {
|
|
26
|
+
* pathFilterType: "regex",
|
|
27
|
+
* value: ".*",
|
|
28
|
+
* },
|
|
29
|
+
* },
|
|
30
|
+
* }],
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* ## Import
|
|
35
|
+
*
|
|
36
|
+
* Route stages can be imported using the `{id}`, e.g.
|
|
37
|
+
*
|
|
38
|
+
* bash
|
|
39
|
+
*
|
|
40
|
+
* ```sh
|
|
41
|
+
* $ pulumi import scaleway:edgeservices/routeStage:RouteStage basic 11111111-1111-1111-1111-111111111111
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export declare class RouteStage extends pulumi.CustomResource {
|
|
45
|
+
/**
|
|
46
|
+
* Get an existing RouteStage resource's state with the given name, ID, and optional extra
|
|
47
|
+
* properties used to qualify the lookup.
|
|
48
|
+
*
|
|
49
|
+
* @param name The _unique_ name of the resulting resource.
|
|
50
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
51
|
+
* @param state Any extra arguments used during the lookup.
|
|
52
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
53
|
+
*/
|
|
54
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteStageState, opts?: pulumi.CustomResourceOptions): RouteStage;
|
|
55
|
+
/**
|
|
56
|
+
* Returns true if the given object is an instance of RouteStage. This is designed to work even
|
|
57
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
58
|
+
*/
|
|
59
|
+
static isInstance(obj: any): obj is RouteStage;
|
|
60
|
+
/**
|
|
61
|
+
* The date and time of the creation of the route stage.
|
|
62
|
+
*/
|
|
63
|
+
readonly createdAt: pulumi.Output<string>;
|
|
64
|
+
/**
|
|
65
|
+
* The ID of the pipeline.
|
|
66
|
+
*/
|
|
67
|
+
readonly pipelineId: pulumi.Output<string>;
|
|
68
|
+
/**
|
|
69
|
+
* `projectId`) The ID of the project the route stage is associated with.
|
|
70
|
+
*/
|
|
71
|
+
readonly projectId: pulumi.Output<string>;
|
|
72
|
+
/**
|
|
73
|
+
* The list of rules to be checked against every HTTP request. The first matching rule will forward the request to its specified backend stage. If no rules are matched, the request is forwarded to the WAF stage defined by `wafStageId`.
|
|
74
|
+
*/
|
|
75
|
+
readonly rules: pulumi.Output<outputs.edgeservices.RouteStageRule[] | undefined>;
|
|
76
|
+
/**
|
|
77
|
+
* The date and time of the last update of the route stage.
|
|
78
|
+
*/
|
|
79
|
+
readonly updatedAt: pulumi.Output<string>;
|
|
80
|
+
/**
|
|
81
|
+
* The ID of the WAF stage HTTP requests should be forwarded to when no rules are matched.
|
|
82
|
+
*/
|
|
83
|
+
readonly wafStageId: pulumi.Output<string | undefined>;
|
|
84
|
+
/**
|
|
85
|
+
* Create a RouteStage resource with the given unique name, arguments, and options.
|
|
86
|
+
*
|
|
87
|
+
* @param name The _unique_ name of the resource.
|
|
88
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
89
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
90
|
+
*/
|
|
91
|
+
constructor(name: string, args: RouteStageArgs, opts?: pulumi.CustomResourceOptions);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Input properties used for looking up and filtering RouteStage resources.
|
|
95
|
+
*/
|
|
96
|
+
export interface RouteStageState {
|
|
97
|
+
/**
|
|
98
|
+
* The date and time of the creation of the route stage.
|
|
99
|
+
*/
|
|
100
|
+
createdAt?: pulumi.Input<string>;
|
|
101
|
+
/**
|
|
102
|
+
* The ID of the pipeline.
|
|
103
|
+
*/
|
|
104
|
+
pipelineId?: pulumi.Input<string>;
|
|
105
|
+
/**
|
|
106
|
+
* `projectId`) The ID of the project the route stage is associated with.
|
|
107
|
+
*/
|
|
108
|
+
projectId?: pulumi.Input<string>;
|
|
109
|
+
/**
|
|
110
|
+
* The list of rules to be checked against every HTTP request. The first matching rule will forward the request to its specified backend stage. If no rules are matched, the request is forwarded to the WAF stage defined by `wafStageId`.
|
|
111
|
+
*/
|
|
112
|
+
rules?: pulumi.Input<pulumi.Input<inputs.edgeservices.RouteStageRule>[]>;
|
|
113
|
+
/**
|
|
114
|
+
* The date and time of the last update of the route stage.
|
|
115
|
+
*/
|
|
116
|
+
updatedAt?: pulumi.Input<string>;
|
|
117
|
+
/**
|
|
118
|
+
* The ID of the WAF stage HTTP requests should be forwarded to when no rules are matched.
|
|
119
|
+
*/
|
|
120
|
+
wafStageId?: pulumi.Input<string>;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* The set of arguments for constructing a RouteStage resource.
|
|
124
|
+
*/
|
|
125
|
+
export interface RouteStageArgs {
|
|
126
|
+
/**
|
|
127
|
+
* The ID of the pipeline.
|
|
128
|
+
*/
|
|
129
|
+
pipelineId: pulumi.Input<string>;
|
|
130
|
+
/**
|
|
131
|
+
* `projectId`) The ID of the project the route stage is associated with.
|
|
132
|
+
*/
|
|
133
|
+
projectId?: pulumi.Input<string>;
|
|
134
|
+
/**
|
|
135
|
+
* The list of rules to be checked against every HTTP request. The first matching rule will forward the request to its specified backend stage. If no rules are matched, the request is forwarded to the WAF stage defined by `wafStageId`.
|
|
136
|
+
*/
|
|
137
|
+
rules?: pulumi.Input<pulumi.Input<inputs.edgeservices.RouteStageRule>[]>;
|
|
138
|
+
/**
|
|
139
|
+
* The ID of the WAF stage HTTP requests should be forwarded to when no rules are matched.
|
|
140
|
+
*/
|
|
141
|
+
wafStageId?: pulumi.Input<string>;
|
|
142
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
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.RouteStage = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* Creates and manages Scaleway Edge Services Route Stages.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ### Basic
|
|
14
|
+
*
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
17
|
+
* import * as scaleway from "@pulumiverse/scaleway";
|
|
18
|
+
*
|
|
19
|
+
* const main = new scaleway.edgeservices.RouteStage("main", {
|
|
20
|
+
* pipelineId: mainScalewayEdgeServicesPipeline.id,
|
|
21
|
+
* wafStageId: waf.id,
|
|
22
|
+
* rules: [{
|
|
23
|
+
* backendStageId: backend.id,
|
|
24
|
+
* ruleHttpMatch: {
|
|
25
|
+
* methodFilters: [
|
|
26
|
+
* "get",
|
|
27
|
+
* "post",
|
|
28
|
+
* ],
|
|
29
|
+
* pathFilter: {
|
|
30
|
+
* pathFilterType: "regex",
|
|
31
|
+
* value: ".*",
|
|
32
|
+
* },
|
|
33
|
+
* },
|
|
34
|
+
* }],
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* ## Import
|
|
39
|
+
*
|
|
40
|
+
* Route stages can be imported using the `{id}`, e.g.
|
|
41
|
+
*
|
|
42
|
+
* bash
|
|
43
|
+
*
|
|
44
|
+
* ```sh
|
|
45
|
+
* $ pulumi import scaleway:edgeservices/routeStage:RouteStage basic 11111111-1111-1111-1111-111111111111
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
class RouteStage extends pulumi.CustomResource {
|
|
49
|
+
/**
|
|
50
|
+
* Get an existing RouteStage resource's state with the given name, ID, and optional extra
|
|
51
|
+
* properties used to qualify the lookup.
|
|
52
|
+
*
|
|
53
|
+
* @param name The _unique_ name of the resulting resource.
|
|
54
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
55
|
+
* @param state Any extra arguments used during the lookup.
|
|
56
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
57
|
+
*/
|
|
58
|
+
static get(name, id, state, opts) {
|
|
59
|
+
return new RouteStage(name, state, { ...opts, id: id });
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Returns true if the given object is an instance of RouteStage. This is designed to work even
|
|
63
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
64
|
+
*/
|
|
65
|
+
static isInstance(obj) {
|
|
66
|
+
if (obj === undefined || obj === null) {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
return obj['__pulumiType'] === RouteStage.__pulumiType;
|
|
70
|
+
}
|
|
71
|
+
constructor(name, argsOrState, opts) {
|
|
72
|
+
let resourceInputs = {};
|
|
73
|
+
opts = opts || {};
|
|
74
|
+
if (opts.id) {
|
|
75
|
+
const state = argsOrState;
|
|
76
|
+
resourceInputs["createdAt"] = state?.createdAt;
|
|
77
|
+
resourceInputs["pipelineId"] = state?.pipelineId;
|
|
78
|
+
resourceInputs["projectId"] = state?.projectId;
|
|
79
|
+
resourceInputs["rules"] = state?.rules;
|
|
80
|
+
resourceInputs["updatedAt"] = state?.updatedAt;
|
|
81
|
+
resourceInputs["wafStageId"] = state?.wafStageId;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
const args = argsOrState;
|
|
85
|
+
if (args?.pipelineId === undefined && !opts.urn) {
|
|
86
|
+
throw new Error("Missing required property 'pipelineId'");
|
|
87
|
+
}
|
|
88
|
+
resourceInputs["pipelineId"] = args?.pipelineId;
|
|
89
|
+
resourceInputs["projectId"] = args?.projectId;
|
|
90
|
+
resourceInputs["rules"] = args?.rules;
|
|
91
|
+
resourceInputs["wafStageId"] = args?.wafStageId;
|
|
92
|
+
resourceInputs["createdAt"] = undefined /*out*/;
|
|
93
|
+
resourceInputs["updatedAt"] = undefined /*out*/;
|
|
94
|
+
}
|
|
95
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
96
|
+
const aliasOpts = { aliases: [{ type: "scaleway:index/edgeServicesRouteStage:EdgeServicesRouteStage" }] };
|
|
97
|
+
opts = pulumi.mergeOptions(opts, aliasOpts);
|
|
98
|
+
super(RouteStage.__pulumiType, name, resourceInputs, opts);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.RouteStage = RouteStage;
|
|
102
|
+
/** @internal */
|
|
103
|
+
RouteStage.__pulumiType = 'scaleway:edgeservices/routeStage:RouteStage';
|
|
104
|
+
//# sourceMappingURL=routeStage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routeStage.js","sourceRoot":"","sources":["../../edgeservices/routeStage.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAa,UAAW,SAAQ,MAAM,CAAC,cAAc;IACjD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAuB,EAAE,IAAmC;QACrH,OAAO,IAAI,UAAU,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACjE,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,UAAU,CAAC,YAAY,CAAC;IAC3D,CAAC;IAmCD,YAAY,IAAY,EAAE,WAA8C,EAAE,IAAmC;QACzG,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA0C,CAAC;YACzD,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;SACpD;aAAM;YACH,MAAM,IAAI,GAAG,WAAyC,CAAC;YACvD,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;YAC9C,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAChD,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACnD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,8DAA8D,EAAE,CAAC,EAAE,CAAC;QAC1G,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;;AAxFL,gCAyFC;AA3EG,gBAAgB;AACO,uBAAY,GAAG,6CAA6C,CAAC"}
|
|
@@ -0,0 +1,200 @@
|
|
|
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 TLS Stages.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ### Managed
|
|
10
|
+
*
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
13
|
+
* import * as scaleway from "@pulumiverse/scaleway";
|
|
14
|
+
*
|
|
15
|
+
* const main = new scaleway.edgeservices.TlsStage("main", {
|
|
16
|
+
* pipelineId: mainScalewayEdgeServicesPipeline.id,
|
|
17
|
+
* managedCertificate: true,
|
|
18
|
+
* });
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* ### With a certificate stored in Scaleway Secret Manager
|
|
22
|
+
*
|
|
23
|
+
* ```typescript
|
|
24
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
25
|
+
* import * as scaleway from "@pulumiverse/scaleway";
|
|
26
|
+
*
|
|
27
|
+
* const main = new scaleway.edgeservices.TlsStage("main", {
|
|
28
|
+
* pipelineId: mainScalewayEdgeServicesPipeline.id,
|
|
29
|
+
* secrets: [{
|
|
30
|
+
* secretId: "11111111-1111-1111-1111-111111111111",
|
|
31
|
+
* region: "fr-par",
|
|
32
|
+
* }],
|
|
33
|
+
* });
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* ## Import
|
|
37
|
+
*
|
|
38
|
+
* TLS stages can be imported using the `{id}`, e.g.
|
|
39
|
+
*
|
|
40
|
+
* bash
|
|
41
|
+
*
|
|
42
|
+
* ```sh
|
|
43
|
+
* $ pulumi import scaleway:edgeservices/tlsStage:TlsStage basic 11111111-1111-1111-1111-111111111111
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export declare class TlsStage extends pulumi.CustomResource {
|
|
47
|
+
/**
|
|
48
|
+
* Get an existing TlsStage resource's state with the given name, ID, and optional extra
|
|
49
|
+
* properties used to qualify the lookup.
|
|
50
|
+
*
|
|
51
|
+
* @param name The _unique_ name of the resulting resource.
|
|
52
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
53
|
+
* @param state Any extra arguments used during the lookup.
|
|
54
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
55
|
+
*/
|
|
56
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TlsStageState, opts?: pulumi.CustomResourceOptions): TlsStage;
|
|
57
|
+
/**
|
|
58
|
+
* Returns true if the given object is an instance of TlsStage. This is designed to work even
|
|
59
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
60
|
+
*/
|
|
61
|
+
static isInstance(obj: any): obj is TlsStage;
|
|
62
|
+
/**
|
|
63
|
+
* The backend stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
64
|
+
*/
|
|
65
|
+
readonly backendStageId: pulumi.Output<string>;
|
|
66
|
+
/**
|
|
67
|
+
* The cache stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
68
|
+
*/
|
|
69
|
+
readonly cacheStageId: pulumi.Output<string>;
|
|
70
|
+
/**
|
|
71
|
+
* The expiration date of the certificate.
|
|
72
|
+
*/
|
|
73
|
+
readonly certificateExpiresAt: pulumi.Output<string>;
|
|
74
|
+
/**
|
|
75
|
+
* The date and time of the creation of the TLS stage.
|
|
76
|
+
*/
|
|
77
|
+
readonly createdAt: pulumi.Output<string>;
|
|
78
|
+
/**
|
|
79
|
+
* Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
|
|
80
|
+
*/
|
|
81
|
+
readonly managedCertificate: pulumi.Output<boolean>;
|
|
82
|
+
/**
|
|
83
|
+
* The ID of the pipeline.
|
|
84
|
+
*/
|
|
85
|
+
readonly pipelineId: pulumi.Output<string>;
|
|
86
|
+
/**
|
|
87
|
+
* `projectId`) The ID of the project the TLS stage is associated with.
|
|
88
|
+
*/
|
|
89
|
+
readonly projectId: pulumi.Output<string>;
|
|
90
|
+
/**
|
|
91
|
+
* The route stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
92
|
+
*/
|
|
93
|
+
readonly routeStageId: pulumi.Output<string>;
|
|
94
|
+
/**
|
|
95
|
+
* The TLS secrets.
|
|
96
|
+
*/
|
|
97
|
+
readonly secrets: pulumi.Output<outputs.edgeservices.TlsStageSecret[]>;
|
|
98
|
+
/**
|
|
99
|
+
* The date and time of the last update of the TLS stage.
|
|
100
|
+
*/
|
|
101
|
+
readonly updatedAt: pulumi.Output<string>;
|
|
102
|
+
/**
|
|
103
|
+
* The WAF stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
104
|
+
*/
|
|
105
|
+
readonly wafStageId: pulumi.Output<string>;
|
|
106
|
+
/**
|
|
107
|
+
* Create a TlsStage resource with the given unique name, arguments, and options.
|
|
108
|
+
*
|
|
109
|
+
* @param name The _unique_ name of the resource.
|
|
110
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
111
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
112
|
+
*/
|
|
113
|
+
constructor(name: string, args: TlsStageArgs, opts?: pulumi.CustomResourceOptions);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Input properties used for looking up and filtering TlsStage resources.
|
|
117
|
+
*/
|
|
118
|
+
export interface TlsStageState {
|
|
119
|
+
/**
|
|
120
|
+
* The backend stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
121
|
+
*/
|
|
122
|
+
backendStageId?: pulumi.Input<string>;
|
|
123
|
+
/**
|
|
124
|
+
* The cache stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
125
|
+
*/
|
|
126
|
+
cacheStageId?: pulumi.Input<string>;
|
|
127
|
+
/**
|
|
128
|
+
* The expiration date of the certificate.
|
|
129
|
+
*/
|
|
130
|
+
certificateExpiresAt?: pulumi.Input<string>;
|
|
131
|
+
/**
|
|
132
|
+
* The date and time of the creation of the TLS stage.
|
|
133
|
+
*/
|
|
134
|
+
createdAt?: pulumi.Input<string>;
|
|
135
|
+
/**
|
|
136
|
+
* Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
|
|
137
|
+
*/
|
|
138
|
+
managedCertificate?: pulumi.Input<boolean>;
|
|
139
|
+
/**
|
|
140
|
+
* The ID of the pipeline.
|
|
141
|
+
*/
|
|
142
|
+
pipelineId?: pulumi.Input<string>;
|
|
143
|
+
/**
|
|
144
|
+
* `projectId`) The ID of the project the TLS stage is associated with.
|
|
145
|
+
*/
|
|
146
|
+
projectId?: pulumi.Input<string>;
|
|
147
|
+
/**
|
|
148
|
+
* The route stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
149
|
+
*/
|
|
150
|
+
routeStageId?: pulumi.Input<string>;
|
|
151
|
+
/**
|
|
152
|
+
* The TLS secrets.
|
|
153
|
+
*/
|
|
154
|
+
secrets?: pulumi.Input<pulumi.Input<inputs.edgeservices.TlsStageSecret>[]>;
|
|
155
|
+
/**
|
|
156
|
+
* The date and time of the last update of the TLS stage.
|
|
157
|
+
*/
|
|
158
|
+
updatedAt?: pulumi.Input<string>;
|
|
159
|
+
/**
|
|
160
|
+
* The WAF stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
161
|
+
*/
|
|
162
|
+
wafStageId?: pulumi.Input<string>;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* The set of arguments for constructing a TlsStage resource.
|
|
166
|
+
*/
|
|
167
|
+
export interface TlsStageArgs {
|
|
168
|
+
/**
|
|
169
|
+
* The backend stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
170
|
+
*/
|
|
171
|
+
backendStageId?: pulumi.Input<string>;
|
|
172
|
+
/**
|
|
173
|
+
* The cache stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
174
|
+
*/
|
|
175
|
+
cacheStageId?: pulumi.Input<string>;
|
|
176
|
+
/**
|
|
177
|
+
* Set to true when Scaleway generates and manages a Let's Encrypt certificate for the TLS stage/custom endpoint.
|
|
178
|
+
*/
|
|
179
|
+
managedCertificate?: pulumi.Input<boolean>;
|
|
180
|
+
/**
|
|
181
|
+
* The ID of the pipeline.
|
|
182
|
+
*/
|
|
183
|
+
pipelineId: pulumi.Input<string>;
|
|
184
|
+
/**
|
|
185
|
+
* `projectId`) The ID of the project the TLS stage is associated with.
|
|
186
|
+
*/
|
|
187
|
+
projectId?: pulumi.Input<string>;
|
|
188
|
+
/**
|
|
189
|
+
* The route stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
190
|
+
*/
|
|
191
|
+
routeStageId?: pulumi.Input<string>;
|
|
192
|
+
/**
|
|
193
|
+
* The TLS secrets.
|
|
194
|
+
*/
|
|
195
|
+
secrets?: pulumi.Input<pulumi.Input<inputs.edgeservices.TlsStageSecret>[]>;
|
|
196
|
+
/**
|
|
197
|
+
* The WAF stage ID the TLS stage will be linked to. Only one of `backendStageId`, `cacheStageId`, `routeStageId` and `wafStageId` should be specified.
|
|
198
|
+
*/
|
|
199
|
+
wafStageId?: pulumi.Input<string>;
|
|
200
|
+
}
|