@@ -758,6 +758,162 @@ def get_build_queue(self, expand="queuedBuilds"):
758
758
params = {"expand" : expand }
759
759
return self .get ("rest/api/latest/queue" , params = params )
760
760
761
+ def get_deployment_users (self , deployment_id , filter_name = None , start = 0 , limit = 25 ):
762
+ """
763
+ Retrieve a list of users with their explicit permissions to given resource.
764
+ The list can be filtered by some attributes.
765
+ This resource is paged and returns a single page of results.
766
+ :param deployment_id:
767
+ :param filter_name:
768
+ :param start:
769
+ :param limit:
770
+ :return:
771
+ """
772
+ params = {"limit" : limit , "start" : start }
773
+ if filter_name :
774
+ params = {"name" : filter_name }
775
+ resource = "permissions/deployment/{}/users" .format (deployment_id )
776
+ return self .get (self .resource_url (resource ), params = params )
777
+
778
+ def revoke_user_from_deployment (self , deployment_id , user , permissions = ["READ" , "WRITE" , "BUILD" ]):
779
+ """
780
+ Revokes deployment project permissions from a given user.
781
+ :param deployment_id:
782
+ :param user:
783
+ :param permissions:
784
+ :return:
785
+ """
786
+ resource = "permissions/deployment/{}/users/{}" .format (deployment_id , user )
787
+ return self .delete (self .resource_url (resource ), data = permissions )
788
+
789
+ def grant_user_to_deployment (self , deployment_id , user , permissions ):
790
+ """
791
+ Grants deployment project permissions to a given user.
792
+ :param deployment_id:
793
+ :param user:
794
+ :param permissions:
795
+ :return:
796
+ """
797
+ resource = "permissions/deployment/{}/users/{}" .format (deployment_id , user )
798
+ return self .put (self .resource_url (resource ), data = permissions )
799
+
800
+ def get_deployment_groups (self , deployment_id , filter_name = None , start = 0 , limit = 25 ):
801
+ """
802
+ Retrieve a list of groups with their deployment project permissions.
803
+ The list can be filtered by some attributes.
804
+ This resource is paged returns a single page of results.
805
+ :param deployment_id:
806
+ :param filter_name:
807
+ :param start:
808
+ :param limit:
809
+ :return:
810
+ """
811
+ params = {"limit" : limit , "start" : start }
812
+ if filter_name :
813
+ params = {"name" : filter_name }
814
+ resource = "permissions/deployment/{}/groups" .format (deployment_id )
815
+ return self .get (self .resource_url (resource ), params = params )
816
+
817
+ def revoke_group_from_deployment (self , deployment_id , group , permissions = ["READ" , "WRITE" , "BUILD" ]):
818
+ """
819
+ Revokes deployment project permissions from a given group.
820
+ :param deployment_id:
821
+ :param group:
822
+ :param permissions:
823
+ :return:
824
+ """
825
+ resource = "permissions/deployment/{}/groups/{}" .format (deployment_id , group )
826
+ return self .delete (self .resource_url (resource ), data = permissions )
827
+
828
+ def grant_group_to_deployment (self , deployment_id , group , permissions ):
829
+ """
830
+ Grants deployment project permissions to a given group.
831
+ :param deployment_id:
832
+ :param group:
833
+ :param permissions:
834
+ :return:
835
+ """
836
+ resource = "permissions/deployment/{}/groups/{}" .format (deployment_id , group )
837
+ return self .put (self .resource_url (resource ), data = permissions )
838
+
839
+ def get_environment_users (self , environment_id , filter_name = None , start = 0 , limit = 25 ):
840
+ """
841
+ Retrieve a list of users with their explicit permissions to given resource.
842
+ The list can be filtered by some attributes.
843
+ This resource is paged and returns a single page of results.
844
+ :param environment_id:
845
+ :param filter_name:
846
+ :param start:
847
+ :param limit:
848
+ :return:
849
+ """
850
+ params = {"limit" : limit , "start" : start }
851
+ if filter_name :
852
+ params = {"name" : filter_name }
853
+ resource = "permissions/environment/{}/users" .format (environment_id )
854
+ return self .get (self .resource_url (resource ), params = params )
855
+
856
+ def revoke_user_from_environment (self , environment_id , user , permissions = ["READ" , "WRITE" , "BUILD" ]):
857
+ """
858
+ Revokes deployment environment permissions from a given user.
859
+ :param environment_id:
860
+ :param user:
861
+ :param permissions:
862
+ :return:
863
+ """
864
+ resource = "permissions/environment/{}/users/{}" .format (environment_id , user )
865
+ return self .delete (self .resource_url (resource ), data = permissions )
866
+
867
+ def grant_user_to_environment (self , environment_id , user , permissions ):
868
+ """
869
+ Grants deployment environment permissions to a given user.
870
+ :param environment_id:
871
+ :param user:
872
+ :param permissions:
873
+ :return:
874
+ """
875
+ resource = "permissions/environment/{}/users/{}" .format (environment_id , user )
876
+ return self .put (self .resource_url (resource ), data = permissions )
877
+
878
+ def get_environment_groups (self , environment_id , filter_name = None , start = 0 , limit = 25 ):
879
+ """
880
+ Retrieve a list of groups with their deployment environment permissions.
881
+ The list can be filtered by some attributes.
882
+ This resource is paged returns a single page of results.
883
+ :param environment_id:
884
+ :param filter_name:
885
+ :param start:
886
+ :param limit:
887
+ :return:
888
+ """
889
+ params = {"limit" : limit , "start" : start }
890
+ if filter_name :
891
+ params = {"name" : filter_name }
892
+ resource = "permissions/environment/{}/groups" .format (environment_id )
893
+ return self .get (self .resource_url (resource ), params = params )
894
+
895
+ def revoke_group_from_environment (self , environment_id , group , permissions = ["READ" , "WRITE" , "BUILD" ]):
896
+ """
897
+ Revokes deployment environment permissions from a given group.
898
+ :param environment_id:
899
+ :param group:
900
+ :param permissions:
901
+ :return:
902
+ """
903
+ resource = "permissions/environment/{}/groups/{}" .format (environment_id , group )
904
+ return self .delete (self .resource_url (resource ), data = permissions )
905
+
906
+ def grant_group_to_environment (self , environment_id , group , permissions ):
907
+ """
908
+ Grants deployment environment permissions to a given group.
909
+ :param environment_id:
910
+ :param group:
911
+ :param permissions:
912
+ :return:
913
+ """
914
+ resource = "permissions/environment/{}/groups/{}" .format (environment_id , group )
915
+ return self .put (self .resource_url (resource ), data = permissions )
916
+
761
917
"""Other actions"""
762
918
763
919
def server_info (self ):
0 commit comments