@pulumi/ec 0.10.9 → 0.10.11
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/config/vars.d.ts +3 -0
- package/config/vars.js.map +1 -1
- package/deployment.d.ts +24 -4
- package/deployment.js +12 -4
- package/deployment.js.map +1 -1
- package/deploymentElasticsearchKeystore.d.ts +12 -0
- package/deploymentElasticsearchKeystore.js +12 -0
- package/deploymentElasticsearchKeystore.js.map +1 -1
- package/deploymentTrafficFilter.d.ts +7 -3
- package/deploymentTrafficFilter.js +4 -0
- package/deploymentTrafficFilter.js.map +1 -1
- package/deploymentTrafficFilterAssociation.d.ts +2 -0
- package/deploymentTrafficFilterAssociation.js +2 -0
- package/deploymentTrafficFilterAssociation.js.map +1 -1
- package/elasticsearchProject.d.ts +40 -5
- package/elasticsearchProject.js +7 -1
- package/elasticsearchProject.js.map +1 -1
- package/index.d.ts +3 -0
- package/index.js +6 -1
- package/index.js.map +1 -1
- package/observabilityProject.d.ts +28 -2
- package/observabilityProject.js +7 -1
- package/observabilityProject.js.map +1 -1
- package/organization.d.ts +81 -0
- package/organization.js +81 -0
- package/organization.js.map +1 -1
- package/package.json +2 -2
- package/provider.d.ts +6 -0
- package/provider.js.map +1 -1
- package/securityProject.d.ts +40 -2
- package/securityProject.js +9 -1
- package/securityProject.js.map +1 -1
- package/serverlessTrafficFilter.d.ts +140 -0
- package/serverlessTrafficFilter.js +95 -0
- package/serverlessTrafficFilter.js.map +1 -0
- package/snapshotRepository.d.ts +4 -0
- package/snapshotRepository.js +4 -0
- package/snapshotRepository.js.map +1 -1
- package/types/input.d.ts +99 -0
- package/types/output.d.ts +107 -0
package/observabilityProject.js
CHANGED
|
@@ -30,6 +30,8 @@ const utilities = require("./utilities");
|
|
|
30
30
|
* ```sh
|
|
31
31
|
* $ pulumi import ec:index/observabilityProject:ObservabilityProject id 320b7b540dfc967a7a649c18e2fce4ed
|
|
32
32
|
* ```
|
|
33
|
+
*
|
|
34
|
+
* > **Note on Credentials** The `credentials` attribute (containing `username` and `password`) is only available when the project is first created. When importing an existing project, these credentials will not be available in the Terraform state as the API does not return them on read operations.
|
|
33
35
|
*/
|
|
34
36
|
class ObservabilityProject extends pulumi.CustomResource {
|
|
35
37
|
/**
|
|
@@ -65,8 +67,10 @@ class ObservabilityProject extends pulumi.CustomResource {
|
|
|
65
67
|
resourceInputs["endpoints"] = state?.endpoints;
|
|
66
68
|
resourceInputs["metadata"] = state?.metadata;
|
|
67
69
|
resourceInputs["name"] = state?.name;
|
|
70
|
+
resourceInputs["privateEndpoints"] = state?.privateEndpoints;
|
|
68
71
|
resourceInputs["productTier"] = state?.productTier;
|
|
69
72
|
resourceInputs["regionId"] = state?.regionId;
|
|
73
|
+
resourceInputs["trafficFilterIds"] = state?.trafficFilterIds;
|
|
70
74
|
resourceInputs["type"] = state?.type;
|
|
71
75
|
}
|
|
72
76
|
else {
|
|
@@ -75,13 +79,15 @@ class ObservabilityProject extends pulumi.CustomResource {
|
|
|
75
79
|
throw new Error("Missing required property 'regionId'");
|
|
76
80
|
}
|
|
77
81
|
resourceInputs["alias"] = args?.alias;
|
|
82
|
+
resourceInputs["metadata"] = args?.metadata;
|
|
78
83
|
resourceInputs["name"] = args?.name;
|
|
79
84
|
resourceInputs["productTier"] = args?.productTier;
|
|
80
85
|
resourceInputs["regionId"] = args?.regionId;
|
|
86
|
+
resourceInputs["trafficFilterIds"] = args?.trafficFilterIds;
|
|
81
87
|
resourceInputs["cloudId"] = undefined /*out*/;
|
|
82
88
|
resourceInputs["credentials"] = undefined /*out*/;
|
|
83
89
|
resourceInputs["endpoints"] = undefined /*out*/;
|
|
84
|
-
resourceInputs["
|
|
90
|
+
resourceInputs["privateEndpoints"] = undefined /*out*/;
|
|
85
91
|
resourceInputs["type"] = undefined /*out*/;
|
|
86
92
|
}
|
|
87
93
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observabilityProject.js","sourceRoot":"","sources":["../observabilityProject.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"observabilityProject.js","sourceRoot":"","sources":["../observabilityProject.ts"],"names":[],"mappings":"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"}
|
package/organization.d.ts
CHANGED
|
@@ -1,6 +1,87 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
import * as inputs from "./types/input";
|
|
3
3
|
import * as outputs from "./types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Manages an Elastic Cloud organization membership.
|
|
6
|
+
*
|
|
7
|
+
* > **This resource can only be used with Elastic Cloud SaaS**
|
|
8
|
+
*
|
|
9
|
+
* ## Example Usage
|
|
10
|
+
*
|
|
11
|
+
* ### Import
|
|
12
|
+
*
|
|
13
|
+
* To import an organization into terraform, first define your organization configuration in your terraform file. For example:
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
16
|
+
* import * as ec from "@pulumi/ec";
|
|
17
|
+
*
|
|
18
|
+
* const myorg = new ec.Organization("myorg", {});
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* Then import the organization using your organization-id (The organization id can be found on [the organization page](https://cloud.elastic.co/account/members))
|
|
22
|
+
*
|
|
23
|
+
* Now you can run `pulumi preview` to see if there are any diffs between your config and how your organization is currently configured.
|
|
24
|
+
*
|
|
25
|
+
* ### Basic
|
|
26
|
+
*
|
|
27
|
+
* ```typescript
|
|
28
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
29
|
+
* import * as ec from "@pulumi/ec";
|
|
30
|
+
*
|
|
31
|
+
* const myOrg = new ec.Organization("my_org", {members: {
|
|
32
|
+
* "a.member@example.com": {
|
|
33
|
+
* organizationRole: "billing-admin",
|
|
34
|
+
* deploymentRoles: [
|
|
35
|
+
* {
|
|
36
|
+
* role: "editor",
|
|
37
|
+
* allDeployments: true,
|
|
38
|
+
* },
|
|
39
|
+
* {
|
|
40
|
+
* role: "editor",
|
|
41
|
+
* deploymentIds: ["ce03a623751b4fc98d48400fec58b9c0"],
|
|
42
|
+
* },
|
|
43
|
+
* ],
|
|
44
|
+
* projectElasticsearchRoles: [
|
|
45
|
+
* {
|
|
46
|
+
* role: "admin",
|
|
47
|
+
* allProjects: true,
|
|
48
|
+
* },
|
|
49
|
+
* {
|
|
50
|
+
* role: "admin",
|
|
51
|
+
* projectIds: ["c866244b611442d585e23a0cc8c9434c"],
|
|
52
|
+
* },
|
|
53
|
+
* ],
|
|
54
|
+
* projectObservabilityRoles: [],
|
|
55
|
+
* projectSecurityRoles: [],
|
|
56
|
+
* },
|
|
57
|
+
* }});
|
|
58
|
+
* ```
|
|
59
|
+
*
|
|
60
|
+
* ### Use variables to give the same roles to multiple users
|
|
61
|
+
*
|
|
62
|
+
* ```typescript
|
|
63
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
64
|
+
* import * as ec from "@pulumi/ec";
|
|
65
|
+
*
|
|
66
|
+
* const deploymentAdmin = {
|
|
67
|
+
* deploymentRoles: [{
|
|
68
|
+
* role: "admin",
|
|
69
|
+
* allDeployments: true,
|
|
70
|
+
* }],
|
|
71
|
+
* };
|
|
72
|
+
* const deploymentViewer = {
|
|
73
|
+
* deploymentRoles: [{
|
|
74
|
+
* role: "viewer",
|
|
75
|
+
* allDeployments: true,
|
|
76
|
+
* }],
|
|
77
|
+
* };
|
|
78
|
+
* const myOrg = new ec.Organization("my_org", {members: {
|
|
79
|
+
* "admin@example.com": deploymentAdmin,
|
|
80
|
+
* "viewer@example.com": deploymentViewer,
|
|
81
|
+
* "another.viewer@example.com": deploymentViewer,
|
|
82
|
+
* }});
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
4
85
|
export declare class Organization extends pulumi.CustomResource {
|
|
5
86
|
/**
|
|
6
87
|
* Get an existing Organization resource's state with the given name, ID, and optional extra
|
package/organization.js
CHANGED
|
@@ -5,6 +5,87 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
5
5
|
exports.Organization = void 0;
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* Manages an Elastic Cloud organization membership.
|
|
10
|
+
*
|
|
11
|
+
* > **This resource can only be used with Elastic Cloud SaaS**
|
|
12
|
+
*
|
|
13
|
+
* ## Example Usage
|
|
14
|
+
*
|
|
15
|
+
* ### Import
|
|
16
|
+
*
|
|
17
|
+
* To import an organization into terraform, first define your organization configuration in your terraform file. For example:
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
20
|
+
* import * as ec from "@pulumi/ec";
|
|
21
|
+
*
|
|
22
|
+
* const myorg = new ec.Organization("myorg", {});
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* Then import the organization using your organization-id (The organization id can be found on [the organization page](https://cloud.elastic.co/account/members))
|
|
26
|
+
*
|
|
27
|
+
* Now you can run `pulumi preview` to see if there are any diffs between your config and how your organization is currently configured.
|
|
28
|
+
*
|
|
29
|
+
* ### Basic
|
|
30
|
+
*
|
|
31
|
+
* ```typescript
|
|
32
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
33
|
+
* import * as ec from "@pulumi/ec";
|
|
34
|
+
*
|
|
35
|
+
* const myOrg = new ec.Organization("my_org", {members: {
|
|
36
|
+
* "a.member@example.com": {
|
|
37
|
+
* organizationRole: "billing-admin",
|
|
38
|
+
* deploymentRoles: [
|
|
39
|
+
* {
|
|
40
|
+
* role: "editor",
|
|
41
|
+
* allDeployments: true,
|
|
42
|
+
* },
|
|
43
|
+
* {
|
|
44
|
+
* role: "editor",
|
|
45
|
+
* deploymentIds: ["ce03a623751b4fc98d48400fec58b9c0"],
|
|
46
|
+
* },
|
|
47
|
+
* ],
|
|
48
|
+
* projectElasticsearchRoles: [
|
|
49
|
+
* {
|
|
50
|
+
* role: "admin",
|
|
51
|
+
* allProjects: true,
|
|
52
|
+
* },
|
|
53
|
+
* {
|
|
54
|
+
* role: "admin",
|
|
55
|
+
* projectIds: ["c866244b611442d585e23a0cc8c9434c"],
|
|
56
|
+
* },
|
|
57
|
+
* ],
|
|
58
|
+
* projectObservabilityRoles: [],
|
|
59
|
+
* projectSecurityRoles: [],
|
|
60
|
+
* },
|
|
61
|
+
* }});
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
64
|
+
* ### Use variables to give the same roles to multiple users
|
|
65
|
+
*
|
|
66
|
+
* ```typescript
|
|
67
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
68
|
+
* import * as ec from "@pulumi/ec";
|
|
69
|
+
*
|
|
70
|
+
* const deploymentAdmin = {
|
|
71
|
+
* deploymentRoles: [{
|
|
72
|
+
* role: "admin",
|
|
73
|
+
* allDeployments: true,
|
|
74
|
+
* }],
|
|
75
|
+
* };
|
|
76
|
+
* const deploymentViewer = {
|
|
77
|
+
* deploymentRoles: [{
|
|
78
|
+
* role: "viewer",
|
|
79
|
+
* allDeployments: true,
|
|
80
|
+
* }],
|
|
81
|
+
* };
|
|
82
|
+
* const myOrg = new ec.Organization("my_org", {members: {
|
|
83
|
+
* "admin@example.com": deploymentAdmin,
|
|
84
|
+
* "viewer@example.com": deploymentViewer,
|
|
85
|
+
* "another.viewer@example.com": deploymentViewer,
|
|
86
|
+
* }});
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
8
89
|
class Organization extends pulumi.CustomResource {
|
|
9
90
|
/**
|
|
10
91
|
* Get an existing Organization resource's state with the given name, ID, and optional extra
|
package/organization.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization.js","sourceRoot":"","sources":["../organization.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC,MAAa,YAAa,SAAQ,MAAM,CAAC,cAAc;IACnD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyB,EAAE,IAAmC;QACvH,OAAO,IAAI,YAAY,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,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,YAAY,CAAC,YAAY,CAAC;IAC7D,CAAC;IAeD,YAAY,IAAY,EAAE,WAAkD,EAAE,IAAmC;QAC7G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4C,CAAC;YAC3D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAA2C,CAAC;YACzD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;SAC7C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;;AArDL,oCAsDC;AAxCG,gBAAgB;AACO,yBAAY,GAAG,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"organization.js","sourceRoot":"","sources":["../organization.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,MAAa,YAAa,SAAQ,MAAM,CAAC,cAAc;IACnD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyB,EAAE,IAAmC;QACvH,OAAO,IAAI,YAAY,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,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,YAAY,CAAC,YAAY,CAAC;IAC7D,CAAC;IAeD,YAAY,IAAY,EAAE,WAAkD,EAAE,IAAmC;QAC7G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4C,CAAC;YAC3D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAA2C,CAAC;YACzD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;SAC7C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;;AArDL,oCAsDC;AAxCG,gBAAgB;AACO,yBAAY,GAAG,oCAAoC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/ec",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.11",
|
|
4
4
|
"description": "A Pulumi package for creating and managing ElasticCloud resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -27,6 +27,6 @@
|
|
|
27
27
|
"pulumi": {
|
|
28
28
|
"resource": true,
|
|
29
29
|
"name": "ec",
|
|
30
|
-
"version": "0.10.
|
|
30
|
+
"version": "0.10.11"
|
|
31
31
|
}
|
|
32
32
|
}
|
package/provider.d.ts
CHANGED
|
@@ -15,6 +15,9 @@ export declare class Provider extends pulumi.ProviderResource {
|
|
|
15
15
|
* API Key to use for API authentication. The only valid authentication mechanism for the Elasticsearch Service.
|
|
16
16
|
*/
|
|
17
17
|
readonly apikey: pulumi.Output<string | undefined>;
|
|
18
|
+
/**
|
|
19
|
+
* Endpoint where the terraform provider will point to. Defaults to "https://api.elastic-cloud.com".
|
|
20
|
+
*/
|
|
18
21
|
readonly endpoint: pulumi.Output<string | undefined>;
|
|
19
22
|
/**
|
|
20
23
|
* Password to use for API authentication. Available only when targeting ECE Installations or Elasticsearch Service Private.
|
|
@@ -53,6 +56,9 @@ export interface ProviderArgs {
|
|
|
53
56
|
* API Key to use for API authentication. The only valid authentication mechanism for the Elasticsearch Service.
|
|
54
57
|
*/
|
|
55
58
|
apikey?: pulumi.Input<string>;
|
|
59
|
+
/**
|
|
60
|
+
* Endpoint where the terraform provider will point to. Defaults to "https://api.elastic-cloud.com".
|
|
61
|
+
*/
|
|
56
62
|
endpoint?: pulumi.Input<string>;
|
|
57
63
|
/**
|
|
58
64
|
* Allow the provider to skip TLS validation on its outgoing HTTP calls.
|
package/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;GAKG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,gBAAgB;IAIjD;;;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,mBAAmB,GAAG,QAAQ,CAAC,YAAY,CAAC;IAC/E,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../provider.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;GAKG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,gBAAgB;IAIjD;;;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,mBAAmB,GAAG,QAAQ,CAAC,YAAY,CAAC;IAC/E,CAAC;IA2BD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,IAAmB,EAAE,IAA6B;QACxE,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB;YACI,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjF,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjF,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;YAC5C,cAAc,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/E,cAAc,CAAC,oBAAoB,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrG,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;SACrD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,EAAE,uBAAuB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC;QACvE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC7C,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,eAAe;QACX,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE;YAC9D,UAAU,EAAE,IAAI;SACnB,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;;AA1EL,4BA2EC;AA1EG,gBAAgB;AACO,qBAAY,GAAG,IAAI,CAAC"}
|
package/securityProject.d.ts
CHANGED
|
@@ -26,6 +26,8 @@ import * as outputs from "./types/output";
|
|
|
26
26
|
* ```sh
|
|
27
27
|
* $ pulumi import ec:index/securityProject:SecurityProject id 320b7b540dfc967a7a649c18e2fce4ed
|
|
28
28
|
* ```
|
|
29
|
+
*
|
|
30
|
+
* > **Note on Credentials** The `credentials` attribute (containing `username` and `password`) is only available when the project is first created. When importing an existing project, these credentials will not be available in the Terraform state as the API does not return them on read operations.
|
|
29
31
|
*/
|
|
30
32
|
export declare class SecurityProject extends pulumi.CustomResource {
|
|
31
33
|
/**
|
|
@@ -64,18 +66,30 @@ export declare class SecurityProject extends pulumi.CustomResource {
|
|
|
64
66
|
*/
|
|
65
67
|
readonly endpoints: pulumi.Output<outputs.SecurityProjectEndpoints>;
|
|
66
68
|
/**
|
|
67
|
-
*
|
|
69
|
+
* Metadata request for a project with tags.
|
|
68
70
|
*/
|
|
69
71
|
readonly metadata: pulumi.Output<outputs.SecurityProjectMetadata>;
|
|
70
72
|
/**
|
|
71
73
|
* Descriptive name for a project.
|
|
72
74
|
*/
|
|
73
75
|
readonly name: pulumi.Output<string>;
|
|
76
|
+
/**
|
|
77
|
+
* Private endpoints (URLs) for Security projects when PrivateLink is enabled.
|
|
78
|
+
*/
|
|
79
|
+
readonly privateEndpoints: pulumi.Output<outputs.SecurityProjectPrivateEndpoints>;
|
|
74
80
|
readonly productTypes: pulumi.Output<outputs.SecurityProjectProductType[]>;
|
|
75
81
|
/**
|
|
76
82
|
* Unique human-readable identifier for a region in Elastic Cloud.
|
|
77
83
|
*/
|
|
78
84
|
readonly regionId: pulumi.Output<string>;
|
|
85
|
+
/**
|
|
86
|
+
* Configuration for the entire set of capabilities that make the data searchable in Security.
|
|
87
|
+
*/
|
|
88
|
+
readonly searchLake: pulumi.Output<outputs.SecurityProjectSearchLake>;
|
|
89
|
+
/**
|
|
90
|
+
* Set of traffic filter IDs to associate with this project
|
|
91
|
+
*/
|
|
92
|
+
readonly trafficFilterIds: pulumi.Output<string[] | undefined>;
|
|
79
93
|
/**
|
|
80
94
|
* the type of the project
|
|
81
95
|
*/
|
|
@@ -114,18 +128,30 @@ export interface SecurityProjectState {
|
|
|
114
128
|
*/
|
|
115
129
|
endpoints?: pulumi.Input<inputs.SecurityProjectEndpoints>;
|
|
116
130
|
/**
|
|
117
|
-
*
|
|
131
|
+
* Metadata request for a project with tags.
|
|
118
132
|
*/
|
|
119
133
|
metadata?: pulumi.Input<inputs.SecurityProjectMetadata>;
|
|
120
134
|
/**
|
|
121
135
|
* Descriptive name for a project.
|
|
122
136
|
*/
|
|
123
137
|
name?: pulumi.Input<string>;
|
|
138
|
+
/**
|
|
139
|
+
* Private endpoints (URLs) for Security projects when PrivateLink is enabled.
|
|
140
|
+
*/
|
|
141
|
+
privateEndpoints?: pulumi.Input<inputs.SecurityProjectPrivateEndpoints>;
|
|
124
142
|
productTypes?: pulumi.Input<pulumi.Input<inputs.SecurityProjectProductType>[]>;
|
|
125
143
|
/**
|
|
126
144
|
* Unique human-readable identifier for a region in Elastic Cloud.
|
|
127
145
|
*/
|
|
128
146
|
regionId?: pulumi.Input<string>;
|
|
147
|
+
/**
|
|
148
|
+
* Configuration for the entire set of capabilities that make the data searchable in Security.
|
|
149
|
+
*/
|
|
150
|
+
searchLake?: pulumi.Input<inputs.SecurityProjectSearchLake>;
|
|
151
|
+
/**
|
|
152
|
+
* Set of traffic filter IDs to associate with this project
|
|
153
|
+
*/
|
|
154
|
+
trafficFilterIds?: pulumi.Input<pulumi.Input<string>[]>;
|
|
129
155
|
/**
|
|
130
156
|
* the type of the project
|
|
131
157
|
*/
|
|
@@ -143,6 +169,10 @@ export interface SecurityProjectArgs {
|
|
|
143
169
|
* A custom domain label compatible with RFC-1035 standards. Derived from the project name by default.
|
|
144
170
|
*/
|
|
145
171
|
alias?: pulumi.Input<string>;
|
|
172
|
+
/**
|
|
173
|
+
* Metadata request for a project with tags.
|
|
174
|
+
*/
|
|
175
|
+
metadata?: pulumi.Input<inputs.SecurityProjectMetadata>;
|
|
146
176
|
/**
|
|
147
177
|
* Descriptive name for a project.
|
|
148
178
|
*/
|
|
@@ -152,4 +182,12 @@ export interface SecurityProjectArgs {
|
|
|
152
182
|
* Unique human-readable identifier for a region in Elastic Cloud.
|
|
153
183
|
*/
|
|
154
184
|
regionId: pulumi.Input<string>;
|
|
185
|
+
/**
|
|
186
|
+
* Configuration for the entire set of capabilities that make the data searchable in Security.
|
|
187
|
+
*/
|
|
188
|
+
searchLake?: pulumi.Input<inputs.SecurityProjectSearchLake>;
|
|
189
|
+
/**
|
|
190
|
+
* Set of traffic filter IDs to associate with this project
|
|
191
|
+
*/
|
|
192
|
+
trafficFilterIds?: pulumi.Input<pulumi.Input<string>[]>;
|
|
155
193
|
}
|
package/securityProject.js
CHANGED
|
@@ -30,6 +30,8 @@ const utilities = require("./utilities");
|
|
|
30
30
|
* ```sh
|
|
31
31
|
* $ pulumi import ec:index/securityProject:SecurityProject id 320b7b540dfc967a7a649c18e2fce4ed
|
|
32
32
|
* ```
|
|
33
|
+
*
|
|
34
|
+
* > **Note on Credentials** The `credentials` attribute (containing `username` and `password`) is only available when the project is first created. When importing an existing project, these credentials will not be available in the Terraform state as the API does not return them on read operations.
|
|
33
35
|
*/
|
|
34
36
|
class SecurityProject extends pulumi.CustomResource {
|
|
35
37
|
/**
|
|
@@ -66,8 +68,11 @@ class SecurityProject extends pulumi.CustomResource {
|
|
|
66
68
|
resourceInputs["endpoints"] = state?.endpoints;
|
|
67
69
|
resourceInputs["metadata"] = state?.metadata;
|
|
68
70
|
resourceInputs["name"] = state?.name;
|
|
71
|
+
resourceInputs["privateEndpoints"] = state?.privateEndpoints;
|
|
69
72
|
resourceInputs["productTypes"] = state?.productTypes;
|
|
70
73
|
resourceInputs["regionId"] = state?.regionId;
|
|
74
|
+
resourceInputs["searchLake"] = state?.searchLake;
|
|
75
|
+
resourceInputs["trafficFilterIds"] = state?.trafficFilterIds;
|
|
71
76
|
resourceInputs["type"] = state?.type;
|
|
72
77
|
}
|
|
73
78
|
else {
|
|
@@ -77,13 +82,16 @@ class SecurityProject extends pulumi.CustomResource {
|
|
|
77
82
|
}
|
|
78
83
|
resourceInputs["adminFeaturesPackage"] = args?.adminFeaturesPackage;
|
|
79
84
|
resourceInputs["alias"] = args?.alias;
|
|
85
|
+
resourceInputs["metadata"] = args?.metadata;
|
|
80
86
|
resourceInputs["name"] = args?.name;
|
|
81
87
|
resourceInputs["productTypes"] = args?.productTypes;
|
|
82
88
|
resourceInputs["regionId"] = args?.regionId;
|
|
89
|
+
resourceInputs["searchLake"] = args?.searchLake;
|
|
90
|
+
resourceInputs["trafficFilterIds"] = args?.trafficFilterIds;
|
|
83
91
|
resourceInputs["cloudId"] = undefined /*out*/;
|
|
84
92
|
resourceInputs["credentials"] = undefined /*out*/;
|
|
85
93
|
resourceInputs["endpoints"] = undefined /*out*/;
|
|
86
|
-
resourceInputs["
|
|
94
|
+
resourceInputs["privateEndpoints"] = undefined /*out*/;
|
|
87
95
|
resourceInputs["type"] = undefined /*out*/;
|
|
88
96
|
}
|
|
89
97
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
package/securityProject.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"securityProject.js","sourceRoot":"","sources":["../securityProject.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"securityProject.js","sourceRoot":"","sources":["../securityProject.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "./types/input";
|
|
3
|
+
import * as outputs from "./types/output";
|
|
4
|
+
/**
|
|
5
|
+
* ## Example Usage
|
|
6
|
+
*
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
9
|
+
* import * as ec from "@pulumi/ec";
|
|
10
|
+
*
|
|
11
|
+
* const example = new ec.ServerlessTrafficFilter("example", {
|
|
12
|
+
* name: "my-serverless-traffic-filter",
|
|
13
|
+
* region: "aws-us-east-1",
|
|
14
|
+
* type: "ip",
|
|
15
|
+
* description: "Allow traffic from the office network",
|
|
16
|
+
* includeByDefault: false,
|
|
17
|
+
* rules: [{
|
|
18
|
+
* source: "203.0.113.0/24",
|
|
19
|
+
* description: "Office egress",
|
|
20
|
+
* }],
|
|
21
|
+
* });
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* ## Import
|
|
25
|
+
*
|
|
26
|
+
* Serverless traffic filters can be imported using the `id`, for example:
|
|
27
|
+
*
|
|
28
|
+
* ```sh
|
|
29
|
+
* $ pulumi import ec:index/serverlessTrafficFilter:ServerlessTrafficFilter id 320b7b540dfc967a7a649c18e2fce4ed
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* > **Note on Credentials** The `credentials` attribute (containing `username` and `password`) is only available when the project is first created. When importing an existing project, these credentials will not be available in the Terraform state as the API does not return them on read operations.
|
|
33
|
+
*/
|
|
34
|
+
export declare class ServerlessTrafficFilter extends pulumi.CustomResource {
|
|
35
|
+
/**
|
|
36
|
+
* Get an existing ServerlessTrafficFilter 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?: ServerlessTrafficFilterState, opts?: pulumi.CustomResourceOptions): ServerlessTrafficFilter;
|
|
45
|
+
/**
|
|
46
|
+
* Returns true if the given object is an instance of ServerlessTrafficFilter. 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 ServerlessTrafficFilter;
|
|
50
|
+
/**
|
|
51
|
+
* Description of the traffic filter
|
|
52
|
+
*/
|
|
53
|
+
readonly description: pulumi.Output<string>;
|
|
54
|
+
/**
|
|
55
|
+
* Should the traffic filter be automatically included in the new projects
|
|
56
|
+
*/
|
|
57
|
+
readonly includeByDefault: pulumi.Output<boolean>;
|
|
58
|
+
/**
|
|
59
|
+
* Name of the traffic filter
|
|
60
|
+
*/
|
|
61
|
+
readonly name: pulumi.Output<string>;
|
|
62
|
+
/**
|
|
63
|
+
* The traffic filter can be attached only to projects in the specific region
|
|
64
|
+
*/
|
|
65
|
+
readonly region: pulumi.Output<string>;
|
|
66
|
+
/**
|
|
67
|
+
* List of rules
|
|
68
|
+
*/
|
|
69
|
+
readonly rules: pulumi.Output<outputs.ServerlessTrafficFilterRule[]>;
|
|
70
|
+
/**
|
|
71
|
+
* Type of the traffic filter
|
|
72
|
+
*/
|
|
73
|
+
readonly type: pulumi.Output<string>;
|
|
74
|
+
/**
|
|
75
|
+
* Create a ServerlessTrafficFilter resource with the given unique name, arguments, and options.
|
|
76
|
+
*
|
|
77
|
+
* @param name The _unique_ name of the resource.
|
|
78
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
79
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
80
|
+
*/
|
|
81
|
+
constructor(name: string, args: ServerlessTrafficFilterArgs, opts?: pulumi.CustomResourceOptions);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Input properties used for looking up and filtering ServerlessTrafficFilter resources.
|
|
85
|
+
*/
|
|
86
|
+
export interface ServerlessTrafficFilterState {
|
|
87
|
+
/**
|
|
88
|
+
* Description of the traffic filter
|
|
89
|
+
*/
|
|
90
|
+
description?: pulumi.Input<string>;
|
|
91
|
+
/**
|
|
92
|
+
* Should the traffic filter be automatically included in the new projects
|
|
93
|
+
*/
|
|
94
|
+
includeByDefault?: pulumi.Input<boolean>;
|
|
95
|
+
/**
|
|
96
|
+
* Name of the traffic filter
|
|
97
|
+
*/
|
|
98
|
+
name?: pulumi.Input<string>;
|
|
99
|
+
/**
|
|
100
|
+
* The traffic filter can be attached only to projects in the specific region
|
|
101
|
+
*/
|
|
102
|
+
region?: pulumi.Input<string>;
|
|
103
|
+
/**
|
|
104
|
+
* List of rules
|
|
105
|
+
*/
|
|
106
|
+
rules?: pulumi.Input<pulumi.Input<inputs.ServerlessTrafficFilterRule>[]>;
|
|
107
|
+
/**
|
|
108
|
+
* Type of the traffic filter
|
|
109
|
+
*/
|
|
110
|
+
type?: pulumi.Input<string>;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* The set of arguments for constructing a ServerlessTrafficFilter resource.
|
|
114
|
+
*/
|
|
115
|
+
export interface ServerlessTrafficFilterArgs {
|
|
116
|
+
/**
|
|
117
|
+
* Description of the traffic filter
|
|
118
|
+
*/
|
|
119
|
+
description?: pulumi.Input<string>;
|
|
120
|
+
/**
|
|
121
|
+
* Should the traffic filter be automatically included in the new projects
|
|
122
|
+
*/
|
|
123
|
+
includeByDefault?: pulumi.Input<boolean>;
|
|
124
|
+
/**
|
|
125
|
+
* Name of the traffic filter
|
|
126
|
+
*/
|
|
127
|
+
name?: pulumi.Input<string>;
|
|
128
|
+
/**
|
|
129
|
+
* The traffic filter can be attached only to projects in the specific region
|
|
130
|
+
*/
|
|
131
|
+
region: pulumi.Input<string>;
|
|
132
|
+
/**
|
|
133
|
+
* List of rules
|
|
134
|
+
*/
|
|
135
|
+
rules?: pulumi.Input<pulumi.Input<inputs.ServerlessTrafficFilterRule>[]>;
|
|
136
|
+
/**
|
|
137
|
+
* Type of the traffic filter
|
|
138
|
+
*/
|
|
139
|
+
type: pulumi.Input<string>;
|
|
140
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
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.ServerlessTrafficFilter = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* ## Example Usage
|
|
10
|
+
*
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
13
|
+
* import * as ec from "@pulumi/ec";
|
|
14
|
+
*
|
|
15
|
+
* const example = new ec.ServerlessTrafficFilter("example", {
|
|
16
|
+
* name: "my-serverless-traffic-filter",
|
|
17
|
+
* region: "aws-us-east-1",
|
|
18
|
+
* type: "ip",
|
|
19
|
+
* description: "Allow traffic from the office network",
|
|
20
|
+
* includeByDefault: false,
|
|
21
|
+
* rules: [{
|
|
22
|
+
* source: "203.0.113.0/24",
|
|
23
|
+
* description: "Office egress",
|
|
24
|
+
* }],
|
|
25
|
+
* });
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ## Import
|
|
29
|
+
*
|
|
30
|
+
* Serverless traffic filters can be imported using the `id`, for example:
|
|
31
|
+
*
|
|
32
|
+
* ```sh
|
|
33
|
+
* $ pulumi import ec:index/serverlessTrafficFilter:ServerlessTrafficFilter id 320b7b540dfc967a7a649c18e2fce4ed
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* > **Note on Credentials** The `credentials` attribute (containing `username` and `password`) is only available when the project is first created. When importing an existing project, these credentials will not be available in the Terraform state as the API does not return them on read operations.
|
|
37
|
+
*/
|
|
38
|
+
class ServerlessTrafficFilter extends pulumi.CustomResource {
|
|
39
|
+
/**
|
|
40
|
+
* Get an existing ServerlessTrafficFilter 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 ServerlessTrafficFilter(name, state, { ...opts, id: id });
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Returns true if the given object is an instance of ServerlessTrafficFilter. 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'] === ServerlessTrafficFilter.__pulumiType;
|
|
60
|
+
}
|
|
61
|
+
constructor(name, argsOrState, opts) {
|
|
62
|
+
let resourceInputs = {};
|
|
63
|
+
opts = opts || {};
|
|
64
|
+
if (opts.id) {
|
|
65
|
+
const state = argsOrState;
|
|
66
|
+
resourceInputs["description"] = state?.description;
|
|
67
|
+
resourceInputs["includeByDefault"] = state?.includeByDefault;
|
|
68
|
+
resourceInputs["name"] = state?.name;
|
|
69
|
+
resourceInputs["region"] = state?.region;
|
|
70
|
+
resourceInputs["rules"] = state?.rules;
|
|
71
|
+
resourceInputs["type"] = state?.type;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
const args = argsOrState;
|
|
75
|
+
if (args?.region === undefined && !opts.urn) {
|
|
76
|
+
throw new Error("Missing required property 'region'");
|
|
77
|
+
}
|
|
78
|
+
if (args?.type === undefined && !opts.urn) {
|
|
79
|
+
throw new Error("Missing required property 'type'");
|
|
80
|
+
}
|
|
81
|
+
resourceInputs["description"] = args?.description;
|
|
82
|
+
resourceInputs["includeByDefault"] = args?.includeByDefault;
|
|
83
|
+
resourceInputs["name"] = args?.name;
|
|
84
|
+
resourceInputs["region"] = args?.region;
|
|
85
|
+
resourceInputs["rules"] = args?.rules;
|
|
86
|
+
resourceInputs["type"] = args?.type;
|
|
87
|
+
}
|
|
88
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
89
|
+
super(ServerlessTrafficFilter.__pulumiType, name, resourceInputs, opts);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
exports.ServerlessTrafficFilter = ServerlessTrafficFilter;
|
|
93
|
+
/** @internal */
|
|
94
|
+
ServerlessTrafficFilter.__pulumiType = 'ec:index/serverlessTrafficFilter:ServerlessTrafficFilter';
|
|
95
|
+
//# sourceMappingURL=serverlessTrafficFilter.js.map
|