pulumi-scm 1.0.2__py3-none-any.whl → 1.0.3__py3-none-any.whl

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 (215) hide show
  1. pulumi_scm/_inputs.py +1398 -511
  2. pulumi_scm/address.py +42 -7
  3. pulumi_scm/address_group.py +28 -7
  4. pulumi_scm/aggregate_interface.py +28 -7
  5. pulumi_scm/anti_spyware_profile.py +14 -7
  6. pulumi_scm/anti_spyware_signature.py +14 -7
  7. pulumi_scm/app_override_rule.py +14 -7
  8. pulumi_scm/application.py +14 -7
  9. pulumi_scm/application_filter.py +14 -7
  10. pulumi_scm/application_group.py +14 -7
  11. pulumi_scm/authentication_portal.py +14 -7
  12. pulumi_scm/authentication_profile.py +14 -7
  13. pulumi_scm/authentication_rule.py +14 -7
  14. pulumi_scm/authentication_sequence.py +14 -7
  15. pulumi_scm/authentication_setting.py +14 -7
  16. pulumi_scm/bgp_address_family_profile.py +14 -7
  17. pulumi_scm/bgp_auth_profile.py +14 -7
  18. pulumi_scm/bgp_filtering_profile.py +14 -7
  19. pulumi_scm/bgp_redistribution_profile.py +14 -7
  20. pulumi_scm/bgp_route_map.py +14 -7
  21. pulumi_scm/bgp_route_map_redistribution.py +35 -7
  22. pulumi_scm/certificate_profile.py +14 -7
  23. pulumi_scm/content_id_setting.py +14 -7
  24. pulumi_scm/decryption_exclusion.py +14 -7
  25. pulumi_scm/decryption_profile.py +14 -7
  26. pulumi_scm/decryption_rule.py +64 -7
  27. pulumi_scm/device_redistribution_collector.py +14 -7
  28. pulumi_scm/dhcp_interface.py +134 -7
  29. pulumi_scm/dns_proxy.py +14 -7
  30. pulumi_scm/dns_security_profile.py +14 -7
  31. pulumi_scm/dos_protection_profile.py +14 -7
  32. pulumi_scm/dos_protection_rule.py +14 -7
  33. pulumi_scm/dynamic_user_group.py +14 -7
  34. pulumi_scm/ethernet_interface.py +42 -7
  35. pulumi_scm/external_dynamic_list.py +14 -7
  36. pulumi_scm/file_blocking_profile.py +14 -7
  37. pulumi_scm/general_setting.py +14 -7
  38. pulumi_scm/get_address.py +0 -46
  39. pulumi_scm/get_address_group.py +0 -38
  40. pulumi_scm/get_aggregate_interface.py +0 -38
  41. pulumi_scm/get_anti_spyware_profile.py +0 -45
  42. pulumi_scm/get_anti_spyware_signature.py +0 -52
  43. pulumi_scm/get_app_override_rule.py +0 -72
  44. pulumi_scm/get_application.py +0 -105
  45. pulumi_scm/get_application_filter.py +0 -78
  46. pulumi_scm/get_application_group.py +0 -27
  47. pulumi_scm/get_authentication_profile.py +0 -45
  48. pulumi_scm/get_authentication_rule.py +0 -93
  49. pulumi_scm/get_authentication_sequence.py +0 -30
  50. pulumi_scm/get_authentication_setting.py +0 -22
  51. pulumi_scm/get_bgp_address_family_profile.py +0 -27
  52. pulumi_scm/get_bgp_auth_profile.py +0 -30
  53. pulumi_scm/get_bgp_filtering_profile.py +0 -30
  54. pulumi_scm/get_bgp_redistribution_profile.py +0 -27
  55. pulumi_scm/get_bgp_route_map.py +0 -30
  56. pulumi_scm/get_bgp_route_map_redistribution.py +0 -39
  57. pulumi_scm/get_certificate_profile.py +0 -60
  58. pulumi_scm/get_content_id_setting.py +0 -22
  59. pulumi_scm/get_decryption_exclusion.py +0 -27
  60. pulumi_scm/get_decryption_profile.py +0 -36
  61. pulumi_scm/get_decryption_rule.py +0 -93
  62. pulumi_scm/get_device_redistribution_collector.py +0 -22
  63. pulumi_scm/get_dhcp_interface.py +22 -32
  64. pulumi_scm/get_dhcp_interface_list.py +28 -0
  65. pulumi_scm/get_dns_proxy.py +0 -48
  66. pulumi_scm/get_dns_security_profile.py +0 -30
  67. pulumi_scm/get_dos_protection_profile.py +0 -36
  68. pulumi_scm/get_dos_protection_rule.py +0 -66
  69. pulumi_scm/get_dynamic_user_group.py +0 -33
  70. pulumi_scm/get_ethernet_interface.py +0 -61
  71. pulumi_scm/get_external_dynamic_list.py +0 -30
  72. pulumi_scm/get_file_blocking_profile.py +0 -30
  73. pulumi_scm/get_general_setting.py +0 -22
  74. pulumi_scm/get_hip_object.py +0 -60
  75. pulumi_scm/get_hip_profile.py +0 -30
  76. pulumi_scm/get_http_header_profile.py +0 -30
  77. pulumi_scm/get_http_server_profile.py +0 -33
  78. pulumi_scm/get_ike_crypto_profile.py +0 -39
  79. pulumi_scm/get_ike_gateway.py +0 -48
  80. pulumi_scm/get_interface_management_profile.py +0 -57
  81. pulumi_scm/get_ipsec_crypto_profile.py +0 -41
  82. pulumi_scm/get_ipsec_tunnel.py +0 -42
  83. pulumi_scm/get_kerberos_server_profile.py +36 -27
  84. pulumi_scm/get_kerberos_server_profile_list.py +28 -0
  85. pulumi_scm/get_layer2_subinterface.py +0 -33
  86. pulumi_scm/get_layer3_subinterface.py +0 -53
  87. pulumi_scm/get_ldap_server_profile.py +0 -57
  88. pulumi_scm/get_link_tag.py +0 -30
  89. pulumi_scm/get_lldp_profile.py +20 -33
  90. pulumi_scm/get_lldp_profile_list.py +26 -0
  91. pulumi_scm/get_local_user.py +0 -33
  92. pulumi_scm/get_local_user_group.py +0 -27
  93. pulumi_scm/get_log_forwarding_profile.py +38 -30
  94. pulumi_scm/get_log_forwarding_profile_list.py +28 -0
  95. pulumi_scm/get_logical_router.py +0 -30
  96. pulumi_scm/get_loopback_interface.py +0 -42
  97. pulumi_scm/get_management_interface.py +0 -22
  98. pulumi_scm/get_motd_banner_setting.py +0 -22
  99. pulumi_scm/get_ospf_auth_profile.py +0 -35
  100. pulumi_scm/get_pbf_rule.py +0 -57
  101. pulumi_scm/get_profile_group.py +0 -51
  102. pulumi_scm/get_qos_policy_rule.py +0 -45
  103. pulumi_scm/get_qos_profile.py +36 -30
  104. pulumi_scm/get_qos_profile_list.py +30 -0
  105. pulumi_scm/get_radius_server_profile.py +12 -37
  106. pulumi_scm/get_region.py +0 -30
  107. pulumi_scm/get_route_access_list.py +0 -30
  108. pulumi_scm/get_route_community_list.py +0 -30
  109. pulumi_scm/get_route_path_access_list.py +0 -30
  110. pulumi_scm/get_route_prefix_list.py +0 -30
  111. pulumi_scm/get_saml_server_profile.py +50 -49
  112. pulumi_scm/get_saml_server_profile_list.py +28 -0
  113. pulumi_scm/get_scep_profile.py +36 -63
  114. pulumi_scm/get_scep_profile_list.py +28 -0
  115. pulumi_scm/get_schedule.py +0 -27
  116. pulumi_scm/get_sdwan_error_correction_profile.py +0 -30
  117. pulumi_scm/get_sdwan_path_quality_profile.py +0 -27
  118. pulumi_scm/get_sdwan_rule.py +0 -75
  119. pulumi_scm/get_sdwan_saas_quality_profile.py +0 -27
  120. pulumi_scm/get_sdwan_traffic_distribution_profile.py +0 -30
  121. pulumi_scm/get_service.py +0 -33
  122. pulumi_scm/get_service_group.py +0 -30
  123. pulumi_scm/get_service_route.py +0 -22
  124. pulumi_scm/get_service_setting.py +0 -25
  125. pulumi_scm/get_session_setting.py +0 -22
  126. pulumi_scm/get_session_timeout.py +0 -22
  127. pulumi_scm/get_syslog_server_profile.py +0 -30
  128. pulumi_scm/get_tacacs_server_profile.py +46 -37
  129. pulumi_scm/get_tacacs_server_profile_list.py +24 -0
  130. pulumi_scm/get_tag.py +0 -30
  131. pulumi_scm/get_tcp_setting.py +0 -22
  132. pulumi_scm/get_tls_service_profile.py +0 -30
  133. pulumi_scm/get_tunnel_interface.py +12 -40
  134. pulumi_scm/get_update_schedule.py +0 -22
  135. pulumi_scm/get_url_access_profile.py +0 -69
  136. pulumi_scm/get_url_category.py +0 -33
  137. pulumi_scm/get_variable.py +0 -36
  138. pulumi_scm/get_vlan_interface.py +0 -53
  139. pulumi_scm/get_vpn_setting.py +0 -22
  140. pulumi_scm/get_vulnerability_protection_profile.py +0 -33
  141. pulumi_scm/get_vulnerability_protection_signature.py +0 -55
  142. pulumi_scm/get_wildfire_anti_virus_profile.py +0 -39
  143. pulumi_scm/get_zone.py +0 -45
  144. pulumi_scm/hip_object.py +14 -7
  145. pulumi_scm/hip_profile.py +14 -7
  146. pulumi_scm/http_header_profile.py +14 -7
  147. pulumi_scm/http_server_profile.py +14 -7
  148. pulumi_scm/ike_crypto_profile.py +14 -7
  149. pulumi_scm/ike_gateway.py +14 -7
  150. pulumi_scm/interface_management_profile.py +14 -7
  151. pulumi_scm/ipsec_crypto_profile.py +28 -7
  152. pulumi_scm/ipsec_tunnel.py +14 -7
  153. pulumi_scm/kerberos_server_profile.py +100 -7
  154. pulumi_scm/layer2_subinterface.py +14 -7
  155. pulumi_scm/layer3_subinterface.py +28 -7
  156. pulumi_scm/ldap_server_profile.py +14 -7
  157. pulumi_scm/link_tag.py +14 -7
  158. pulumi_scm/lldp_profile.py +58 -7
  159. pulumi_scm/local_user.py +14 -7
  160. pulumi_scm/local_user_group.py +14 -7
  161. pulumi_scm/log_forwarding_profile.py +237 -25
  162. pulumi_scm/logical_router.py +14 -7
  163. pulumi_scm/loopback_interface.py +66 -7
  164. pulumi_scm/management_interface.py +14 -7
  165. pulumi_scm/mfa_server.py +14 -7
  166. pulumi_scm/motd_banner_setting.py +14 -7
  167. pulumi_scm/ospf_auth_profile.py +28 -7
  168. pulumi_scm/outputs.py +3291 -2075
  169. pulumi_scm/pbf_rule.py +14 -7
  170. pulumi_scm/profile_group.py +14 -7
  171. pulumi_scm/pulumi-plugin.json +1 -1
  172. pulumi_scm/qos_policy_rule.py +14 -7
  173. pulumi_scm/qos_profile.py +214 -7
  174. pulumi_scm/radius_server_profile.py +44 -7
  175. pulumi_scm/region.py +14 -7
  176. pulumi_scm/route_access_list.py +14 -7
  177. pulumi_scm/route_community_list.py +14 -7
  178. pulumi_scm/route_path_access_list.py +14 -7
  179. pulumi_scm/route_prefix_list.py +14 -7
  180. pulumi_scm/saml_server_profile.py +135 -7
  181. pulumi_scm/scep_profile.py +245 -42
  182. pulumi_scm/schedule.py +14 -7
  183. pulumi_scm/sdwan_error_correction_profile.py +14 -7
  184. pulumi_scm/sdwan_path_quality_profile.py +14 -7
  185. pulumi_scm/sdwan_rule.py +14 -7
  186. pulumi_scm/sdwan_saas_quality_profile.py +14 -7
  187. pulumi_scm/sdwan_traffic_distribution_profile.py +14 -7
  188. pulumi_scm/service.py +14 -7
  189. pulumi_scm/service_group.py +14 -7
  190. pulumi_scm/service_route.py +14 -7
  191. pulumi_scm/service_setting.py +14 -7
  192. pulumi_scm/session_setting.py +14 -7
  193. pulumi_scm/session_timeout.py +14 -7
  194. pulumi_scm/syslog_server_profile.py +14 -7
  195. pulumi_scm/tacacs_server_profile.py +112 -7
  196. pulumi_scm/tag.py +14 -7
  197. pulumi_scm/tcp_setting.py +14 -7
  198. pulumi_scm/tls_service_profile.py +14 -7
  199. pulumi_scm/tunnel_interface.py +113 -7
  200. pulumi_scm/update_schedule.py +14 -7
  201. pulumi_scm/url_access_profile.py +14 -7
  202. pulumi_scm/url_category.py +14 -7
  203. pulumi_scm/variable.py +14 -7
  204. pulumi_scm/vlan_interface.py +28 -7
  205. pulumi_scm/vpn_setting.py +14 -7
  206. pulumi_scm/vulnerability_protection_profile.py +14 -7
  207. pulumi_scm/vulnerability_protection_signature.py +14 -7
  208. pulumi_scm/wildfire_anti_virus_profile.py +14 -7
  209. pulumi_scm/zone.py +14 -7
  210. pulumi_scm/zone_protection_profile.py +21 -0
  211. {pulumi_scm-1.0.2.dist-info → pulumi_scm-1.0.3.dist-info}/METADATA +1 -1
  212. pulumi_scm-1.0.3.dist-info/RECORD +354 -0
  213. {pulumi_scm-1.0.2.dist-info → pulumi_scm-1.0.3.dist-info}/WHEEL +1 -1
  214. pulumi_scm-1.0.2.dist-info/RECORD +0 -354
  215. {pulumi_scm-1.0.2.dist-info → pulumi_scm-1.0.3.dist-info}/top_level.txt +0 -0
@@ -21,37 +21,49 @@ __all__ = ['LogForwardingProfileArgs', 'LogForwardingProfile']
21
21
  @pulumi.input_type
22
22
  class LogForwardingProfileArgs:
23
23
  def __init__(__self__, *,
24
+ match_lists: pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]],
24
25
  description: Optional[pulumi.Input[_builtins.str]] = None,
25
26
  device: Optional[pulumi.Input[_builtins.str]] = None,
26
27
  folder: Optional[pulumi.Input[_builtins.str]] = None,
27
- match_lists: Optional[pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]]] = None,
28
28
  name: Optional[pulumi.Input[_builtins.str]] = None,
29
29
  snippet: Optional[pulumi.Input[_builtins.str]] = None):
30
30
  """
31
31
  The set of arguments for constructing a LogForwardingProfile resource.
32
+ :param pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]] match_lists: Match list
32
33
  :param pulumi.Input[_builtins.str] description: Log forwarding profile description
33
34
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
34
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
35
35
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
36
+
36
37
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
37
- :param pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]] match_lists: Match list
38
38
  :param pulumi.Input[_builtins.str] name: The name of the log forwarding profile
39
39
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
40
+
40
41
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
41
42
  """
43
+ pulumi.set(__self__, "match_lists", match_lists)
42
44
  if description is not None:
43
45
  pulumi.set(__self__, "description", description)
44
46
  if device is not None:
45
47
  pulumi.set(__self__, "device", device)
46
48
  if folder is not None:
47
49
  pulumi.set(__self__, "folder", folder)
48
- if match_lists is not None:
49
- pulumi.set(__self__, "match_lists", match_lists)
50
50
  if name is not None:
51
51
  pulumi.set(__self__, "name", name)
52
52
  if snippet is not None:
53
53
  pulumi.set(__self__, "snippet", snippet)
54
54
 
55
+ @_builtins.property
56
+ @pulumi.getter(name="matchLists")
57
+ def match_lists(self) -> pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]]:
58
+ """
59
+ Match list
60
+ """
61
+ return pulumi.get(self, "match_lists")
62
+
63
+ @match_lists.setter
64
+ def match_lists(self, value: pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]]):
65
+ pulumi.set(self, "match_lists", value)
66
+
55
67
  @_builtins.property
56
68
  @pulumi.getter
57
69
  def description(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -69,7 +81,6 @@ class LogForwardingProfileArgs:
69
81
  def device(self) -> Optional[pulumi.Input[_builtins.str]]:
70
82
  """
71
83
  The device in which the resource is defined
72
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
73
84
  """
74
85
  return pulumi.get(self, "device")
75
86
 
@@ -82,6 +93,7 @@ class LogForwardingProfileArgs:
82
93
  def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
83
94
  """
84
95
  The folder in which the resource is defined
96
+
85
97
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
86
98
  """
87
99
  return pulumi.get(self, "folder")
@@ -90,18 +102,6 @@ class LogForwardingProfileArgs:
90
102
  def folder(self, value: Optional[pulumi.Input[_builtins.str]]):
91
103
  pulumi.set(self, "folder", value)
92
104
 
93
- @_builtins.property
94
- @pulumi.getter(name="matchLists")
95
- def match_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]]]:
96
- """
97
- Match list
98
- """
99
- return pulumi.get(self, "match_lists")
100
-
101
- @match_lists.setter
102
- def match_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]]]):
103
- pulumi.set(self, "match_lists", value)
104
-
105
105
  @_builtins.property
106
106
  @pulumi.getter
107
107
  def name(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -119,6 +119,7 @@ class LogForwardingProfileArgs:
119
119
  def snippet(self) -> Optional[pulumi.Input[_builtins.str]]:
120
120
  """
121
121
  The snippet in which the resource is defined
122
+
122
123
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
123
124
  """
124
125
  return pulumi.get(self, "snippet")
@@ -142,12 +143,13 @@ class _LogForwardingProfileState:
142
143
  Input properties used for looking up and filtering LogForwardingProfile resources.
143
144
  :param pulumi.Input[_builtins.str] description: Log forwarding profile description
144
145
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
145
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
146
146
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
147
+
147
148
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
148
149
  :param pulumi.Input[Sequence[pulumi.Input['LogForwardingProfileMatchListArgs']]] match_lists: Match list
149
150
  :param pulumi.Input[_builtins.str] name: The name of the log forwarding profile
150
151
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
152
+
151
153
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
152
154
  """
153
155
  if description is not None:
@@ -182,7 +184,6 @@ class _LogForwardingProfileState:
182
184
  def device(self) -> Optional[pulumi.Input[_builtins.str]]:
183
185
  """
184
186
  The device in which the resource is defined
185
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
186
187
  """
187
188
  return pulumi.get(self, "device")
188
189
 
@@ -195,6 +196,7 @@ class _LogForwardingProfileState:
195
196
  def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
196
197
  """
197
198
  The folder in which the resource is defined
199
+
198
200
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
199
201
  """
200
202
  return pulumi.get(self, "folder")
@@ -232,6 +234,7 @@ class _LogForwardingProfileState:
232
234
  def snippet(self) -> Optional[pulumi.Input[_builtins.str]]:
233
235
  """
234
236
  The snippet in which the resource is defined
237
+
235
238
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
236
239
  """
237
240
  return pulumi.get(self, "snippet")
@@ -266,6 +269,108 @@ class LogForwardingProfile(pulumi.CustomResource):
266
269
  """
267
270
  LogForwardingProfile resource
268
271
 
272
+ ## Example Usage
273
+
274
+ ```python
275
+ import pulumi
276
+ import pulumi_scm as scm
277
+
278
+ scm_log_forwarding_profile1 = scm.LogForwardingProfile("scm_log_forwarding_profile_1",
279
+ folder="All",
280
+ name="scm-log-fowarding-profile-1",
281
+ match_lists=[{
282
+ "name": "profile_match",
283
+ "log_type": "threat",
284
+ "filter": "(addr in 192.50.10.10) and (addr.dst notin 192.40.50.10)",
285
+ }])
286
+ scm_log_forwarding_profile2 = scm.LogForwardingProfile("scm_log_forwarding_profile_2",
287
+ folder="All",
288
+ name="scm-log-fowarding-profile-2",
289
+ description="Log Forwarding w/ HTTP Server Profile and Syslog Server Profile",
290
+ match_lists=[{
291
+ "name": "profile_match",
292
+ "log_type": "traffic",
293
+ "filter": "(device_name eq test_device)",
294
+ "send_http": ["test_http"],
295
+ "send_syslog": [
296
+ "syslog-server-prof-mixed",
297
+ "syslog-server-prof-complete",
298
+ ],
299
+ }])
300
+ scm_log_forwarding_profile3 = scm.LogForwardingProfile("scm_log_forwarding_profile_3",
301
+ folder="All",
302
+ name="scm-log-fowarding-profile-3",
303
+ description="Log Forwarding w/ All Server Profiles",
304
+ match_lists=[{
305
+ "name": "profile_match",
306
+ "action_desc": "all server profiles",
307
+ "log_type": "dns-security",
308
+ "filter": "All Logs",
309
+ "send_http": [
310
+ "test_http",
311
+ "t10",
312
+ ],
313
+ "send_syslog": [
314
+ "syslog-server-prof-base",
315
+ "syslog-server-prof-mixed",
316
+ "syslog-server-prof-complete",
317
+ ],
318
+ "send_snmptrap": ["snmp_test"],
319
+ "send_email": [
320
+ "email_test",
321
+ "email_test_2",
322
+ ],
323
+ }])
324
+ scm_log_forwarding_profile4 = scm.LogForwardingProfile("scm_log_forwarding_profile_4",
325
+ folder="All",
326
+ name="scm-log-fowarding-profile-4",
327
+ description="Log Forwarding w/ Multiple Match Lists",
328
+ match_lists=[
329
+ {
330
+ "name": "profile_match_1",
331
+ "action_desc": "match list for url",
332
+ "log_type": "url",
333
+ "filter": "(sdwan_cluster contains 123)",
334
+ "send_http": ["t10"],
335
+ "send_syslog": ["syslog-server-prof-base"],
336
+ "send_snmptrap": ["snmp_test"],
337
+ },
338
+ {
339
+ "name": "profile_match_2",
340
+ "log_type": "data",
341
+ "filter": "(link_switch_2 neq lnk_2) or (pkts_received geq 100)",
342
+ "send_http": [
343
+ "t5",
344
+ "t10",
345
+ "t20",
346
+ ],
347
+ "send_syslog": ["syslog-server-prof-mixed"],
348
+ "send_email": [
349
+ "email_test",
350
+ "email_test_2",
351
+ ],
352
+ },
353
+ {
354
+ "name": "profile_match_3",
355
+ "action_desc": "match list for wildfire",
356
+ "log_type": "wildfire",
357
+ "filter": "(imei contains test_server)",
358
+ "send_http": [
359
+ "t5",
360
+ "t10",
361
+ "t20",
362
+ "t22",
363
+ "t24",
364
+ ],
365
+ "send_syslog": ["syslog-server-prof-complete"],
366
+ "send_email": [
367
+ "email_test",
368
+ "email_test_2",
369
+ ],
370
+ },
371
+ ])
372
+ ```
373
+
269
374
  ## Import
270
375
 
271
376
  The following command can be used to import a resource not managed by Terraform:
@@ -296,23 +401,126 @@ class LogForwardingProfile(pulumi.CustomResource):
296
401
  :param pulumi.ResourceOptions opts: Options for the resource.
297
402
  :param pulumi.Input[_builtins.str] description: Log forwarding profile description
298
403
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
299
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
300
404
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
405
+
301
406
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
302
407
  :param pulumi.Input[Sequence[pulumi.Input[Union['LogForwardingProfileMatchListArgs', 'LogForwardingProfileMatchListArgsDict']]]] match_lists: Match list
303
408
  :param pulumi.Input[_builtins.str] name: The name of the log forwarding profile
304
409
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
410
+
305
411
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
306
412
  """
307
413
  ...
308
414
  @overload
309
415
  def __init__(__self__,
310
416
  resource_name: str,
311
- args: Optional[LogForwardingProfileArgs] = None,
417
+ args: LogForwardingProfileArgs,
312
418
  opts: Optional[pulumi.ResourceOptions] = None):
313
419
  """
314
420
  LogForwardingProfile resource
315
421
 
422
+ ## Example Usage
423
+
424
+ ```python
425
+ import pulumi
426
+ import pulumi_scm as scm
427
+
428
+ scm_log_forwarding_profile1 = scm.LogForwardingProfile("scm_log_forwarding_profile_1",
429
+ folder="All",
430
+ name="scm-log-fowarding-profile-1",
431
+ match_lists=[{
432
+ "name": "profile_match",
433
+ "log_type": "threat",
434
+ "filter": "(addr in 192.50.10.10) and (addr.dst notin 192.40.50.10)",
435
+ }])
436
+ scm_log_forwarding_profile2 = scm.LogForwardingProfile("scm_log_forwarding_profile_2",
437
+ folder="All",
438
+ name="scm-log-fowarding-profile-2",
439
+ description="Log Forwarding w/ HTTP Server Profile and Syslog Server Profile",
440
+ match_lists=[{
441
+ "name": "profile_match",
442
+ "log_type": "traffic",
443
+ "filter": "(device_name eq test_device)",
444
+ "send_http": ["test_http"],
445
+ "send_syslog": [
446
+ "syslog-server-prof-mixed",
447
+ "syslog-server-prof-complete",
448
+ ],
449
+ }])
450
+ scm_log_forwarding_profile3 = scm.LogForwardingProfile("scm_log_forwarding_profile_3",
451
+ folder="All",
452
+ name="scm-log-fowarding-profile-3",
453
+ description="Log Forwarding w/ All Server Profiles",
454
+ match_lists=[{
455
+ "name": "profile_match",
456
+ "action_desc": "all server profiles",
457
+ "log_type": "dns-security",
458
+ "filter": "All Logs",
459
+ "send_http": [
460
+ "test_http",
461
+ "t10",
462
+ ],
463
+ "send_syslog": [
464
+ "syslog-server-prof-base",
465
+ "syslog-server-prof-mixed",
466
+ "syslog-server-prof-complete",
467
+ ],
468
+ "send_snmptrap": ["snmp_test"],
469
+ "send_email": [
470
+ "email_test",
471
+ "email_test_2",
472
+ ],
473
+ }])
474
+ scm_log_forwarding_profile4 = scm.LogForwardingProfile("scm_log_forwarding_profile_4",
475
+ folder="All",
476
+ name="scm-log-fowarding-profile-4",
477
+ description="Log Forwarding w/ Multiple Match Lists",
478
+ match_lists=[
479
+ {
480
+ "name": "profile_match_1",
481
+ "action_desc": "match list for url",
482
+ "log_type": "url",
483
+ "filter": "(sdwan_cluster contains 123)",
484
+ "send_http": ["t10"],
485
+ "send_syslog": ["syslog-server-prof-base"],
486
+ "send_snmptrap": ["snmp_test"],
487
+ },
488
+ {
489
+ "name": "profile_match_2",
490
+ "log_type": "data",
491
+ "filter": "(link_switch_2 neq lnk_2) or (pkts_received geq 100)",
492
+ "send_http": [
493
+ "t5",
494
+ "t10",
495
+ "t20",
496
+ ],
497
+ "send_syslog": ["syslog-server-prof-mixed"],
498
+ "send_email": [
499
+ "email_test",
500
+ "email_test_2",
501
+ ],
502
+ },
503
+ {
504
+ "name": "profile_match_3",
505
+ "action_desc": "match list for wildfire",
506
+ "log_type": "wildfire",
507
+ "filter": "(imei contains test_server)",
508
+ "send_http": [
509
+ "t5",
510
+ "t10",
511
+ "t20",
512
+ "t22",
513
+ "t24",
514
+ ],
515
+ "send_syslog": ["syslog-server-prof-complete"],
516
+ "send_email": [
517
+ "email_test",
518
+ "email_test_2",
519
+ ],
520
+ },
521
+ ])
522
+ ```
523
+
316
524
  ## Import
317
525
 
318
526
  The following command can be used to import a resource not managed by Terraform:
@@ -372,6 +580,8 @@ class LogForwardingProfile(pulumi.CustomResource):
372
580
  __props__.__dict__["description"] = description
373
581
  __props__.__dict__["device"] = device
374
582
  __props__.__dict__["folder"] = folder
583
+ if match_lists is None and not opts.urn:
584
+ raise TypeError("Missing required property 'match_lists'")
375
585
  __props__.__dict__["match_lists"] = match_lists
376
586
  __props__.__dict__["name"] = name
377
587
  __props__.__dict__["snippet"] = snippet
@@ -402,12 +612,13 @@ class LogForwardingProfile(pulumi.CustomResource):
402
612
  :param pulumi.ResourceOptions opts: Options for the resource.
403
613
  :param pulumi.Input[_builtins.str] description: Log forwarding profile description
404
614
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
405
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
406
615
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
616
+
407
617
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
408
618
  :param pulumi.Input[Sequence[pulumi.Input[Union['LogForwardingProfileMatchListArgs', 'LogForwardingProfileMatchListArgsDict']]]] match_lists: Match list
409
619
  :param pulumi.Input[_builtins.str] name: The name of the log forwarding profile
410
620
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
621
+
411
622
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
412
623
  """
413
624
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -436,7 +647,6 @@ class LogForwardingProfile(pulumi.CustomResource):
436
647
  def device(self) -> pulumi.Output[Optional[_builtins.str]]:
437
648
  """
438
649
  The device in which the resource is defined
439
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
440
650
  """
441
651
  return pulumi.get(self, "device")
442
652
 
@@ -445,13 +655,14 @@ class LogForwardingProfile(pulumi.CustomResource):
445
655
  def folder(self) -> pulumi.Output[Optional[_builtins.str]]:
446
656
  """
447
657
  The folder in which the resource is defined
658
+
448
659
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
449
660
  """
450
661
  return pulumi.get(self, "folder")
451
662
 
452
663
  @_builtins.property
453
664
  @pulumi.getter(name="matchLists")
454
- def match_lists(self) -> pulumi.Output[Optional[Sequence['outputs.LogForwardingProfileMatchList']]]:
665
+ def match_lists(self) -> pulumi.Output[Sequence['outputs.LogForwardingProfileMatchList']]:
455
666
  """
456
667
  Match list
457
668
  """
@@ -470,6 +681,7 @@ class LogForwardingProfile(pulumi.CustomResource):
470
681
  def snippet(self) -> pulumi.Output[Optional[_builtins.str]]:
471
682
  """
472
683
  The snippet in which the resource is defined
684
+
473
685
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
474
686
  """
475
687
  return pulumi.get(self, "snippet")
@@ -30,12 +30,13 @@ class LogicalRouterArgs:
30
30
  """
31
31
  The set of arguments for constructing a LogicalRouter resource.
32
32
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
33
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
34
33
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
34
+
35
35
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
36
36
  :param pulumi.Input[_builtins.str] name: Name
37
37
  :param pulumi.Input[_builtins.str] routing_stack: Routing stack
38
38
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
39
+
39
40
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
40
41
  :param pulumi.Input[Sequence[pulumi.Input['LogicalRouterVrfArgs']]] vrves: Vrf
41
42
  """
@@ -57,7 +58,6 @@ class LogicalRouterArgs:
57
58
  def device(self) -> Optional[pulumi.Input[_builtins.str]]:
58
59
  """
59
60
  The device in which the resource is defined
60
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
61
61
  """
62
62
  return pulumi.get(self, "device")
63
63
 
@@ -70,6 +70,7 @@ class LogicalRouterArgs:
70
70
  def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
71
71
  """
72
72
  The folder in which the resource is defined
73
+
73
74
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
74
75
  """
75
76
  return pulumi.get(self, "folder")
@@ -107,6 +108,7 @@ class LogicalRouterArgs:
107
108
  def snippet(self) -> Optional[pulumi.Input[_builtins.str]]:
108
109
  """
109
110
  The snippet in which the resource is defined
111
+
110
112
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
111
113
  """
112
114
  return pulumi.get(self, "snippet")
@@ -141,12 +143,13 @@ class _LogicalRouterState:
141
143
  """
142
144
  Input properties used for looking up and filtering LogicalRouter resources.
143
145
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
144
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
145
146
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
147
+
146
148
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
147
149
  :param pulumi.Input[_builtins.str] name: Name
148
150
  :param pulumi.Input[_builtins.str] routing_stack: Routing stack
149
151
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
152
+
150
153
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
151
154
  :param pulumi.Input[Sequence[pulumi.Input['LogicalRouterVrfArgs']]] vrves: Vrf
152
155
  """
@@ -170,7 +173,6 @@ class _LogicalRouterState:
170
173
  def device(self) -> Optional[pulumi.Input[_builtins.str]]:
171
174
  """
172
175
  The device in which the resource is defined
173
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
174
176
  """
175
177
  return pulumi.get(self, "device")
176
178
 
@@ -183,6 +185,7 @@ class _LogicalRouterState:
183
185
  def folder(self) -> Optional[pulumi.Input[_builtins.str]]:
184
186
  """
185
187
  The folder in which the resource is defined
188
+
186
189
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
187
190
  """
188
191
  return pulumi.get(self, "folder")
@@ -220,6 +223,7 @@ class _LogicalRouterState:
220
223
  def snippet(self) -> Optional[pulumi.Input[_builtins.str]]:
221
224
  """
222
225
  The snippet in which the resource is defined
226
+
223
227
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
224
228
  """
225
229
  return pulumi.get(self, "snippet")
@@ -436,12 +440,13 @@ class LogicalRouter(pulumi.CustomResource):
436
440
  :param str resource_name: The name of the resource.
437
441
  :param pulumi.ResourceOptions opts: Options for the resource.
438
442
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
439
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
440
443
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
444
+
441
445
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
442
446
  :param pulumi.Input[_builtins.str] name: Name
443
447
  :param pulumi.Input[_builtins.str] routing_stack: Routing stack
444
448
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
449
+
445
450
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
446
451
  :param pulumi.Input[Sequence[pulumi.Input[Union['LogicalRouterVrfArgs', 'LogicalRouterVrfArgsDict']]]] vrves: Vrf
447
452
  """
@@ -683,12 +688,13 @@ class LogicalRouter(pulumi.CustomResource):
683
688
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
684
689
  :param pulumi.ResourceOptions opts: Options for the resource.
685
690
  :param pulumi.Input[_builtins.str] device: The device in which the resource is defined
686
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
687
691
  :param pulumi.Input[_builtins.str] folder: The folder in which the resource is defined
692
+
688
693
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
689
694
  :param pulumi.Input[_builtins.str] name: Name
690
695
  :param pulumi.Input[_builtins.str] routing_stack: Routing stack
691
696
  :param pulumi.Input[_builtins.str] snippet: The snippet in which the resource is defined
697
+
692
698
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
693
699
  :param pulumi.Input[Sequence[pulumi.Input[Union['LogicalRouterVrfArgs', 'LogicalRouterVrfArgsDict']]]] vrves: Vrf
694
700
  """
@@ -710,7 +716,6 @@ class LogicalRouter(pulumi.CustomResource):
710
716
  def device(self) -> pulumi.Output[Optional[_builtins.str]]:
711
717
  """
712
718
  The device in which the resource is defined
713
- > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
714
719
  """
715
720
  return pulumi.get(self, "device")
716
721
 
@@ -719,6 +724,7 @@ class LogicalRouter(pulumi.CustomResource):
719
724
  def folder(self) -> pulumi.Output[Optional[_builtins.str]]:
720
725
  """
721
726
  The folder in which the resource is defined
727
+
722
728
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
723
729
  """
724
730
  return pulumi.get(self, "folder")
@@ -744,6 +750,7 @@ class LogicalRouter(pulumi.CustomResource):
744
750
  def snippet(self) -> pulumi.Output[Optional[_builtins.str]]:
745
751
  """
746
752
  The snippet in which the resource is defined
753
+
747
754
  > ℹ️ **Note:** You must specify exactly one of `device`, `folder`, and `snippet`.
748
755
  """
749
756
  return pulumi.get(self, "snippet")