オブジェクトストレージの扱いについて
現時点ではこのプロバイダーはさくらのクラウドの新オブジェクトストレージをサポートしていません。
代わりにAWSプロバイダーなどを利用することで新オブジェクトストレージの一部機能をTerraformから利用可能です。
以下はAWSプロバイダーを用いてオブジェクトを作成する例です。
なおAPIキーやバケットはあらかじめコントロールパネルから作成しておく必要があります。
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 3.0"
}
}
}
provider "aws" {
alias = "sacloud"
region = var.s3_region
access_key = var.s3_access_key
secret_key = var.s3_secret_key
endpoints {
s3 = var.s3_endpoint
}
skip_credentials_validation = true
skip_region_validation = true
skip_requesting_account_id = true
skip_metadata_api_check = true
}
#================================================
variable "s3_access_key" {}
variable "s3_secret_key" {}
variable "s3_region" {
default = "jp-north-1"
}
variable "s3_endpoint" {
default = "https://s3.isk01.sakurastorage.jp"
}
#================================================
data "aws_s3_bucket" "example" {
provider = aws.sacloud
bucket = "your-bucket-name" # set your bucket name
}
resource "aws_s3_bucket_object" "object" {
provider = aws.sacloud
bucket = data.aws_s3_bucket.example.id
key = "example.txt"
source = "example.txt"
etag = filemd5("example.txt")
acl = "public-read"
}