github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/e2e/terraform/volumes.tf (about)

     1  resource "aws_efs_file_system" "csi" {
     2    count          = var.volumes ? 1 : 0
     3    creation_token = "${local.random_name}-CSI"
     4  
     5    tags = {
     6      Name = "${local.random_name}-efs"
     7      User = data.aws_caller_identity.current.arn
     8    }
     9  }
    10  
    11  resource "aws_efs_mount_target" "csi" {
    12    count           = var.volumes ? 1 : 0
    13    file_system_id  = aws_efs_file_system.csi[0].id
    14    subnet_id       = data.aws_subnet.default.id
    15    security_groups = [aws_security_group.nfs[0].id]
    16  }
    17  
    18  resource "aws_ebs_volume" "csi" {
    19    count             = var.volumes ? 1 : 0
    20    availability_zone = var.availability_zone
    21    size              = 40
    22  
    23    tags = {
    24      Name = "${local.random_name}-ebs"
    25      User = data.aws_caller_identity.current.arn
    26    }
    27  }
    28  
    29  data "template_file" "ebs_volume_hcl" {
    30    count    = var.volumes ? 1 : 0
    31    template = <<EOT
    32  type = "csi"
    33  id = "ebs-vol0"
    34  name = "ebs-vol0"
    35  external_id = "${aws_ebs_volume.csi[0].id}"
    36  access_mode = "single-node-writer"
    37  attachment_mode = "file-system"
    38  plugin_id = "aws-ebs0"
    39  EOT
    40  }
    41  
    42  data "template_file" "efs_volume_hcl" {
    43    count    = var.volumes ? 1 : 0
    44    template = <<EOT
    45  type = "csi"
    46  id = "efs-vol0"
    47  name = "efs-vol0"
    48  external_id = "${aws_efs_file_system.csi[0].id}"
    49  access_mode = "single-node-writer"
    50  attachment_mode = "file-system"
    51  plugin_id = "aws-efs0"
    52  EOT
    53  }
    54  
    55  resource "local_file" "ebs_volume_hcl" {
    56    count           = var.volumes ? 1 : 0
    57    content         = data.template_file.ebs_volume_hcl[0].rendered
    58    filename        = "${path.module}/../csi/input/volume-ebs.hcl"
    59    file_permission = "0664"
    60  }
    61  
    62  resource "local_file" "efs_volume_hcl" {
    63    count           = var.volumes ? 1 : 0
    64    content         = data.template_file.efs_volume_hcl[0].rendered
    65    filename        = "${path.module}/../csi/input/volume-efs.hcl"
    66    file_permission = "0664"
    67  }