https://github.com/ucloud/pulumi-ucloud
Pulumi is a cloud-native development kit to implement Infrastructure as Software
https://github.com/ucloud/pulumi-ucloud
pulumi terraform
Last synced: 7 months ago
JSON representation
Pulumi is a cloud-native development kit to implement Infrastructure as Software
- Host: GitHub
- URL: https://github.com/ucloud/pulumi-ucloud
- Owner: ucloud
- License: apache-2.0
- Created: 2019-09-22T13:58:27.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-08-26T10:27:51.000Z (over 4 years ago)
- Last Synced: 2025-01-31T04:09:30.630Z (about 1 year ago)
- Topics: pulumi, terraform
- Language: Python
- Homepage:
- Size: 746 KB
- Stars: 4
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE-OF-CONDUCT.md
Awesome Lists containing this project
README
# UCloud Pulumi Provider
[WIP] Work in progress, DON'T USE IT IN PRODUCTION!
This repository contains boilerplate code for building a new Pulumi provider which wraps an existing
Terraform provider, if the existing provider uses _Go Modules_.
Modify this README to describe:
- The type of resources the provider manages
- Add a build status image from Travis at the top of the README
- Update package names in the information below
- Add any important documentation of concepts (e.g. the "serverless" components in the AWS provider).
### Add dependencies
In order to properly build the sdks, the following tools are expected:
- `pulumictl` (See the project's README for installation instructions: https://github.com/pulumi/pulumictl)
In the root of the repository, run:
- `(cd provider && go get github.com/terraform-providers/terraform-provider-foo)` (where `foo` is the name of the provider - note the parenthesis to run this in a subshell)
- `(cd provider && go mod download)`
### Build the provider:
- Edit `provider/resources.go` to map each resource, and specify provider information
- `make build_sdks`
## Installing
This package is available in many languages in the standard packaging formats.
### Node.js (Java/TypeScript)
To use from JavaScript or TypeScript in Node.js, install using either `npm`:
$ npm install @pulumi/ucloud
or `yarn`:
$ yarn add @pulumi/ucloud
### Python
To use from Python, install using `pip`:
$ pip install pulumi_ucloud
### Go
To use from Go, use `go get` to grab the latest version of the library
$ go get github.com/pulumi/pulumi-ucloud/sdk/go/...
## Configuration
The following configuration points are **required** for the `ucloud` provider:
- `ucloud:region` (environment: `UCLOUD_REGION`) - UCloud Region
- `ucloud:public_key` (environment: `UCLOUD_PUBLIC_KEY`) - UCloud Public Key
- `ucloud:private_key` (environment: `UCLOUD_PRIVATE_KEY`) - UCloud Private Key
- `ucloud:project_id` (environment: `UCLOUD_PROJECT_ID`) - UCloud Project ID
The following configuration points are **optional** for `ucloud` provider:
- `ucloud:profile` (environment: `UCLOUD_PROFILE`) - UCloud Profile Name
- `ucloud:base_url` - UCloud base URL.(Default: https://api.ucloud.cn)
- `ucloud:max_retries` - Max retry attempts number. Default max retry attempts number is 0
- `ucloud:insecure` - Switch to disable/enable https. (Default: false, means enable https)
- `ucloud:shared_credentials_file` (environment: `UCLOUD_SHARED_CREDENTIAL_FILE`) - Path To The Shared Credentials File
## Reference
For detailed reference documentation, please visit [the API docs][1].
[1]: https://www.pulumi.com/docs/reference/pkg/x/