AWS Glue Workflow
This page shows how to write Terraform and CloudFormation for AWS Glue Workflow and write them securely.
aws_glue_workflow (Terraform)
The Workflow in AWS Glue can be configured in Terraform with the resource name aws_glue_workflow
. The following sections describe 3 examples of how to use the resource and its parameters.
Example Usage from GitHub
resource "aws_glue_workflow" "glue_workflow" {
name = var.workflow_name
}
resource "aws_glue_security_configuration" "glue_security" {
name = var.security_name
resource "aws_glue_workflow" "glue_workflow" {
name = var.workflow_name
}
resource "aws_glue_security_configuration" "glue_security" {
name = var.security_name
resource "aws_glue_workflow" "this" {
default_run_properties = var.default_run_properties
description = var.description
name = var.name
}
Parameters
-
arn
optional computed - string -
default_run_properties
optional - map from string to string -
description
optional - string -
id
optional computed - string -
max_concurrent_runs
optional - number -
name
optional - string -
tags
optional - map from string to string
Explanation in Terraform Registry
Provides a Glue Workflow resource. The workflow graph (DAG) can be build using the
aws_glue_trigger
resource. See the example below for creating a graph with four nodes (two triggers and two jobs).
AWS::Glue::Workflow (CloudFormation)
The Workflow in Glue can be configured in CloudFormation with the resource name AWS::Glue::Workflow
. The following sections describe 10 examples of how to use the resource and its parameters.
Example Usage from GitHub
Type: AWS::Glue::Workflow
Properties:
Description: workflow to execture DataQuest etl
Name: DataQuestworkflow
Type: AWS::Glue::Workflow
Properties:
Description: !Ref GlueWorkflowDescription
Name: !Ref GlueWorkflowName
####################################################################################
Type: AWS::Glue::Workflow
Properties:
#DefaultRunProperties: Json
Description: Mart workflow starting with DQ job
Name: PlusMartWF
#Tags: Json
Type: AWS::Glue::Workflow
Properties:
Description: !Ref GlueWorkflowDescription
Name: !Ref GlueWorkflowName
####################################################################################
Type: AWS::Glue::Workflow
Properties:
Description: Testing Glue workflow creation via CloudFormation.
EnergyDataCrawler:
Type: AWS::Glue::Crawler
"Type": "AWS::Glue::Workflow",
"Properties": {
"Description": "Quarterly report pipeline for catalog sales",
"Name": "quarterly-catalog-reporting",
"Tags": {
"project": "redshift-demo"
"AWS::Glue::Workflow": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html",
"Properties": {
"Description": {
"Required": false,
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html#cfn-glue-workflow-description",
"Type": "AWS::Glue::Workflow",
"Properties": {
"Description": "Copies data into weather table, unloads in s3 bucket partitioned and runs Glue crawler",
"Name": "AodRSWorkflow"
}
},
"Type": "AWS::Glue::Workflow",
"Properties": {
"Description": "Use TPCDS benchmark Redshift",
"Name": "redshift-benchmark",
"Tags": {
"project": "redshift-benchmark"
"Type": "AWS::Glue::Workflow",
"Properties": {
"Description": "ETL workflow to convert CSV to parquet and then load into Redshift",
"Name": "glue-workflow"
},
"Metadata": {
Parameters
-
Description
optional - String -
DefaultRunProperties
optional - Json -
Tags
optional - Json -
Name
optional - String
Explanation in CloudFormation Registry
The
AWS::Glue::Workflow
is an AWS Glue resource type that manages AWS Glue workflows. A workflow is a container for a set of related jobs, crawlers, and triggers in AWS Glue. Using a workflow, you can design a complex multi-job extract, transform, and load (ETL) activity that AWS Glue can execute and track as single entity.
Frequently asked questions
What is AWS Glue Workflow?
AWS Glue Workflow is a resource for Glue of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.
Where can I find the example code for the AWS Glue Workflow?
For Terraform, the 1oglop1/aws-glue-monorepo-style, SJREDDY6/terra and niveklabs/aws source code examples are useful. See the Terraform Example section for further details.
For CloudFormation, the fergo2910/data-quest-infra, MarcoAP/AWSTraining and pradosh2008/cloudproject source code examples are useful. See the CloudFormation Example section for further details.