Skip to content

Latest commit

 

History

History
167 lines (136 loc) · 3.05 KB

aws_glue_script.md

File metadata and controls

167 lines (136 loc) · 3.05 KB

aws_glue_script

back

Index

Terraform

terraform {
  required_providers {
    aws = ">= 3.35.0"
  }
}

top

Example Usage

module "aws_glue_script" {
  source = "./modules/aws/d/aws_glue_script"

  # language - (optional) is a type of string
  language = null

  dag_edge = [{
    source           = null
    target           = null
    target_parameter = null
  }]

  dag_node = [{
    args = [{
      name  = null
      param = null
      value = null
    }]
    id          = null
    line_number = null
    node_type   = null
  }]
}

top

Variables

variable "language" {
  description = "(optional)"
  type        = string
  default     = null
}

variable "dag_edge" {
  description = "nested block: NestingList, min items: 1, max items: 0"
  type = set(object(
    {
      source           = string
      target           = string
      target_parameter = string
    }
  ))
}

variable "dag_node" {
  description = "nested block: NestingList, min items: 1, max items: 0"
  type = set(object(
    {
      args = list(object(
        {
          name  = string
          param = bool
          value = string
        }
      ))
      id          = string
      line_number = number
      node_type   = string
    }
  ))
}

top

Datasource

data "aws_glue_script" "this" {
  # language - (optional) is a type of string
  language = var.language

  dynamic "dag_edge" {
    for_each = var.dag_edge
    content {
      # source - (required) is a type of string
      source = dag_edge.value["source"]
      # target - (required) is a type of string
      target = dag_edge.value["target"]
      # target_parameter - (optional) is a type of string
      target_parameter = dag_edge.value["target_parameter"]
    }
  }

  dynamic "dag_node" {
    for_each = var.dag_node
    content {
      # id - (required) is a type of string
      id = dag_node.value["id"]
      # line_number - (optional) is a type of number
      line_number = dag_node.value["line_number"]
      # node_type - (required) is a type of string
      node_type = dag_node.value["node_type"]

      dynamic "args" {
        for_each = dag_node.value.args
        content {
          # name - (required) is a type of string
          name = args.value["name"]
          # param - (optional) is a type of bool
          param = args.value["param"]
          # value - (required) is a type of string
          value = args.value["value"]
        }
      }

    }
  }

}

top

Outputs

output "id" {
  description = "returns a string"
  value       = data.aws_glue_script.this.id
}

output "python_script" {
  description = "returns a string"
  value       = data.aws_glue_script.this.python_script
}

output "scala_code" {
  description = "returns a string"
  value       = data.aws_glue_script.this.scala_code
}

output "this" {
  value = aws_glue_script.this
}

top