Skip to content
This repository has been archived by the owner on Nov 26, 2020. It is now read-only.
Farshid Tavakolizadeh edited this page Jul 28, 2019 · 20 revisions

Note: This wiki documents for the backend components of the system. For the Deployment GUI, visit here.

CPSwarm Deployment Tool - Conceptual Diagram


  1. Components
  2. Terminology
  3. API
  4. Example


The Deployment Tool consists of two components:

  • Deployment Manager: a centralized web service exposing APIs for various deployment-related operations.
  • Deployment Agent: a web service running on individual devices, performing deployment-related commands received from the Deployment Manager.



Target is a device that hosts a running instance of the Deployment Agent. Each Target has a unique ID and a set of tags (e.g. device type, group) which identify the device. The ID is set as part of Deployment Agent configuration. The tags can be configured similarly to the ID or remotely via the Deployment Manager API.


Order is a set of instructions and configurations for an intended deployment process. This process includes typical deployment steps such as assembly, transfer, installation, testing, and activation. In addition, the Order provides information about target devices and logging requirements.


The RESTful API is documented using the OpenAPI specification and is available on Swagger Hub.

Web clients can receive live events over WebSockets from the Events API.


Usage examples are available here.