Progressive Delivery

Prodvana supports Progressive Delivery options to provide more control and safety options over service deployment.

Supported Progressive Delivery Controllers

Kubernetes

Configuring a Service

$ pvnctl services --app=<app name> push <service name>

Now you can now add adeliveryConfig to your service configuration to configure the progressive delivery options.
You can set one configuration for all release channels, as well as on a per release channel basis:

name: <service name>
programs:
  - image: <image>
    cmd: [...]
replicas:
  fixed: 3
perReleaseChannel:
  - releaseChannel: staging
    deliveryConfig:
      analysisTemplates:
        - success-rate-analysis
      canaryProgress:
        - canaryWeight: 10
          duration: 20s
        - canaryWeight: 50
          duration: 20s
 - releaseChannel: production
    deliveryConfig:
      analysisTemplates:
        - success-rate-analysis
        - latency-analysis
      canaryProgress:
        - canaryWeight: 10
          duration: 20s
        - canaryWeight: 50
          duration: 20s

Here you can set the list of analysisTemplates you wish to run for this service. They must be configured on the extension as described above.
Then you can also configure the canaryProgress, or how the progression of your canarying process should proceed. You can set the canaryWeight (0-100%), as well as the duration to wait.