pulumiverse-matchbox


Namepulumiverse-matchbox JSON
Version 0.2.0 PyPI version JSON
download
home_pageNone
SummaryA Pulumi package for creating and managing the Matchbox iPXE server.
upload_time2024-10-11 10:01:59
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseApache-2.0
keywords pulumi matchbox category/network
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Pulumi Provider for Matchbox

`pulumi-matchbox` allows defining [Matchbox](https://github.com/poseidon/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](https://matchbox.psdn.io/network-setup/) a PXE network boot environment and [deploy](https://matchbox.psdn.io/deployment/) a Matchbox instance. Be sure to enable the gRPC API and follow the instructions to generate TLS credentials.

* [Configure the Matchbox provider](https://www.pulumi.com/registry/packages/matchbox/installation-configuration/) with the Matchbox API endpoint and client certificate.
* Define a Matchbox [Profile](https://www.pulumi.com/registry/packages/matchbox/api-docs/profile/) or [Group](https://www.pulumi.com/registry/packages/matchbox/api-docs/group/) resource in Pulumi.
* Run `pulumi up` to ensure plugin version requirements are met.

```
$ pulumi up
```

See [examples](./examples) for Pulumi configs which PXE boot, install CoreOS, and provision entire clusters.

## Requirements

* Pulumi v3 [installed](https://www.pulumi.com/docs/get-started/)
* Matchbox v0.8+ [installed](https://matchbox.psdn.io/deployment/)
* 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`:

```bash
npm install @pulumiverse/matchbox
```

or `yarn`:

```bash
yarn add @pulumiverse/matchbox
```

### Python

To use from Python, install using `pip`:

```bash
pip install pulumiverse_matchbox
```

### Go

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

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

### .NET

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

```bash
dotnet add package Pulumiverse.Matchbox
```

## Reference

For detailed reference documentation, please visit [the Pulumi registry](https://www.pulumi.com/registry/packages/matchbox/api-docs/).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pulumiverse-matchbox",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "pulumi, matchbox, category/network",
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/a3/9b/45dd3b2995da83a5b250dd3ed88466ab793027671ca9dbe39fa6009f84d4/pulumiverse_matchbox-0.2.0.tar.gz",
    "platform": null,
    "description": "# Pulumi Provider for Matchbox\n\n`pulumi-matchbox` allows defining [Matchbox](https://github.com/poseidon/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.\n\n## Usage\n\n[Setup](https://matchbox.psdn.io/network-setup/) a PXE network boot environment and [deploy](https://matchbox.psdn.io/deployment/) a Matchbox instance. Be sure to enable the gRPC API and follow the instructions to generate TLS credentials.\n\n* [Configure the Matchbox provider](https://www.pulumi.com/registry/packages/matchbox/installation-configuration/) with the Matchbox API endpoint and client certificate.\n* Define a Matchbox [Profile](https://www.pulumi.com/registry/packages/matchbox/api-docs/profile/) or [Group](https://www.pulumi.com/registry/packages/matchbox/api-docs/group/) resource in Pulumi.\n* Run `pulumi up` to ensure plugin version requirements are met.\n\n```\n$ pulumi up\n```\n\nSee [examples](./examples) for Pulumi configs which PXE boot, install CoreOS, and provision entire clusters.\n\n## Requirements\n\n* Pulumi v3 [installed](https://www.pulumi.com/docs/get-started/)\n* Matchbox v0.8+ [installed](https://matchbox.psdn.io/deployment/)\n* Matchbox credentials `client.crt`, `client.key`, `ca.crt`\n\n### Node.js (JavaScript/TypeScript)\n\nTo use from JavaScript or TypeScript in Node.js, install using either `npm`:\n\n```bash\nnpm install @pulumiverse/matchbox\n```\n\nor `yarn`:\n\n```bash\nyarn add @pulumiverse/matchbox\n```\n\n### Python\n\nTo use from Python, install using `pip`:\n\n```bash\npip install pulumiverse_matchbox\n```\n\n### Go\n\nTo use from Go, use `go get` to grab the latest version of the library:\n\n```bash\ngo get github.com/pulumiverse/pulumi-matchbox/sdk/go/...\n```\n\n### .NET\n\nTo use from .NET, install using `dotnet add package`:\n\n```bash\ndotnet add package Pulumiverse.Matchbox\n```\n\n## Reference\n\nFor detailed reference documentation, please visit [the Pulumi registry](https://www.pulumi.com/registry/packages/matchbox/api-docs/).\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "A Pulumi package for creating and managing the Matchbox iPXE server.",
    "version": "0.2.0",
    "project_urls": {
        "Homepage": "https://www.pulumi.com",
        "Repository": "https://github.com/pulumiverse/pulumi-matchbox"
    },
    "split_keywords": [
        "pulumi",
        " matchbox",
        " category/network"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "221eeabaab3925f64e8c216fc4b28810edb37db67847afe1dfb70e253f116eb8",
                "md5": "1c0960f9c3b425e25f6cf23a621cb6e8",
                "sha256": "3342cd89e9a2ba157f5531325322d4c44a5035b0abcce861d05f9444511f349a"
            },
            "downloads": -1,
            "filename": "pulumiverse_matchbox-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1c0960f9c3b425e25f6cf23a621cb6e8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 14876,
            "upload_time": "2024-10-11T10:01:58",
            "upload_time_iso_8601": "2024-10-11T10:01:58.369379Z",
            "url": "https://files.pythonhosted.org/packages/22/1e/eabaab3925f64e8c216fc4b28810edb37db67847afe1dfb70e253f116eb8/pulumiverse_matchbox-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a39b45dd3b2995da83a5b250dd3ed88466ab793027671ca9dbe39fa6009f84d4",
                "md5": "3b6e30917047d810c98995ce1ccd6a87",
                "sha256": "e667e8f30dbdbcc797f2d5b011c0517d1da7c61bdbad97d3a4887beceed4c1bd"
            },
            "downloads": -1,
            "filename": "pulumiverse_matchbox-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3b6e30917047d810c98995ce1ccd6a87",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 11114,
            "upload_time": "2024-10-11T10:01:59",
            "upload_time_iso_8601": "2024-10-11T10:01:59.766036Z",
            "url": "https://files.pythonhosted.org/packages/a3/9b/45dd3b2995da83a5b250dd3ed88466ab793027671ca9dbe39fa6009f84d4/pulumiverse_matchbox-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-11 10:01:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pulumiverse",
    "github_project": "pulumi-matchbox",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pulumiverse-matchbox"
}
        
Elapsed time: 0.32392s