{
   "components":{
      "comp-bigquery-query-job":{
         "executorLabel":"exec-bigquery-query-job",
         "inputDefinitions":{
            "parameters":{
               "encryption_spec_key_name":{
                  "parameterType":"STRING"
               },
               "job_configuration_query":{
                  "parameterType":"STRUCT"
               },
               "labels":{
                  "parameterType":"STRUCT"
               },
               "location":{
                  "parameterType":"STRING"
               },
               "project":{
                  "parameterType":"STRING"
               },
               "query":{
                  "parameterType":"STRING"
               },
               "query_parameters":{
                  "parameterType":"LIST"
               }
            }
         },
         "outputDefinitions":{
            "artifacts":{
               "destination_table":{
                  "artifactType":{
                     "schemaTitle":"google.BQTable",
                     "schemaVersion":"0.0.1"
                  }
               }
            },
            "parameters":{
               "gcp_resources":{
                  "parameterType":"STRING"
               }
            }
         }
      }
   },
   "deploymentSpec":{
      "executors":{
         "exec-bigquery-query-job":{
            "container":{
               "args":[
                  "--type",
                  "BigqueryQueryJob",
                  "--project",
                  "{{$.inputs.parameters['project']}}",
                  "--location",
                  "{{$.inputs.parameters['location']}}",
                  "--payload",
                  "{\"configuration\": {\"query\": {{$.inputs.parameters['job_configuration_query']}}, \"labels\": {{$.inputs.parameters['labels']}}}}",
                  "--job_configuration_query_override",
                  "{\"query\": \"{{$.inputs.parameters['query']}}\", \"query_parameters\": {{$.inputs.parameters['query_parameters']}}, \"destination_encryption_configuration\": {\"kmsKeyName\": \"{{$.inputs.parameters['encryption_spec_key_name']}}\"}}",
                  "--gcp_resources",
                  "{{$.outputs.parameters['gcp_resources'].output_file}}",
                  "--executor_input",
                  "{{$}}"
               ],
               "command":[
                  "python3",
                  "-u",
                  "-m",
                  "google_cloud_pipeline_components.container.v1.bigquery.query_job.launcher"
               ],
               "image":"gcr.io/ml-pipeline/google-cloud-pipeline-components:latest"
            }
         }
      }
   },
   "pipelineInfo":{
      "name":"bigquery-test"
   },
   "root":{
      "dag":{
         "tasks":{
            "bigquery-query-job":{
               "cachingOptions":{
                  "enableCache":true
               },
               "componentRef":{
                  "name":"comp-bigquery-query-job"
               },
               "inputs":{
                  "parameters":{
                     "encryption_spec_key_name":{
                        "runtimeValue":{
                           "constant":"fake_encryption_key"
                        }
                     },
                     "job_configuration_query":{
                        "runtimeValue":{
                           "constant":{
                              "priority":"high"
                           }
                        }
                     },
                     "labels":{
                        "runtimeValue":{
                           "constant":{
                              "key1":"val1"
                           }
                        }
                     },
                     "location":{
                        "runtimeValue":{
                           "constant":"us-central1"
                        }
                     },
                     "project":{
                        "runtimeValue":{
                           "constant":"test_project"
                        }
                     },
                     "query":{
                        "runtimeValue":{
                           "constant":"SELECT * FROM foo_bar;"
                        }
                     },
                     "query_parameters":{
                        "runtimeValue":{
                           "constant":[
                              {
                                 "name":"foo"
                              },
                              {
                                 "name":"bar"
                              }
                           ]
                        }
                     }
                  }
               },
               "taskInfo":{
                  "name":"bigquery-query-job"
               }
            }
         }
      }
   }
}
