You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@devlake.apache.org by ab...@apache.org on 2022/11/02 04:42:21 UTC

[incubator-devlake] branch release-v0.14 updated: feat: redirect dbt error log to pipeline error (#3645)

This is an automated email from the ASF dual-hosted git repository.

abeizn pushed a commit to branch release-v0.14
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git


The following commit(s) were added to refs/heads/release-v0.14 by this push:
     new 9d628130 feat: redirect dbt error log to pipeline error (#3645)
9d628130 is described below

commit 9d62813094182d29a88a0f46d204b88a7cb430f1
Author: long2ice <lo...@gmail.com>
AuthorDate: Wed Nov 2 12:42:17 2022 +0800

    feat: redirect dbt error log to pipeline error (#3645)
---
 plugins/dbt/tasks/convertor.go | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/plugins/dbt/tasks/convertor.go b/plugins/dbt/tasks/convertor.go
index 49339d5c..3fd9ca36 100644
--- a/plugins/dbt/tasks/convertor.go
+++ b/plugins/dbt/tasks/convertor.go
@@ -119,8 +119,10 @@ func DbtConverter(taskCtx core.SubTaskContext) errors.Error {
 		dbtExecParams = append(dbtExecParams, "--vars")
 		dbtExecParams = append(dbtExecParams, string(jsonProjectVars))
 	}
-	dbtExecParams = append(dbtExecParams, "--select")
-	dbtExecParams = append(dbtExecParams, models...)
+	if models != nil {
+		dbtExecParams = append(dbtExecParams, "--select")
+		dbtExecParams = append(dbtExecParams, models...)
+	}
 	if args != nil {
 		dbtExecParams = append(dbtExecParams, args...)
 	}
@@ -132,9 +134,13 @@ func DbtConverter(taskCtx core.SubTaskContext) errors.Error {
 		return err
 	}
 	scanner := bufio.NewScanner(stdout)
+	var errStr string
 	for scanner.Scan() {
 		line := scanner.Text()
 		log.Info(line)
+		if strings.Contains(line, "ERROR") || errStr != "" {
+			errStr += line + "\n"
+		}
 		if strings.Contains(line, "of") && strings.Contains(line, "OK") {
 			taskCtx.IncProgress(1)
 		}
@@ -144,7 +150,7 @@ func DbtConverter(taskCtx core.SubTaskContext) errors.Error {
 	}
 	err = errors.Convert(cmd.Wait())
 	if err != nil {
-		return err
+		return errors.Internal.New(errStr)
 	}
 	if !cmd.ProcessState.Success() {
 		log.Error(nil, "dbt run task error, please check!!!")