info_tfgrid/collections/tech/zos/benefits/zero_deploy.md
2024-08-06 17:33:59 +02:00

1.6 KiB

Deterministic Deployment

The concept of Zero-Deploy is a key component of the Smart Contract for IT framework, which can be applied to any type of workload—whether it's containers, virtual machines (VMs), network gateways, volumes, Kubernetes resources, or other network elements. This framework serves as a formal agreement between a farmer (provider) and a user regarding the deployment of an IT workload.

Process

  1. Build Your Code
    Develop and prepare your application code.

  2. Convert to Zero-Image
    Use a CI/CD solution (e.g., Hero CI/CD) to convert your Docker build (or other format) into a Zero-Image format.

  3. Define the Workload
    Specify all the details of your workload, including network bridges, web gateways, required machines, and more.

  4. Register and Sign
    Register the workload and sign it with your private key.

  5. Automatic Detection
    All necessary Zero-OS nodes (our infrastructure) will detect that a new workload needs to be deployed.

  6. Deployment Process
    The nodes will pull down the formal workload descriptions and initiate the deployment process.

  7. Validation
    Every step of the deployment is verified by Zero-OS (ZOS) to ensure that the intended result is accurately replicated. If any discrepancies are detected, ZOS will halt the deployment and provide an error message.

Benefits

  • Deterministic Deployment: There is no dynamic behavior during deployment at runtime, ensuring a consistent and predictable outcome.
  • Strict Compliance: No process can start unless all files and configurations are fully described at the flist level.