Skip to end of metadata
Go to start of metadata
This page describes the plan for a subsystem iteration including the high level goals for the iteration. It should also contain dependencies on other subsystems, plans for integrating functionality and a list of iteration tasks or a link to the subsystem google doc containing the iteration task details. This page should also contain references to the associated architecture pages, construction plan pages, and use cases.

Table of Contents

Iteration Goals and Scope

  • Extend launch plan to support VMs, while continuing to support lightweight mode. This facilitates testing needs from the Integration and Data Management teams.
  • Get the EPU layer functionality into a largely final R2 form. Implement the Deployable Type Registry Service and streamline DT definitions and contextualization. Implement design tweaks and optimizations discovered in Elaboration.
  • Integrate the Process Dispatch layer with Pyon.

High-Level Iteration Tasks

High level tasks mirror the goals described above. Specific tasks are broken down in the task spreadsheet.

Subsystem Dependencies

  • DM will use our VM-based launch capabilities to further their scale/stress testing
  • INT and CEI are co-dependent for many tasks, especially anything that feeds into the lightweight or full launch plan.

Integration Points

  • Week of April 16: The Process Dispatcher Bridge Service will emit events on state changes of processes. This will allow clients to detect when processes are running (or failed).
  • Week of April 30: ready to work with integration team on VM-based launch (still using kombu-based CEI components).
  • Week of May 14: ready to work with integration team on lightweight and VM-based launches using pyon-integrated CEI components. Instead of a container per process there will be a container per EE.


  • Historically VM-based integration work has been underestimated. We've improved our tooling (Vagrant Provisioner, Lightweight Launch) in an attempt to mitigate this, but we could still be surprised.
  • Integration of the Process Dispatch layer with Pyon is CEI's first substantial development experience with Pyon. This effort could be more costly than anticipated. We may also encounter bugs and missing features which impede our integration.


Iteration Google Doc Task List

The spreadsheet

Jira Burndown Chart

Include a link to the subsystem Jira burndown chart.


Overall this iteration didn't go as planned. The launch plan integration activities went overtime substantially as we ran into countless issues along the way. And because the integration was planned in phases, this delay affected several tasks. The original plan was to get the launch working using the existing CEI components, then fold in the new Pyon-backed PD and EEAgent, then integrate the HA Service Agent. However at wrapup we still do not have the first phase completed. This work will continue into R2C2 design period. We made good progress on all three of our iteration goals. However we can only really claim success on "Get the EPU layer functionality into a largely final R2 form".

We need to develop better tooling and techniques for dealing with launch plan integration. While the lightweight launch has helped, many of our issues have been with the underlying CEI mechanisms, the recipes, the infrastructure, and the base images. This will be a major topic during the following design period.


r2c1-iteration r2c1-iteration Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.