Skip to content

Latest commit

 

History

History
37 lines (29 loc) · 2.24 KB

README.md

File metadata and controls

37 lines (29 loc) · 2.24 KB

Examples

These examples demonstrate how common patterns can be implemented in Cartographer. Each example demonstrates increasing assurance steps along the path to production. The suggested order is:

  • Supply Chain: Source => Image => App: demonstrates how one can set up a ClusterSupplyChain that monitors source code updates, creates a new image for each update and deploys that image as a running application in the cluster.
  • Runnable: Updating a Tekton Task without triggers: demonstrates how Cartographer's Runnable wraps immutable objects to provide updatable behavior. The example uses a Tekton Task that tests source code and demonstrates how to create TaskRuns with objects that don't require triggers or events.
  • Supply Chain: Source => Test => Image => App: expands upon the example above by adding testing, assuring that only commits with passing tests result in deployed apps.
  • Supply Chain: Source => Image => Git: whereas the first example deploys an app, this example takes the app configuration and writes it to git. This configuration can then be read by a Delivery in another cluster. This allows all build processes to be isolated in a cluster completely separate from the production cluster exposed to customers and end users.
  • Delivery: Git => App: this example picks up app configuration that has been written to git (it is written to work with the gitwriter example above). The configuration is then applied to the cluster. This minimizes processes occuring in the production cluster exposed to customers and end users.

Resource Requirements

Usage

When the examples are run, they generally consume 4 cpu cores and 4 GiB of memory.

Requests

The examples rely on a number of controllers being installed. These controllers create deployments which request resources from the kubernetes cluster at rest. All told, the controllers request 1.7 cpu cores and 1.6 GiB of memory "at rest".

When Cartographer runs these examples in testing, we use this overlay to remove these requests.