Terraform Provider for MinIO
Explore the docs Β»
Table of Contents
About this project
A Terraform provider to manage MinIO Cloud Storages.
Made with β₯ using Go.
Requirements
- Go v1.13 or higher;
- Terraform v0.12.17 or higher;
- Docker v19.03.4 or higher for testing minio;
- Govendor for dependencies.
Installing the plugin
We release darwin and linux amd64 packages on the releases page. Once you have the plugin you should remove the _os_arch from the end of the file name and place it in ~/.terraform.d/plugins
which is where terraform init will look for plugins. To install release binaries, download the version from your OS, then:
mv terraform-provider-minio_v1.0_darwin_amd64 ~/.terraform.d/plugins/terraform-provider-minio_v1.0
If you require a different architecture you will need to build the plugin from source, see below for more details:
make build
Valid provider filenames are terraform-provider-NAME_X.X.X
or terraform-provider-NAME_vX.X.X
Examples
Use examples/main.tf to create some test config, such as:
provider "minio" {
minio_server = "localhost:9000"
minio_region = "us-east-1"
minio_access_key = "minio"
minio_secret_key = "minio123"
}
You may use variables to fill up configurations:
variable "minio_region" {
description = "Default MINIO region"
default = "us-east-1"
}
variable "minio_server" {
description = "Default MINIO host and port"
default = "localhost:9000"
}
variable "minio_access_key" {
description = "MINIO user"
default = "minio"
}
variable "minio_secret_key" {
description = "MINIO secret user"
default = "minio123"
}
Testing
For testing locally, run the docker compose to spin up a minio server:
docker-compose up
Usage
See our Examples folder.
Developing inside a container
Inside .devcontainer
folder is the configuration of a Docker Container with all tools needed to develop this project. It's meant to be used with VS Code, requiring only the installation of Remote - Containers extension. For usage instructions, refer to this tutorial.
Roadmap
See the open issues for a list of proposed features (and known issues). See CONTRIBUTION.md for more information.
License
Distributed under the Apache License. See LICENSE
for more information.
Acknowledgements
Contributors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!