@pulumi/fastly 8.5.0 → 8.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/alert.d.ts +2 -0
- package/alert.js +2 -0
- package/alert.js.map +1 -1
- package/configstore.d.ts +2 -0
- package/configstore.js +2 -0
- package/configstore.js.map +1 -1
- package/getDictionaries.d.ts +4 -0
- package/getDictionaries.js +4 -0
- package/getDictionaries.js.map +1 -1
- package/getFastlyIpRanges.d.ts +4 -0
- package/getFastlyIpRanges.js +4 -0
- package/getFastlyIpRanges.js.map +1 -1
- package/getPackageHash.d.ts +4 -0
- package/getPackageHash.js +4 -0
- package/getPackageHash.js.map +1 -1
- package/getTlsActivation.d.ts +4 -0
- package/getTlsActivation.js +4 -0
- package/getTlsActivation.js.map +1 -1
- package/getTlsActivationIds.d.ts +4 -0
- package/getTlsActivationIds.js +4 -0
- package/getTlsActivationIds.js.map +1 -1
- package/getTlsCertificate.d.ts +4 -0
- package/getTlsCertificate.js +4 -0
- package/getTlsCertificate.js.map +1 -1
- package/getTlsCertificateIds.d.ts +4 -0
- package/getTlsCertificateIds.js +4 -0
- package/getTlsCertificateIds.js.map +1 -1
- package/getTlsConfiguration.d.ts +4 -0
- package/getTlsConfiguration.js +4 -0
- package/getTlsConfiguration.js.map +1 -1
- package/getTlsConfigurationIds.d.ts +4 -0
- package/getTlsConfigurationIds.js +4 -0
- package/getTlsConfigurationIds.js.map +1 -1
- package/getTlsDomain.d.ts +4 -0
- package/getTlsDomain.js +4 -0
- package/getTlsDomain.js.map +1 -1
- package/getTlsPlatformCertificate.d.ts +4 -0
- package/getTlsPlatformCertificate.js +4 -0
- package/getTlsPlatformCertificate.js.map +1 -1
- package/getTlsPlatformCertificateIds.d.ts +4 -0
- package/getTlsPlatformCertificateIds.js +4 -0
- package/getTlsPlatformCertificateIds.js.map +1 -1
- package/getTlsPrivateKey.d.ts +4 -0
- package/getTlsPrivateKey.js +4 -0
- package/getTlsPrivateKey.js.map +1 -1
- package/getTlsPrivateKeyIds.d.ts +4 -0
- package/getTlsPrivateKeyIds.js +4 -0
- package/getTlsPrivateKeyIds.js.map +1 -1
- package/getTlsSubscription.d.ts +4 -0
- package/getTlsSubscription.js +4 -0
- package/getTlsSubscription.js.map +1 -1
- package/getTlsSubscriptionIds.d.ts +4 -0
- package/getTlsSubscriptionIds.js +4 -0
- package/getTlsSubscriptionIds.js.map +1 -1
- package/kvstore.d.ts +2 -0
- package/kvstore.js +2 -0
- package/kvstore.js.map +1 -1
- package/package.json +1 -1
- package/secretstore.d.ts +2 -0
- package/secretstore.js +2 -0
- package/secretstore.js.map +1 -1
- package/serviceACLEntries.d.ts +4 -4
- package/serviceACLEntries.js +4 -4
- package/serviceAuthorization.d.ts +2 -0
- package/serviceAuthorization.js +2 -0
- package/serviceAuthorization.js.map +1 -1
- package/serviceCompute.d.ts +2 -2
- package/serviceCompute.js +2 -2
- package/serviceDictionaryItems.d.ts +4 -4
- package/serviceDictionaryItems.js +4 -4
- package/serviceDynamicSnippetContent.d.ts +4 -4
- package/serviceDynamicSnippetContent.js +4 -4
- package/serviceVcl.d.ts +2 -2
- package/serviceVcl.js +2 -2
- package/serviceWafConfiguration.d.ts +167 -9
- package/serviceWafConfiguration.js +167 -9
- package/serviceWafConfiguration.js.map +1 -1
- package/tlsActivation.d.ts +2 -0
- package/tlsActivation.js +2 -0
- package/tlsActivation.js.map +1 -1
- package/tlsCertificate.d.ts +3 -0
- package/tlsCertificate.js +3 -0
- package/tlsCertificate.js.map +1 -1
- package/tlsPlatformCertificate.d.ts +2 -0
- package/tlsPlatformCertificate.js +2 -0
- package/tlsPlatformCertificate.js.map +1 -1
- package/tlsPrivateKey.d.ts +2 -0
- package/tlsPrivateKey.js +2 -0
- package/tlsPrivateKey.js.map +1 -1
- package/types/input.d.ts +26 -18
- package/types/output.d.ts +26 -18
- package/user.d.ts +2 -0
- package/user.js +2 -0
- package/user.js.map +1 -1
package/serviceACLEntries.d.ts
CHANGED
|
@@ -6,17 +6,17 @@ import * as outputs from "./types/output";
|
|
|
6
6
|
*
|
|
7
7
|
* This is an example of the import command being applied to the resource named `fastly_service_acl_entries.entries`
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* The resource ID is a combined value of the `service_id` and `acl_id` separated by a forward slash.
|
|
10
10
|
*
|
|
11
11
|
* ```sh
|
|
12
12
|
* $ pulumi import fastly:index/serviceACLEntries:ServiceACLEntries entries xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
13
13
|
* ```
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* If Terraform is already managing remote acl entries against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_acl_entries.entries` from the Terraform state file.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* $ terraform state rm fastly_service_acl_entries.entries
|
|
20
20
|
*/
|
|
21
21
|
export declare class ServiceACLEntries extends pulumi.CustomResource {
|
|
22
22
|
/**
|
package/serviceACLEntries.js
CHANGED
|
@@ -10,17 +10,17 @@ const utilities = require("./utilities");
|
|
|
10
10
|
*
|
|
11
11
|
* This is an example of the import command being applied to the resource named `fastly_service_acl_entries.entries`
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* The resource ID is a combined value of the `service_id` and `acl_id` separated by a forward slash.
|
|
14
14
|
*
|
|
15
15
|
* ```sh
|
|
16
16
|
* $ pulumi import fastly:index/serviceACLEntries:ServiceACLEntries entries xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
17
17
|
* ```
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* If Terraform is already managing remote acl entries against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
20
20
|
*
|
|
21
|
-
*
|
|
21
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_acl_entries.entries` from the Terraform state file.
|
|
22
22
|
*
|
|
23
|
-
*
|
|
23
|
+
* $ terraform state rm fastly_service_acl_entries.entries
|
|
24
24
|
*/
|
|
25
25
|
class ServiceACLEntries extends pulumi.CustomResource {
|
|
26
26
|
/**
|
|
@@ -8,6 +8,7 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
8
8
|
*
|
|
9
9
|
* Basic usage:
|
|
10
10
|
*
|
|
11
|
+
* <!--Start PulumiCodeChooser -->
|
|
11
12
|
* ```typescript
|
|
12
13
|
* import * as pulumi from "@pulumi/pulumi";
|
|
13
14
|
* import * as fastly from "@pulumi/fastly";
|
|
@@ -22,6 +23,7 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
22
23
|
* permission: "purge_all",
|
|
23
24
|
* });
|
|
24
25
|
* ```
|
|
26
|
+
* <!--End PulumiCodeChooser -->
|
|
25
27
|
*
|
|
26
28
|
* ## Import
|
|
27
29
|
*
|
package/serviceAuthorization.js
CHANGED
|
@@ -14,6 +14,7 @@ const utilities = require("./utilities");
|
|
|
14
14
|
*
|
|
15
15
|
* Basic usage:
|
|
16
16
|
*
|
|
17
|
+
* <!--Start PulumiCodeChooser -->
|
|
17
18
|
* ```typescript
|
|
18
19
|
* import * as pulumi from "@pulumi/pulumi";
|
|
19
20
|
* import * as fastly from "@pulumi/fastly";
|
|
@@ -28,6 +29,7 @@ const utilities = require("./utilities");
|
|
|
28
29
|
* permission: "purge_all",
|
|
29
30
|
* });
|
|
30
31
|
* ```
|
|
32
|
+
* <!--End PulumiCodeChooser -->
|
|
31
33
|
*
|
|
32
34
|
* ## Import
|
|
33
35
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serviceAuthorization.js","sourceRoot":"","sources":["../serviceAuthorization.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"serviceAuthorization.js","sourceRoot":"","sources":["../serviceAuthorization.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAa,oBAAqB,SAAQ,MAAM,CAAC,cAAc;IAC3D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAiC,EAAE,IAAmC;QAC/H,OAAO,IAAI,oBAAoB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC3E,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,oBAAoB,CAAC,YAAY,CAAC;IACrE,CAAC;IAuBD,YAAY,IAAY,EAAE,WAAkE,EAAE,IAAmC;QAC7H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAoD,CAAC;YACnE,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/D;aAAM;YACH,MAAM,IAAI,GAAG,WAAmD,CAAC;YACjE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtD,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;aAC5D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;YACD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7D;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,oBAAoB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;;AA1EL,oDA2EC;AA7DG,gBAAgB;AACO,iCAAY,GAAG,wDAAwD,CAAC"}
|
package/serviceCompute.d.ts
CHANGED
|
@@ -10,9 +10,9 @@ import * as outputs from "./types/output";
|
|
|
10
10
|
* $ pulumi import fastly:index/serviceCompute:ServiceCompute demo xxxxxxxxxxxxxxxxxxxx
|
|
11
11
|
* ```
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* By default, either the active version will be imported, or the latest version if no version is active.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* Alternatively, a specific version of the service can be selected by appending an `@` followed by the version number to the service ID, e.g.
|
|
16
16
|
*
|
|
17
17
|
* ```sh
|
|
18
18
|
* $ pulumi import fastly:index/serviceCompute:ServiceCompute demo xxxxxxxxxxxxxxxxxxxx@2
|
package/serviceCompute.js
CHANGED
|
@@ -14,9 +14,9 @@ const utilities = require("./utilities");
|
|
|
14
14
|
* $ pulumi import fastly:index/serviceCompute:ServiceCompute demo xxxxxxxxxxxxxxxxxxxx
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* By default, either the active version will be imported, or the latest version if no version is active.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* Alternatively, a specific version of the service can be selected by appending an `@` followed by the version number to the service ID, e.g.
|
|
20
20
|
*
|
|
21
21
|
* ```sh
|
|
22
22
|
* $ pulumi import fastly:index/serviceCompute:ServiceCompute demo xxxxxxxxxxxxxxxxxxxx@2
|
|
@@ -4,17 +4,17 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
4
4
|
*
|
|
5
5
|
* This is an example of the import command being applied to the resource named `fastly_service_dictionary_items.items`
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* The resource ID is a combined value of the `service_id` and `dictionary_id` separated by a forward slash.
|
|
8
8
|
*
|
|
9
9
|
* ```sh
|
|
10
10
|
* $ pulumi import fastly:index/serviceDictionaryItems:ServiceDictionaryItems items xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
11
11
|
* ```
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* If Terraform is already managing remote dictionary items against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_dictionary_items.items` from the Terraform state file.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* $ terraform state rm fastly_service_dictionary_items.items
|
|
18
18
|
*/
|
|
19
19
|
export declare class ServiceDictionaryItems extends pulumi.CustomResource {
|
|
20
20
|
/**
|
|
@@ -10,17 +10,17 @@ const utilities = require("./utilities");
|
|
|
10
10
|
*
|
|
11
11
|
* This is an example of the import command being applied to the resource named `fastly_service_dictionary_items.items`
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* The resource ID is a combined value of the `service_id` and `dictionary_id` separated by a forward slash.
|
|
14
14
|
*
|
|
15
15
|
* ```sh
|
|
16
16
|
* $ pulumi import fastly:index/serviceDictionaryItems:ServiceDictionaryItems items xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
17
17
|
* ```
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* If Terraform is already managing remote dictionary items against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
20
20
|
*
|
|
21
|
-
*
|
|
21
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_dictionary_items.items` from the Terraform state file.
|
|
22
22
|
*
|
|
23
|
-
*
|
|
23
|
+
* $ terraform state rm fastly_service_dictionary_items.items
|
|
24
24
|
*/
|
|
25
25
|
class ServiceDictionaryItems extends pulumi.CustomResource {
|
|
26
26
|
/**
|
|
@@ -4,17 +4,17 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
4
4
|
*
|
|
5
5
|
* This is an example of the import command being applied to the resource named `fastly_service_dynamic_snippet_content.content`
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* The resource ID is a combined value of the `service_id` and `snippet_id` separated by a forward slash.
|
|
8
8
|
*
|
|
9
9
|
* ```sh
|
|
10
10
|
* $ pulumi import fastly:index/serviceDynamicSnippetContent:ServiceDynamicSnippetContent content xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
11
11
|
* ```
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* If Terraform is already managing remote content against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_dynamic_snippet_content.content` from the Terraform state file.
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* $ terraform state rm fastly_service_dynamic_snippet_content.content
|
|
18
18
|
*/
|
|
19
19
|
export declare class ServiceDynamicSnippetContent extends pulumi.CustomResource {
|
|
20
20
|
/**
|
|
@@ -10,17 +10,17 @@ const utilities = require("./utilities");
|
|
|
10
10
|
*
|
|
11
11
|
* This is an example of the import command being applied to the resource named `fastly_service_dynamic_snippet_content.content`
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* The resource ID is a combined value of the `service_id` and `snippet_id` separated by a forward slash.
|
|
14
14
|
*
|
|
15
15
|
* ```sh
|
|
16
16
|
* $ pulumi import fastly:index/serviceDynamicSnippetContent:ServiceDynamicSnippetContent content xxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxx
|
|
17
17
|
* ```
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* If Terraform is already managing remote content against a resource being imported then the user will be asked to remove it from the existing Terraform state.
|
|
20
20
|
*
|
|
21
|
-
*
|
|
21
|
+
* The following is an example of the Terraform state command to remove the resource named `fastly_service_dynamic_snippet_content.content` from the Terraform state file.
|
|
22
22
|
*
|
|
23
|
-
*
|
|
23
|
+
* $ terraform state rm fastly_service_dynamic_snippet_content.content
|
|
24
24
|
*/
|
|
25
25
|
class ServiceDynamicSnippetContent extends pulumi.CustomResource {
|
|
26
26
|
/**
|
package/serviceVcl.d.ts
CHANGED
|
@@ -10,9 +10,9 @@ import * as outputs from "./types/output";
|
|
|
10
10
|
* $ pulumi import fastly:index/serviceVcl:ServiceVcl demo xxxxxxxxxxxxxxxxxxxx
|
|
11
11
|
* ```
|
|
12
12
|
*
|
|
13
|
-
*
|
|
13
|
+
* By default, either the active version will be imported, or the latest version if no version is active.
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* Alternatively, a specific version of the service can be selected by appending an `@` followed by the version number to the service ID, e.g.
|
|
16
16
|
*
|
|
17
17
|
* ```sh
|
|
18
18
|
* $ pulumi import fastly:index/serviceVcl:ServiceVcl demo xxxxxxxxxxxxxxxxxxxx@2
|
package/serviceVcl.js
CHANGED
|
@@ -14,9 +14,9 @@ const utilities = require("./utilities");
|
|
|
14
14
|
* $ pulumi import fastly:index/serviceVcl:ServiceVcl demo xxxxxxxxxxxxxxxxxxxx
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
-
*
|
|
17
|
+
* By default, either the active version will be imported, or the latest version if no version is active.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
19
|
+
* Alternatively, a specific version of the service can be selected by appending an `@` followed by the version number to the service ID, e.g.
|
|
20
20
|
*
|
|
21
21
|
* ```sh
|
|
22
22
|
* $ pulumi import fastly:index/serviceVcl:ServiceVcl demo xxxxxxxxxxxxxxxxxxxx@2
|
|
@@ -6,25 +6,183 @@ import * as outputs from "./types/output";
|
|
|
6
6
|
*
|
|
7
7
|
* > **Warning:** This provider will take precedence over any changes you make in the UI or API. Such changes are likely to be reversed if you run the provider again.
|
|
8
8
|
*
|
|
9
|
-
* ##
|
|
9
|
+
* ## Example Usage
|
|
10
10
|
*
|
|
11
|
-
*
|
|
11
|
+
* Basic usage:
|
|
12
12
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
13
|
+
* <!--Start PulumiCodeChooser -->
|
|
14
|
+
* ```typescript
|
|
15
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
16
|
+
* import * as fastly from "@pulumi/fastly";
|
|
15
17
|
*
|
|
16
|
-
*
|
|
18
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
19
|
+
* domains: [{
|
|
20
|
+
* name: "example.com",
|
|
21
|
+
* comment: "demo",
|
|
22
|
+
* }],
|
|
23
|
+
* backends: [{
|
|
24
|
+
* address: "127.0.0.1",
|
|
25
|
+
* name: "origin1",
|
|
26
|
+
* port: 80,
|
|
27
|
+
* }],
|
|
28
|
+
* conditions: [
|
|
29
|
+
* {
|
|
30
|
+
* name: "WAF_Prefetch",
|
|
31
|
+
* type: "PREFETCH",
|
|
32
|
+
* statement: "req.backend.is_origin",
|
|
33
|
+
* },
|
|
34
|
+
* {
|
|
35
|
+
* name: "WAF_always_false",
|
|
36
|
+
* statement: "false",
|
|
37
|
+
* type: "REQUEST",
|
|
38
|
+
* },
|
|
39
|
+
* ],
|
|
40
|
+
* responseObjects: [{
|
|
41
|
+
* name: "WAF_Response",
|
|
42
|
+
* status: 403,
|
|
43
|
+
* response: "Forbidden",
|
|
44
|
+
* contentType: "text/html",
|
|
45
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
46
|
+
* requestCondition: "WAF_always_false",
|
|
47
|
+
* }],
|
|
48
|
+
* waf: {
|
|
49
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
50
|
+
* responseObject: "WAF_Response",
|
|
51
|
+
* },
|
|
52
|
+
* forceDestroy: true,
|
|
53
|
+
* });
|
|
54
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
55
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
56
|
+
* httpViolationScoreThreshold: 100,
|
|
57
|
+
* });
|
|
58
|
+
* ```
|
|
59
|
+
* <!--End PulumiCodeChooser -->
|
|
60
|
+
*
|
|
61
|
+
* Usage with rules:
|
|
62
|
+
*
|
|
63
|
+
* <!--Start PulumiCodeChooser -->
|
|
64
|
+
* ```typescript
|
|
65
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
66
|
+
* import * as fastly from "@pulumi/fastly";
|
|
67
|
+
*
|
|
68
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
69
|
+
* domains: [{
|
|
70
|
+
* name: "example.com",
|
|
71
|
+
* comment: "demo",
|
|
72
|
+
* }],
|
|
73
|
+
* backends: [{
|
|
74
|
+
* address: "127.0.0.1",
|
|
75
|
+
* name: "origin1",
|
|
76
|
+
* port: 80,
|
|
77
|
+
* }],
|
|
78
|
+
* conditions: [
|
|
79
|
+
* {
|
|
80
|
+
* name: "WAF_Prefetch",
|
|
81
|
+
* type: "PREFETCH",
|
|
82
|
+
* statement: "req.backend.is_origin",
|
|
83
|
+
* },
|
|
84
|
+
* {
|
|
85
|
+
* name: "WAF_always_false",
|
|
86
|
+
* statement: "false",
|
|
87
|
+
* type: "REQUEST",
|
|
88
|
+
* },
|
|
89
|
+
* ],
|
|
90
|
+
* responseObjects: [{
|
|
91
|
+
* name: "WAF_Response",
|
|
92
|
+
* status: 403,
|
|
93
|
+
* response: "Forbidden",
|
|
94
|
+
* contentType: "text/html",
|
|
95
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
96
|
+
* requestCondition: "WAF_always_false",
|
|
97
|
+
* }],
|
|
98
|
+
* waf: {
|
|
99
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
100
|
+
* responseObject: "WAF_Response",
|
|
101
|
+
* },
|
|
102
|
+
* forceDestroy: true,
|
|
103
|
+
* });
|
|
104
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
105
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
106
|
+
* httpViolationScoreThreshold: 100,
|
|
107
|
+
* rules: [{
|
|
108
|
+
* modsecRuleId: 1010090,
|
|
109
|
+
* revision: 1,
|
|
110
|
+
* status: "log",
|
|
111
|
+
* }],
|
|
112
|
+
* });
|
|
113
|
+
* ```
|
|
114
|
+
* <!--End PulumiCodeChooser -->
|
|
17
115
|
*
|
|
18
|
-
*
|
|
116
|
+
* Usage with rule exclusions:
|
|
117
|
+
*
|
|
118
|
+
* > **Warning:** Rule exclusions are part of a **beta release**, which may be subject to breaking changes and improvements over time. For more information, see our [product and feature lifecycle](https://docs.fastly.com/products/fastly-product-lifecycle#beta) descriptions.
|
|
119
|
+
*
|
|
120
|
+
* <!--Start PulumiCodeChooser -->
|
|
121
|
+
* ```typescript
|
|
122
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
123
|
+
* import * as fastly from "@pulumi/fastly";
|
|
124
|
+
*
|
|
125
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
126
|
+
* domains: [{
|
|
127
|
+
* name: "example.com",
|
|
128
|
+
* comment: "demo",
|
|
129
|
+
* }],
|
|
130
|
+
* backends: [{
|
|
131
|
+
* address: "127.0.0.1",
|
|
132
|
+
* name: "origin1",
|
|
133
|
+
* port: 80,
|
|
134
|
+
* }],
|
|
135
|
+
* conditions: [
|
|
136
|
+
* {
|
|
137
|
+
* name: "WAF_Prefetch",
|
|
138
|
+
* type: "PREFETCH",
|
|
139
|
+
* statement: "req.backend.is_origin",
|
|
140
|
+
* },
|
|
141
|
+
* {
|
|
142
|
+
* name: "WAF_always_false",
|
|
143
|
+
* statement: "false",
|
|
144
|
+
* type: "REQUEST",
|
|
145
|
+
* },
|
|
146
|
+
* ],
|
|
147
|
+
* responseObjects: [{
|
|
148
|
+
* name: "WAF_Response",
|
|
149
|
+
* status: 403,
|
|
150
|
+
* response: "Forbidden",
|
|
151
|
+
* contentType: "text/html",
|
|
152
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
153
|
+
* requestCondition: "WAF_always_false",
|
|
154
|
+
* }],
|
|
155
|
+
* waf: {
|
|
156
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
157
|
+
* responseObject: "WAF_Response",
|
|
158
|
+
* },
|
|
159
|
+
* forceDestroy: true,
|
|
160
|
+
* });
|
|
161
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
162
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
163
|
+
* httpViolationScoreThreshold: 100,
|
|
164
|
+
* rules: [{
|
|
165
|
+
* modsecRuleId: 2029718,
|
|
166
|
+
* revision: 1,
|
|
167
|
+
* status: "log",
|
|
168
|
+
* }],
|
|
169
|
+
* ruleExclusions: [{
|
|
170
|
+
* name: "index page",
|
|
171
|
+
* exclusionType: "rule",
|
|
172
|
+
* condition: "req.url.basename == \"index.html\"",
|
|
173
|
+
* modsecRuleIds: [2029718],
|
|
174
|
+
* }],
|
|
175
|
+
* });
|
|
176
|
+
* ```
|
|
177
|
+
* <!--End PulumiCodeChooser -->
|
|
19
178
|
*
|
|
20
|
-
*
|
|
21
|
-
* 2. Add the `fastly.ServiceWafConfiguration` to the HCL and apply the changes
|
|
179
|
+
* Usage with rules from data source:
|
|
22
180
|
*
|
|
23
181
|
* ## Import
|
|
24
182
|
*
|
|
25
183
|
* This is an example of the import command being applied to the resource named `fastly_service_waf_configuration.waf`
|
|
26
184
|
*
|
|
27
|
-
*
|
|
185
|
+
* The resource ID should be the WAF ID.
|
|
28
186
|
*
|
|
29
187
|
* ```sh
|
|
30
188
|
* $ pulumi import fastly:index/serviceWafConfiguration:ServiceWafConfiguration waf xxxxxxxxxxxxxxxxxxxx
|
|
@@ -10,25 +10,183 @@ const utilities = require("./utilities");
|
|
|
10
10
|
*
|
|
11
11
|
* > **Warning:** This provider will take precedence over any changes you make in the UI or API. Such changes are likely to be reversed if you run the provider again.
|
|
12
12
|
*
|
|
13
|
-
* ##
|
|
13
|
+
* ## Example Usage
|
|
14
14
|
*
|
|
15
|
-
*
|
|
15
|
+
* Basic usage:
|
|
16
16
|
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* <!--Start PulumiCodeChooser -->
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
20
|
+
* import * as fastly from "@pulumi/fastly";
|
|
19
21
|
*
|
|
20
|
-
*
|
|
22
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
23
|
+
* domains: [{
|
|
24
|
+
* name: "example.com",
|
|
25
|
+
* comment: "demo",
|
|
26
|
+
* }],
|
|
27
|
+
* backends: [{
|
|
28
|
+
* address: "127.0.0.1",
|
|
29
|
+
* name: "origin1",
|
|
30
|
+
* port: 80,
|
|
31
|
+
* }],
|
|
32
|
+
* conditions: [
|
|
33
|
+
* {
|
|
34
|
+
* name: "WAF_Prefetch",
|
|
35
|
+
* type: "PREFETCH",
|
|
36
|
+
* statement: "req.backend.is_origin",
|
|
37
|
+
* },
|
|
38
|
+
* {
|
|
39
|
+
* name: "WAF_always_false",
|
|
40
|
+
* statement: "false",
|
|
41
|
+
* type: "REQUEST",
|
|
42
|
+
* },
|
|
43
|
+
* ],
|
|
44
|
+
* responseObjects: [{
|
|
45
|
+
* name: "WAF_Response",
|
|
46
|
+
* status: 403,
|
|
47
|
+
* response: "Forbidden",
|
|
48
|
+
* contentType: "text/html",
|
|
49
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
50
|
+
* requestCondition: "WAF_always_false",
|
|
51
|
+
* }],
|
|
52
|
+
* waf: {
|
|
53
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
54
|
+
* responseObject: "WAF_Response",
|
|
55
|
+
* },
|
|
56
|
+
* forceDestroy: true,
|
|
57
|
+
* });
|
|
58
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
59
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
60
|
+
* httpViolationScoreThreshold: 100,
|
|
61
|
+
* });
|
|
62
|
+
* ```
|
|
63
|
+
* <!--End PulumiCodeChooser -->
|
|
64
|
+
*
|
|
65
|
+
* Usage with rules:
|
|
66
|
+
*
|
|
67
|
+
* <!--Start PulumiCodeChooser -->
|
|
68
|
+
* ```typescript
|
|
69
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
70
|
+
* import * as fastly from "@pulumi/fastly";
|
|
71
|
+
*
|
|
72
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
73
|
+
* domains: [{
|
|
74
|
+
* name: "example.com",
|
|
75
|
+
* comment: "demo",
|
|
76
|
+
* }],
|
|
77
|
+
* backends: [{
|
|
78
|
+
* address: "127.0.0.1",
|
|
79
|
+
* name: "origin1",
|
|
80
|
+
* port: 80,
|
|
81
|
+
* }],
|
|
82
|
+
* conditions: [
|
|
83
|
+
* {
|
|
84
|
+
* name: "WAF_Prefetch",
|
|
85
|
+
* type: "PREFETCH",
|
|
86
|
+
* statement: "req.backend.is_origin",
|
|
87
|
+
* },
|
|
88
|
+
* {
|
|
89
|
+
* name: "WAF_always_false",
|
|
90
|
+
* statement: "false",
|
|
91
|
+
* type: "REQUEST",
|
|
92
|
+
* },
|
|
93
|
+
* ],
|
|
94
|
+
* responseObjects: [{
|
|
95
|
+
* name: "WAF_Response",
|
|
96
|
+
* status: 403,
|
|
97
|
+
* response: "Forbidden",
|
|
98
|
+
* contentType: "text/html",
|
|
99
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
100
|
+
* requestCondition: "WAF_always_false",
|
|
101
|
+
* }],
|
|
102
|
+
* waf: {
|
|
103
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
104
|
+
* responseObject: "WAF_Response",
|
|
105
|
+
* },
|
|
106
|
+
* forceDestroy: true,
|
|
107
|
+
* });
|
|
108
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
109
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
110
|
+
* httpViolationScoreThreshold: 100,
|
|
111
|
+
* rules: [{
|
|
112
|
+
* modsecRuleId: 1010090,
|
|
113
|
+
* revision: 1,
|
|
114
|
+
* status: "log",
|
|
115
|
+
* }],
|
|
116
|
+
* });
|
|
117
|
+
* ```
|
|
118
|
+
* <!--End PulumiCodeChooser -->
|
|
21
119
|
*
|
|
22
|
-
*
|
|
120
|
+
* Usage with rule exclusions:
|
|
121
|
+
*
|
|
122
|
+
* > **Warning:** Rule exclusions are part of a **beta release**, which may be subject to breaking changes and improvements over time. For more information, see our [product and feature lifecycle](https://docs.fastly.com/products/fastly-product-lifecycle#beta) descriptions.
|
|
123
|
+
*
|
|
124
|
+
* <!--Start PulumiCodeChooser -->
|
|
125
|
+
* ```typescript
|
|
126
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
127
|
+
* import * as fastly from "@pulumi/fastly";
|
|
128
|
+
*
|
|
129
|
+
* const demo = new fastly.ServiceVcl("demo", {
|
|
130
|
+
* domains: [{
|
|
131
|
+
* name: "example.com",
|
|
132
|
+
* comment: "demo",
|
|
133
|
+
* }],
|
|
134
|
+
* backends: [{
|
|
135
|
+
* address: "127.0.0.1",
|
|
136
|
+
* name: "origin1",
|
|
137
|
+
* port: 80,
|
|
138
|
+
* }],
|
|
139
|
+
* conditions: [
|
|
140
|
+
* {
|
|
141
|
+
* name: "WAF_Prefetch",
|
|
142
|
+
* type: "PREFETCH",
|
|
143
|
+
* statement: "req.backend.is_origin",
|
|
144
|
+
* },
|
|
145
|
+
* {
|
|
146
|
+
* name: "WAF_always_false",
|
|
147
|
+
* statement: "false",
|
|
148
|
+
* type: "REQUEST",
|
|
149
|
+
* },
|
|
150
|
+
* ],
|
|
151
|
+
* responseObjects: [{
|
|
152
|
+
* name: "WAF_Response",
|
|
153
|
+
* status: 403,
|
|
154
|
+
* response: "Forbidden",
|
|
155
|
+
* contentType: "text/html",
|
|
156
|
+
* content: "<html><body>Forbidden</body></html>",
|
|
157
|
+
* requestCondition: "WAF_always_false",
|
|
158
|
+
* }],
|
|
159
|
+
* waf: {
|
|
160
|
+
* prefetchCondition: "WAF_Prefetch",
|
|
161
|
+
* responseObject: "WAF_Response",
|
|
162
|
+
* },
|
|
163
|
+
* forceDestroy: true,
|
|
164
|
+
* });
|
|
165
|
+
* const waf = new fastly.ServiceWafConfiguration("waf", {
|
|
166
|
+
* wafId: demo.waf.apply(waf => waf?.wafId),
|
|
167
|
+
* httpViolationScoreThreshold: 100,
|
|
168
|
+
* rules: [{
|
|
169
|
+
* modsecRuleId: 2029718,
|
|
170
|
+
* revision: 1,
|
|
171
|
+
* status: "log",
|
|
172
|
+
* }],
|
|
173
|
+
* ruleExclusions: [{
|
|
174
|
+
* name: "index page",
|
|
175
|
+
* exclusionType: "rule",
|
|
176
|
+
* condition: "req.url.basename == \"index.html\"",
|
|
177
|
+
* modsecRuleIds: [2029718],
|
|
178
|
+
* }],
|
|
179
|
+
* });
|
|
180
|
+
* ```
|
|
181
|
+
* <!--End PulumiCodeChooser -->
|
|
23
182
|
*
|
|
24
|
-
*
|
|
25
|
-
* 2. Add the `fastly.ServiceWafConfiguration` to the HCL and apply the changes
|
|
183
|
+
* Usage with rules from data source:
|
|
26
184
|
*
|
|
27
185
|
* ## Import
|
|
28
186
|
*
|
|
29
187
|
* This is an example of the import command being applied to the resource named `fastly_service_waf_configuration.waf`
|
|
30
188
|
*
|
|
31
|
-
*
|
|
189
|
+
* The resource ID should be the WAF ID.
|
|
32
190
|
*
|
|
33
191
|
* ```sh
|
|
34
192
|
* $ pulumi import fastly:index/serviceWafConfiguration:ServiceWafConfiguration waf xxxxxxxxxxxxxxxxxxxx
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serviceWafConfiguration.js","sourceRoot":"","sources":["../serviceWafConfiguration.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"serviceWafConfiguration.js","sourceRoot":"","sources":["../serviceWafConfiguration.ts"],"names":[],"mappings":"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"}
|