digitalocean_spaces_bucket_object

Provides a bucket object resource for Spaces, DigitalOcean's object storage product. The digitalocean_spaces_bucket_object resource allows Terraform to upload content to Spaces.

The Spaces API was designed to be interoperable with Amazon's AWS S3 API. This allows users to interact with the service while using the tools they already know. Spaces mirrors S3's authentication framework and requests to Spaces require a key pair similar to Amazon's Access ID and Secret Key.

The authentication requirement can be met by either setting the SPACES_ACCESS_KEY_ID and SPACES_SECRET_ACCESS_KEY environment variables or the provider's spaces_access_id and spaces_secret_key arguments to the access ID and secret you generate via the DigitalOcean control panel. For example:

provider "digitalocean" {
  token             = var.digitalocean_token

  spaces_access_id  = var.access_id
  spaces_secret_key = var.secret_key
}

resource "digitalocean_spaces_bucket" "static-assets" {
  # ...
}

For more information, See An Introduction to DigitalOcean Spaces

Example Usage

Create a Key in a Spaces Bucket

resource "digitalocean_spaces_bucket" "foobar" {
  name   = "foobar"
  region = "nyc3"
}

resource "digitalocean_spaces_bucket_object" "index" {
  region       = digitalocean_spaces_bucket.foobar.region
  bucket       = digitalocean_spaces_bucket.foobar.name
  key          = "index.html"
  content      = "<html><body><p>This page is empty.</p></body></html>"
  content_type = "text/html"
}

Argument Reference

The following arguments are supported:

If no content is provided through source, content or content_base64, then the object will be empty.

Attributes Reference

The following attributes are exported

Import

Importing this resource is not supported.