Skip to content

Example 6

jun-he edited this page May 15, 2025 · 2 revisions

Add a backfill workflow using Maestro foreach feature

{
  "properties": {
    "owner": "tester",
    "run_strategy": "sequential"
  },
  "workflow": {
    "id": "backfill.demo.pipeline",
    "params": {
      "FROM_DATE": {
        "value": 20240101,
        "type": "LONG"
      },
      "TO_DATE": {
        "value": 20240110,
        "type": "LONG"
      }
    },
    "steps": [
      {
        "foreach": {
          "id": "backfill.job",
          "params": {
            "loop_params": {
              "value": {
                "date": {
                  "expression": "Util.dateIntsBetween(FROM_DATE, TO_DATE, 1);",
                  "type": "LONG_ARRAY"
                }
              },
              "type": "MAP"
            }
          },
          "concurrency": 100,
          "steps": [
            {
              "subworkflow": {
                "id": "backfill.workflow",
                "params": {
                  "subworkflow_id": {
                    "value": "demo.pipeline",
                    "type": "STRING"
                  },
                  "TARGET_RUN_DATE": {
                    "value": "${date}",
                    "type": "STRING"
                  }
                }
              }
            }
          ]
        }
      }
    ]
  }
}

Clone this wiki locally