Skip to content
Jorge Silva edited this page Feb 20, 2016 · 3 revisions

This list explains how the worker flow works for different tasks/events in Runnable. These tasks can be triggered directly, or can be triggered indirectly through something like docker-listener.

-> triggered directly through RabbitMQ job
===> Triggered through an event in Docker listener or in some other way

Command: Create a User Container

Divided in two parts: building a container to create an image for the instance container, and then starting that container.

Create Image Builder Container

  • create-image-builder-container
    • ===> on-image-builder-container-create (Creates container to build image)
  • on-image-builder-container-create( Starts image builder container)
    • ===> container.life-cycle.started
  • container.life-cycle.started
    • ==> container.image-builder.started (if type is image-builder-container)
  • container.image-builder.started
    • ===> on-image-builder-container-die
  • on-image-builder-container-die
    • -> create-instance.container

Create Container

  • create-instance-container
    • -> instance.rebuild (if image was not found)
    • ===> instance.container.created
  • instance.container.created
    • -> start-instance-container
  • start-instance-container
    • ===> container.network.attached
  • container.network.attached

Command: Remove a dock

  • dock.removed
    • -> instance.rebuild / instance.container.redeploy
  • instance.rebuild
  • instance.container.redeploy -
    • -> create-instance-container/delete-instance-container

Command: Stop a Container

  • stop-intance-container

Event: A container died

  • instance.container.died

Command: Delete an instance

  • instance.delete
    • -> delete-instance.container
  • delete-instance.container

Clone this wiki locally