@@ -34,7 +34,7 @@ def _get_generator(self, path, elements_key='results', element_key='result', dat
3434 params ['start-index' ] = start_index
3535 response = self .get (path , data , flags , params , headers )
3636 results = response [elements_key ]
37- size = 0
37+ size = 0
3838
3939 # Check if we still can get results
4040 if size > max_results or results ['size' ] == 0 :
@@ -87,7 +87,7 @@ def project_plans(self, project_key):
8787 def plans (self , expand = None , favourite = False , clover_enabled = False , start_index = 0 , max_results = 25 ):
8888 return self .base_list_call ("plan" , expand , favourite , clover_enabled , start_index , max_results ,
8989 elements_key = 'plans' , element_key = 'plan' )
90-
90+
9191 def plan_directory_info (self , plan_key ):
9292 """
9393 Returns information about the directories where artifacts, build logs, and build results will be stored.
@@ -99,6 +99,15 @@ def plan_directory_info(self, plan_key):
9999 resource = 'planDirectoryInfo/{}' .format (plan_key )
100100 return self .get (self .resource_url (resource ))
101101
102+ def get_plan (self , plan_key ):
103+ """
104+ Get plan information.
105+ :param plan_key:
106+ :return:
107+ """
108+ resource = 'rest/api/latest/plan/{}' .format (plan_key )
109+ return self .get (resource )
110+
102111 def delete_plan (self , plan_key ):
103112 """
104113 Marks plan for deletion. Plan will be deleted by a batch job.
@@ -118,7 +127,7 @@ def enable_plan(self, plan_key):
118127 return self .post (self .resource_url (resource ))
119128
120129 """ Branches """
121-
130+
122131 def search_branches (self , plan_key , include_default_branch = True , max_results = 25 ):
123132 params = {
124133 'max-result' : max_results ,
@@ -171,6 +180,15 @@ def create_branch(self, plan_key, branch_name, vcs_branch=None, enabled=False, c
171180 cleanupEnabled = 'true' if cleanup_enabled else 'false' )
172181 return self .put (self .resource_url (resource ), params = params )
173182
183+ def get_vcs_branches (self , plan_key , max_results = 25 ):
184+ """
185+ Get all vcs names for the current plan
186+ :param plan_key: str TST-BLD
187+ :return:
188+ """
189+ resource = 'plan/{plan_key}/vcsBranches' .format (plan_key = plan_key )
190+ return self .base_list_call (resource , start_index = 0 , max_results = max_results )
191+
174192 """ Build results """
175193
176194 def results (self , project_key = None , plan_key = None , job_key = None , build_number = None , expand = None , favourite = False ,
@@ -523,7 +541,7 @@ def get_custom_expiry(self, limit=25):
523541 """
524542 url = "rest/api/latest/admin/expiry/custom/plan?limit={}" .format (limit )
525543 return self .get (url )
526-
544+
527545 def reports (self , max_results = 25 ):
528546 params = {'max-results' : max_results }
529547 return self ._get_generator (self .resource_url ('chart/reports' ), elements_key = 'reports' , element_key = 'report' ,
0 commit comments