Sha256: 41b784f342379ed5c4940da48dacb97ed8e3a12bc2f2254643b226b476f2d1cd
Contents?: true
Size: 1.07 KB
Versions: 4
Compression:
Stored size: 1.07 KB
Contents
module Terraforming module Resource class S3 include Terraforming::Util def self.tf(client = Aws::S3::Client.new) self.new(client).tf end def self.tfstate(client = Aws::S3::Client.new) self.new(client).tfstate end def initialize(client) @client = client end def tf apply_template(@client, "tf/s3") end def tfstate resources = buckets.inject({}) do |result, bucket| result["aws_s3_bucket.#{module_name_of(bucket)}"] = { "type" => "aws_s3_bucket", "primary" => { "id" => bucket.name, "attributes" => { "acl" => "private", "bucket" => bucket.name, "id" => bucket.name } } } result end generate_tfstate(resources) end private def buckets @client.list_buckets.buckets end def module_name_of(bucket) normalize_module_name(bucket.name) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems