Extending Delivery Algorithm
Out of the box, Prodvana's Dynamic Delivery knows how to deploy your services on a various Runtimes, obeying a set of builtin protections like manual approvals and deployment ordering. Additionally, you can extend Dynamic Delivery's algorithm with your custom logic through several features.
What This Does | When You Should Use It | |
---|---|---|
Custom Runtimes Docs | Custom Runtimes allow you to define your own Runtimes to bring any kind of Services onto Prodvana. | When you have proprietary infrastructure. Examples: - VMs - Website static assets |
Protections Docs | Protections are business rules defined as programs that exit 0 or 1. Protections can protect most kinds of objects in Prodvana, including but not limited to: Release Channels, Services, and the Convergence itself. | When you want to continuously validate that something is true before deploying. Examples: - Validating alerts are not firing - Validating database migrations have run before a deployment can go out |
Convergence Extensions Docs | Convergence Extensions are additional commands that run as part of Dynamic Delivery's algorithm. Unlike Protections, they are not associated with another object, run at least once instead of continuously, and can have side effects. Convergence Extensions can run during any of the convergence lifecycle of a Service's convergence, such as: pre-approvals, post-approvals, deployment, and post-deployment. | When you want to execute an additional command before or after a deployment. Examples: - Sending a Slack message. - Running a database migration automatically before a production deployment. |
Updated 11 months ago