Terraform Provider for MinIO
Explore the docs »
Table of Contents
About this project
A Terraform provider to manage MinIO Cloud Storage.
Made with ♥ using Go.
Supported Versions
It doesn't mean that this provider won't run on previous versions of Terraform or Go, though.
It just means that we can't guarantee backward compatibility.
Building and Installing
Prebuilt versions of this provider are available for MacOS and Linux on the releases page.
But if you need to build it yourself, just download this repository and follow the instructions:
MacOS
To build and install this plugin on MacOS, run:
make install_mac
Linux
To build and install this plugin on Linux, run:
make install_linux
Windows
For Windows we don't have a Makefile, but it should be as simple as:
go build -o terraform-provider-minio_v1.0.0
mkdir "%APPDATA%\HashiCorp\Terraform\plugins\registry.terraform.io\aminueza\minio\1.0.0\windows_amd64"
move terraform-provider-minio_v1.0.0 %APPDATA%\HashiCorp\Terraform\plugins\registry.terraform.io\aminueza\minio\1.0.0\windows_amd64
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
Access http://localhost on your browser, apply your terraform templates and watch them going live.
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