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 2024/08/26 03:17:43 UTC
(incubator-devlake) branch release-v1.0 updated: fix: jira jql checker (#7950) (#7951)
This is an automated email from the ASF dual-hosted git repository.
abeizn pushed a commit to branch release-v1.0
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
The following commit(s) were added to refs/heads/release-v1.0 by this push:
new 59d0954c0 fix: jira jql checker (#7950) (#7951)
59d0954c0 is described below
commit 59d0954c03561a70e5ca8425c28936ad0c58c712
Author: github-actions[bot] <41...@users.noreply.github.com>
AuthorDate: Mon Aug 26 11:17:38 2024 +0800
fix: jira jql checker (#7950) (#7951)
* fix: add JIRA_JQL_CHANGE_DETECTION env for jira jql auto checker
* fix: rename JIRA_JQL_CHANGE_DETECTION to JIRA_JQL_AUTO_FULL_REFRESH
Co-authored-by: abeizn <zi...@merico.dev>
---
.../plugins/jira/tasks/board_filter_begin_collector.go | 16 +++++++++++++++-
backend/plugins/jira/tasks/board_filter_end_collector.go | 6 +++++-
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/backend/plugins/jira/tasks/board_filter_begin_collector.go b/backend/plugins/jira/tasks/board_filter_begin_collector.go
index f4751fc5a..6c513f1f8 100644
--- a/backend/plugins/jira/tasks/board_filter_begin_collector.go
+++ b/backend/plugins/jira/tasks/board_filter_begin_collector.go
@@ -22,6 +22,7 @@ import (
"github.com/apache/incubator-devlake/core/dal"
"github.com/apache/incubator-devlake/core/errors"
+ coreModels "github.com/apache/incubator-devlake/core/models"
"github.com/apache/incubator-devlake/core/plugin"
helper "github.com/apache/incubator-devlake/helpers/pluginhelper/api"
"github.com/apache/incubator-devlake/plugins/jira/models"
@@ -87,7 +88,20 @@ func CollectBoardFilterBegin(taskCtx plugin.SubTaskContext) errors.Error {
}
// change
if record.Jql != jql {
- return errors.Default.New(fmt.Sprintf("connection_id:%d board_id:%d filter jql has changed, please use fullSync mode. And the previous jql is %s, now jql is %s", data.Options.ConnectionId, data.Options.BoardId, record.Jql, jql))
+ cfg := taskCtx.GetConfigReader()
+ flag := cfg.GetBool("JIRA_JQL_AUTO_FULL_REFRESH")
+ if flag {
+ logger.Info("connection_id:%d board_id:%d filter jql has changed, And the previous jql is %s, now jql is %s, run it in fullSync mode", data.Options.ConnectionId, data.Options.BoardId, record.Jql, jql)
+ // set full sync
+ taskCtx.TaskContext().SetSyncPolicy(&coreModels.SyncPolicy{TriggerSyncPolicy: coreModels.TriggerSyncPolicy{FullSync: true}})
+ record.Jql = jql
+ err = db.Update(&record, dal.Where("connection_id = ? AND board_id = ? ", data.Options.ConnectionId, data.Options.BoardId))
+ if err != nil {
+ return errors.Default.Wrap(err, fmt.Sprintf("error updating record in _tool_jira_boards table for connection_id:%d board_id:%d", data.Options.ConnectionId, data.Options.BoardId))
+ }
+ } else {
+ return errors.Default.New(fmt.Sprintf("connection_id:%d board_id:%d filter jql has changed, please use fullSync mode. And the previous jql is %s, now jql is %s", data.Options.ConnectionId, data.Options.BoardId, record.Jql, jql))
+ }
}
// no change
return nil
diff --git a/backend/plugins/jira/tasks/board_filter_end_collector.go b/backend/plugins/jira/tasks/board_filter_end_collector.go
index 8073903de..65d8eca14 100644
--- a/backend/plugins/jira/tasks/board_filter_end_collector.go
+++ b/backend/plugins/jira/tasks/board_filter_end_collector.go
@@ -64,7 +64,11 @@ func CollectBoardFilterEnd(taskCtx plugin.SubTaskContext) errors.Error {
logger.Info("get board filter jql:%s", record.Jql)
if record.Jql != jql {
- return errors.Default.New(fmt.Sprintf("connection_id:%d board_id:%d filter jql has changed, please use fullSync mode. And the previous jql is %s, now jql is %s", data.Options.ConnectionId, data.Options.BoardId, record.Jql, jql))
+ cfg := taskCtx.GetConfigReader()
+ flag := cfg.GetBool("JIRA_JQL_AUTO_FULL_REFRESH")
+ if !flag {
+ return errors.Default.New(fmt.Sprintf("connection_id:%d board_id:%d filter jql has changed, please use fullSync mode. And the previous jql is %s, now jql is %s", data.Options.ConnectionId, data.Options.BoardId, record.Jql, jql))
+ }
}
return nil