def _pipeline(self, result='Unknown', job_state='Scheduled', scheduled_minutes_back=20): scheduled_date = time.time() - (60 * (scheduled_minutes_back or 20)) return Response._from_json({ 'stages': [ { 'scheduled': True, 'jobs': [ { 'id': 1, 'state': job_state, 'result': result, 'scheduled_date': scheduled_date * 1000, 'name': 'defaultJob' } ], 'name': 'defaultStage', 'can_run': False, 'operate_permission': True, 'approval_type': 'success', 'counter': '1', 'approved_by': 'changes', 'result': result, 'rerun_of_counter': None, 'id': 1 } ], 'result': result })
def _pipeline(self, result='Unknown', job_state='Scheduled', scheduled_minutes_back=20): scheduled_date = time.time() - (60 * (scheduled_minutes_back or 20)) return Response._from_json({ 'stages': [{ 'scheduled': True, 'jobs': [{ 'id': 1, 'state': job_state, 'result': result, 'scheduled_date': scheduled_date * 1000, 'name': 'defaultJob' }], 'name': 'defaultStage', 'can_run': False, 'operate_permission': True, 'approval_type': 'success', 'counter': '1', 'approved_by': 'changes', 'result': result, 'rerun_of_counter': None, 'id': 1 }], 'result': result })
def instance(self, counter=None): """Returns all the information regarding a specific pipeline run See the `Go pipeline instance documentation`__ for examples. .. __: http://api.go.cd/current/#get-pipeline-instance Args: counter (int): The pipeline instance to fetch. If falsey returns the latest pipeline instance from :meth:`history`. Returns: Response: :class:`gocd.api.response.Response` object """ if not counter: history = self.history() if not history: return history else: return Response._from_json(history['pipelines'][0]) return self._get('/instance/{counter:d}'.format(counter=counter))
def test_no_instances_of_pipeline_run_yet_and_ran_after_is_set(self): cmd = self._check('Never-Run', Response._from_json({}), ran_after='18:00') self._assert_critical_run_after(cmd)
def test_no_instances_of_pipeline_run_yet_and_ran_after_is_none(self): cmd = self._check('Never-Run', Response._from_json({})) assert cmd.run()['output'].startswith('OK: No scheduled runs')