From 83d8d8477f3f5e05966b8706ea6f077d17981012 Mon Sep 17 00:00:00 2001 From: Guan Xiying Date: Mon, 23 Aug 2021 13:25:18 +0800 Subject: [PATCH] * Check gitlab token when create gitlab job. --- module/job/control.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/module/job/control.php b/module/job/control.php index 17d166f5d6..1fff0240b8 100644 --- a/module/job/control.php +++ b/module/job/control.php @@ -97,12 +97,19 @@ class job extends control $repoPairs = array(0 => ''); $gitlabRepos = array(0 => ''); $repoTypes = array(); + foreach($repoList as $repo) { if(empty($repo->synced)) continue; $repoPairs[$repo->id] = $repo->name; $repoTypes[$repo->id] = $repo->SCM; - if(strtolower($repo->SCM) == 'gitlab') $gitlabRepos[$repo->id] = $repo->name; + if(strtolower($repo->SCM) == 'gitlab') + { + $gitlab = $this->loadModel('gitlab')->getByID($repo->gitlab); + $tokenUser = $this->gitlab->apiGetCurrentUser($gitlab->url, $gitlab->token); + if(!isset($tokenUser->is_admin) or !$tokenUser->is_admin) continue; + $gitlabRepos[$repo->id] = $repo->name; + } } $this->view->title = $this->lang->ci->job . $this->lang->colon . $this->lang->job->create;