> For the complete documentation index, see [llms.txt](https://docs.vergeos-demo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vergeos-demo.com/learn-the-platform/module-8-developer-and-devops/08-developer-devops.md).

# Overview

## Learning Objectives

By the end of this module, you will be able to:

* **Use the VergeOS REST API** to automate common infrastructure operations via REST endpoints and CLI tools
* **Script with pyvergeos and PowerShell** to automate bulk VM, network, and tenant operations
* **Manage infrastructure with the Terraform provider** for declarative, version-controlled deployments
* **Automate configuration with Ansible** using the VergeOS collection for playbook-driven orchestration
* **Build event-driven workflows with the Task Engine** using webhooks and automated task chains
* **Deploy Kubernetes on VergeOS** using the Docker Machine Driver, Rancher integration, and VergeOS CSI/CCM components

## Prerequisites

* Completion of [Module 1: Architecture Fundamentals](/learn-the-platform/module-1-architecture-fundamentals/01-architecture.md) -- understanding of VergeOS platform architecture
* Completion of [Module 6: Virtual Machines](/learn-the-platform/module-6-virtual-machines/06-virtual-machines.md) -- understanding of VM provisioning and management
* Completion of [Module 7: Multi-Tenancy](/learn-the-platform/module-7-multi-tenancy/07-multi-tenancy.md) -- understanding of tenant creation and resource allocation
* Basic familiarity with REST APIs, command-line tools, and at least one scripting language (Python, PowerShell, or HCL/Terraform)

## Estimated Time

**4 hours** (2 hours reading + 2 hours lab)

## Topics

* [**REST API & CLI Tools**](/learn-the-platform/module-8-developer-and-devops/01-api-cli.md) — Authenticating with the VergeOS API, exploring endpoints, performing CRUD operations, and using the `vrg` CLI for scripted automation.
* [**Python SDK (pyvergeos)**](/learn-the-platform/module-8-developer-and-devops/02-python-sdk.md) — Automating VergeOS operations with pyvergeos: VM lifecycle, network management, tenant provisioning, and bulk operations.
* [**PowerShell Module**](/learn-the-platform/module-8-developer-and-devops/03-powershell-module.md) — Managing VergeOS from Windows environments using the PSVergeOS PowerShell module for scripting and orchestration.
* [**Terraform & Packer**](/learn-the-platform/module-8-developer-and-devops/04-terraform-packer.md) — Declarative infrastructure-as-code with the VergeOS Terraform provider and immutable image builds with Packer.
* [**Ansible Collection**](/learn-the-platform/module-8-developer-and-devops/05-ansible.md) — Playbook-driven configuration management and orchestration using the VergeOS Ansible collection.
* [**Task Engine & Webhooks**](/learn-the-platform/module-8-developer-and-devops/06-task-engine.md) — Event-driven automation with the built-in task engine, scheduled tasks, and webhook integrations.
* [**Kubernetes & Rancher**](/learn-the-platform/module-8-developer-and-devops/07-kubernetes-rancher.md) — Running Kubernetes on VergeOS with the Docker Machine Driver, Rancher integration, CSI driver, and Cloud Controller Manager.
* [**Lab: Infrastructure Automation**](/learn-the-platform/module-8-developer-and-devops/lab.md) — Use the REST API, Terraform, and scripting tools to automate VM and tenant provisioning end-to-end.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.vergeos-demo.com/learn-the-platform/module-8-developer-and-devops/08-developer-devops.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
