##################################
#         S3 Variables           #
##################################

variable "assume_role" {
  description = "The role used for infra changes"
  type        = string
  default     = "arn:aws:iam::019963779799:role/AnsibleAWSServiceAccess-SWBRD-P"
}

variable "block_public_acls" {
  description = "To block S3 public acls"
  type        = bool
  default     = true
}

variable "ignore_public_acls" {
  description = "To ignore any public acls"
  type        = bool
  default     = true
}

variable "restrict_public_buckets" {
  description = "To Restrict public buckets"
  type        = bool
  default     = true
}

variable "block_public_policy" {
  description = "To block public bucket policy"
  type        = bool
  default     = true
}

variable "force_destroy" {
  description = "To delete the bucket by force"
  type        = bool
  default     = true
}

variable "attach_policy" {
  description = "To add additional bucket policy"
  type        = bool
  default     = true
}

variable "attach_deny_insecure_transport_policy" {
  description = "To add TLS insecure policy"
  type        = bool
  default     = true
}

variable "attach_require_latest_tls_policy" {
  description = "To add latest TLS insecure policy"
  type        = bool
  default     = false
}

variable "s3_acl" {
  description = "S3 acl type"
  type        = string
  default     = "private"
}

variable "server_side_encryption_configuration" {
  description = "SSE config"
  default = {
    rule = {
      bucket_key_enabled = false
      apply_server_side_encryption_by_default = {
        kms_master_key_id = ""
        sse_algorithm     = "AES256"
      }
    }
  }
}

variable "tags" {
  description = "A map of tags to add to all resources"
  type        = map(string)

  default = {
    Terraform     = "True"
    Business-Unit = "Digital-Supply-Chain"
    Environment   = "prod"
    Owner         = "Robert Dewilder"
    Project-Code  = "Switchboard"
    Project-Name  = "Switchboard"
  }
}
