Пример #1
0
 /**
  * php yii release/index
  */
 public function actionIndex()
 {
     $mapping = \Yii::$app->params['ops_repo'];
     $queue = ReleaseQueue::find()->where(['status' => -2])->orderBy(['id' => SORT_ASC])->one();
     if (!$queue) {
         return $this->echoLog(' no queue need to handle ~~');
     }
     $queue->status = -1;
     $queue->updated_time = date('Y-m-d H:i:s');
     $queue->update(0);
     $this->releaseRepo($queue, $mapping[$queue['repo']]);
     return $this->echoLog(" it's over  ~~");
 }
Пример #2
0
 public function actionQueue()
 {
     $id = intval($this->get("id", 0));
     $reback_url = AdminUrlService::buildUrl("/ops/index");
     if (!$id) {
         return $this->redirect($reback_url);
     }
     $info = ReleaseQueue::find()->where(['id' => $id])->one();
     if (!$info) {
         return $this->redirect($reback_url);
     }
     $release_status_mapping = $this->release_status_mapping;
     $cmds = [];
     $logs = @json_decode($info['content'], true);
     if ($logs) {
         foreach ($logs as $key => $cmd) {
             if ($key == "fail_reason") {
                 continue;
             }
             $cmds[$key] = str_replace("\r\n", "<br/>", $cmd);
         }
     }
     $data = ['repo' => $info['repo'], 'status' => $info['status'], 'status_info' => $release_status_mapping[$info['status']]];
     return $this->render("queue", ['info' => $data, 'cmds' => $cmds, 'fail_reason' => isset($logs['fail_reason']) ? $logs['fail_reason'] : '']);
 }