From 5cf297bd6a44cd7399b7abcb5afb4d17ad8c9608 Mon Sep 17 00:00:00 2001 From: Ishwarya Varadarajan Date: Wed, 12 Mar 2025 17:10:13 +0530 Subject: [PATCH] S-119019 - Airflow Workflow Implementation Airflow worflow to trigger a new DAG run . --- .../Workflows/Airflow/Releasefile.yaml | 6 ++ .../Workflow_Airflow trigger DAG run.yaml | 84 +++++++++++++++++++ .../Apache Airflow.svg | 11 +++ 3 files changed, 101 insertions(+) create mode 100644 DigitalAIOfficial/Workflows/Airflow/Releasefile.yaml create mode 100644 DigitalAIOfficial/Workflows/Airflow/Workflow_Airflow trigger DAG run.yaml create mode 100644 DigitalAIOfficial/Workflows/Airflow/template-logo/3a86a31a9b4072e95aa0df54f16498c41578374a/Apache Airflow.svg diff --git a/DigitalAIOfficial/Workflows/Airflow/Releasefile.yaml b/DigitalAIOfficial/Workflows/Airflow/Releasefile.yaml new file mode 100644 index 0000000..02ea622 --- /dev/null +++ b/DigitalAIOfficial/Workflows/Airflow/Releasefile.yaml @@ -0,0 +1,6 @@ +--- +apiVersion: xl-release/v1 +kind: Import +spec: + imports: + - Workflow_Airflow trigger DAG run.yaml diff --git a/DigitalAIOfficial/Workflows/Airflow/Workflow_Airflow trigger DAG run.yaml b/DigitalAIOfficial/Workflows/Airflow/Workflow_Airflow trigger DAG run.yaml new file mode 100644 index 0000000..b524424 --- /dev/null +++ b/DigitalAIOfficial/Workflows/Airflow/Workflow_Airflow trigger DAG run.yaml @@ -0,0 +1,84 @@ +--- +apiVersion: xl-release/v1 +kind: Templates +metadata: + path: Workflows/Airflow + home: Digital.ai - Official/Workflows/Airflow +spec: +- template: Airflow trigger DAG run + description: "Trigger an Airflow DAG run at ease, wait for its completion and get\ + \ run details." + scheduledStartDate: 2025-03-04T09:00:00+05:30 + phases: + - phase: Workflow tasks + tasks: + - name: Configure connection + type: xlrelease.UserInputTask + description: Please enter the required information below. + variables: + - airflowServer + - name: Specify run details + type: xlrelease.UserInputTask + description: "Please enter the DAG run details. The DAG run ID is optional\ + \ . If not specified, a run ID is auto-generated." + variables: + - dagId + - dagRunId + - waitForCompletion + - name: Enable DAG + type: airflow.updateDag + dagId: "${dagId}" + isActive: true + description: Enables the DAG if disabled. + variableMapping: + pythonScript.airflowServer: "${airflowServer}" + - name: Trigger DAG run + type: airflow.triggerDagRun + dagId: "${dagId}" + runId: "${dagRunId}" + description: Triggers a new DAG run for the given DAG. Waits for the DAG run + to complete. + variableMapping: + pythonScript.waitForSuccessfulRun: "${waitForCompletion}" + pythonScript.airflowServer: "${airflowServer}" + pythonScript.dagRunId: "${dagRunId}" + - name: Get DAG run + type: airflow.getDagRun + dagId: "${dagId}" + dagRunId: "${dagRunId}" + description: Get details of the DAG run + variableMapping: + pythonScript.airflowServer: "${airflowServer}" + kind: WORKFLOW + categories: + - Application Life Cycle Management + variables: + - type: xlrelease.StringVariable + key: dagId + showOnReleaseStart: false + label: DAG ID + description: Unique identifier for the DAG + - type: xlrelease.StringVariable + key: dagRunId + requiresValue: false + showOnReleaseStart: false + label: DAG run ID + description: Unique identifier for the DAG run + - type: xlrelease.BooleanVariable + key: waitForCompletion + showOnReleaseStart: false + label: Wait for completion + description: Wait for the DAG run completion + - type: xlrelease.ReferenceVariable + key: airflowServer + showOnReleaseStart: false + label: "Airflow: Server" + description: Create or select a Airflow connection + referencedType: airflow.Server + disableNotifications: true + author: Digital.ai + logo: + type: xlrelease.TemplateLogo + contentType: image/svg+xml + file: !file "template-logo/3a86a31a9b4072e95aa0df54f16498c41578374a/Apache Airflow.svg" + defaultTargetFolder: Digital.ai - Official/Workflow Executions diff --git a/DigitalAIOfficial/Workflows/Airflow/template-logo/3a86a31a9b4072e95aa0df54f16498c41578374a/Apache Airflow.svg b/DigitalAIOfficial/Workflows/Airflow/template-logo/3a86a31a9b4072e95aa0df54f16498c41578374a/Apache Airflow.svg new file mode 100644 index 0000000..f7864f8 --- /dev/null +++ b/DigitalAIOfficial/Workflows/Airflow/template-logo/3a86a31a9b4072e95aa0df54f16498c41578374a/Apache Airflow.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file