@pulumi/scm 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/forwardingProfile.d.ts +294 -0
  2. package/forwardingProfile.js +247 -0
  3. package/forwardingProfile.js.map +1 -0
  4. package/forwardingProfileDestination.d.ts +190 -0
  5. package/forwardingProfileDestination.js +143 -0
  6. package/forwardingProfileDestination.js.map +1 -0
  7. package/forwardingProfileRegionalAndCustomProxy.d.ts +289 -0
  8. package/forwardingProfileRegionalAndCustomProxy.js +192 -0
  9. package/forwardingProfileRegionalAndCustomProxy.js.map +1 -0
  10. package/forwardingProfileSourceApplication.d.ts +161 -0
  11. package/forwardingProfileSourceApplication.js +129 -0
  12. package/forwardingProfileSourceApplication.js.map +1 -0
  13. package/forwardingProfileUserLocation.d.ts +172 -0
  14. package/forwardingProfileUserLocation.js +125 -0
  15. package/forwardingProfileUserLocation.js.map +1 -0
  16. package/getAddressGroupList.d.ts +4 -4
  17. package/getAddressGroupList.js +4 -4
  18. package/getAddressList.d.ts +4 -4
  19. package/getAddressList.js +4 -4
  20. package/getAggregateInterfaceList.d.ts +2 -2
  21. package/getAggregateInterfaceList.js +2 -2
  22. package/getApplicationGroupList.d.ts +4 -4
  23. package/getApplicationGroupList.js +4 -4
  24. package/getBgpAuthProfileList.d.ts +2 -2
  25. package/getBgpAuthProfileList.js +2 -2
  26. package/getBgpRedistributionProfileList.d.ts +2 -2
  27. package/getBgpRedistributionProfileList.js +2 -2
  28. package/getBgpRouteMapList.d.ts +2 -2
  29. package/getBgpRouteMapList.js +2 -2
  30. package/getConfigMatchListList.d.ts +2 -2
  31. package/getConfigMatchListList.js +2 -2
  32. package/getDevice.d.ts +267 -0
  33. package/getDevice.js +82 -0
  34. package/getDevice.js.map +1 -0
  35. package/getDeviceList.d.ts +171 -0
  36. package/getDeviceList.js +88 -0
  37. package/getDeviceList.js.map +1 -0
  38. package/getDynamicUserGroupList.d.ts +4 -4
  39. package/getDynamicUserGroupList.js +4 -4
  40. package/getEthernetInterfaceList.d.ts +2 -2
  41. package/getEthernetInterfaceList.js +2 -2
  42. package/getForwardingProfile.d.ts +137 -0
  43. package/getForwardingProfile.js +92 -0
  44. package/getForwardingProfile.js.map +1 -0
  45. package/getForwardingProfileDestination.d.ts +127 -0
  46. package/getForwardingProfileDestination.js +82 -0
  47. package/getForwardingProfileDestination.js.map +1 -0
  48. package/getForwardingProfileDestinationList.d.ts +163 -0
  49. package/getForwardingProfileDestinationList.js +90 -0
  50. package/getForwardingProfileDestinationList.js.map +1 -0
  51. package/getForwardingProfileList.d.ts +163 -0
  52. package/getForwardingProfileList.js +90 -0
  53. package/getForwardingProfileList.js.map +1 -0
  54. package/getForwardingProfileRegionalAndCustomProxy.d.ts +157 -0
  55. package/getForwardingProfileRegionalAndCustomProxy.js +92 -0
  56. package/getForwardingProfileRegionalAndCustomProxy.js.map +1 -0
  57. package/getForwardingProfileRegionalAndCustomProxyList.d.ts +163 -0
  58. package/getForwardingProfileRegionalAndCustomProxyList.js +90 -0
  59. package/getForwardingProfileRegionalAndCustomProxyList.js.map +1 -0
  60. package/getForwardingProfileSourceApplication.d.ts +98 -0
  61. package/getForwardingProfileSourceApplication.js +58 -0
  62. package/getForwardingProfileSourceApplication.js.map +1 -0
  63. package/getForwardingProfileSourceApplicationList.d.ts +113 -0
  64. package/getForwardingProfileSourceApplicationList.js +40 -0
  65. package/getForwardingProfileSourceApplicationList.js.map +1 -0
  66. package/getForwardingProfileUserLocation.d.ts +127 -0
  67. package/getForwardingProfileUserLocation.js +82 -0
  68. package/getForwardingProfileUserLocation.js.map +1 -0
  69. package/getForwardingProfileUserLocationList.d.ts +163 -0
  70. package/getForwardingProfileUserLocationList.js +90 -0
  71. package/getForwardingProfileUserLocationList.js.map +1 -0
  72. package/getGlobalprotectMatchListList.d.ts +2 -2
  73. package/getGlobalprotectMatchListList.js +2 -2
  74. package/getHipmatchMatchListList.d.ts +2 -2
  75. package/getHipmatchMatchListList.js +2 -2
  76. package/getIptagMatchListList.d.ts +2 -2
  77. package/getIptagMatchListList.js +2 -2
  78. package/getLayer2SubinterfaceList.d.ts +2 -2
  79. package/getLayer2SubinterfaceList.js +2 -2
  80. package/getLayer3SubinterfaceList.d.ts +2 -2
  81. package/getLayer3SubinterfaceList.js +2 -2
  82. package/getLogicalRouterList.d.ts +2 -2
  83. package/getLogicalRouterList.js +2 -2
  84. package/getLoopbackInterfaceList.d.ts +2 -2
  85. package/getLoopbackInterfaceList.js +2 -2
  86. package/getServiceConnection.d.ts +4 -0
  87. package/getServiceConnection.js.map +1 -1
  88. package/getServiceList.d.ts +2 -2
  89. package/getServiceList.js +2 -2
  90. package/getSystemMatchListList.d.ts +2 -2
  91. package/getSystemMatchListList.js +2 -2
  92. package/getTunnelInterfaceList.d.ts +2 -2
  93. package/getTunnelInterfaceList.js +2 -2
  94. package/getUseridMatchListList.d.ts +2 -2
  95. package/getUseridMatchListList.js +2 -2
  96. package/getVlanInterfaceList.d.ts +2 -2
  97. package/getVlanInterfaceList.js +2 -2
  98. package/getZoneList.d.ts +2 -2
  99. package/getZoneList.js +2 -2
  100. package/index.d.ts +51 -0
  101. package/index.js +74 -13
  102. package/index.js.map +1 -1
  103. package/package.json +2 -2
  104. package/securityRule.d.ts +27 -0
  105. package/securityRule.js +27 -0
  106. package/securityRule.js.map +1 -1
  107. package/serviceConnection.d.ts +12 -0
  108. package/serviceConnection.js +2 -0
  109. package/serviceConnection.js.map +1 -1
  110. package/types/input.d.ts +335 -1
  111. package/types/output.d.ts +1423 -1
@@ -0,0 +1,190 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * ForwardingProfileDestination resource
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as scm from "@pulumi/scm";
12
+ *
13
+ * // Basic forwarding profile destination with FQDN
14
+ * const exampleBasicFqdn = new scm.ForwardingProfileDestination("example_basic_fqdn", {
15
+ * folder: "Mobile Users",
16
+ * name: "example-dest-fqdn",
17
+ * fqdns: [{
18
+ * name: "example.com",
19
+ * port: 443,
20
+ * }],
21
+ * });
22
+ * // Forwarding profile destination with IP addresses
23
+ * const exampleIpAddresses = new scm.ForwardingProfileDestination("example_ip_addresses", {
24
+ * folder: "Mobile Users",
25
+ * name: "example-dest-ip",
26
+ * description: "Managed by Terraform - Destination profile with IP addresses",
27
+ * ipAddresses: [
28
+ * {
29
+ * name: "10.0.0.0/8",
30
+ * port: 443,
31
+ * },
32
+ * {
33
+ * name: "192.168.1.100",
34
+ * port: 8080,
35
+ * },
36
+ * ],
37
+ * });
38
+ * // Forwarding profile destination with both FQDN and IP addresses
39
+ * const exampleMixed = new scm.ForwardingProfileDestination("example_mixed", {
40
+ * folder: "Mobile Users",
41
+ * name: "corp-destinations",
42
+ * description: "Corporate destinations profile with mixed types",
43
+ * fqdns: [
44
+ * {
45
+ * name: "*.corporate.com",
46
+ * port: 443,
47
+ * },
48
+ * {
49
+ * name: "api.example.com",
50
+ * port: 8443,
51
+ * },
52
+ * ],
53
+ * ipAddresses: [
54
+ * {
55
+ * name: "10.10.0.0/16",
56
+ * port: 443,
57
+ * },
58
+ * {
59
+ * name: "172.16.0.1",
60
+ * port: 80,
61
+ * },
62
+ * ],
63
+ * });
64
+ * ```
65
+ *
66
+ * ## Import
67
+ *
68
+ * The following command can be used to import a resource not managed by Terraform:
69
+ *
70
+ * ```sh
71
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example folder:::id
72
+ * ```
73
+ *
74
+ * or
75
+ *
76
+ * ```sh
77
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example :snippet::id
78
+ * ```
79
+ *
80
+ * or
81
+ *
82
+ * ```sh
83
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example ::device:id
84
+ * ```
85
+ *
86
+ * **Note:** Please provide just one of folder, snippet, or device for the import command.
87
+ */
88
+ export declare class ForwardingProfileDestination extends pulumi.CustomResource {
89
+ /**
90
+ * Get an existing ForwardingProfileDestination resource's state with the given name, ID, and optional extra
91
+ * properties used to qualify the lookup.
92
+ *
93
+ * @param name The _unique_ name of the resulting resource.
94
+ * @param id The _unique_ provider ID of the resource to lookup.
95
+ * @param state Any extra arguments used during the lookup.
96
+ * @param opts Optional settings to control the behavior of the CustomResource.
97
+ */
98
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ForwardingProfileDestinationState, opts?: pulumi.CustomResourceOptions): ForwardingProfileDestination;
99
+ /**
100
+ * Returns true if the given object is an instance of ForwardingProfileDestination. This is designed to work even
101
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
102
+ */
103
+ static isInstance(obj: any): obj is ForwardingProfileDestination;
104
+ /**
105
+ * description of the destination
106
+ */
107
+ readonly description: pulumi.Output<string | undefined>;
108
+ /**
109
+ * The folder in which the resource is defined
110
+ */
111
+ readonly folder: pulumi.Output<string>;
112
+ /**
113
+ * List of FQDN based destination entries
114
+ */
115
+ readonly fqdns: pulumi.Output<outputs.ForwardingProfileDestinationFqdn[] | undefined>;
116
+ /**
117
+ * List of IP address based destination entries
118
+ */
119
+ readonly ipAddresses: pulumi.Output<outputs.ForwardingProfileDestinationIpAddress[] | undefined>;
120
+ /**
121
+ * alphanumeric string [ 0-9a-zA-Z._ -]
122
+ */
123
+ readonly name: pulumi.Output<string>;
124
+ /**
125
+ * The Terraform ID.
126
+ */
127
+ readonly tfid: pulumi.Output<string>;
128
+ /**
129
+ * Create a ForwardingProfileDestination resource with the given unique name, arguments, and options.
130
+ *
131
+ * @param name The _unique_ name of the resource.
132
+ * @param args The arguments to use to populate this resource's properties.
133
+ * @param opts A bag of options that control this resource's behavior.
134
+ */
135
+ constructor(name: string, args?: ForwardingProfileDestinationArgs, opts?: pulumi.CustomResourceOptions);
136
+ }
137
+ /**
138
+ * Input properties used for looking up and filtering ForwardingProfileDestination resources.
139
+ */
140
+ export interface ForwardingProfileDestinationState {
141
+ /**
142
+ * description of the destination
143
+ */
144
+ description?: pulumi.Input<string>;
145
+ /**
146
+ * The folder in which the resource is defined
147
+ */
148
+ folder?: pulumi.Input<string>;
149
+ /**
150
+ * List of FQDN based destination entries
151
+ */
152
+ fqdns?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileDestinationFqdn>[]>;
153
+ /**
154
+ * List of IP address based destination entries
155
+ */
156
+ ipAddresses?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileDestinationIpAddress>[]>;
157
+ /**
158
+ * alphanumeric string [ 0-9a-zA-Z._ -]
159
+ */
160
+ name?: pulumi.Input<string>;
161
+ /**
162
+ * The Terraform ID.
163
+ */
164
+ tfid?: pulumi.Input<string>;
165
+ }
166
+ /**
167
+ * The set of arguments for constructing a ForwardingProfileDestination resource.
168
+ */
169
+ export interface ForwardingProfileDestinationArgs {
170
+ /**
171
+ * description of the destination
172
+ */
173
+ description?: pulumi.Input<string>;
174
+ /**
175
+ * The folder in which the resource is defined
176
+ */
177
+ folder?: pulumi.Input<string>;
178
+ /**
179
+ * List of FQDN based destination entries
180
+ */
181
+ fqdns?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileDestinationFqdn>[]>;
182
+ /**
183
+ * List of IP address based destination entries
184
+ */
185
+ ipAddresses?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileDestinationIpAddress>[]>;
186
+ /**
187
+ * alphanumeric string [ 0-9a-zA-Z._ -]
188
+ */
189
+ name?: pulumi.Input<string>;
190
+ }
@@ -0,0 +1,143 @@
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.ForwardingProfileDestination = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * ForwardingProfileDestination resource
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as scm from "@pulumi/scm";
16
+ *
17
+ * // Basic forwarding profile destination with FQDN
18
+ * const exampleBasicFqdn = new scm.ForwardingProfileDestination("example_basic_fqdn", {
19
+ * folder: "Mobile Users",
20
+ * name: "example-dest-fqdn",
21
+ * fqdns: [{
22
+ * name: "example.com",
23
+ * port: 443,
24
+ * }],
25
+ * });
26
+ * // Forwarding profile destination with IP addresses
27
+ * const exampleIpAddresses = new scm.ForwardingProfileDestination("example_ip_addresses", {
28
+ * folder: "Mobile Users",
29
+ * name: "example-dest-ip",
30
+ * description: "Managed by Terraform - Destination profile with IP addresses",
31
+ * ipAddresses: [
32
+ * {
33
+ * name: "10.0.0.0/8",
34
+ * port: 443,
35
+ * },
36
+ * {
37
+ * name: "192.168.1.100",
38
+ * port: 8080,
39
+ * },
40
+ * ],
41
+ * });
42
+ * // Forwarding profile destination with both FQDN and IP addresses
43
+ * const exampleMixed = new scm.ForwardingProfileDestination("example_mixed", {
44
+ * folder: "Mobile Users",
45
+ * name: "corp-destinations",
46
+ * description: "Corporate destinations profile with mixed types",
47
+ * fqdns: [
48
+ * {
49
+ * name: "*.corporate.com",
50
+ * port: 443,
51
+ * },
52
+ * {
53
+ * name: "api.example.com",
54
+ * port: 8443,
55
+ * },
56
+ * ],
57
+ * ipAddresses: [
58
+ * {
59
+ * name: "10.10.0.0/16",
60
+ * port: 443,
61
+ * },
62
+ * {
63
+ * name: "172.16.0.1",
64
+ * port: 80,
65
+ * },
66
+ * ],
67
+ * });
68
+ * ```
69
+ *
70
+ * ## Import
71
+ *
72
+ * The following command can be used to import a resource not managed by Terraform:
73
+ *
74
+ * ```sh
75
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example folder:::id
76
+ * ```
77
+ *
78
+ * or
79
+ *
80
+ * ```sh
81
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example :snippet::id
82
+ * ```
83
+ *
84
+ * or
85
+ *
86
+ * ```sh
87
+ * $ pulumi import scm:index/forwardingProfileDestination:ForwardingProfileDestination example ::device:id
88
+ * ```
89
+ *
90
+ * **Note:** Please provide just one of folder, snippet, or device for the import command.
91
+ */
92
+ class ForwardingProfileDestination extends pulumi.CustomResource {
93
+ /**
94
+ * Get an existing ForwardingProfileDestination resource's state with the given name, ID, and optional extra
95
+ * properties used to qualify the lookup.
96
+ *
97
+ * @param name The _unique_ name of the resulting resource.
98
+ * @param id The _unique_ provider ID of the resource to lookup.
99
+ * @param state Any extra arguments used during the lookup.
100
+ * @param opts Optional settings to control the behavior of the CustomResource.
101
+ */
102
+ static get(name, id, state, opts) {
103
+ return new ForwardingProfileDestination(name, state, { ...opts, id: id });
104
+ }
105
+ /**
106
+ * Returns true if the given object is an instance of ForwardingProfileDestination. This is designed to work even
107
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
108
+ */
109
+ static isInstance(obj) {
110
+ if (obj === undefined || obj === null) {
111
+ return false;
112
+ }
113
+ return obj['__pulumiType'] === ForwardingProfileDestination.__pulumiType;
114
+ }
115
+ constructor(name, argsOrState, opts) {
116
+ let resourceInputs = {};
117
+ opts = opts || {};
118
+ if (opts.id) {
119
+ const state = argsOrState;
120
+ resourceInputs["description"] = state?.description;
121
+ resourceInputs["folder"] = state?.folder;
122
+ resourceInputs["fqdns"] = state?.fqdns;
123
+ resourceInputs["ipAddresses"] = state?.ipAddresses;
124
+ resourceInputs["name"] = state?.name;
125
+ resourceInputs["tfid"] = state?.tfid;
126
+ }
127
+ else {
128
+ const args = argsOrState;
129
+ resourceInputs["description"] = args?.description;
130
+ resourceInputs["folder"] = args?.folder;
131
+ resourceInputs["fqdns"] = args?.fqdns;
132
+ resourceInputs["ipAddresses"] = args?.ipAddresses;
133
+ resourceInputs["name"] = args?.name;
134
+ resourceInputs["tfid"] = undefined /*out*/;
135
+ }
136
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
137
+ super(ForwardingProfileDestination.__pulumiType, name, resourceInputs, opts);
138
+ }
139
+ }
140
+ exports.ForwardingProfileDestination = ForwardingProfileDestination;
141
+ /** @internal */
142
+ ForwardingProfileDestination.__pulumiType = 'scm:index/forwardingProfileDestination:ForwardingProfileDestination';
143
+ //# sourceMappingURL=forwardingProfileDestination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forwardingProfileDestination.js","sourceRoot":"","sources":["../forwardingProfileDestination.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmFG;AACH,MAAa,4BAA6B,SAAQ,MAAM,CAAC,cAAc;IACnE;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyC,EAAE,IAAmC;QACvI,OAAO,IAAI,4BAA4B,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnF,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,4BAA4B,CAAC,YAAY,CAAC;IAC7E,CAAC;IAmCD,YAAY,IAAY,EAAE,WAAkF,EAAE,IAAmC;QAC7I,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4D,CAAC;YAC3E,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC;YACzC,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAA2D,CAAC;YACzE,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC;YACxC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC9C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,4BAA4B,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;;AAnFL,oEAoFC;AAtEG,gBAAgB;AACO,yCAAY,GAAG,qEAAqE,CAAC"}
@@ -0,0 +1,289 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * ForwardingProfileRegionalAndCustomProxy resource
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as scm from "@pulumi/scm";
12
+ *
13
+ * // Basic gp-and-pac proxy with a primary proxy server
14
+ * // proxy_1 and proxy_2 are only available for gp-and-pac
15
+ * const exampleGpAndPacBasic = new scm.ForwardingProfileRegionalAndCustomProxy("example_gp_and_pac_basic", {
16
+ * folder: "Mobile Users",
17
+ * name: "example-gp-pac-proxy-1",
18
+ * type: "gp-and-pac",
19
+ * proxy1: {
20
+ * fqdn: "proxy1.example.com",
21
+ * port: 8080,
22
+ * location: "us-east",
23
+ * },
24
+ * });
25
+ * // gp-and-pac with primary and secondary proxy servers for high availability
26
+ * const exampleGpAndPacDualProxy = new scm.ForwardingProfileRegionalAndCustomProxy("example_gp_and_pac_dual_proxy", {
27
+ * folder: "Mobile Users",
28
+ * name: "example-gp-pac-dual-proxy",
29
+ * description: "Managed by Terraform - Dual proxy configuration for high availability",
30
+ * type: "gp-and-pac",
31
+ * proxy1: {
32
+ * fqdn: "proxy1.example.com",
33
+ * port: 8080,
34
+ * location: "us-east",
35
+ * },
36
+ * proxy2: {
37
+ * fqdn: "proxy2.example.com",
38
+ * port: 8080,
39
+ * location: "us-west",
40
+ * },
41
+ * });
42
+ * // Basic ztna-agent proxy
43
+ * // connectivity_preference and fallback_option are only available for ztna-agent
44
+ * // At least one connectivity_preference entry must have enabled = true
45
+ * const exampleZtnaBasic = new scm.ForwardingProfileRegionalAndCustomProxy("example_ztna_basic", {
46
+ * folder: "Mobile Users",
47
+ * name: "example-ztna-proxy",
48
+ * description: "Managed by Terraform - ZTNA agent proxy configuration",
49
+ * type: "ztna-agent",
50
+ * fallbackOption: "fail-open",
51
+ * connectivityPreferences: [
52
+ * {
53
+ * name: "tunnel",
54
+ * enabled: true,
55
+ * },
56
+ * {
57
+ * name: "proxy",
58
+ * enabled: false,
59
+ * },
60
+ * ],
61
+ * });
62
+ * // Full ztna-agent with location_preference and Prisma Access locations
63
+ * // location_preference is only available for ztna-agent
64
+ * const exampleZtnaFull = new scm.ForwardingProfileRegionalAndCustomProxy("example_ztna_full", {
65
+ * folder: "Mobile Users",
66
+ * name: "example-ztna-full",
67
+ * description: "Managed by Terraform - Full ZTNA agent with location and connectivity settings",
68
+ * type: "ztna-agent",
69
+ * fallbackOption: "fail-safe",
70
+ * locationPreference: "specific-pa-location",
71
+ * prismaAccessLocations: [
72
+ * {
73
+ * name: "americas",
74
+ * locations: [
75
+ * "us-east-1",
76
+ * "us-west-1",
77
+ * ],
78
+ * },
79
+ * {
80
+ * name: "europe",
81
+ * locations: ["europe-west"],
82
+ * },
83
+ * {
84
+ * name: "apac",
85
+ * locations: ["asia-southeast1"],
86
+ * },
87
+ * ],
88
+ * connectivityPreferences: [
89
+ * {
90
+ * name: "tunnel",
91
+ * enabled: true,
92
+ * },
93
+ * {
94
+ * name: "adns",
95
+ * enabled: true,
96
+ * },
97
+ * {
98
+ * name: "masque",
99
+ * enabled: true,
100
+ * },
101
+ * ],
102
+ * });
103
+ * ```
104
+ *
105
+ * ## Import
106
+ *
107
+ * The following command can be used to import a resource not managed by Terraform:
108
+ *
109
+ * ```sh
110
+ * $ pulumi import scm:index/forwardingProfileRegionalAndCustomProxy:ForwardingProfileRegionalAndCustomProxy example folder:::id
111
+ * ```
112
+ *
113
+ * or
114
+ *
115
+ * ```sh
116
+ * $ pulumi import scm:index/forwardingProfileRegionalAndCustomProxy:ForwardingProfileRegionalAndCustomProxy example :snippet::id
117
+ * ```
118
+ *
119
+ * or
120
+ *
121
+ * ```sh
122
+ * $ pulumi import scm:index/forwardingProfileRegionalAndCustomProxy:ForwardingProfileRegionalAndCustomProxy example ::device:id
123
+ * ```
124
+ *
125
+ * **Note:** Please provide just one of folder, snippet, or device for the import command.
126
+ */
127
+ export declare class ForwardingProfileRegionalAndCustomProxy extends pulumi.CustomResource {
128
+ /**
129
+ * Get an existing ForwardingProfileRegionalAndCustomProxy resource's state with the given name, ID, and optional extra
130
+ * properties used to qualify the lookup.
131
+ *
132
+ * @param name The _unique_ name of the resulting resource.
133
+ * @param id The _unique_ provider ID of the resource to lookup.
134
+ * @param state Any extra arguments used during the lookup.
135
+ * @param opts Optional settings to control the behavior of the CustomResource.
136
+ */
137
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ForwardingProfileRegionalAndCustomProxyState, opts?: pulumi.CustomResourceOptions): ForwardingProfileRegionalAndCustomProxy;
138
+ /**
139
+ * Returns true if the given object is an instance of ForwardingProfileRegionalAndCustomProxy. This is designed to work even
140
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
141
+ */
142
+ static isInstance(obj: any): obj is ForwardingProfileRegionalAndCustomProxy;
143
+ /**
144
+ * List of connectivity methods and their enablement status for establishing proxy connections
145
+ */
146
+ readonly connectivityPreferences: pulumi.Output<outputs.ForwardingProfileRegionalAndCustomProxyConnectivityPreference[] | undefined>;
147
+ /**
148
+ * regional and custom proxy configuration description
149
+ */
150
+ readonly description: pulumi.Output<string | undefined>;
151
+ /**
152
+ * Behavior when proxy connection fails - 'fail-open' allows direct internet access, 'fail-safe' blocks traffic until proxy is restored
153
+ */
154
+ readonly fallbackOption: pulumi.Output<string | undefined>;
155
+ /**
156
+ * The folder in which the resource is defined
157
+ */
158
+ readonly folder: pulumi.Output<string>;
159
+ /**
160
+ * Strategy for selecting Prisma Access location - 'best-available-pa-location' automatically selects optimal location, 'specific-pa-location' uses predefined locations
161
+ */
162
+ readonly locationPreference: pulumi.Output<string | undefined>;
163
+ /**
164
+ * alphanumeric string [ 0-9a-zA-Z ._-]
165
+ */
166
+ readonly name: pulumi.Output<string>;
167
+ /**
168
+ * Select Prisma Access location Americas, Europe and Asia-Pacific.
169
+ */
170
+ readonly prismaAccessLocations: pulumi.Output<outputs.ForwardingProfileRegionalAndCustomProxyPrismaAccessLocation[] | undefined>;
171
+ /**
172
+ * primary regional and custom proxy
173
+ */
174
+ readonly proxy1: pulumi.Output<outputs.ForwardingProfileRegionalAndCustomProxyProxy1 | undefined>;
175
+ /**
176
+ * secondary regional and custom proxy
177
+ */
178
+ readonly proxy2: pulumi.Output<outputs.ForwardingProfileRegionalAndCustomProxyProxy2 | undefined>;
179
+ /**
180
+ * The Terraform ID.
181
+ */
182
+ readonly tfid: pulumi.Output<string>;
183
+ /**
184
+ * Proxy configuration type - 'gp-and-pac' for GlobalProtect and PAC file forwarding, 'ztna-agent' for ZTNA agent forwarding
185
+ */
186
+ readonly type: pulumi.Output<string>;
187
+ /**
188
+ * Create a ForwardingProfileRegionalAndCustomProxy resource with the given unique name, arguments, and options.
189
+ *
190
+ * @param name The _unique_ name of the resource.
191
+ * @param args The arguments to use to populate this resource's properties.
192
+ * @param opts A bag of options that control this resource's behavior.
193
+ */
194
+ constructor(name: string, args?: ForwardingProfileRegionalAndCustomProxyArgs, opts?: pulumi.CustomResourceOptions);
195
+ }
196
+ /**
197
+ * Input properties used for looking up and filtering ForwardingProfileRegionalAndCustomProxy resources.
198
+ */
199
+ export interface ForwardingProfileRegionalAndCustomProxyState {
200
+ /**
201
+ * List of connectivity methods and their enablement status for establishing proxy connections
202
+ */
203
+ connectivityPreferences?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyConnectivityPreference>[]>;
204
+ /**
205
+ * regional and custom proxy configuration description
206
+ */
207
+ description?: pulumi.Input<string>;
208
+ /**
209
+ * Behavior when proxy connection fails - 'fail-open' allows direct internet access, 'fail-safe' blocks traffic until proxy is restored
210
+ */
211
+ fallbackOption?: pulumi.Input<string>;
212
+ /**
213
+ * The folder in which the resource is defined
214
+ */
215
+ folder?: pulumi.Input<string>;
216
+ /**
217
+ * Strategy for selecting Prisma Access location - 'best-available-pa-location' automatically selects optimal location, 'specific-pa-location' uses predefined locations
218
+ */
219
+ locationPreference?: pulumi.Input<string>;
220
+ /**
221
+ * alphanumeric string [ 0-9a-zA-Z ._-]
222
+ */
223
+ name?: pulumi.Input<string>;
224
+ /**
225
+ * Select Prisma Access location Americas, Europe and Asia-Pacific.
226
+ */
227
+ prismaAccessLocations?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyPrismaAccessLocation>[]>;
228
+ /**
229
+ * primary regional and custom proxy
230
+ */
231
+ proxy1?: pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyProxy1>;
232
+ /**
233
+ * secondary regional and custom proxy
234
+ */
235
+ proxy2?: pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyProxy2>;
236
+ /**
237
+ * The Terraform ID.
238
+ */
239
+ tfid?: pulumi.Input<string>;
240
+ /**
241
+ * Proxy configuration type - 'gp-and-pac' for GlobalProtect and PAC file forwarding, 'ztna-agent' for ZTNA agent forwarding
242
+ */
243
+ type?: pulumi.Input<string>;
244
+ }
245
+ /**
246
+ * The set of arguments for constructing a ForwardingProfileRegionalAndCustomProxy resource.
247
+ */
248
+ export interface ForwardingProfileRegionalAndCustomProxyArgs {
249
+ /**
250
+ * List of connectivity methods and their enablement status for establishing proxy connections
251
+ */
252
+ connectivityPreferences?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyConnectivityPreference>[]>;
253
+ /**
254
+ * regional and custom proxy configuration description
255
+ */
256
+ description?: pulumi.Input<string>;
257
+ /**
258
+ * Behavior when proxy connection fails - 'fail-open' allows direct internet access, 'fail-safe' blocks traffic until proxy is restored
259
+ */
260
+ fallbackOption?: pulumi.Input<string>;
261
+ /**
262
+ * The folder in which the resource is defined
263
+ */
264
+ folder?: pulumi.Input<string>;
265
+ /**
266
+ * Strategy for selecting Prisma Access location - 'best-available-pa-location' automatically selects optimal location, 'specific-pa-location' uses predefined locations
267
+ */
268
+ locationPreference?: pulumi.Input<string>;
269
+ /**
270
+ * alphanumeric string [ 0-9a-zA-Z ._-]
271
+ */
272
+ name?: pulumi.Input<string>;
273
+ /**
274
+ * Select Prisma Access location Americas, Europe and Asia-Pacific.
275
+ */
276
+ prismaAccessLocations?: pulumi.Input<pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyPrismaAccessLocation>[]>;
277
+ /**
278
+ * primary regional and custom proxy
279
+ */
280
+ proxy1?: pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyProxy1>;
281
+ /**
282
+ * secondary regional and custom proxy
283
+ */
284
+ proxy2?: pulumi.Input<inputs.ForwardingProfileRegionalAndCustomProxyProxy2>;
285
+ /**
286
+ * Proxy configuration type - 'gp-and-pac' for GlobalProtect and PAC file forwarding, 'ztna-agent' for ZTNA agent forwarding
287
+ */
288
+ type?: pulumi.Input<string>;
289
+ }