|
18 | 18 | __all__= [ |
19 | 19 | "ProjectEnvironment", |
20 | 20 | "ProjectEnvironmentManager", |
| 21 | +"ProjectProtectedEnvironment", |
| 22 | +"ProjectProtectedEnvironmentManager", |
21 | 23 | ] |
22 | 24 |
|
23 | 25 |
|
@@ -55,3 +57,30 @@ def get( |
55 | 57 | self,id:Union[str,int],lazy:bool=False,**kwargs:Any |
56 | 58 | )->ProjectEnvironment: |
57 | 59 | returncast(ProjectEnvironment,super().get(id=id,lazy=lazy,**kwargs)) |
| 60 | + |
| 61 | + |
| 62 | +classProjectProtectedEnvironment(ObjectDeleteMixin,RESTObject): |
| 63 | +_id_attr="name" |
| 64 | +_repr_attr="name" |
| 65 | + |
| 66 | + |
| 67 | +classProjectProtectedEnvironmentManager( |
| 68 | +RetrieveMixin,CreateMixin,DeleteMixin,RESTManager |
| 69 | +): |
| 70 | +_path="/projects/{project_id}/protected_environments" |
| 71 | +_obj_cls=ProjectProtectedEnvironment |
| 72 | +_from_parent_attrs= {"project_id":"id"} |
| 73 | +_create_attrs=RequiredOptional( |
| 74 | +required=( |
| 75 | +"name", |
| 76 | +"deploy_access_levels", |
| 77 | + ), |
| 78 | +optional=("required_approval_count","approval_rules"), |
| 79 | + ) |
| 80 | + |
| 81 | +defget( |
| 82 | +self,id:Union[str,int],lazy:bool=False,**kwargs:Any |
| 83 | + )->ProjectProtectedEnvironment: |
| 84 | +returncast( |
| 85 | +ProjectProtectedEnvironment,super().get(id=id,lazy=lazy,**kwargs) |
| 86 | + ) |