Skip to content

Commit 4942a70

Browse files
feat(api): add max_port_admission_level to organizations policies
1 parent 4e4f3fe commit 4942a70

4 files changed

Lines changed: 29 additions & 2 deletions

File tree

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 193
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/gitpod%2Fgitpod-174838e2894923e3ff69ca22fed3c1588b9578d0f38f286a58a038b16ba9db81.yml
3-
openapi_spec_hash: 5331987cbc46299f3170b063b9bf06c1
4-
config_hash: 4447d1e1149a80d1bec70d353fb8acbf
3+
openapi_spec_hash: 805193dd7418d079e23e6cdb594e4e59
4+
config_hash: a2977efc262539c5e31ba0e6dfb6a0a1

src/gitpod/resources/organizations/policies.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import httpx
88

9+
from ...types import AdmissionLevel
910
from ..._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
1011
from ..._utils import maybe_transform, async_maybe_transform
1112
from ..._compat import cached_property
@@ -18,6 +19,7 @@
1819
)
1920
from ..._base_client import make_request_options
2021
from ...types.organizations import policy_update_params, policy_retrieve_params
22+
from ...types.admission_level import AdmissionLevel
2123
from ...types.organizations.veto_exec_policy_param import VetoExecPolicyParam
2224
from ...types.organizations.policy_retrieve_response import PolicyRetrieveResponse
2325

@@ -109,6 +111,7 @@ def update(
109111
maximum_environments_per_user: Optional[str] | Omit = omit,
110112
maximum_environment_timeout: Optional[str] | Omit = omit,
111113
maximum_running_environments_per_user: Optional[str] | Omit = omit,
114+
max_port_admission_level: Optional[AdmissionLevel] | Omit = omit,
112115
members_create_projects: Optional[bool] | Omit = omit,
113116
members_require_projects: Optional[bool] | Omit = omit,
114117
port_sharing_disabled: Optional[bool] | Omit = omit,
@@ -201,6 +204,11 @@ def update(
201204
maximum_running_environments_per_user: maximum_running_environments_per_user limits simultaneously running environments
202205
per user
203206
207+
max_port_admission_level: max_port_admission_level caps the maximum admission level a user-opened port may
208+
use. UNSPECIFIED means no cap (any AdmissionLevel value is allowed). System
209+
ports (VS Code Browser, agents) are exempt. The legacy port_sharing_disabled
210+
field, when true, takes precedence and blocks all user-initiated port sharing.
211+
204212
members_create_projects: members_create_projects controls whether members can create projects
205213
206214
members_require_projects: members_require_projects controls whether environments can only be created from
@@ -245,6 +253,7 @@ def update(
245253
"maximum_environments_per_user": maximum_environments_per_user,
246254
"maximum_environment_timeout": maximum_environment_timeout,
247255
"maximum_running_environments_per_user": maximum_running_environments_per_user,
256+
"max_port_admission_level": max_port_admission_level,
248257
"members_create_projects": members_create_projects,
249258
"members_require_projects": members_require_projects,
250259
"port_sharing_disabled": port_sharing_disabled,
@@ -349,6 +358,7 @@ async def update(
349358
maximum_environments_per_user: Optional[str] | Omit = omit,
350359
maximum_environment_timeout: Optional[str] | Omit = omit,
351360
maximum_running_environments_per_user: Optional[str] | Omit = omit,
361+
max_port_admission_level: Optional[AdmissionLevel] | Omit = omit,
352362
members_create_projects: Optional[bool] | Omit = omit,
353363
members_require_projects: Optional[bool] | Omit = omit,
354364
port_sharing_disabled: Optional[bool] | Omit = omit,
@@ -441,6 +451,11 @@ async def update(
441451
maximum_running_environments_per_user: maximum_running_environments_per_user limits simultaneously running environments
442452
per user
443453
454+
max_port_admission_level: max_port_admission_level caps the maximum admission level a user-opened port may
455+
use. UNSPECIFIED means no cap (any AdmissionLevel value is allowed). System
456+
ports (VS Code Browser, agents) are exempt. The legacy port_sharing_disabled
457+
field, when true, takes precedence and blocks all user-initiated port sharing.
458+
444459
members_create_projects: members_create_projects controls whether members can create projects
445460
446461
members_require_projects: members_require_projects controls whether environments can only be created from
@@ -485,6 +500,7 @@ async def update(
485500
"maximum_environments_per_user": maximum_environments_per_user,
486501
"maximum_environment_timeout": maximum_environment_timeout,
487502
"maximum_running_environments_per_user": maximum_running_environments_per_user,
503+
"max_port_admission_level": max_port_admission_level,
488504
"members_create_projects": members_create_projects,
489505
"members_require_projects": members_require_projects,
490506
"port_sharing_disabled": port_sharing_disabled,

src/gitpod/types/organizations/policy_update_params.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
from ..._types import SequenceNotStr
99
from ..._utils import PropertyInfo
10+
from ..admission_level import AdmissionLevel
1011
from .veto_exec_policy_param import VetoExecPolicyParam
1112
from .conversation_sharing_policy import ConversationSharingPolicy
1213

@@ -98,6 +99,14 @@ class PolicyUpdateParams(TypedDict, total=False):
9899
per user
99100
"""
100101

102+
max_port_admission_level: Annotated[Optional[AdmissionLevel], PropertyInfo(alias="maxPortAdmissionLevel")]
103+
"""
104+
max_port_admission_level caps the maximum admission level a user-opened port may
105+
use. UNSPECIFIED means no cap (any AdmissionLevel value is allowed). System
106+
ports (VS Code Browser, agents) are exempt. The legacy port_sharing_disabled
107+
field, when true, takes precedence and blocks all user-initiated port sharing.
108+
"""
109+
101110
members_create_projects: Annotated[Optional[bool], PropertyInfo(alias="membersCreateProjects")]
102111
"""members_create_projects controls whether members can create projects"""
103112

tests/api_resources/organizations/test_policies.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ def test_method_update_with_all_params(self, client: Gitpod) -> None:
8484
maximum_environments_per_user="20",
8585
maximum_environment_timeout="3600s",
8686
maximum_running_environments_per_user="5",
87+
max_port_admission_level="ADMISSION_LEVEL_UNSPECIFIED",
8788
members_create_projects=True,
8889
members_require_projects=True,
8990
port_sharing_disabled=True,
@@ -203,6 +204,7 @@ async def test_method_update_with_all_params(self, async_client: AsyncGitpod) ->
203204
maximum_environments_per_user="20",
204205
maximum_environment_timeout="3600s",
205206
maximum_running_environments_per_user="5",
207+
max_port_admission_level="ADMISSION_LEVEL_UNSPECIFIED",
206208
members_create_projects=True,
207209
members_require_projects=True,
208210
port_sharing_disabled=True,

0 commit comments

Comments
 (0)