.. _messaging: Progress notification ===================== *Pungi* has the ability to emit notification messages about progress and general status of the compose. These can be used to e.g. send messages to *fedmsg*. This is implemented by actually calling a separate script. The script will be called with one argument describing action that just happened. A JSON-encoded object will be passed to standard input to provide more information about the event. At the very least, the object will contain a ``compose_id`` key. The notification script inherits working directory from the parent process and it can be called from the same directory ``pungi-koji`` is called from. The working directory is listed at the start of main log. Currently these messages are sent: * ``status-change`` -- when composing starts, finishes or fails; a ``status`` key is provided to indicate details * ``phase-start`` -- on start of a phase * ``phase-stop`` -- when phase is finished * ``createiso-targets`` -- with a list of images to be created * ``createiso-imagedone`` -- when any single image is finished * ``createiso-imagefail`` -- when any single image fails to create * ``fail-to-start`` -- when there are incorrect CLI options or errors in configuration file; this message does not contain ``compose_id`` nor is it started in the compose directory (which does not exist yet) * ``ostree`` -- when a new commit is created, this message will announce its hash and the name of ref it is meant for. For phase related messages ``phase_name`` key is provided as well. A ``pungi-fedmsg-notification`` script is provided and understands this interface. Setting it up ------------- The script should be provided as a command line argument ``--notification-script``. :: --notification-script=pungi-fedmsg-notification