Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit d3821d2

Browse files
committedMar 14, 2025·
feat(api): api update (#2535)
1 parent 4830635 commit d3821d2

File tree

11 files changed

+200
-3
lines changed

11 files changed

+200
-3
lines changed
 

‎.stats.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
configured_endpoints: 1608
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-72040dc5513750699c8bd782b33c7aefe34cc7602580b4153f134522cbc9276d.yml
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/cloudflare%2Fcloudflare-ea509c8ba855c07cbf99dd2dcb998d7326cbf5e83bcb79d5b1260b2dd28e817d.yml

‎src/cloudflare/resources/zero_trust/devices/policies/custom/custom.py

+42-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from __future__ import annotations
44

5-
from typing import Type, Optional, cast
5+
from typing import Type, Iterable, Optional, cast
66

77
import httpx
88

@@ -48,6 +48,7 @@
4848
from ......_base_client import AsyncPaginator, make_request_options
4949
from ......types.zero_trust.devices.policies import custom_edit_params, custom_create_params
5050
from ......types.zero_trust.devices.settings_policy import SettingsPolicy
51+
from ......types.zero_trust.devices.split_tunnel_exclude_param import SplitTunnelExcludeParam
5152

5253
__all__ = ["CustomResource", "AsyncCustomResource"]
5354

@@ -99,7 +100,9 @@ def create(
99100
description: str | NotGiven = NOT_GIVEN,
100101
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
101102
enabled: bool | NotGiven = NOT_GIVEN,
103+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
102104
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
105+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
103106
lan_allow_minutes: float | NotGiven = NOT_GIVEN,
104107
lan_allow_subnet_size: float | NotGiven = NOT_GIVEN,
105108
register_interface_ip_with_dns: bool | NotGiven = NOT_GIVEN,
@@ -145,8 +148,14 @@ def create(
145148
146149
enabled: Whether the policy will be applied to matching devices.
147150
151+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
152+
'include' cannot be set in the same request.
153+
148154
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
149155
156+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
157+
'include' cannot be set in the same request.
158+
150159
lan_allow_minutes: The amount of time in minutes a user is allowed access to their LAN. A value of
151160
0 will allow LAN access until the next WARP reconnection, such as a reboot or a
152161
laptop waking from sleep. Note that this field is omitted from the response if
@@ -189,7 +198,9 @@ def create(
189198
"description": description,
190199
"disable_auto_fallback": disable_auto_fallback,
191200
"enabled": enabled,
201+
"exclude": exclude,
192202
"exclude_office_ips": exclude_office_ips,
203+
"include": include,
193204
"lan_allow_minutes": lan_allow_minutes,
194205
"lan_allow_subnet_size": lan_allow_subnet_size,
195206
"register_interface_ip_with_dns": register_interface_ip_with_dns,
@@ -298,7 +309,9 @@ def edit(
298309
description: str | NotGiven = NOT_GIVEN,
299310
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
300311
enabled: bool | NotGiven = NOT_GIVEN,
312+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
301313
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
314+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
302315
match: str | NotGiven = NOT_GIVEN,
303316
name: str | NotGiven = NOT_GIVEN,
304317
precedence: float | NotGiven = NOT_GIVEN,
@@ -339,8 +352,14 @@ def edit(
339352
340353
enabled: Whether the policy will be applied to matching devices.
341354
355+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
356+
'include' cannot be set in the same request.
357+
342358
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
343359
360+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
361+
'include' cannot be set in the same request.
362+
344363
match: The wirefilter expression to match devices.
345364
346365
name: The name of the device settings profile.
@@ -381,7 +400,9 @@ def edit(
381400
"description": description,
382401
"disable_auto_fallback": disable_auto_fallback,
383402
"enabled": enabled,
403+
"exclude": exclude,
384404
"exclude_office_ips": exclude_office_ips,
405+
"include": include,
385406
"match": match,
386407
"name": name,
387408
"precedence": precedence,
@@ -493,7 +514,9 @@ async def create(
493514
description: str | NotGiven = NOT_GIVEN,
494515
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
495516
enabled: bool | NotGiven = NOT_GIVEN,
517+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
496518
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
519+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
497520
lan_allow_minutes: float | NotGiven = NOT_GIVEN,
498521
lan_allow_subnet_size: float | NotGiven = NOT_GIVEN,
499522
register_interface_ip_with_dns: bool | NotGiven = NOT_GIVEN,
@@ -539,8 +562,14 @@ async def create(
539562
540563
enabled: Whether the policy will be applied to matching devices.
541564
565+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
566+
'include' cannot be set in the same request.
567+
542568
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
543569
570+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
571+
'include' cannot be set in the same request.
572+
544573
lan_allow_minutes: The amount of time in minutes a user is allowed access to their LAN. A value of
545574
0 will allow LAN access until the next WARP reconnection, such as a reboot or a
546575
laptop waking from sleep. Note that this field is omitted from the response if
@@ -583,7 +612,9 @@ async def create(
583612
"description": description,
584613
"disable_auto_fallback": disable_auto_fallback,
585614
"enabled": enabled,
615+
"exclude": exclude,
586616
"exclude_office_ips": exclude_office_ips,
617+
"include": include,
587618
"lan_allow_minutes": lan_allow_minutes,
588619
"lan_allow_subnet_size": lan_allow_subnet_size,
589620
"register_interface_ip_with_dns": register_interface_ip_with_dns,
@@ -692,7 +723,9 @@ async def edit(
692723
description: str | NotGiven = NOT_GIVEN,
693724
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
694725
enabled: bool | NotGiven = NOT_GIVEN,
726+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
695727
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
728+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
696729
match: str | NotGiven = NOT_GIVEN,
697730
name: str | NotGiven = NOT_GIVEN,
698731
precedence: float | NotGiven = NOT_GIVEN,
@@ -733,8 +766,14 @@ async def edit(
733766
734767
enabled: Whether the policy will be applied to matching devices.
735768
769+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
770+
'include' cannot be set in the same request.
771+
736772
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
737773
774+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
775+
'include' cannot be set in the same request.
776+
738777
match: The wirefilter expression to match devices.
739778
740779
name: The name of the device settings profile.
@@ -775,7 +814,9 @@ async def edit(
775814
"description": description,
776815
"disable_auto_fallback": disable_auto_fallback,
777816
"enabled": enabled,
817+
"exclude": exclude,
778818
"exclude_office_ips": exclude_office_ips,
819+
"include": include,
779820
"match": match,
780821
"name": name,
781822
"precedence": precedence,

‎src/cloudflare/resources/zero_trust/devices/policies/default/default.py

+22-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from __future__ import annotations
44

5-
from typing import Type, Optional, cast
5+
from typing import Type, Iterable, Optional, cast
66

77
import httpx
88

@@ -54,6 +54,7 @@
5454
)
5555
from ......_base_client import make_request_options
5656
from ......types.zero_trust.devices.policies import default_edit_params
57+
from ......types.zero_trust.devices.split_tunnel_exclude_param import SplitTunnelExcludeParam
5758
from ......types.zero_trust.devices.policies.default_get_response import DefaultGetResponse
5859
from ......types.zero_trust.devices.policies.default_edit_response import DefaultEditResponse
5960

@@ -106,7 +107,9 @@ def edit(
106107
auto_connect: float | NotGiven = NOT_GIVEN,
107108
captive_portal: float | NotGiven = NOT_GIVEN,
108109
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
110+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
109111
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
112+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
110113
register_interface_ip_with_dns: bool | NotGiven = NOT_GIVEN,
111114
service_mode_v2: default_edit_params.ServiceModeV2 | NotGiven = NOT_GIVEN,
112115
support_url: str | NotGiven = NOT_GIVEN,
@@ -138,8 +141,14 @@ def edit(
138141
fall back to a best guess of the default/system DNS resolvers unless this policy
139142
option is set to `true`.
140143
144+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
145+
'include' cannot be set in the same request.
146+
141147
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
142148
149+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
150+
'include' cannot be set in the same request.
151+
143152
register_interface_ip_with_dns: Determines if the operating system will register WARP's local interface IP with
144153
your on-premises DNS server.
145154
@@ -169,7 +178,9 @@ def edit(
169178
"auto_connect": auto_connect,
170179
"captive_portal": captive_portal,
171180
"disable_auto_fallback": disable_auto_fallback,
181+
"exclude": exclude,
172182
"exclude_office_ips": exclude_office_ips,
183+
"include": include,
173184
"register_interface_ip_with_dns": register_interface_ip_with_dns,
174185
"service_mode_v2": service_mode_v2,
175186
"support_url": support_url,
@@ -272,7 +283,9 @@ async def edit(
272283
auto_connect: float | NotGiven = NOT_GIVEN,
273284
captive_portal: float | NotGiven = NOT_GIVEN,
274285
disable_auto_fallback: bool | NotGiven = NOT_GIVEN,
286+
exclude: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
275287
exclude_office_ips: bool | NotGiven = NOT_GIVEN,
288+
include: Iterable[SplitTunnelExcludeParam] | NotGiven = NOT_GIVEN,
276289
register_interface_ip_with_dns: bool | NotGiven = NOT_GIVEN,
277290
service_mode_v2: default_edit_params.ServiceModeV2 | NotGiven = NOT_GIVEN,
278291
support_url: str | NotGiven = NOT_GIVEN,
@@ -304,8 +317,14 @@ async def edit(
304317
fall back to a best guess of the default/system DNS resolvers unless this policy
305318
option is set to `true`.
306319
320+
exclude: List of routes excluded in the WARP client's tunnel. Both 'exclude' and
321+
'include' cannot be set in the same request.
322+
307323
exclude_office_ips: Whether to add Microsoft IPs to Split Tunnel exclusions.
308324
325+
include: List of routes included in the WARP client's tunnel. Both 'exclude' and
326+
'include' cannot be set in the same request.
327+
309328
register_interface_ip_with_dns: Determines if the operating system will register WARP's local interface IP with
310329
your on-premises DNS server.
311330
@@ -335,7 +354,9 @@ async def edit(
335354
"auto_connect": auto_connect,
336355
"captive_portal": captive_portal,
337356
"disable_auto_fallback": disable_auto_fallback,
357+
"exclude": exclude,
338358
"exclude_office_ips": exclude_office_ips,
359+
"include": include,
339360
"register_interface_ip_with_dns": register_interface_ip_with_dns,
340361
"service_mode_v2": service_mode_v2,
341362
"support_url": support_url,

‎src/cloudflare/types/zero_trust/devices/policies/custom_create_params.py

+15
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
from __future__ import annotations
44

5+
from typing import Iterable
56
from typing_extensions import Required, TypedDict
67

8+
from ..split_tunnel_exclude_param import SplitTunnelExcludeParam
9+
710
__all__ = ["CustomCreateParams", "ServiceModeV2"]
811

912

@@ -54,9 +57,21 @@ class CustomCreateParams(TypedDict, total=False):
5457
enabled: bool
5558
"""Whether the policy will be applied to matching devices."""
5659

60+
exclude: Iterable[SplitTunnelExcludeParam]
61+
"""List of routes excluded in the WARP client's tunnel.
62+
63+
Both 'exclude' and 'include' cannot be set in the same request.
64+
"""
65+
5766
exclude_office_ips: bool
5867
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
5968

69+
include: Iterable[SplitTunnelExcludeParam]
70+
"""List of routes included in the WARP client's tunnel.
71+
72+
Both 'exclude' and 'include' cannot be set in the same request.
73+
"""
74+
6075
lan_allow_minutes: float
6176
"""The amount of time in minutes a user is allowed access to their LAN.
6277

‎src/cloudflare/types/zero_trust/devices/policies/custom_edit_params.py

+15
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
from __future__ import annotations
44

5+
from typing import Iterable
56
from typing_extensions import Required, TypedDict
67

8+
from ..split_tunnel_exclude_param import SplitTunnelExcludeParam
9+
710
__all__ = ["CustomEditParams", "ServiceModeV2"]
811

912

@@ -41,9 +44,21 @@ class CustomEditParams(TypedDict, total=False):
4144
enabled: bool
4245
"""Whether the policy will be applied to matching devices."""
4346

47+
exclude: Iterable[SplitTunnelExcludeParam]
48+
"""List of routes excluded in the WARP client's tunnel.
49+
50+
Both 'exclude' and 'include' cannot be set in the same request.
51+
"""
52+
4453
exclude_office_ips: bool
4554
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
4655

56+
include: Iterable[SplitTunnelExcludeParam]
57+
"""List of routes included in the WARP client's tunnel.
58+
59+
Both 'exclude' and 'include' cannot be set in the same request.
60+
"""
61+
4762
match: str
4863
"""The wirefilter expression to match devices."""
4964

‎src/cloudflare/types/zero_trust/devices/policies/default_edit_params.py

+15
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
from __future__ import annotations
44

5+
from typing import Iterable
56
from typing_extensions import Required, TypedDict
67

8+
from ..split_tunnel_exclude_param import SplitTunnelExcludeParam
9+
710
__all__ = ["DefaultEditParams", "ServiceModeV2"]
811

912

@@ -35,9 +38,21 @@ class DefaultEditParams(TypedDict, total=False):
3538
option is set to `true`.
3639
"""
3740

41+
exclude: Iterable[SplitTunnelExcludeParam]
42+
"""List of routes excluded in the WARP client's tunnel.
43+
44+
Both 'exclude' and 'include' cannot be set in the same request.
45+
"""
46+
3847
exclude_office_ips: bool
3948
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
4049

50+
include: Iterable[SplitTunnelExcludeParam]
51+
"""List of routes included in the WARP client's tunnel.
52+
53+
Both 'exclude' and 'include' cannot be set in the same request.
54+
"""
55+
4156
register_interface_ip_with_dns: bool
4257
"""
4358
Determines if the operating system will register WARP's local interface IP with

‎src/cloudflare/types/zero_trust/devices/policies/default_edit_response.py

+2
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ class DefaultEditResponse(BaseModel):
5151
"""Whether the policy will be applied to matching devices."""
5252

5353
exclude: Optional[List[SplitTunnelExclude]] = None
54+
"""List of routes excluded in the WARP client's tunnel."""
5455

5556
exclude_office_ips: Optional[bool] = None
5657
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
@@ -60,6 +61,7 @@ class DefaultEditResponse(BaseModel):
6061
gateway_unique_id: Optional[str] = None
6162

6263
include: Optional[List[SplitTunnelInclude]] = None
64+
"""List of routes included in the WARP client's tunnel."""
6365

6466
register_interface_ip_with_dns: Optional[bool] = None
6567
"""

‎src/cloudflare/types/zero_trust/devices/policies/default_get_response.py

+2
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ class DefaultGetResponse(BaseModel):
5151
"""Whether the policy will be applied to matching devices."""
5252

5353
exclude: Optional[List[SplitTunnelExclude]] = None
54+
"""List of routes excluded in the WARP client's tunnel."""
5455

5556
exclude_office_ips: Optional[bool] = None
5657
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
@@ -60,6 +61,7 @@ class DefaultGetResponse(BaseModel):
6061
gateway_unique_id: Optional[str] = None
6162

6263
include: Optional[List[SplitTunnelInclude]] = None
64+
"""List of routes included in the WARP client's tunnel."""
6365

6466
register_interface_ip_with_dns: Optional[bool] = None
6567
"""

‎src/cloudflare/types/zero_trust/devices/settings_policy.py

+2
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ class SettingsPolicy(BaseModel):
6262
"""Whether the policy will be applied to matching devices."""
6363

6464
exclude: Optional[List[SplitTunnelExclude]] = None
65+
"""List of routes excluded in the WARP client's tunnel."""
6566

6667
exclude_office_ips: Optional[bool] = None
6768
"""Whether to add Microsoft IPs to Split Tunnel exclusions."""
@@ -71,6 +72,7 @@ class SettingsPolicy(BaseModel):
7172
gateway_unique_id: Optional[str] = None
7273

7374
include: Optional[List[SplitTunnelInclude]] = None
75+
"""List of routes included in the WARP client's tunnel."""
7476

7577
lan_allow_minutes: Optional[float] = None
7678
"""The amount of time in minutes a user is allowed access to their LAN.

‎tests/api_resources/zero_trust/devices/policies/test_custom.py

+56
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,21 @@ def test_method_create_with_all_params(self, client: Cloudflare) -> None:
4545
description="Policy for test teams.",
4646
disable_auto_fallback=True,
4747
enabled=True,
48+
exclude=[
49+
{
50+
"address": "192.0.2.0/24",
51+
"description": "Exclude testing domains from the tunnel",
52+
"host": "*.example.com",
53+
}
54+
],
4855
exclude_office_ips=True,
56+
include=[
57+
{
58+
"address": "192.0.2.0/24",
59+
"description": "Exclude testing domains from the tunnel",
60+
"host": "*.example.com",
61+
}
62+
],
4963
lan_allow_minutes=30,
5064
lan_allow_subnet_size=24,
5165
register_interface_ip_with_dns=True,
@@ -211,7 +225,21 @@ def test_method_edit_with_all_params(self, client: Cloudflare) -> None:
211225
description="Policy for test teams.",
212226
disable_auto_fallback=True,
213227
enabled=True,
228+
exclude=[
229+
{
230+
"address": "192.0.2.0/24",
231+
"description": "Exclude testing domains from the tunnel",
232+
"host": "*.example.com",
233+
}
234+
],
214235
exclude_office_ips=True,
236+
include=[
237+
{
238+
"address": "192.0.2.0/24",
239+
"description": "Exclude testing domains from the tunnel",
240+
"host": "*.example.com",
241+
}
242+
],
215243
match='user.identity == "test@cloudflare.com"',
216244
name="Allow Developers",
217245
precedence=100,
@@ -352,7 +380,21 @@ async def test_method_create_with_all_params(self, async_client: AsyncCloudflare
352380
description="Policy for test teams.",
353381
disable_auto_fallback=True,
354382
enabled=True,
383+
exclude=[
384+
{
385+
"address": "192.0.2.0/24",
386+
"description": "Exclude testing domains from the tunnel",
387+
"host": "*.example.com",
388+
}
389+
],
355390
exclude_office_ips=True,
391+
include=[
392+
{
393+
"address": "192.0.2.0/24",
394+
"description": "Exclude testing domains from the tunnel",
395+
"host": "*.example.com",
396+
}
397+
],
356398
lan_allow_minutes=30,
357399
lan_allow_subnet_size=24,
358400
register_interface_ip_with_dns=True,
@@ -518,7 +560,21 @@ async def test_method_edit_with_all_params(self, async_client: AsyncCloudflare)
518560
description="Policy for test teams.",
519561
disable_auto_fallback=True,
520562
enabled=True,
563+
exclude=[
564+
{
565+
"address": "192.0.2.0/24",
566+
"description": "Exclude testing domains from the tunnel",
567+
"host": "*.example.com",
568+
}
569+
],
521570
exclude_office_ips=True,
571+
include=[
572+
{
573+
"address": "192.0.2.0/24",
574+
"description": "Exclude testing domains from the tunnel",
575+
"host": "*.example.com",
576+
}
577+
],
522578
match='user.identity == "test@cloudflare.com"',
523579
name="Allow Developers",
524580
precedence=100,

‎tests/api_resources/zero_trust/devices/policies/test_default.py

+28
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,21 @@ def test_method_edit_with_all_params(self, client: Cloudflare) -> None:
3434
auto_connect=0,
3535
captive_portal=180,
3636
disable_auto_fallback=True,
37+
exclude=[
38+
{
39+
"address": "192.0.2.0/24",
40+
"description": "Exclude testing domains from the tunnel",
41+
"host": "*.example.com",
42+
}
43+
],
3744
exclude_office_ips=True,
45+
include=[
46+
{
47+
"address": "192.0.2.0/24",
48+
"description": "Exclude testing domains from the tunnel",
49+
"host": "*.example.com",
50+
}
51+
],
3852
register_interface_ip_with_dns=True,
3953
service_mode_v2={
4054
"mode": "proxy",
@@ -136,7 +150,21 @@ async def test_method_edit_with_all_params(self, async_client: AsyncCloudflare)
136150
auto_connect=0,
137151
captive_portal=180,
138152
disable_auto_fallback=True,
153+
exclude=[
154+
{
155+
"address": "192.0.2.0/24",
156+
"description": "Exclude testing domains from the tunnel",
157+
"host": "*.example.com",
158+
}
159+
],
139160
exclude_office_ips=True,
161+
include=[
162+
{
163+
"address": "192.0.2.0/24",
164+
"description": "Exclude testing domains from the tunnel",
165+
"host": "*.example.com",
166+
}
167+
],
140168
register_interface_ip_with_dns=True,
141169
service_mode_v2={
142170
"mode": "proxy",

0 commit comments

Comments
 (0)
Please sign in to comment.