Related Repositories

Network as Code Repositories

Browse all repositories, organized by technology.

GitHub Organizations

  • Network as Code (Public) — github.com/netascode — Public GitHub organization hosting open source Network as Code repositories.
  • Cisco DevNet (Public) — github.com/CiscoDevNet — Public GitHub organization hosting Terraform providers for Cisco products.

ACI

  • Terraform Provider — terraform-provider-aci — Low-level Terraform provider exposing Cisco ACI's APIC object model directly as Terraform resources.
  • Terraform Module — terraform-aci-nac-aci — Purpose-built Terraform modules to operate and manage ACI infrastructure using the Network as Code data model.
  • Example — nac-aci-simple-example — Minimal example configuration for getting started with Network as Code.
  • Example — nac-aci-comprehensive-example — Comprehensive example configuration covering a broad set of Network as Code capabilities.
  • Validation — nac-aci-validate — Sample validation configurations for Network as Code.

NDO

  • Terraform Provider — terraform-provider-mso — Low-level Terraform provider for Cisco Nexus Dashboard Orchestrator (NDO, formerly MSO), used for Multi-Site ACI.
  • Terraform Module — terraform-mso-nac-ndo — Purpose-built Terraform modules to operate and manage Multi-Site ACI via Nexus Dashboard Orchestrator (NDO) using the Network as Code data model.
  • Example — nac-ndo-simple-example — Minimal example configuration for getting started with Network as Code.
  • Example — nac-ndo-comprehensive-example — Comprehensive example configuration covering a broad set of Network as Code capabilities.

VXLAN (ND)

  • Terraform Provider — terraform-provider-ndfc — Low-level Terraform provider for Cisco Nexus Dashboard Fabric Controller (NDFC).
  • Ansible Collection — ansible-dc-vxlan — Ansible collection for configuring Cisco VXLAN EVPN fabrics via Cisco Nexus Dashboard (ND) using Direct-to-Controller (DTC) workflows.
  • Example — ansible-dc-vxlan-example — Example inventory demonstrating usage of the ansible-dc-vxlan collection.

NX-OS

  • Terraform Provider — terraform-provider-nxos — Low-level Terraform provider for Cisco NX-OS.
  • Terraform Module — terraform-nxos-nac-nxos — Purpose-built Terraform modules to operate and manage NX-OS devices using the Network as Code data model.
  • Example — nac-nxos-vxlan-example — Example VXLAN EVPN fabric configuration using Network as Code NX-OS.
  • Go Client Library — go-nxos — Lightweight Go client for Cisco NX-OS's NX-API — the building block used by higher-level Network as Code tooling and custom Go automation.

Hyperfabric

IOS-XE

  • Terraform Provider — terraform-provider-iosxe — Low-level Terraform provider for Cisco IOS XE.
  • Terraform Module — terraform-iosxe-nac-iosxe — Purpose-built Terraform modules to operate and manage IOS-XE devices using the Network as Code data model.
  • Example — nac-iosxe-vxlan-example — Example VXLAN fabric configuration using Network as Code IOS-XE.
  • Example — nac-iosxe-campus-evpn-vxlan-example — Campus EVPN-VXLAN fabric example using Network as Code IOS-XE, aligned with Cisco Validated Designs.
  • Learning Lab — nac-iosxe-learning-lab — A 4-hour, hands-on workshop for deploying and validating Cisco IOS XE configuration with Network as Code, Terraform, and GitLab CI/CD.

Catalyst Center

Catalyst SD-WAN

  • Terraform Provider — terraform-provider-sdwan — Low-level Terraform provider for Cisco Catalyst SD-WAN.
  • Terraform Module — terraform-sdwan-nac-sdwan — Purpose-built Terraform modules to operate and manage Catalyst SD-WAN using the Network as Code data model.
  • Example — nac-sdwan-example — Sample configuration for getting started with Network as Code.
  • Example — nac-sdwan-simple-example — Minimal example configuration for getting started with Network as Code.
  • Go Client Library — go-sdwan — Lightweight Go client for the Cisco Catalyst SD-WAN vManage API — the building block used by higher-level Network as Code tooling and custom Go automation.

Meraki

  • Terraform Provider — terraform-provider-meraki — Low-level Terraform provider for Cisco Meraki, built on the Dashboard API.
  • Terraform Module — terraform-meraki-nac-meraki — Purpose-built Terraform modules to operate and manage Meraki using the Network as Code data model.
  • Example — nac-meraki-example — Ready-to-use project template with staged lab data files for progressively building up a Network as Code configuration.
  • Example — nac-meraki-simple-example — Minimal example configuration for getting started with Network as Code.
  • Go Client Library — go-meraki — Lightweight Go client for the Cisco Meraki Dashboard API — the building block used by higher-level Network as Code tooling and custom Go automation.

Unified Branch

  • Data Model — nac-branch — Network as Code for Unified Branch, automating greenfield branch infrastructure deployment via Terraform in alignment with Cisco Validated Designs.
  • Terraform Module — terraform-meraki-nac-branch — Purpose-built Terraform modules to operate and manage unified branch network infrastructure using the Network as Code data model.
  • Example — nac-branch-example — Public learning lab example repository for Unified Branch as Code.

ISE

  • Terraform Provider — terraform-provider-ise — Low-level Terraform provider for Cisco Identity Services Engine (ISE).
  • Terraform Module — terraform-ise-nac-ise — Purpose-built Terraform modules to operate and manage Identity Services Engine (ISE) using the Network as Code data model.
  • Example — nac-ise-simple-example — Minimal example configuration for getting started with Network as Code.
  • Example — nac-ise-comprehensive-example — Comprehensive example configuration covering a broad set of Network as Code capabilities.
  • Go Client Library — go-ise — Lightweight Go client for the Cisco ISE API — the building block used by higher-level Network as Code tooling and custom Go automation.

FMC

  • Terraform Provider — terraform-provider-fmc — Low-level Terraform provider for Cisco Firepower Management Center (FMC).
  • Terraform Module — terraform-fmc-nac-fmc — Purpose-built Terraform modules to operate and manage Firepower Management Center (FMC) using the Network as Code data model.
  • Example — nac-fmc-simple-example — Minimal example configuration for getting started with Network as Code.
  • Example — nac-fmc-example-generator — Python CLI that generates randomized YAML data for the FMC data model, useful for exercising and demonstrating the module at scale.
  • Go Client Library — go-fmc — Lightweight Go client for the Cisco Secure Firewall Management Center API — the building block used by higher-level Network as Code tooling and custom Go automation.

IOS-XR

  • Terraform Provider — terraform-provider-iosxr — Low-level Terraform provider for Cisco IOS XR.
  • Terraform Module — terraform-iosxr-nac-iosxr — Purpose-built Terraform modules to operate and manage IOS-XR devices using the Network as Code data model.

NSO

  • Terraform Provider — terraform-provider-nso — Low-level Terraform provider for Cisco NSO.
  • Terraform Module — terraform-nso-nac-nso — Purpose-built Terraform modules to operate and manage services on Cisco NSO using the Network as Code data model.
  • Example — terraform-nso-service-example — Reference example showing how to drive a custom NSO service (based on the MPLS VPN sample) declaratively through the NSO Terraform provider.