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!!!")