class_docstr: ArgoEvent is a small event, a message, that can be published to Argo Workflows. The
  event will eventually start all flows which have been previously deployed with `@trigger`
  to wait for this particular named event.
  
  Parameters
  ----------
  name : str,
      Name of the event
  url : str, optional
      Override the event endpoint from `ARGO_EVENTS_WEBHOOK_URL`.
  payload : Dict, optional
      A set of key-value pairs delivered in this event. Used to set parameters of triggered flows.
class_docstr_tok: ["ArgoEvent","is","a","small","event",",","a","message",",","that","can","be","published","to","Argo","Workflows",".","The","event","will","eventually","start","all","flows","which","have","been","previously","deployed","with","`","@","trigger","`","to","wait","for","this","particular","named","event",".","Parameters","--","--","--","--","--","name",":","str",",","Name","of","the","event","url",":","str",",","optional","Override","the","event","endpoint","from","`","ARGO_EVENTS_WEBHOOK_URL","`",".","payload",":","Dict",",","optional","A","set","of","key-value","pairs","delivered","in","this","event",".","Used","to","set","parameters","of","triggered","flows","."]
docstr: Publishes an event when called inside a deployed workflow. Outside a deployed workflow
  this function does nothing.
  
  Use this function inside flows to create events safely. As this function is a no-op
  for local runs, you can safely call it during local development without causing unintended
  side-effects. It takes effect only when deployed on Argo Workflows.
  
  Parameters
  ----------
  payload : dict
      Additional key-value pairs to add to the payload.
  ignore_errors : bool, default: True
      If True, events are created on a best effort basis - errors are silently ignored.
docstr_tok: ["Publishes","an","event","when","called","inside","a","deployed","workflow",".","Outside","a","deployed","workflow","this","function","does","nothing",".","Use","this","function","inside","flows","to","create","events","safely",".","As","this","function","is","a","no-op","for","local","runs",",","you","can","safely","call","it","during","local","development","without","causing","unintended","side-effects",".","It","takes","effect","only","when","deployed","on","Argo","Workflows",".","Parameters","--","--","--","--","--","payload",":","dict","Additional","key-value","pairs","to","add","to","the","payload",".","ignore_errors",":","bool",",","default",":","True","If","True",",","events","are","created","on","a","best","effort","basis","-","errors","are","silently","ignored","."]
code: def safe_publish(self, payload=None, ignore_errors=True):
      """
      Publishes an event when called inside a deployed workflow. Outside a deployed workflow
      this function does nothing.
  
      Use this function inside flows to create events safely. As this function is a no-op
      for local runs, you can safely call it during local development without causing unintended
      side-effects. It takes effect only when deployed on Argo Workflows.
  
      Parameters
      ----------
      payload : dict
          Additional key-value pairs to add to the payload.
      ignore_errors : bool, default: True
          If True, events are created on a best effort basis - errors are silently ignored.
      """
  
      return self.publish(
          payload=payload, force=False, ignore_errors=ignore_errors
      )
  
file_path: metaflow/metaflow/plugins/argo/argo_events.py
imports: import json
  import os
  import sys
  import time
  import urllib
  import uuid
  from datetime import datetime
  from metaflow.exception import MetaflowException
  from metaflow.metaflow_config import ARGO_EVENTS_WEBHOOK_AUTH, ARGO_EVENTS_WEBHOOK_URL, SERVICE_HEADERS
label_desc: Use image node_id 3 for calling the ArgoEvent obj's underlying member method code with example usage: obj.safe_publish(payload, ignore_errors) and returns: self