A Terraform provider to manage Lyve Cloud Storage.
This project is based on the official AWS provider.
Go 1.19
(to build the provider plugin)Terraform v1.2
To quickly get started using the provider, configure the provider as shown below.
You can set the credentials of the S3 API to manage buckets and objects, the credentials of the Account API to manage permissions and service accounts, or both.
provider "lyvecloud" {
//s3 api - optional
region = ""
access_key = ""
secret_key = ""
endpoint_url = ""
//account api - optional
client_id = ""
client_secret = ""
}
resource "lyvecloud_s3_bucket" "bucket" {
bucket = "my-tf-bucket"
}
resource "lyvecloud_permission" "permission" {
name = "my-tf-permission"
description = "my-example-permission-description"
actions = "all-operations" // “all-operations”, “read”, or “write”.
buckets = ["my-tf-bucket"]
}
For full provider documentation with details on all options available, see docs folder.
For development purposes, the provider needs to be built locally.
Clone this repository, and install Task:
go install github.com/go-task/task/v3/cmd/task@latest
Note: for more installation options of Task, please view Task installation guide.
Run the following command to build and install the plugin in the correct folder (resolved automatically based on the OS):
task install
To to use the built-in plugin, use the following configurations:
terraform {
required_providers {
lyvecloud = {
source = "registry.terraform.io/seagate/lyvecloud"
}
}
}
provider "lyvecloud" {
//s3 api - optional
region = ""
access_key = ""
secret_key = ""
endpoint_url = ""
//account api - optional
client_id = ""
client_secret = ""
}