Deployment Targets

  • File: *.td.yaml

  • Repository: Governance

Reasoning

Continuous Deployment is about building trust for the Software System as a whole, not just the component:index.adoc or Container. In order to do this, a Software System progresses through a series of increasing environment complexity or deploymentTarget(s). Validating the Software System is stable within each deploymentTarget risk of business reputation damage reduces and the Software System would be manually or automatically promoted to the next deploymentTarget.

This approach provides a foundational layer for Agnostic infrastructure as the ability to accurately control the environment of Software System(s) is critical for multi-cloud / fog success.

Understanding

deploymentTargets(s) are meta-descriptions of operatingEnvironments and can be defined without restriction. As these are meta-descriptions the intention is to provide a template from which an execution environment would be created. Suggested defaults and naming scheme is as follows:

  • dev (type: development)

    • single container availability

    • minimum resource allocation

    • probes:

      • ready

  • ha (type: high availability)

    • dual container availability

    • minimum resource allocation

    • probes:

      • ready

  • perf (type: performance)

    • dual container availability

    • maximum resource allocation

    • probes:

      • ready

      • health

  • prod (type: production)

    • high availability

    • horizontal auto-scaling

    • maximum resource allocation

    • probes:

      • ready

      • health

deploymentTarget selection is controlled via the operatingEnvironment field via the following selection process:

operatingEnvironment value

Environment Type

[] or [ 'DEVLIKE' ]

dev (default)

[ 'HALIKE' ]

ha

[ 'PRODLIKE' ]

prod

[ 'HALIKE', 'PRODLIKE' ]

perf

Environment Promotion

… a concept used in Continuous Deployment for validating / verifying Code is safe and stable in Production developmenthigh availabilityperformanceproduction

deploymentTarget(s) natively provide support for multiple versions of:

All operatingEnvironment types have provided with default deploymentTarget(s) matching the naming scheme of dev, ha, perf, prod. Cyvive also implements the standard Environment Promotion approach mentioned in the NOTE ensuring rapid adoption of Continuous Deployment for any Organization.

Cyvive has the technological capability to deploy Software System, Container & component:index.adoc in parallel while respecting dependencies.

Additionally, shadow traffic is automatically routed from prod into perf environment(s) where return values are thrown away to prevent interference with production.