コード例 #1
0
ファイル: actionrun.py プロジェクト: zhengpingwan/Tron
    def emit_triggers(self):
        triggers = self.triggers_to_emit()
        if not triggers:
            return

        log.info(f"{self} publishing triggers: [{', '.join(triggers)}]")
        job_id = '.'.join(self.job_run_id.split('.')[:-1])
        for trigger in triggers:
            EventBus.publish(f"{job_id}.{self.action_name}.{trigger}")
コード例 #2
0
ファイル: actionrun.py プロジェクト: pombredanne/Tron
    def emit_triggers(self):
        triggers = self.triggers_to_emit()
        if not triggers:
            return

        log.info(f"{self} publishing triggers: [{', '.join(triggers)}]")
        job_id = '.'.join(self.job_run_id.split('.')[:-1])
        for trigger in triggers:
            EventBus.publish(f"{job_id}.{self.action_name}.{trigger}")
コード例 #3
0
ファイル: actionrun.py プロジェクト: dennistu1994/Tron
    def emit_triggers(self):
        if isinstance(self.trigger_downstreams, bool):
            shortdate = self.render_template("{shortdate}")
            triggers = [f"shortdate.{shortdate}"]
        elif isinstance(self.trigger_downstreams, dict):
            triggers = [
                f"{k}.{self.render_template(v)}"
                for k, v in self.trigger_downstreams.items()
            ]
        else:
            log.error(f"{self} trigger_downstreams must be true or dict")
            return

        log.info(f"{self} publishing triggers: [{', '.join(triggers)}]")
        job_id = '.'.join(self.job_run_id.split('.')[:-1])
        for trigger in triggers:
            EventBus.publish(f"{job_id}.{self.action_name}.{trigger}")
コード例 #4
0
    def publish(self, event):
        if not EventBus.instance:
            return dict(error='EventBus disabled')

        if EventBus.has_event(event):
            msg = f"event {event} already published"
            log.warning(msg)
            return dict(response=msg)

        if not EventBus.publish(event):
            msg = f'could not publish {event}'
            log.error(msg)
            return dict(error=msg)

        return dict(response='OK')
コード例 #5
0
ファイル: controller.py プロジェクト: Yelp/Tron
    def publish(self, event):
        if not EventBus.instance:
            return dict(error='EventBus disabled')

        if EventBus.has_event(event):
            msg = f"event {event} already published"
            log.warning(msg)
            return dict(response=msg)

        if not EventBus.publish(event):
            msg = f'could not publish {event}'
            log.error(msg)
            return dict(error=msg)

        return dict(response='OK')