Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add docs #8

Merged
merged 1 commit into from
Aug 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
title: Juniper Mist
meta_desc: The Juniper Mist provider for Pulumi can be used to provision any of the cloud resources available in Juniper Mist.
layout: package
---
92 changes: 92 additions & 0 deletions docs/installation-configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
title: Mist Provider Installation & Configuration
meta_desc: Provides an overview on how to configure the Pulumi Mist Provider.
layout: package
---

## Installation

The mist provider is available as a package in all Pulumi languages:

* JavaScript/TypeScript: [`@pulumi/mist`](https://www.npmjs.com/package/@pulumi/mist)
* Python: [`pulumi-mist`](https://pypi.org/project/pulumi-mist/)
* Go: [`github.com/pulumi/pulumi-junipermist/sdk/go/junipermist`](https://github.com/pulumi/pulumi-mist)
* .NET: [`Pulumi.Mist`](https://www.nuget.org/packages/Pulumi.Mist)
* Java: [`com.pulumi/mist`](https://central.sonatype.com/artifact/com.pulumi/mist)


The Mist Provider allows Pulumi to manage Juniper Mist Organizations.

It is mainly focusing on day 0 and day 1 operations (provisionning and delpyment) but will be completed over time.

Use the navigation tree to the left to read about the available resources and data sources.

It is possible to use API Token or Username/Password authentication (without 2FA), but only one method should be configured.

This version is supporting the following Mist Clouds:
* Global 01 (api.mist.com)
* Global 02 (api.gc1.mist.com)
* Global 03 (api.ac2.mist.com)
* Global 04 (api.gc2.mist.com)
* EMEA 01 (api.eu.mist.com)
* EMEA 02 (api.gc3.mist.com)
* EMEA 03 (api.ac6.mist.com)
* APAC 01 (api.ac5.mist.com)

## Configuration

### Provider configuration stanza

```pulumi
pulumi {
required_providers {
mist = {
source = "registry.pulumi.io/juniper/mist"
}
}
}

provider "mist" {
host = "api.mist.com"
apitoken = "xxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
```
Comment on lines +40 to +53
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mjeffryes This code isn't turned on for a reason. Of special significance, we are missing pulumi/pulumi-terraform-bridge#2214.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, that makes perfect sense, but the real question is: How did these docs/* pages get here for other providers and why didn't that happen for this one?

I checked other providers bridged recently (eg. dbtcloud) and these files we generated.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no idea. I thought that they were all hand authored. Until recently, the bridge didn't generate them.

Is it possible that you generated them the same way for dbtcloud as this provider, but the bridge just did something different. We are not maintaining stability guarantees on this feature yet.

Copy link
Member Author

@mjeffryes mjeffryes Aug 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's weird. I made the initial commit for dbtcloud as well: Initial commit · pulumi/pulumi-dbtcloud@9e22c8b but definitely didn't hand author the files in docs/ for that provider. And I also didn't run tfgen manually for it either.

The only think I can think of is that I might have used the community cookiecutter template and maybe it generates them?


### Credentials

Users are encouraged to pass the API Token or the username and password via the
environment variables (see below). If authentication information are provided
in the provider configuration and in the environment variables, the Provider
configuration will be used.

Please consider whether writing credentials to a configuration file is
acceptable in your environment.

### Proxy Support

HTTP, HTTPS, and SOCKS5 proxies are supported through the `MIST_PROXY` environment
variables or the `proxy` provider configuration attribute.

<!-- schema generated by tfplugindocs -->
## Schema

### Optional

- `api_timeout` (Number) Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 results in infinite timeout.
- `apitoken` (String, Sensitive) For API Token authentication, the Mist API Token.
- `host` (String) URL of the Mist Cloud, e.g. `api.mist.com`.
- `password` (String, Sensitive) For username/password authentication, the Mist Account password.
- `proxy` (String) Requests use the configured proxy to reach the Mist Cloud.
The value may be either a complete URL or a `[username:password@]host[:port]`, in which case the `http` scheme is assumed. The schemes `http`, `https`, and `socks5` are supported.
- `username` (String) For username/password authentication, the Mist Account username.

### Environment Variables

| Varibale Name | Provider attribute | Type | Description |
| ---- | ---- | ---- | ---- |
| `MIST_HOST` | `host` | String | URL of the Mist Cloud, e.g. `api.mist.com`. See above for the list of supported Clouds.|
| `MIST_API_TOKEN` | `apitoken` | String | For API Token authentication, the Mist API Token. |
| `MIST_USERNAME` | `username` | String | For username/password authentication, the Mist Account password. |
| `MIST_PASSWORD` | `password` | String | For username/password authentication, the Mist Account password. |
| `MIST_PROXY` | `proxy` | String | Requests use the configured proxy to reach the Mist Cloud. The value may be either a complete URL or a `[username:password@]host[:port]`, in which case the `http` scheme is assumed. The schemes `http`, `https`, and `socks5` are supported. |
| `MIST_API_TIMEOUT` | `api_timeout` | Int | Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 results in infinite timeout. |
Loading