Esempio n. 1
0
 def on_deploy(self, message):
     if self.task_info['status'] in [TaskModel.status_pass, TaskModel.status_fail]:
         wi = Deployer(task_id=self.room, console=True)
         if self.task_info['is_rollback']:
             wi.walle_rollback()
         else:
             wi.walle_deploy()
     else:
         emit('console', {'event': 'forbidden', 'data': self.task_info}, room=self.room)
Esempio n. 2
0
 def on_deploy(self, message):
     if self.task_info['status'] in [
             TaskModel.status_pass, TaskModel.status_fail
     ]:
         wi = Deployer(task_id=self.room, console=True)
         if self.task_info['is_rollback']:
             wi.walle_rollback()
         else:
             wi.walle_deploy()
     else:
         emit('console', {
             'event': 'forbidden',
             'data': self.task_info
         },
              room=self.room)
Esempio n. 3
0
 def on_deploy(self, message):
     self.task_info = TaskModel(id=self.room).item()
     if self.task_info['status'] in [TaskModel.status_pass, TaskModel.status_fail]:
         wi = Deployer(task_id=self.room, console=True)
         ret = wi.walle_deploy()
     else:
         emit('console', {'event': 'task:forbidden', 'data': self.task_info}, room=self.room)
Esempio n. 4
0
 def websocket(self, task_id=None):
     task_id = 12
     wi = Deployer(task_id)
     ret = wi.walle_deploy()
     record = RecordModel().fetch(task_id)
     return self.render_json(data={
         'command': ret,
         'record': record,
     })
Esempio n. 5
0
 def websocket(self, task_id=None):
     task_id = 12
     wi = Deployer(task_id)
     ret = wi.walle_deploy()
     record = RecordModel().fetch(task_id)
     return self.render_json(data={
         'command': ret,
         'record': record,
     })
Esempio n. 6
0
    def on_message(self, incoming):
        print 'message received %s' % incoming

        text = json.loads(incoming).get('text', None)
        task_id = text if text else 'Sorry could you repeat?'

        wi = Deployer(task_id, websocket=self)
        current_app.logger.info(current_user.id)
        ret = wi.walle_deploy()

        response = json.dumps(dict(output='receive: {0}'.format(task_id)))
        self.write_message(response)
Esempio n. 7
0
    def post(self):
        """
        fetch role list or one role

        :return:
        """
        super(DeployAPI, self).post()

        task_id = request.form['task_id']
        if not task_id or not task_id.isdigit():
            return self.render_json(code=-1)
        wi = Deployer(task_id)
        ret = wi.walle_deploy()
        record = TaskRecordModel().fetch(task_id)
        return self.render_json(data={
            'command': '',
            'record': record,
        })
Esempio n. 8
0
    def post(self):
        """
        fetch role list or one role

        :return:
        """
        super(DeployAPI, self).post()

        task_id = request.form['task_id']
        if not task_id or not task_id.isdigit():
            return self.render_json(code=-1)
        wi = Deployer(task_id)
        ret = wi.walle_deploy()
        record = RecordModel().fetch(task_id)
        return self.render_json(data={
            'command': '',
            'record': record,
        })
Esempio n. 9
0
    def put(self,task_id):
        """
        update deploy
        /deploy/<int:task_id>
        """
        try:
            current_app.logger.info('-----------start a deploy with gitlab runner--------------')
            current_app.logger.info(task_id)
            task_info = TaskModel(id=task_id).item()
            wi = Deployer(task_id=task_id, console=False, api_trigger=True)
            deploy_status = False
            if task_info['is_rollback']:
                deploy_status =  wi.walle_rollback()
            else:
                deploy_status =  wi.walle_deploy()
            current_app.logger.info('-----------end deploy with gitlab runner--------------')

            return self.render_json(data=deploy_status)
        except Exception as e:
            current_app.logger.info(e)
            return self.render_error(code=2001, message='发布失败')
Esempio n. 10
0
 def on_deploy(self, message):
     emit('console', {'event': 'task:console', 'data': {}}, room=self.room)
     from walle.service.deployer import Deployer
     wi = Deployer(task_id=self.room)
     ret = wi.walle_deploy()