Skip to content

pulumiverse/pulumi-matchbox

Repository files navigation

Pulumi Provider for Matchbox

pulumi-matchbox allows defining Matchbox Profiles and Groups in Pulumi. Matchbox matches machines, by label (e.g. MAC address), to Profiles with iPXE configs, Ignition configs, or generic free-form configs to provision clusters. Resources are created via the client certificate authenticated Matchbox API.

Usage

Setup a PXE network boot environment and deploy a Matchbox instance. Be sure to enable the gRPC API and follow the instructions to generate TLS credentials.

$ pulumi up

See examples for Pulumi configs which PXE boot, install CoreOS, and provision entire clusters.

Requirements

  • Pulumi v3 installed
  • Matchbox v0.8+ installed
  • Matchbox credentials client.crt, client.key, ca.crt

Node.js (JavaScript/TypeScript)

To use from JavaScript or TypeScript in Node.js, install using either npm:

npm install @pulumiverse/matchbox

or yarn:

yarn add @pulumiverse/matchbox

Python

To use from Python, install using pip:

pip install pulumiverse_matchbox

Go

To use from Go, use go get to grab the latest version of the library:

go get github.com/pulumiverse/pulumi-matchbox/sdk/go/...

.NET

To use from .NET, install using dotnet add package:

dotnet add package Pulumiverse.Matchbox

Reference

For detailed reference documentation, please visit the Pulumi registry.