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/09/16 11:49:01 UTC

[incubator-devlake] branch main updated (de9b7957 -> 5d98faa9)

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

abeizn pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git


    from de9b7957 feat: add deployTagPattern for github
     new 7db91aea fix(plugins): use didgen
     new 4fe95b9d fix(jenkins): use didgen instead of fmt
     new dd446d9f fix(github): use didgen instead of fmt
     new a19aaf2f fix(gitlab): use didgen instead of fmt
     new 5d98faa9 fix(github): rebase

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 plugins/bitbucket/tasks/commit_extractor.go        |   2 +-
 .../e2e/snapshot_tables/cicd_pipeline_commits.csv  | 194 ++++++++++-----------
 .../github/e2e/snapshot_tables/cicd_pipelines.csv  | 194 ++++++++++-----------
 plugins/github/e2e/snapshot_tables/cicd_tasks.csv  | 190 ++++++++++----------
 plugins/github/models/run.go                       |   2 +-
 plugins/github/tasks/cicd_job_convertor.go         |  54 +++---
 plugins/github/tasks/cicd_pipeline_convertor.go    |  25 +--
 plugins/gitlab/tasks/pipeline_convertor.go         |   3 +-
 plugins/jenkins/api/connection.go                  |   2 +-
 plugins/jenkins/api/init.go                        |   6 +-
 plugins/jenkins/e2e/builds_test.go                 |  10 +-
 ...d_repos.csv => _tool_jenkins_build_commits.csv} |   0
 .../e2e/snapshot_tables/_tool_jenkins_builds.csv   |  76 ++++----
 .../e2e/snapshot_tables/cicd_pipeline_commits.csv  |  16 +-
 .../jenkins/e2e/snapshot_tables/cicd_pipelines.csv |  74 ++++----
 plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv |  74 ++++----
 .../snapshot_tables/cicd_tasks_after_stages.csv    |   6 +-
 plugins/jenkins/e2e/stages_test.go                 |   2 +-
 plugins/jenkins/impl/impl.go                       |   2 +-
 plugins/jenkins/models/build.go                    |   6 +-
 .../models/{build_repo.go => build_commit.go}      |   6 +-
 .../20220916_modify_jenkins_build.go               | 157 +++++++++++++++++
 .../jenkins/models/migrationscripts/register.go    |   1 +
 plugins/jenkins/tasks/build_cicd_convertor.go      |  20 +--
 ...repo_convertor.go => build_commit_convertor.go} |  11 +-
 plugins/jenkins/tasks/build_extractor.go           |   6 +-
 plugins/jenkins/tasks/stage_collector.go           |   2 +-
 plugins/jenkins/tasks/stage_convertor.go           |  13 +-
 28 files changed, 651 insertions(+), 503 deletions(-)
 rename plugins/jenkins/e2e/snapshot_tables/{_tool_jenkins_build_repos.csv => _tool_jenkins_build_commits.csv} (100%)
 rename plugins/jenkins/models/{build_repo.go => build_commit.go} (90%)
 create mode 100644 plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
 rename plugins/jenkins/tasks/{build_repo_convertor.go => build_commit_convertor.go} (87%)


[incubator-devlake] 05/05: fix(github): rebase

Posted by ab...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 5d98faa970e3025acc286fb243e2cddcacf97e7a
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 16 19:27:07 2022 +0800

    fix(github): rebase
---
 plugins/github/tasks/cicd_job_convertor.go | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/plugins/github/tasks/cicd_job_convertor.go b/plugins/github/tasks/cicd_job_convertor.go
index 125317ff..4e67ef68 100644
--- a/plugins/github/tasks/cicd_job_convertor.go
+++ b/plugins/github/tasks/cicd_job_convertor.go
@@ -18,9 +18,10 @@ limitations under the License.
 package tasks
 
 import (
-	"fmt"
 	"github.com/apache/incubator-devlake/errors"
+	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
 	"reflect"
+	"regexp"
 
 	"github.com/apache/incubator-devlake/plugins/core/dal"
 


[incubator-devlake] 03/05: fix(github): use didgen instead of fmt

Posted by ab...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit dd446d9f40c0ce7ff8a317cb31dc98d5e501c6d5
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 16 19:15:35 2022 +0800

    fix(github): use didgen instead of fmt
---
 .../e2e/snapshot_tables/cicd_pipeline_commits.csv  | 194 ++++++++++-----------
 .../github/e2e/snapshot_tables/cicd_pipelines.csv  | 194 ++++++++++-----------
 plugins/github/e2e/snapshot_tables/cicd_tasks.csv  | 190 ++++++++++----------
 plugins/github/models/run.go                       |   2 +-
 plugins/github/tasks/cicd_job_convertor.go         |  53 ++----
 plugins/github/tasks/cicd_pipeline_convertor.go    |  25 +--
 6 files changed, 323 insertions(+), 335 deletions(-)

diff --git a/plugins/github/e2e/snapshot_tables/cicd_pipeline_commits.csv b/plugins/github/e2e/snapshot_tables/cicd_pipeline_commits.csv
index 4356de9d..7f90ec76 100644
--- a/plugins/github/e2e/snapshot_tables/cicd_pipeline_commits.csv
+++ b/plugins/github/e2e/snapshot_tables/cicd_pipeline_commits.csv
@@ -1,98 +1,98 @@
 pipeline_id,commit_sha,branch,repo_id,repo_url
-github:GithubRun:1:1510490015,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1510490016,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1510490017,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1538144096,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1566272785,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1595162148,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1621008599,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1642642803,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1670481057,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1671012485,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
-github:GithubRun:1:1671012486,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
-github:GithubRun:1:1671012489,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
-github:GithubRun:1:1700729209,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1732056958,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1764901182,f85be55586a63c483c38c5ee5148460ec8301abb,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1765240396,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1765240397,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1765240399,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1770578332,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1770578333,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1770578335,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1798456849,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1806210136,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1806210139,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1806210142,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810596639,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810596640,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810596641,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810600610,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810600611,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1810600613,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1812264576,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
-github:GithubRun:1:1812264578,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
-github:GithubRun:1:1812264584,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
-github:GithubRun:1:1816294263,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1816294265,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1816294269,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1832817740,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1840663990,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1840663991,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1840663993,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
-github:GithubRun:1:1841409038,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1841409040,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1841409048,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1867842066,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1902128007,134f354e8e3ba73a35bc7da671ea6d1a8001d35d,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1937158166,134f354e8e3ba73a35bc7da671ea6d1a8001d35d,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1950331010,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1950331011,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1950331019,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:1972322397,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2007670039,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2043519651,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2081030401,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2139522011,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2175621127,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2211310588,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2248995623,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282334133,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282334134,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282334135,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282376171,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282376176,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282376177,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282497585,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282497589,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2282497593,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2285329812,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2286692492,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2286692493,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2286692494,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2323022643,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2361997480,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2400008940,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2438503618,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2478834057,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2519305981,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2559400712,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
-github:GithubRun:1:2559400713,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
-github:GithubRun:1:2559400714,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
-github:GithubRun:1:2559507315,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2566218975,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2566218976,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2566218977,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2589885628,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2589885635,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2589885639,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2600408985,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2639945362,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2680721264,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2722539966,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2764660507,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2807709308,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2850801364,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2893573709,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2938072864,06e6934c35c336b1a2bd3005fb21dc3914a45747,master,github:GithubRepo:1:134018330,
-github:GithubRun:1:2983238245,06e6934c35c336b1a2bd3005fb21dc3914a45747,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1510490015,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1510490016,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1510490017,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1538144096,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1566272785,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1595162148,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1621008599,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1642642803,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1670481057,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1671012485,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1671012486,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1671012489,1b95a084ac08cd34e247b5d3d0063778cfc14748,add_binarysearch_of_loop_q,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1700729209,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1732056958,1e897421860606afc3d1304cafe5cd187cee13e9,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1764901182,f85be55586a63c483c38c5ee5148460ec8301abb,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1765240396,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1765240397,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1765240399,0bc4eb314e41fc0deb47a617dd1e76d2ab20c3a7,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1770578332,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1770578333,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1770578335,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1798456849,1bd4304727b2ea62ec243f3145389d6ffe3607cf,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1806210136,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1806210139,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1806210142,d022f422f61e7f355a43b69d23a279cd8524a55c,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810596639,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810596640,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810596641,8d03fcf77f75c5c2a5b4cfc98e2ec9978af07593,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810600610,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810600611,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1810600613,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1812264576,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1812264578,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1812264584,2be767dc74bfa68412b1ef274a42d8829b4dbca8,simpler-pool-func,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1816294263,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1816294265,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1816294269,f9310f1d1cf5e3ddb2bf6e24074250eed11bd03d,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1832817740,0fa2fd6dc1811f81026a252854f4a8c0471ac7b0,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1840663990,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1840663991,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1840663993,0e17530397bcec737dd9a77fc9589a6866ec4f6e,feat/instantly-scale-up-capacity,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1841409038,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1841409040,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1841409048,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1867842066,fbd17036dbf5ae677ba9e41326745a65e655232f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1902128007,134f354e8e3ba73a35bc7da671ea6d1a8001d35d,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1937158166,134f354e8e3ba73a35bc7da671ea6d1a8001d35d,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1950331010,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1950331011,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1950331019,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:1972322397,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2007670039,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2043519651,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2081030401,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2139522011,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2175621127,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2211310588,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2248995623,96d074234a612a15078f25cf2f156f833ff3182f,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282334133,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282334134,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282334135,eedcecdf4a7e628fb50862a33f51893dddd3a188,test,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282376171,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282376176,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282376177,eedcecdf4a7e628fb50862a33f51893dddd3a188,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282497585,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282497589,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2282497593,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2285329812,607d0390c6c63ad4d934da39a90a18dc62f4857b,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2286692492,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2286692493,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2286692494,9310acdff2ced5a835ac3ea94206c43b6708c3d3,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2323022643,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2361997480,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2400008940,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2438503618,a35b88d90635cc1729ea566eaef0e57d80585c1c,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2478834057,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2519305981,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2559400712,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2559400713,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2559400714,5dd23ddff8621e6ae36eb24b20d4c4a06dd73dc9,Fix_rm_redundancy_code,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2559507315,f85611741eb1f5451697ac589008d28f240887fc,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2566218975,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2566218976,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2566218977,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2589885628,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2589885635,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2589885639,fa938334e73faf88a15b59622ab1da61a643c5da,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2600408985,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2639945362,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2680721264,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2722539966,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2764660507,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2807709308,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2850801364,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2893573709,32664cb1408f8d9ffa7236335025a4cd94a306ce,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2938072864,06e6934c35c336b1a2bd3005fb21dc3914a45747,master,github:GithubRepo:1:134018330,
+github:GithubRun:1:0:2983238245,06e6934c35c336b1a2bd3005fb21dc3914a45747,master,github:GithubRepo:1:134018330,
diff --git a/plugins/github/e2e/snapshot_tables/cicd_pipelines.csv b/plugins/github/e2e/snapshot_tables/cicd_pipelines.csv
index 9cd81e3e..22a9e6dc 100644
--- a/plugins/github/e2e/snapshot_tables/cicd_pipelines.csv
+++ b/plugins/github/e2e/snapshot_tables/cicd_pipelines.csv
@@ -1,98 +1,98 @@
 id,name,result,status,type,duration_sec,environment,created_date,finished_date
-github:GithubRun:1:1510490015,Lint,SUCCESS,DONE,CI/CD,17,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:23:41.000+00:00
-github:GithubRun:1:1510490016,CodeQL,SUCCESS,DONE,CI/CD,71,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:24:35.000+00:00
-github:GithubRun:1:1510490017,Tests,SUCCESS,DONE,CI/CD,235,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:27:19.000+00:00
-github:GithubRun:1:1538144096,CodeQL,SUCCESS,DONE,CI/CD,77,,2021-12-04T05:02:53.000+00:00,2021-12-04T05:04:10.000+00:00
-github:GithubRun:1:1566272785,CodeQL,SUCCESS,DONE,CI/CD,63,,2021-12-11T05:02:42.000+00:00,2021-12-11T05:03:45.000+00:00
-github:GithubRun:1:1595162148,CodeQL,SUCCESS,DONE,CI/CD,75,,2021-12-18T05:02:52.000+00:00,2021-12-18T05:04:07.000+00:00
-github:GithubRun:1:1621008599,CodeQL,SUCCESS,DONE,CI/CD,72,,2021-12-25T05:03:09.000+00:00,2021-12-25T05:04:21.000+00:00
-github:GithubRun:1:1642642803,CodeQL,SUCCESS,DONE,CI/CD,55,,2022-01-01T05:03:22.000+00:00,2022-01-01T05:04:17.000+00:00
-github:GithubRun:1:1670481057,CodeQL,SUCCESS,DONE,CI/CD,58,,2022-01-08T05:03:52.000+00:00,2022-01-08T05:04:50.000+00:00
-github:GithubRun:1:1671012485,CodeQL,SUCCESS,DONE,CI/CD,276305,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:51:43.000+00:00
-github:GithubRun:1:1671012486,Lint,SUCCESS,DONE,CI/CD,276263,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:51:01.000+00:00
-github:GithubRun:1:1671012489,Tests,SUCCESS,DONE,CI/CD,276469,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:54:27.000+00:00
-github:GithubRun:1:1700729209,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-01-15T05:04:01.000+00:00,2022-01-15T05:05:10.000+00:00
-github:GithubRun:1:1732056958,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-01-22T05:02:47.000+00:00,2022-01-22T05:03:41.000+00:00
-github:GithubRun:1:1764901182,CodeQL,SUCCESS,DONE,CI/CD,56,,2022-01-29T05:02:40.000+00:00,2022-01-29T05:03:36.000+00:00
-github:GithubRun:1:1765240396,CodeQL,SUCCESS,DONE,CI/CD,89386,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:51:13.000+00:00
-github:GithubRun:1:1765240397,Lint,SUCCESS,DONE,CI/CD,89351,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:50:38.000+00:00
-github:GithubRun:1:1765240399,Tests,SUCCESS,DONE,CI/CD,89617,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:55:04.000+00:00
-github:GithubRun:1:1770578332,Tests,SUCCESS,DONE,CI/CD,254,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:53:20.000+00:00
-github:GithubRun:1:1770578333,Lint,SUCCESS,DONE,CI/CD,30,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:49:36.000+00:00
-github:GithubRun:1:1770578335,CodeQL,SUCCESS,DONE,CI/CD,71,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:50:17.000+00:00
-github:GithubRun:1:1798456849,CodeQL,SUCCESS,DONE,CI/CD,55,,2022-02-05T05:02:46.000+00:00,2022-02-05T05:03:41.000+00:00
-github:GithubRun:1:1806210136,Lint,SUCCESS,DONE,CI/CD,54670,,2022-02-07T11:45:31.000+00:00,2022-02-08T02:56:41.000+00:00
-github:GithubRun:1:1806210139,Tests,SUCCESS,DONE,CI/CD,54949,,2022-02-07T11:45:31.000+00:00,2022-02-08T03:01:20.000+00:00
-github:GithubRun:1:1806210142,CodeQL,SUCCESS,DONE,CI/CD,54718,,2022-02-07T11:45:31.000+00:00,2022-02-08T02:57:29.000+00:00
-github:GithubRun:1:1810596639,Tests,SUCCESS,DONE,CI/CD,264,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:58:14.000+00:00
-github:GithubRun:1:1810596640,CodeQL,SUCCESS,DONE,CI/CD,62,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:54:52.000+00:00
-github:GithubRun:1:1810596641,Lint,FAILURE,DONE,CI/CD,24,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:54:14.000+00:00
-github:GithubRun:1:1810600610,CodeQL,SUCCESS,DONE,CI/CD,65,,2022-02-08T05:55:47.000+00:00,2022-02-08T05:56:52.000+00:00
-github:GithubRun:1:1810600611,Lint,SUCCESS,DONE,CI/CD,18,,2022-02-08T05:55:47.000+00:00,2022-02-08T05:56:05.000+00:00
-github:GithubRun:1:1810600613,Tests,SUCCESS,DONE,CI/CD,302,,2022-02-08T05:55:47.000+00:00,2022-02-08T06:00:49.000+00:00
-github:GithubRun:1:1812264576,Tests,FAILURE,DONE,CI/CD,179842,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:32:41.000+00:00
-github:GithubRun:1:1812264578,CodeQL,SUCCESS,DONE,CI/CD,179569,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:28:08.000+00:00
-github:GithubRun:1:1812264584,Lint,SUCCESS,DONE,CI/CD,179530,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:27:29.000+00:00
-github:GithubRun:1:1816294263,CodeQL,SUCCESS,DONE,CI/CD,21675,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:14:40.000+00:00
-github:GithubRun:1:1816294265,Tests,SUCCESS,DONE,CI/CD,21869,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:17:54.000+00:00
-github:GithubRun:1:1816294269,Lint,SUCCESS,DONE,CI/CD,21629,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:13:54.000+00:00
-github:GithubRun:1:1832817740,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-02-12T05:02:46.000+00:00,2022-02-12T05:03:37.000+00:00
-github:GithubRun:1:1840663990,Lint,SUCCESS,DONE,CI/CD,9340,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:44:44.000+00:00
-github:GithubRun:1:1840663991,Tests,SUCCESS,DONE,CI/CD,9610,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:49:14.000+00:00
-github:GithubRun:1:1840663993,CodeQL,SUCCESS,DONE,CI/CD,9375,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:45:19.000+00:00
-github:GithubRun:1:1841409038,Tests,SUCCESS,DONE,CI/CD,2168,,2022-02-14T13:51:44.000+00:00,2022-02-14T14:27:52.000+00:00
-github:GithubRun:1:1841409040,CodeQL,SUCCESS,DONE,CI/CD,67,,2022-02-14T13:51:44.000+00:00,2022-02-14T13:52:51.000+00:00
-github:GithubRun:1:1841409048,Lint,SUCCESS,DONE,CI/CD,31,,2022-02-14T13:51:44.000+00:00,2022-02-14T13:52:15.000+00:00
-github:GithubRun:1:1867842066,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-02-19T05:02:41.000+00:00,2022-02-19T05:03:42.000+00:00
-github:GithubRun:1:1902128007,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-02-26T05:02:53.000+00:00,2022-02-26T05:03:44.000+00:00
-github:GithubRun:1:1937158166,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-03-05T05:02:41.000+00:00,2022-03-05T05:03:35.000+00:00
-github:GithubRun:1:1950331010,Lint,SUCCESS,DONE,CI/CD,47,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:31:07.000+00:00
-github:GithubRun:1:1950331011,Tests,SUCCESS,DONE,CI/CD,1145,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:49:25.000+00:00
-github:GithubRun:1:1950331019,CodeQL,SUCCESS,DONE,CI/CD,76,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:31:36.000+00:00
-github:GithubRun:1:1972322397,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-03-12T05:02:51.000+00:00,2022-03-12T05:03:51.000+00:00
-github:GithubRun:1:2007670039,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-03-19T05:02:45.000+00:00,2022-03-19T05:03:36.000+00:00
-github:GithubRun:1:2043519651,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-03-26T05:02:46.000+00:00,2022-03-26T05:03:40.000+00:00
-github:GithubRun:1:2081030401,CodeQL,SUCCESS,DONE,CI/CD,66,,2022-04-02T05:02:46.000+00:00,2022-04-02T05:03:52.000+00:00
-github:GithubRun:1:2139522011,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-04-09T05:02:46.000+00:00,2022-04-09T05:03:43.000+00:00
-github:GithubRun:1:2175621127,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-04-16T05:02:43.000+00:00,2022-04-16T05:03:37.000+00:00
-github:GithubRun:1:2211310588,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-04-23T05:02:45.000+00:00,2022-04-23T05:03:45.000+00:00
-github:GithubRun:1:2248995623,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-04-30T05:03:07.000+00:00,2022-04-30T05:04:07.000+00:00
-github:GithubRun:1:2282334133,Lint,SUCCESS,DONE,CI/CD,31,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:33:41.000+00:00
-github:GithubRun:1:2282334134,CodeQL,SUCCESS,DONE,CI/CD,173,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:36:03.000+00:00
-github:GithubRun:1:2282334135,Tests,SUCCESS,DONE,CI/CD,374,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:39:24.000+00:00
-github:GithubRun:1:2282376171,CodeQL,SUCCESS,DONE,CI/CD,71,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:42:14.000+00:00
-github:GithubRun:1:2282376176,Lint,SUCCESS,DONE,CI/CD,25,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:41:28.000+00:00
-github:GithubRun:1:2282376177,Tests,SUCCESS,DONE,CI/CD,396,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:47:39.000+00:00
-github:GithubRun:1:2282497585,Lint,SUCCESS,DONE,CI/CD,26,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:05:23.000+00:00
-github:GithubRun:1:2282497589,Tests,SUCCESS,DONE,CI/CD,426,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:12:03.000+00:00
-github:GithubRun:1:2282497593,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:06:06.000+00:00
-github:GithubRun:1:2285329812,CodeQL,SUCCESS,DONE,CI/CD,70,,2022-05-07T05:02:52.000+00:00,2022-05-07T05:04:02.000+00:00
-github:GithubRun:1:2286692492,Tests,SUCCESS,DONE,CI/CD,354,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:51:07.000+00:00
-github:GithubRun:1:2286692493,CodeQL,SUCCESS,DONE,CI/CD,70,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:46:23.000+00:00
-github:GithubRun:1:2286692494,Lint,SUCCESS,DONE,CI/CD,21,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:45:34.000+00:00
-github:GithubRun:1:2323022643,CodeQL,SUCCESS,DONE,CI/CD,64,,2022-05-14T05:28:35.000+00:00,2022-05-14T05:29:39.000+00:00
-github:GithubRun:1:2361997480,CodeQL,SUCCESS,DONE,CI/CD,65,,2022-05-21T05:03:19.000+00:00,2022-05-21T05:04:24.000+00:00
-github:GithubRun:1:2400008940,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-05-28T05:03:27.000+00:00,2022-05-28T05:04:27.000+00:00
-github:GithubRun:1:2438503618,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-06-04T05:02:46.000+00:00,2022-06-04T05:03:55.000+00:00
-github:GithubRun:1:2478834057,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-06-11T05:02:44.000+00:00,2022-06-11T05:03:45.000+00:00
-github:GithubRun:1:2519305981,CodeQL,SUCCESS,DONE,CI/CD,63,,2022-06-18T05:02:42.000+00:00,2022-06-18T05:03:45.000+00:00
-github:GithubRun:1:2559400712,CodeQL,SUCCESS,DONE,CI/CD,116353,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:36:58.000+00:00
-github:GithubRun:1:2559400713,Lint,SUCCESS,DONE,CI/CD,116317,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:36:22.000+00:00
-github:GithubRun:1:2559400714,Tests,SUCCESS,DONE,CI/CD,116619,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:41:24.000+00:00
-github:GithubRun:1:2559507315,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-06-25T05:02:56.000+00:00,2022-06-25T05:03:53.000+00:00
-github:GithubRun:1:2566218975,Tests,SUCCESS,DONE,CI/CD,459,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:37:33.000+00:00
-github:GithubRun:1:2566218976,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:30:55.000+00:00
-github:GithubRun:1:2566218977,Lint,SUCCESS,DONE,CI/CD,34,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:30:28.000+00:00
-github:GithubRun:1:2589885628,Tests,SUCCESS,DONE,CI/CD,91030,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:40:47.000+00:00
-github:GithubRun:1:2589885635,CodeQL,SUCCESS,DONE,CI/CD,90702,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:35:19.000+00:00
-github:GithubRun:1:2589885639,Lint,SUCCESS,DONE,CI/CD,90666,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:34:43.000+00:00
-github:GithubRun:1:2600408985,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-07-02T05:05:26.000+00:00,2022-07-02T05:06:23.000+00:00
-github:GithubRun:1:2639945362,CodeQL,SUCCESS,DONE,CI/CD,64,,2022-07-09T05:02:44.000+00:00,2022-07-09T05:03:48.000+00:00
-github:GithubRun:1:2680721264,CodeQL,SUCCESS,DONE,CI/CD,73,,2022-07-16T05:03:38.000+00:00,2022-07-16T05:04:51.000+00:00
-github:GithubRun:1:2722539966,CodeQL,SUCCESS,DONE,CI/CD,59,,2022-07-23T05:04:59.000+00:00,2022-07-23T05:05:58.000+00:00
-github:GithubRun:1:2764660507,CodeQL,SUCCESS,DONE,CI/CD,58,,2022-07-30T05:06:06.000+00:00,2022-07-30T05:07:04.000+00:00
-github:GithubRun:1:2807709308,CodeQL,SUCCESS,DONE,CI/CD,75,,2022-08-06T05:02:43.000+00:00,2022-08-06T05:03:58.000+00:00
-github:GithubRun:1:2850801364,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-08-13T05:02:51.000+00:00,2022-08-13T05:03:45.000+00:00
-github:GithubRun:1:2893573709,CodeQL,SUCCESS,DONE,CI/CD,77,,2022-08-20T05:04:53.000+00:00,2022-08-20T05:06:10.000+00:00
-github:GithubRun:1:2938072864,CodeQL,SUCCESS,DONE,CI/CD,76,,2022-08-27T05:13:50.000+00:00,2022-08-27T05:15:06.000+00:00
-github:GithubRun:1:2983238245,CodeQL,SUCCESS,DONE,CI/CD,67,,2022-09-03T05:15:09.000+00:00,2022-09-03T05:16:16.000+00:00
+github:GithubRun:1:0:1510490015,Lint,SUCCESS,DONE,CI/CD,17,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:23:41.000+00:00
+github:GithubRun:1:0:1510490016,CodeQL,SUCCESS,DONE,CI/CD,71,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:24:35.000+00:00
+github:GithubRun:1:0:1510490017,Tests,SUCCESS,DONE,CI/CD,235,,2021-11-27T12:23:24.000+00:00,2021-11-27T12:27:19.000+00:00
+github:GithubRun:1:0:1538144096,CodeQL,SUCCESS,DONE,CI/CD,77,,2021-12-04T05:02:53.000+00:00,2021-12-04T05:04:10.000+00:00
+github:GithubRun:1:0:1566272785,CodeQL,SUCCESS,DONE,CI/CD,63,,2021-12-11T05:02:42.000+00:00,2021-12-11T05:03:45.000+00:00
+github:GithubRun:1:0:1595162148,CodeQL,SUCCESS,DONE,CI/CD,75,,2021-12-18T05:02:52.000+00:00,2021-12-18T05:04:07.000+00:00
+github:GithubRun:1:0:1621008599,CodeQL,SUCCESS,DONE,CI/CD,72,,2021-12-25T05:03:09.000+00:00,2021-12-25T05:04:21.000+00:00
+github:GithubRun:1:0:1642642803,CodeQL,SUCCESS,DONE,CI/CD,55,,2022-01-01T05:03:22.000+00:00,2022-01-01T05:04:17.000+00:00
+github:GithubRun:1:0:1670481057,CodeQL,SUCCESS,DONE,CI/CD,58,,2022-01-08T05:03:52.000+00:00,2022-01-08T05:04:50.000+00:00
+github:GithubRun:1:0:1671012485,CodeQL,SUCCESS,DONE,CI/CD,276305,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:51:43.000+00:00
+github:GithubRun:1:0:1671012486,Lint,SUCCESS,DONE,CI/CD,276263,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:51:01.000+00:00
+github:GithubRun:1:0:1671012489,Tests,SUCCESS,DONE,CI/CD,276469,,2022-01-08T10:06:38.000+00:00,2022-01-11T14:54:27.000+00:00
+github:GithubRun:1:0:1700729209,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-01-15T05:04:01.000+00:00,2022-01-15T05:05:10.000+00:00
+github:GithubRun:1:0:1732056958,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-01-22T05:02:47.000+00:00,2022-01-22T05:03:41.000+00:00
+github:GithubRun:1:0:1764901182,CodeQL,SUCCESS,DONE,CI/CD,56,,2022-01-29T05:02:40.000+00:00,2022-01-29T05:03:36.000+00:00
+github:GithubRun:1:0:1765240396,CodeQL,SUCCESS,DONE,CI/CD,89386,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:51:13.000+00:00
+github:GithubRun:1:0:1765240397,Lint,SUCCESS,DONE,CI/CD,89351,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:50:38.000+00:00
+github:GithubRun:1:0:1765240399,Tests,SUCCESS,DONE,CI/CD,89617,,2022-01-29T08:01:27.000+00:00,2022-01-30T08:55:04.000+00:00
+github:GithubRun:1:0:1770578332,Tests,SUCCESS,DONE,CI/CD,254,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:53:20.000+00:00
+github:GithubRun:1:0:1770578333,Lint,SUCCESS,DONE,CI/CD,30,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:49:36.000+00:00
+github:GithubRun:1:0:1770578335,CodeQL,SUCCESS,DONE,CI/CD,71,,2022-01-31T02:49:06.000+00:00,2022-01-31T02:50:17.000+00:00
+github:GithubRun:1:0:1798456849,CodeQL,SUCCESS,DONE,CI/CD,55,,2022-02-05T05:02:46.000+00:00,2022-02-05T05:03:41.000+00:00
+github:GithubRun:1:0:1806210136,Lint,SUCCESS,DONE,CI/CD,54670,,2022-02-07T11:45:31.000+00:00,2022-02-08T02:56:41.000+00:00
+github:GithubRun:1:0:1806210139,Tests,SUCCESS,DONE,CI/CD,54949,,2022-02-07T11:45:31.000+00:00,2022-02-08T03:01:20.000+00:00
+github:GithubRun:1:0:1806210142,CodeQL,SUCCESS,DONE,CI/CD,54718,,2022-02-07T11:45:31.000+00:00,2022-02-08T02:57:29.000+00:00
+github:GithubRun:1:0:1810596639,Tests,SUCCESS,DONE,CI/CD,264,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:58:14.000+00:00
+github:GithubRun:1:0:1810596640,CodeQL,SUCCESS,DONE,CI/CD,62,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:54:52.000+00:00
+github:GithubRun:1:0:1810596641,Lint,FAILURE,DONE,CI/CD,24,,2022-02-08T05:53:50.000+00:00,2022-02-08T05:54:14.000+00:00
+github:GithubRun:1:0:1810600610,CodeQL,SUCCESS,DONE,CI/CD,65,,2022-02-08T05:55:47.000+00:00,2022-02-08T05:56:52.000+00:00
+github:GithubRun:1:0:1810600611,Lint,SUCCESS,DONE,CI/CD,18,,2022-02-08T05:55:47.000+00:00,2022-02-08T05:56:05.000+00:00
+github:GithubRun:1:0:1810600613,Tests,SUCCESS,DONE,CI/CD,302,,2022-02-08T05:55:47.000+00:00,2022-02-08T06:00:49.000+00:00
+github:GithubRun:1:0:1812264576,Tests,FAILURE,DONE,CI/CD,179842,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:32:41.000+00:00
+github:GithubRun:1:0:1812264578,CodeQL,SUCCESS,DONE,CI/CD,179569,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:28:08.000+00:00
+github:GithubRun:1:0:1812264584,Lint,SUCCESS,DONE,CI/CD,179530,,2022-02-08T12:35:19.000+00:00,2022-02-10T14:27:29.000+00:00
+github:GithubRun:1:0:1816294263,CodeQL,SUCCESS,DONE,CI/CD,21675,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:14:40.000+00:00
+github:GithubRun:1:0:1816294265,Tests,SUCCESS,DONE,CI/CD,21869,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:17:54.000+00:00
+github:GithubRun:1:0:1816294269,Lint,SUCCESS,DONE,CI/CD,21629,,2022-02-09T05:13:25.000+00:00,2022-02-09T11:13:54.000+00:00
+github:GithubRun:1:0:1832817740,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-02-12T05:02:46.000+00:00,2022-02-12T05:03:37.000+00:00
+github:GithubRun:1:0:1840663990,Lint,SUCCESS,DONE,CI/CD,9340,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:44:44.000+00:00
+github:GithubRun:1:0:1840663991,Tests,SUCCESS,DONE,CI/CD,9610,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:49:14.000+00:00
+github:GithubRun:1:0:1840663993,CodeQL,SUCCESS,DONE,CI/CD,9375,,2022-02-14T11:09:04.000+00:00,2022-02-14T13:45:19.000+00:00
+github:GithubRun:1:0:1841409038,Tests,SUCCESS,DONE,CI/CD,2168,,2022-02-14T13:51:44.000+00:00,2022-02-14T14:27:52.000+00:00
+github:GithubRun:1:0:1841409040,CodeQL,SUCCESS,DONE,CI/CD,67,,2022-02-14T13:51:44.000+00:00,2022-02-14T13:52:51.000+00:00
+github:GithubRun:1:0:1841409048,Lint,SUCCESS,DONE,CI/CD,31,,2022-02-14T13:51:44.000+00:00,2022-02-14T13:52:15.000+00:00
+github:GithubRun:1:0:1867842066,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-02-19T05:02:41.000+00:00,2022-02-19T05:03:42.000+00:00
+github:GithubRun:1:0:1902128007,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-02-26T05:02:53.000+00:00,2022-02-26T05:03:44.000+00:00
+github:GithubRun:1:0:1937158166,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-03-05T05:02:41.000+00:00,2022-03-05T05:03:35.000+00:00
+github:GithubRun:1:0:1950331010,Lint,SUCCESS,DONE,CI/CD,47,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:31:07.000+00:00
+github:GithubRun:1:0:1950331011,Tests,SUCCESS,DONE,CI/CD,1145,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:49:25.000+00:00
+github:GithubRun:1:0:1950331019,CodeQL,SUCCESS,DONE,CI/CD,76,,2022-03-08T08:30:20.000+00:00,2022-03-08T08:31:36.000+00:00
+github:GithubRun:1:0:1972322397,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-03-12T05:02:51.000+00:00,2022-03-12T05:03:51.000+00:00
+github:GithubRun:1:0:2007670039,CodeQL,SUCCESS,DONE,CI/CD,51,,2022-03-19T05:02:45.000+00:00,2022-03-19T05:03:36.000+00:00
+github:GithubRun:1:0:2043519651,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-03-26T05:02:46.000+00:00,2022-03-26T05:03:40.000+00:00
+github:GithubRun:1:0:2081030401,CodeQL,SUCCESS,DONE,CI/CD,66,,2022-04-02T05:02:46.000+00:00,2022-04-02T05:03:52.000+00:00
+github:GithubRun:1:0:2139522011,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-04-09T05:02:46.000+00:00,2022-04-09T05:03:43.000+00:00
+github:GithubRun:1:0:2175621127,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-04-16T05:02:43.000+00:00,2022-04-16T05:03:37.000+00:00
+github:GithubRun:1:0:2211310588,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-04-23T05:02:45.000+00:00,2022-04-23T05:03:45.000+00:00
+github:GithubRun:1:0:2248995623,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-04-30T05:03:07.000+00:00,2022-04-30T05:04:07.000+00:00
+github:GithubRun:1:0:2282334133,Lint,SUCCESS,DONE,CI/CD,31,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:33:41.000+00:00
+github:GithubRun:1:0:2282334134,CodeQL,SUCCESS,DONE,CI/CD,173,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:36:03.000+00:00
+github:GithubRun:1:0:2282334135,Tests,SUCCESS,DONE,CI/CD,374,,2022-05-06T14:33:10.000+00:00,2022-05-06T14:39:24.000+00:00
+github:GithubRun:1:0:2282376171,CodeQL,SUCCESS,DONE,CI/CD,71,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:42:14.000+00:00
+github:GithubRun:1:0:2282376176,Lint,SUCCESS,DONE,CI/CD,25,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:41:28.000+00:00
+github:GithubRun:1:0:2282376177,Tests,SUCCESS,DONE,CI/CD,396,,2022-05-06T14:41:03.000+00:00,2022-05-06T14:47:39.000+00:00
+github:GithubRun:1:0:2282497585,Lint,SUCCESS,DONE,CI/CD,26,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:05:23.000+00:00
+github:GithubRun:1:0:2282497589,Tests,SUCCESS,DONE,CI/CD,426,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:12:03.000+00:00
+github:GithubRun:1:0:2282497593,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-05-06T15:04:57.000+00:00,2022-05-06T15:06:06.000+00:00
+github:GithubRun:1:0:2285329812,CodeQL,SUCCESS,DONE,CI/CD,70,,2022-05-07T05:02:52.000+00:00,2022-05-07T05:04:02.000+00:00
+github:GithubRun:1:0:2286692492,Tests,SUCCESS,DONE,CI/CD,354,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:51:07.000+00:00
+github:GithubRun:1:0:2286692493,CodeQL,SUCCESS,DONE,CI/CD,70,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:46:23.000+00:00
+github:GithubRun:1:0:2286692494,Lint,SUCCESS,DONE,CI/CD,21,,2022-05-07T14:45:13.000+00:00,2022-05-07T14:45:34.000+00:00
+github:GithubRun:1:0:2323022643,CodeQL,SUCCESS,DONE,CI/CD,64,,2022-05-14T05:28:35.000+00:00,2022-05-14T05:29:39.000+00:00
+github:GithubRun:1:0:2361997480,CodeQL,SUCCESS,DONE,CI/CD,65,,2022-05-21T05:03:19.000+00:00,2022-05-21T05:04:24.000+00:00
+github:GithubRun:1:0:2400008940,CodeQL,SUCCESS,DONE,CI/CD,60,,2022-05-28T05:03:27.000+00:00,2022-05-28T05:04:27.000+00:00
+github:GithubRun:1:0:2438503618,CodeQL,SUCCESS,DONE,CI/CD,69,,2022-06-04T05:02:46.000+00:00,2022-06-04T05:03:55.000+00:00
+github:GithubRun:1:0:2478834057,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-06-11T05:02:44.000+00:00,2022-06-11T05:03:45.000+00:00
+github:GithubRun:1:0:2519305981,CodeQL,SUCCESS,DONE,CI/CD,63,,2022-06-18T05:02:42.000+00:00,2022-06-18T05:03:45.000+00:00
+github:GithubRun:1:0:2559400712,CodeQL,SUCCESS,DONE,CI/CD,116353,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:36:58.000+00:00
+github:GithubRun:1:0:2559400713,Lint,SUCCESS,DONE,CI/CD,116317,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:36:22.000+00:00
+github:GithubRun:1:0:2559400714,Tests,SUCCESS,DONE,CI/CD,116619,,2022-06-25T04:17:45.000+00:00,2022-06-26T12:41:24.000+00:00
+github:GithubRun:1:0:2559507315,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-06-25T05:02:56.000+00:00,2022-06-25T05:03:53.000+00:00
+github:GithubRun:1:0:2566218975,Tests,SUCCESS,DONE,CI/CD,459,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:37:33.000+00:00
+github:GithubRun:1:0:2566218976,CodeQL,SUCCESS,DONE,CI/CD,61,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:30:55.000+00:00
+github:GithubRun:1:0:2566218977,Lint,SUCCESS,DONE,CI/CD,34,,2022-06-27T01:29:54.000+00:00,2022-06-27T01:30:28.000+00:00
+github:GithubRun:1:0:2589885628,Tests,SUCCESS,DONE,CI/CD,91030,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:40:47.000+00:00
+github:GithubRun:1:0:2589885635,CodeQL,SUCCESS,DONE,CI/CD,90702,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:35:19.000+00:00
+github:GithubRun:1:0:2589885639,Lint,SUCCESS,DONE,CI/CD,90666,,2022-06-30T12:23:37.000+00:00,2022-07-01T13:34:43.000+00:00
+github:GithubRun:1:0:2600408985,CodeQL,SUCCESS,DONE,CI/CD,57,,2022-07-02T05:05:26.000+00:00,2022-07-02T05:06:23.000+00:00
+github:GithubRun:1:0:2639945362,CodeQL,SUCCESS,DONE,CI/CD,64,,2022-07-09T05:02:44.000+00:00,2022-07-09T05:03:48.000+00:00
+github:GithubRun:1:0:2680721264,CodeQL,SUCCESS,DONE,CI/CD,73,,2022-07-16T05:03:38.000+00:00,2022-07-16T05:04:51.000+00:00
+github:GithubRun:1:0:2722539966,CodeQL,SUCCESS,DONE,CI/CD,59,,2022-07-23T05:04:59.000+00:00,2022-07-23T05:05:58.000+00:00
+github:GithubRun:1:0:2764660507,CodeQL,SUCCESS,DONE,CI/CD,58,,2022-07-30T05:06:06.000+00:00,2022-07-30T05:07:04.000+00:00
+github:GithubRun:1:0:2807709308,CodeQL,SUCCESS,DONE,CI/CD,75,,2022-08-06T05:02:43.000+00:00,2022-08-06T05:03:58.000+00:00
+github:GithubRun:1:0:2850801364,CodeQL,SUCCESS,DONE,CI/CD,54,,2022-08-13T05:02:51.000+00:00,2022-08-13T05:03:45.000+00:00
+github:GithubRun:1:0:2893573709,CodeQL,SUCCESS,DONE,CI/CD,77,,2022-08-20T05:04:53.000+00:00,2022-08-20T05:06:10.000+00:00
+github:GithubRun:1:0:2938072864,CodeQL,SUCCESS,DONE,CI/CD,76,,2022-08-27T05:13:50.000+00:00,2022-08-27T05:15:06.000+00:00
+github:GithubRun:1:0:2983238245,CodeQL,SUCCESS,DONE,CI/CD,67,,2022-09-03T05:15:09.000+00:00,2022-09-03T05:16:16.000+00:00
diff --git a/plugins/github/e2e/snapshot_tables/cicd_tasks.csv b/plugins/github/e2e/snapshot_tables/cicd_tasks.csv
index 4953c5e4..e641c604 100644
--- a/plugins/github/e2e/snapshot_tables/cicd_tasks.csv
+++ b/plugins/github/e2e/snapshot_tables/cicd_tasks.csv
@@ -1,96 +1,96 @@
 id,name,pipeline_id,result,status,type,duration_sec,started_date,finished_date
-github:GithubJob:1:1924918168,Golangci-Lint,,SUCCESS,DONE,,20,2021-02-18T06:59:13.000+00:00,2021-02-18T06:59:33.000+00:00
-github:GithubJob:1:1924918171,"Go-Test (1.14.x, ubuntu-latest)",,ABORT,DONE,,125,2021-02-18T06:59:13.000+00:00,2021-02-18T07:01:18.000+00:00
-github:GithubJob:1:1924918191,"Go-Test (1.14.x, macos-latest)",,ABORT,DONE,,117,2021-02-18T06:59:21.000+00:00,2021-02-18T07:01:18.000+00:00
-github:GithubJob:1:1924918205,"Go-Test (1.14.x, windows-latest)",,ABORT,DONE,,114,2021-02-18T06:59:15.000+00:00,2021-02-18T07:01:09.000+00:00
-github:GithubJob:1:1924918228,"Go-Test (1.15.x, ubuntu-latest)",,ABORT,DONE,,125,2021-02-18T06:59:13.000+00:00,2021-02-18T07:01:18.000+00:00
-github:GithubJob:1:1924918243,"Go-Test (1.15.x, macos-latest)",,ABORT,DONE,,119,2021-02-18T06:59:19.000+00:00,2021-02-18T07:01:18.000+00:00
-github:GithubJob:1:1924918261,"Go-Test (1.15.x, windows-latest)",,ABORT,DONE,,114,2021-02-18T06:59:15.000+00:00,2021-02-18T07:01:09.000+00:00
-github:GithubJob:1:1924918319,Analyze,,SUCCESS,DONE,,61,2021-02-18T06:59:16.000+00:00,2021-02-18T07:00:17.000+00:00
-github:GithubJob:1:1924932184,Analyze,,SUCCESS,DONE,,54,2021-02-18T07:02:02.000+00:00,2021-02-18T07:02:56.000+00:00
-github:GithubJob:1:1924932219,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,180,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:03.000+00:00
-github:GithubJob:1:1924932237,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,158,2021-02-18T07:02:06.000+00:00,2021-02-18T07:04:44.000+00:00
-github:GithubJob:1:1924932251,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,234,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:57.000+00:00
-github:GithubJob:1:1924932263,Golangci-Lint,,SUCCESS,DONE,,14,2021-02-18T07:02:05.000+00:00,2021-02-18T07:02:19.000+00:00
-github:GithubJob:1:1924932266,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,161,2021-02-18T07:02:03.000+00:00,2021-02-18T07:04:44.000+00:00
-github:GithubJob:1:1924932293,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,158,2021-02-18T07:02:06.000+00:00,2021-02-18T07:04:44.000+00:00
-github:GithubJob:1:1924932319,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,230,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:53.000+00:00
-github:GithubJob:1:1940449839,Analyze,,SUCCESS,DONE,,55,2021-02-20T05:10:17.000+00:00,2021-02-20T05:11:12.000+00:00
-github:GithubJob:1:1992620044,Analyze,,SUCCESS,DONE,,61,2021-02-27T05:10:19.000+00:00,2021-02-27T05:11:20.000+00:00
-github:GithubJob:1:2011825630,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,181,2021-03-02T09:24:49.000+00:00,2021-03-02T09:27:50.000+00:00
-github:GithubJob:1:2011825633,Analyze,,SUCCESS,DONE,,60,2021-03-02T09:24:49.000+00:00,2021-03-02T09:25:49.000+00:00
-github:GithubJob:1:2011825638,Golangci-Lint,,SUCCESS,DONE,,22,2021-03-02T09:24:49.000+00:00,2021-03-02T09:25:11.000+00:00
-github:GithubJob:1:2011825657,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,153,2021-03-02T09:24:54.000+00:00,2021-03-02T09:27:27.000+00:00
-github:GithubJob:1:2011825681,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,217,2021-03-02T09:24:49.000+00:00,2021-03-02T09:28:26.000+00:00
-github:GithubJob:1:2011825698,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,166,2021-03-02T09:24:50.000+00:00,2021-03-02T09:27:36.000+00:00
-github:GithubJob:1:2011825717,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,164,2021-03-02T09:24:56.000+00:00,2021-03-02T09:27:40.000+00:00
-github:GithubJob:1:2011825736,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,216,2021-03-02T09:24:49.000+00:00,2021-03-02T09:28:25.000+00:00
-github:GithubJob:1:2044931365,Analyze,,SUCCESS,DONE,,57,2021-03-06T05:10:19.000+00:00,2021-03-06T05:11:16.000+00:00
-github:GithubJob:1:2049618985,"Go-Test (1.14.x, ubuntu-latest)",,FAILURE,DONE,,109,2021-03-07T08:01:22.000+00:00,2021-03-07T08:03:11.000+00:00
-github:GithubJob:1:2049618986,Golangci-Lint,,SUCCESS,DONE,,18,2021-03-07T08:00:58.000+00:00,2021-03-07T08:01:16.000+00:00
-github:GithubJob:1:2049618988,Analyze,,SUCCESS,DONE,,60,2021-03-07T08:00:57.000+00:00,2021-03-07T08:01:57.000+00:00
-github:GithubJob:1:2049618992,"Go-Test (1.14.x, macos-latest)",,FAILURE,DONE,,116,2021-03-07T08:01:02.000+00:00,2021-03-07T08:02:58.000+00:00
-github:GithubJob:1:2049619000,"Go-Test (1.14.x, windows-latest)",,FAILURE,DONE,,199,2021-03-07T08:00:58.000+00:00,2021-03-07T08:04:17.000+00:00
-github:GithubJob:1:2049619011,"Go-Test (1.15.x, ubuntu-latest)",,FAILURE,DONE,,107,2021-03-07T08:00:58.000+00:00,2021-03-07T08:02:45.000+00:00
-github:GithubJob:1:2049619022,"Go-Test (1.15.x, macos-latest)",,FAILURE,DONE,,128,2021-03-07T08:01:01.000+00:00,2021-03-07T08:03:09.000+00:00
-github:GithubJob:1:2049619033,"Go-Test (1.15.x, windows-latest)",,FAILURE,DONE,,159,2021-03-07T08:00:58.000+00:00,2021-03-07T08:03:37.000+00:00
-github:GithubJob:1:2100809445,Analyze,,SUCCESS,DONE,,55,2021-03-13T05:11:14.000+00:00,2021-03-13T05:12:09.000+00:00
-github:GithubJob:1:2139659895,Golangci-Lint,,SUCCESS,DONE,,23,2021-03-18T12:39:23.000+00:00,2021-03-18T12:39:46.000+00:00
-github:GithubJob:1:2139659897,Analyze,,SUCCESS,DONE,,71,2021-03-18T12:39:24.000+00:00,2021-03-18T12:40:35.000+00:00
-github:GithubJob:1:2139659898,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,177,2021-03-18T12:39:23.000+00:00,2021-03-18T12:42:20.000+00:00
-github:GithubJob:1:2139659913,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,171,2021-03-18T12:39:28.000+00:00,2021-03-18T12:42:19.000+00:00
-github:GithubJob:1:2139659939,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,250,2021-03-18T12:39:25.000+00:00,2021-03-18T12:43:35.000+00:00
-github:GithubJob:1:2139659957,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,177,2021-03-18T12:39:24.000+00:00,2021-03-18T12:42:21.000+00:00
-github:GithubJob:1:2139659983,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,168,2021-03-18T12:39:27.000+00:00,2021-03-18T12:42:15.000+00:00
-github:GithubJob:1:2139660015,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,245,2021-03-18T12:39:23.000+00:00,2021-03-18T12:43:28.000+00:00
-github:GithubJob:1:2140277556,Analyze,,SUCCESS,DONE,,63,2021-03-18T14:01:28.000+00:00,2021-03-18T14:02:31.000+00:00
-github:GithubJob:1:2140277564,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,182,2021-03-18T14:01:28.000+00:00,2021-03-18T14:04:30.000+00:00
-github:GithubJob:1:2140277615,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,184,2021-03-18T14:01:37.000+00:00,2021-03-18T14:04:41.000+00:00
-github:GithubJob:1:2140277672,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,300,2021-03-18T14:01:31.000+00:00,2021-03-18T14:06:31.000+00:00
-github:GithubJob:1:2140277741,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,188,2021-03-18T14:01:29.000+00:00,2021-03-18T14:04:37.000+00:00
-github:GithubJob:1:2140277802,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,188,2021-03-18T14:01:35.000+00:00,2021-03-18T14:04:43.000+00:00
-github:GithubJob:1:2140277855,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,256,2021-03-18T14:01:30.000+00:00,2021-03-18T14:05:46.000+00:00
-github:GithubJob:1:2140277952,Golangci-Lint,,SUCCESS,DONE,,39,2021-03-18T14:01:29.000+00:00,2021-03-18T14:02:08.000+00:00
-github:GithubJob:1:2141957365,Golangci-Lint,,SUCCESS,DONE,,17,2021-03-18T17:22:14.000+00:00,2021-03-18T17:22:31.000+00:00
-github:GithubJob:1:2141957370,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,192,2021-03-18T17:22:16.000+00:00,2021-03-18T17:25:28.000+00:00
-github:GithubJob:1:2141957394,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,296,2021-03-18T17:22:25.000+00:00,2021-03-18T17:27:21.000+00:00
-github:GithubJob:1:2141957432,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,278,2021-03-18T17:22:16.000+00:00,2021-03-18T17:26:54.000+00:00
-github:GithubJob:1:2141957483,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,185,2021-03-18T17:22:15.000+00:00,2021-03-18T17:25:20.000+00:00
-github:GithubJob:1:2141957507,Analyze,,SUCCESS,DONE,,53,2021-03-18T17:22:17.000+00:00,2021-03-18T17:23:10.000+00:00
-github:GithubJob:1:2141957508,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,179,2021-03-18T17:22:20.000+00:00,2021-03-18T17:25:19.000+00:00
-github:GithubJob:1:2141957531,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,264,2021-03-18T17:22:17.000+00:00,2021-03-18T17:26:41.000+00:00
-github:GithubJob:1:2141986818,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,195,2021-03-18T17:25:53.000+00:00,2021-03-18T17:29:08.000+00:00
-github:GithubJob:1:2141986822,Analyze,,SUCCESS,DONE,,69,2021-03-18T17:25:56.000+00:00,2021-03-18T17:27:05.000+00:00
-github:GithubJob:1:2141986831,Golangci-Lint,,SUCCESS,DONE,,12,2021-03-18T17:25:55.000+00:00,2021-03-18T17:26:07.000+00:00
-github:GithubJob:1:2141986849,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,247,2021-03-18T17:26:03.000+00:00,2021-03-18T17:30:10.000+00:00
-github:GithubJob:1:2141986875,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,228,2021-03-18T17:25:54.000+00:00,2021-03-18T17:29:42.000+00:00
-github:GithubJob:1:2141986909,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,188,2021-03-18T17:25:55.000+00:00,2021-03-18T17:29:03.000+00:00
-github:GithubJob:1:2141986930,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,180,2021-03-18T17:25:59.000+00:00,2021-03-18T17:28:59.000+00:00
-github:GithubJob:1:2141986956,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,255,2021-03-18T17:25:56.000+00:00,2021-03-18T17:30:11.000+00:00
-github:GithubJob:1:2154069534,Analyze,,SUCCESS,DONE,,63,2021-03-20T05:12:41.000+00:00,2021-03-20T05:13:44.000+00:00
-github:GithubJob:1:2207063422,Analyze,,SUCCESS,DONE,,55,2021-03-27T05:07:33.000+00:00,2021-03-27T05:08:28.000+00:00
-github:GithubJob:1:2212794575,"Go-Test (1.14.x, ubuntu-latest)",,SUCCESS,DONE,,188,2021-03-28T14:38:22.000+00:00,2021-03-28T14:41:30.000+00:00
-github:GithubJob:1:2212794576,Golangci-Lint,,SUCCESS,DONE,,16,2021-03-28T14:38:22.000+00:00,2021-03-28T14:38:38.000+00:00
-github:GithubJob:1:2212794582,Analyze,,SUCCESS,DONE,,55,2021-03-28T14:38:19.000+00:00,2021-03-28T14:39:14.000+00:00
-github:GithubJob:1:2212794589,"Go-Test (1.14.x, macos-latest)",,SUCCESS,DONE,,213,2021-03-28T14:38:26.000+00:00,2021-03-28T14:41:59.000+00:00
-github:GithubJob:1:2212794606,"Go-Test (1.14.x, windows-latest)",,SUCCESS,DONE,,234,2021-03-28T14:38:21.000+00:00,2021-03-28T14:42:15.000+00:00
-github:GithubJob:1:2212794619,"Go-Test (1.15.x, ubuntu-latest)",,SUCCESS,DONE,,186,2021-03-28T14:38:22.000+00:00,2021-03-28T14:41:28.000+00:00
-github:GithubJob:1:2212794635,"Go-Test (1.15.x, macos-latest)",,SUCCESS,DONE,,216,2021-03-28T14:38:24.000+00:00,2021-03-28T14:42:00.000+00:00
-github:GithubJob:1:2212794652,"Go-Test (1.15.x, windows-latest)",,SUCCESS,DONE,,236,2021-03-28T14:38:22.000+00:00,2021-03-28T14:42:18.000+00:00
-github:GithubJob:1:2250712872,Analyze,,SUCCESS,DONE,,69,2021-04-02T01:16:32.000+00:00,2021-04-02T01:17:41.000+00:00
-github:GithubJob:1:2250712896,Golangci-Lint,,FAILURE,DONE,,18,2021-04-02T01:16:32.000+00:00,2021-04-02T01:16:50.000+00:00
-github:GithubJob:1:2250712899,"Go-Test (1.14.x, ubuntu-latest)",,FAILURE,DONE,,187,2021-04-02T01:16:33.000+00:00,2021-04-02T01:19:40.000+00:00
-github:GithubJob:1:2250712910,"Go-Test (1.14.x, macos-latest)",,FAILURE,DONE,,167,2021-04-02T02:00:51.000+00:00,2021-04-02T02:03:38.000+00:00
-github:GithubJob:1:2250712927,"Go-Test (1.14.x, windows-latest)",,FAILURE,DONE,,239,2021-04-02T01:16:32.000+00:00,2021-04-02T01:20:31.000+00:00
-github:GithubJob:1:2250712932,"Go-Test (1.15.x, ubuntu-latest)",,FAILURE,DONE,,183,2021-04-02T01:16:34.000+00:00,2021-04-02T01:19:37.000+00:00
-github:GithubJob:1:2250712953,"Go-Test (1.15.x, macos-latest)",,FAILURE,DONE,,212,2021-04-02T01:48:22.000+00:00,2021-04-02T01:51:54.000+00:00
-github:GithubJob:1:2250712961,"Go-Test (1.15.x, windows-latest)",,FAILURE,DONE,,269,2021-04-02T01:16:33.000+00:00,2021-04-02T01:21:02.000+00:00
-github:GithubJob:1:2251114320,"Go-Test (1.14.x, ubuntu-latest)",,FAILURE,DONE,,180,2021-04-02T02:54:55.000+00:00,2021-04-02T02:57:55.000+00:00
-github:GithubJob:1:2251114337,"Go-Test (1.14.x, macos-latest)",,FAILURE,DONE,,0,2021-04-02T03:39:50.000+00:00,2021-04-02T03:39:50.000+00:00
-github:GithubJob:1:2251114355,"Go-Test (1.14.x, windows-latest)",,FAILURE,DONE,,235,2021-04-02T02:54:54.000+00:00,2021-04-02T02:58:49.000+00:00
-github:GithubJob:1:2251114368,"Go-Test (1.15.x, ubuntu-latest)",,FAILURE,DONE,,183,2021-04-02T02:54:57.000+00:00,2021-04-02T02:58:00.000+00:00
-github:GithubJob:1:2251114384,"Go-Test (1.15.x, macos-latest)",,FAILURE,DONE,,215,2021-04-02T02:55:08.000+00:00,2021-04-02T02:58:43.000+00:00
-github:GithubJob:1:2251114396,"Go-Test (1.15.x, windows-latest)",,FAILURE,DONE,,245,2021-04-02T02:54:56.000+00:00,2021-04-02T02:59:01.000+00:00
-github:GithubJob:1:2251114399,Analyze,,SUCCESS,DONE,,57,2021-04-02T02:54:57.000+00:00,2021-04-02T02:55:54.000+00:00
-github:GithubJob:1:2251114401,Golangci-Lint,,SUCCESS,DONE,,14,2021-04-02T02:54:58.000+00:00,2021-04-02T02:55:12.000+00:00
-github:GithubJob:1:2251292479,"Go-Test (1.14.x, macos-latest)",,FAILURE,DONE,,157,2021-04-02T03:40:08.000+00:00,2021-04-02T03:42:45.000+00:00
+github:GithubJob:1:577324554:1924918171,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,125,2021-02-18T06:59:13.000+00:00,2021-02-18T07:01:18.000+00:00
+github:GithubJob:1:577324554:1924918191,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,117,2021-02-18T06:59:21.000+00:00,2021-02-18T07:01:18.000+00:00
+github:GithubJob:1:577324554:1924918205,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,114,2021-02-18T06:59:15.000+00:00,2021-02-18T07:01:09.000+00:00
+github:GithubJob:1:577324554:1924918228,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,125,2021-02-18T06:59:13.000+00:00,2021-02-18T07:01:18.000+00:00
+github:GithubJob:1:577324554:1924918243,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,119,2021-02-18T06:59:19.000+00:00,2021-02-18T07:01:18.000+00:00
+github:GithubJob:1:577324554:1924918261,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:577324554,ABORT,DONE,,114,2021-02-18T06:59:15.000+00:00,2021-02-18T07:01:09.000+00:00
+github:GithubJob:1:577324558:1924918168,Golangci-Lint,github:GithubRun:1:134018330:577324558,SUCCESS,DONE,,20,2021-02-18T06:59:13.000+00:00,2021-02-18T06:59:33.000+00:00
+github:GithubJob:1:577324571:1924918319,Analyze,github:GithubRun:1:134018330:577324571,SUCCESS,DONE,,61,2021-02-18T06:59:16.000+00:00,2021-02-18T07:00:17.000+00:00
+github:GithubJob:1:577330055:1924932184,Analyze,github:GithubRun:1:134018330:577330055,SUCCESS,DONE,,54,2021-02-18T07:02:02.000+00:00,2021-02-18T07:02:56.000+00:00
+github:GithubJob:1:577330056:1924932219,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,180,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:03.000+00:00
+github:GithubJob:1:577330056:1924932237,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,158,2021-02-18T07:02:06.000+00:00,2021-02-18T07:04:44.000+00:00
+github:GithubJob:1:577330056:1924932251,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,234,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:57.000+00:00
+github:GithubJob:1:577330056:1924932266,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,161,2021-02-18T07:02:03.000+00:00,2021-02-18T07:04:44.000+00:00
+github:GithubJob:1:577330056:1924932293,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,158,2021-02-18T07:02:06.000+00:00,2021-02-18T07:04:44.000+00:00
+github:GithubJob:1:577330056:1924932319,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:577330056,SUCCESS,DONE,,230,2021-02-18T07:02:03.000+00:00,2021-02-18T07:05:53.000+00:00
+github:GithubJob:1:577330057:1924932263,Golangci-Lint,github:GithubRun:1:134018330:577330057,SUCCESS,DONE,,14,2021-02-18T07:02:05.000+00:00,2021-02-18T07:02:19.000+00:00
+github:GithubJob:1:583528173:1940449839,Analyze,github:GithubRun:1:134018330:583528173,SUCCESS,DONE,,55,2021-02-20T05:10:17.000+00:00,2021-02-20T05:11:12.000+00:00
+github:GithubJob:1:604839350:1992620044,Analyze,github:GithubRun:1:134018330:604839350,SUCCESS,DONE,,61,2021-02-27T05:10:19.000+00:00,2021-02-27T05:11:20.000+00:00
+github:GithubJob:1:613518923:2011825638,Golangci-Lint,github:GithubRun:1:134018330:613518923,SUCCESS,DONE,,22,2021-03-02T09:24:49.000+00:00,2021-03-02T09:25:11.000+00:00
+github:GithubJob:1:613518930:2011825630,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,181,2021-03-02T09:24:49.000+00:00,2021-03-02T09:27:50.000+00:00
+github:GithubJob:1:613518930:2011825657,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,153,2021-03-02T09:24:54.000+00:00,2021-03-02T09:27:27.000+00:00
+github:GithubJob:1:613518930:2011825681,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,217,2021-03-02T09:24:49.000+00:00,2021-03-02T09:28:26.000+00:00
+github:GithubJob:1:613518930:2011825698,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,166,2021-03-02T09:24:50.000+00:00,2021-03-02T09:27:36.000+00:00
+github:GithubJob:1:613518930:2011825717,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,164,2021-03-02T09:24:56.000+00:00,2021-03-02T09:27:40.000+00:00
+github:GithubJob:1:613518930:2011825736,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:613518930,SUCCESS,DONE,,216,2021-03-02T09:24:49.000+00:00,2021-03-02T09:28:25.000+00:00
+github:GithubJob:1:613518931:2011825633,Analyze,github:GithubRun:1:134018330:613518931,SUCCESS,DONE,,60,2021-03-02T09:24:49.000+00:00,2021-03-02T09:25:49.000+00:00
+github:GithubJob:1:626560753:2044931365,Analyze,github:GithubRun:1:134018330:626560753,SUCCESS,DONE,,57,2021-03-06T05:10:19.000+00:00,2021-03-06T05:11:16.000+00:00
+github:GithubJob:1:629052087:2049618985,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,109,2021-03-07T08:01:22.000+00:00,2021-03-07T08:03:11.000+00:00
+github:GithubJob:1:629052087:2049618992,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,116,2021-03-07T08:01:02.000+00:00,2021-03-07T08:02:58.000+00:00
+github:GithubJob:1:629052087:2049619000,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,199,2021-03-07T08:00:58.000+00:00,2021-03-07T08:04:17.000+00:00
+github:GithubJob:1:629052087:2049619011,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,107,2021-03-07T08:00:58.000+00:00,2021-03-07T08:02:45.000+00:00
+github:GithubJob:1:629052087:2049619022,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,128,2021-03-07T08:01:01.000+00:00,2021-03-07T08:03:09.000+00:00
+github:GithubJob:1:629052087:2049619033,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:629052087,FAILURE,DONE,,159,2021-03-07T08:00:58.000+00:00,2021-03-07T08:03:37.000+00:00
+github:GithubJob:1:629052088:2049618988,Analyze,github:GithubRun:1:134018330:629052088,SUCCESS,DONE,,60,2021-03-07T08:00:57.000+00:00,2021-03-07T08:01:57.000+00:00
+github:GithubJob:1:629052089:2049618986,Golangci-Lint,github:GithubRun:1:134018330:629052089,SUCCESS,DONE,,18,2021-03-07T08:00:58.000+00:00,2021-03-07T08:01:16.000+00:00
+github:GithubJob:1:648331885:2100809445,Analyze,github:GithubRun:1:134018330:648331885,SUCCESS,DONE,,55,2021-03-13T05:11:14.000+00:00,2021-03-13T05:12:09.000+00:00
+github:GithubJob:1:664533606:2139659898,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,177,2021-03-18T12:39:23.000+00:00,2021-03-18T12:42:20.000+00:00
+github:GithubJob:1:664533606:2139659913,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,171,2021-03-18T12:39:28.000+00:00,2021-03-18T12:42:19.000+00:00
+github:GithubJob:1:664533606:2139659939,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,250,2021-03-18T12:39:25.000+00:00,2021-03-18T12:43:35.000+00:00
+github:GithubJob:1:664533606:2139659957,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,177,2021-03-18T12:39:24.000+00:00,2021-03-18T12:42:21.000+00:00
+github:GithubJob:1:664533606:2139659983,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,168,2021-03-18T12:39:27.000+00:00,2021-03-18T12:42:15.000+00:00
+github:GithubJob:1:664533606:2139660015,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:664533606,SUCCESS,DONE,,245,2021-03-18T12:39:23.000+00:00,2021-03-18T12:43:28.000+00:00
+github:GithubJob:1:664533608:2139659895,Golangci-Lint,github:GithubRun:1:134018330:664533608,SUCCESS,DONE,,23,2021-03-18T12:39:23.000+00:00,2021-03-18T12:39:46.000+00:00
+github:GithubJob:1:664533609:2139659897,Analyze,github:GithubRun:1:134018330:664533609,SUCCESS,DONE,,71,2021-03-18T12:39:24.000+00:00,2021-03-18T12:40:35.000+00:00
+github:GithubJob:1:664763839:2140277564,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,182,2021-03-18T14:01:28.000+00:00,2021-03-18T14:04:30.000+00:00
+github:GithubJob:1:664763839:2140277615,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,184,2021-03-18T14:01:37.000+00:00,2021-03-18T14:04:41.000+00:00
+github:GithubJob:1:664763839:2140277672,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,300,2021-03-18T14:01:31.000+00:00,2021-03-18T14:06:31.000+00:00
+github:GithubJob:1:664763839:2140277741,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,188,2021-03-18T14:01:29.000+00:00,2021-03-18T14:04:37.000+00:00
+github:GithubJob:1:664763839:2140277802,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,188,2021-03-18T14:01:35.000+00:00,2021-03-18T14:04:43.000+00:00
+github:GithubJob:1:664763839:2140277855,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:664763839,SUCCESS,DONE,,256,2021-03-18T14:01:30.000+00:00,2021-03-18T14:05:46.000+00:00
+github:GithubJob:1:664763843:2140277556,Analyze,github:GithubRun:1:134018330:664763843,SUCCESS,DONE,,63,2021-03-18T14:01:28.000+00:00,2021-03-18T14:02:31.000+00:00
+github:GithubJob:1:664763855:2140277952,Golangci-Lint,github:GithubRun:1:134018330:664763855,SUCCESS,DONE,,39,2021-03-18T14:01:29.000+00:00,2021-03-18T14:02:08.000+00:00
+github:GithubJob:1:665358088:2141957365,Golangci-Lint,github:GithubRun:1:134018330:665358088,SUCCESS,DONE,,17,2021-03-18T17:22:14.000+00:00,2021-03-18T17:22:31.000+00:00
+github:GithubJob:1:665358090:2141957370,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,192,2021-03-18T17:22:16.000+00:00,2021-03-18T17:25:28.000+00:00
+github:GithubJob:1:665358090:2141957394,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,296,2021-03-18T17:22:25.000+00:00,2021-03-18T17:27:21.000+00:00
+github:GithubJob:1:665358090:2141957432,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,278,2021-03-18T17:22:16.000+00:00,2021-03-18T17:26:54.000+00:00
+github:GithubJob:1:665358090:2141957483,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,185,2021-03-18T17:22:15.000+00:00,2021-03-18T17:25:20.000+00:00
+github:GithubJob:1:665358090:2141957508,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,179,2021-03-18T17:22:20.000+00:00,2021-03-18T17:25:19.000+00:00
+github:GithubJob:1:665358090:2141957531,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:665358090,SUCCESS,DONE,,264,2021-03-18T17:22:17.000+00:00,2021-03-18T17:26:41.000+00:00
+github:GithubJob:1:665358091:2141957507,Analyze,github:GithubRun:1:134018330:665358091,SUCCESS,DONE,,53,2021-03-18T17:22:17.000+00:00,2021-03-18T17:23:10.000+00:00
+github:GithubJob:1:665368744:2141986831,Golangci-Lint,github:GithubRun:1:134018330:665368744,SUCCESS,DONE,,12,2021-03-18T17:25:55.000+00:00,2021-03-18T17:26:07.000+00:00
+github:GithubJob:1:665368745:2141986818,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,195,2021-03-18T17:25:53.000+00:00,2021-03-18T17:29:08.000+00:00
+github:GithubJob:1:665368745:2141986849,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,247,2021-03-18T17:26:03.000+00:00,2021-03-18T17:30:10.000+00:00
+github:GithubJob:1:665368745:2141986875,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,228,2021-03-18T17:25:54.000+00:00,2021-03-18T17:29:42.000+00:00
+github:GithubJob:1:665368745:2141986909,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,188,2021-03-18T17:25:55.000+00:00,2021-03-18T17:29:03.000+00:00
+github:GithubJob:1:665368745:2141986930,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,180,2021-03-18T17:25:59.000+00:00,2021-03-18T17:28:59.000+00:00
+github:GithubJob:1:665368745:2141986956,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:665368745,SUCCESS,DONE,,255,2021-03-18T17:25:56.000+00:00,2021-03-18T17:30:11.000+00:00
+github:GithubJob:1:665368749:2141986822,Analyze,github:GithubRun:1:134018330:665368749,SUCCESS,DONE,,69,2021-03-18T17:25:56.000+00:00,2021-03-18T17:27:05.000+00:00
+github:GithubJob:1:670106705:2154069534,Analyze,github:GithubRun:1:134018330:670106705,SUCCESS,DONE,,63,2021-03-20T05:12:41.000+00:00,2021-03-20T05:13:44.000+00:00
+github:GithubJob:1:692116287:2207063422,Analyze,github:GithubRun:1:134018330:692116287,SUCCESS,DONE,,55,2021-03-27T05:07:33.000+00:00,2021-03-27T05:08:28.000+00:00
+github:GithubJob:1:695257437:2212794576,Golangci-Lint,github:GithubRun:1:134018330:695257437,SUCCESS,DONE,,16,2021-03-28T14:38:22.000+00:00,2021-03-28T14:38:38.000+00:00
+github:GithubJob:1:695257438:2212794575,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,188,2021-03-28T14:38:22.000+00:00,2021-03-28T14:41:30.000+00:00
+github:GithubJob:1:695257438:2212794589,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,213,2021-03-28T14:38:26.000+00:00,2021-03-28T14:41:59.000+00:00
+github:GithubJob:1:695257438:2212794606,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,234,2021-03-28T14:38:21.000+00:00,2021-03-28T14:42:15.000+00:00
+github:GithubJob:1:695257438:2212794619,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,186,2021-03-28T14:38:22.000+00:00,2021-03-28T14:41:28.000+00:00
+github:GithubJob:1:695257438:2212794635,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,216,2021-03-28T14:38:24.000+00:00,2021-03-28T14:42:00.000+00:00
+github:GithubJob:1:695257438:2212794652,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:695257438,SUCCESS,DONE,,236,2021-03-28T14:38:22.000+00:00,2021-03-28T14:42:18.000+00:00
+github:GithubJob:1:695257439:2212794582,Analyze,github:GithubRun:1:134018330:695257439,SUCCESS,DONE,,55,2021-03-28T14:38:19.000+00:00,2021-03-28T14:39:14.000+00:00
+github:GithubJob:1:710302424:2250712872,Analyze,github:GithubRun:1:134018330:710302424,SUCCESS,DONE,,69,2021-04-02T01:16:32.000+00:00,2021-04-02T01:17:41.000+00:00
+github:GithubJob:1:710302425:2250712896,Golangci-Lint,github:GithubRun:1:134018330:710302425,FAILURE,DONE,,18,2021-04-02T01:16:32.000+00:00,2021-04-02T01:16:50.000+00:00
+github:GithubJob:1:710302427:2250712899,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,187,2021-04-02T01:16:33.000+00:00,2021-04-02T01:19:40.000+00:00
+github:GithubJob:1:710302427:2250712910,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,167,2021-04-02T02:00:51.000+00:00,2021-04-02T02:03:38.000+00:00
+github:GithubJob:1:710302427:2250712927,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,239,2021-04-02T01:16:32.000+00:00,2021-04-02T01:20:31.000+00:00
+github:GithubJob:1:710302427:2250712932,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,183,2021-04-02T01:16:34.000+00:00,2021-04-02T01:19:37.000+00:00
+github:GithubJob:1:710302427:2250712953,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,212,2021-04-02T01:48:22.000+00:00,2021-04-02T01:51:54.000+00:00
+github:GithubJob:1:710302427:2250712961,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:710302427,FAILURE,DONE,,269,2021-04-02T01:16:33.000+00:00,2021-04-02T01:21:02.000+00:00
+github:GithubJob:1:710484552:2251114320,"Go-Test (1.14.x, ubuntu-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,180,2021-04-02T02:54:55.000+00:00,2021-04-02T02:57:55.000+00:00
+github:GithubJob:1:710484552:2251114337,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,0,2021-04-02T03:39:50.000+00:00,2021-04-02T03:39:50.000+00:00
+github:GithubJob:1:710484552:2251114355,"Go-Test (1.14.x, windows-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,235,2021-04-02T02:54:54.000+00:00,2021-04-02T02:58:49.000+00:00
+github:GithubJob:1:710484552:2251114368,"Go-Test (1.15.x, ubuntu-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,183,2021-04-02T02:54:57.000+00:00,2021-04-02T02:58:00.000+00:00
+github:GithubJob:1:710484552:2251114384,"Go-Test (1.15.x, macos-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,215,2021-04-02T02:55:08.000+00:00,2021-04-02T02:58:43.000+00:00
+github:GithubJob:1:710484552:2251114396,"Go-Test (1.15.x, windows-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,245,2021-04-02T02:54:56.000+00:00,2021-04-02T02:59:01.000+00:00
+github:GithubJob:1:710484552:2251292479,"Go-Test (1.14.x, macos-latest)",github:GithubRun:1:134018330:710484552,FAILURE,DONE,,157,2021-04-02T03:40:08.000+00:00,2021-04-02T03:42:45.000+00:00
+github:GithubJob:1:710484553:2251114399,Analyze,github:GithubRun:1:134018330:710484553,SUCCESS,DONE,,57,2021-04-02T02:54:57.000+00:00,2021-04-02T02:55:54.000+00:00
+github:GithubJob:1:710484555:2251114401,Golangci-Lint,github:GithubRun:1:134018330:710484555,SUCCESS,DONE,,14,2021-04-02T02:54:58.000+00:00,2021-04-02T02:55:12.000+00:00
diff --git a/plugins/github/models/run.go b/plugins/github/models/run.go
index bd2ec06c..d6c7c0f3 100644
--- a/plugins/github/models/run.go
+++ b/plugins/github/models/run.go
@@ -27,7 +27,7 @@ type GithubRun struct {
 	common.NoPKModel
 	ConnectionId     uint64     `gorm:"primaryKey"`
 	RepoId           int        `gorm:"primaryKey"`
-	ID               int64      `json:"id" gorm:"primaryKey;autoIncrement:false"`
+	ID               int        `json:"id" gorm:"primaryKey;autoIncrement:false"`
 	Name             string     `json:"name" gorm:"type:varchar(255)"`
 	NodeID           string     `json:"node_id" gorm:"type:varchar(255)"`
 	HeadBranch       string     `json:"head_branch" gorm:"type:varchar(255)"`
diff --git a/plugins/github/tasks/cicd_job_convertor.go b/plugins/github/tasks/cicd_job_convertor.go
index 90c342e1..125317ff 100644
--- a/plugins/github/tasks/cicd_job_convertor.go
+++ b/plugins/github/tasks/cicd_job_convertor.go
@@ -19,10 +19,8 @@ package tasks
 
 import (
 	"fmt"
-	"reflect"
-	"regexp"
-
 	"github.com/apache/incubator-devlake/errors"
+	"reflect"
 
 	"github.com/apache/incubator-devlake/plugins/core/dal"
 
@@ -31,7 +29,7 @@ import (
 
 	"github.com/apache/incubator-devlake/models/domainlayer"
 	"github.com/apache/incubator-devlake/models/domainlayer/devops"
-	githubModels "github.com/apache/incubator-devlake/plugins/github/models"
+	"github.com/apache/incubator-devlake/plugins/github/models"
 )
 
 var ConvertTasksMeta = core.SubTaskMeta{
@@ -60,7 +58,7 @@ func ConvertTasks(taskCtx core.SubTaskContext) (err errors.Error) {
 		}
 	}
 
-	job := &githubModels.GithubJob{}
+	job := &models.GithubJob{}
 	cursor, err := db.Cursor(
 		dal.From(job),
 		dal.Where("repo_id = ? and connection_id=?", repoId, data.Options.ConnectionId),
@@ -69,7 +67,8 @@ func ConvertTasks(taskCtx core.SubTaskContext) (err errors.Error) {
 		return err
 	}
 	defer cursor.Close()
-
+	jobIdGen := didgen.NewDomainIdGenerator(&models.GithubJob{})
+	runIdGen := didgen.NewDomainIdGenerator(&models.GithubRun{})
 	converter, err := helper.NewDataConverter(helper.DataConverterArgs{
 		RawDataSubTaskArgs: helper.RawDataSubTaskArgs{
 			Ctx: taskCtx,
@@ -80,55 +79,41 @@ func ConvertTasks(taskCtx core.SubTaskContext) (err errors.Error) {
 			},
 			Table: RAW_JOB_TABLE,
 		},
-		InputRowType: reflect.TypeOf(githubModels.GithubJob{}),
+		InputRowType: reflect.TypeOf(models.GithubJob{}),
 		Input:        cursor,
 		Convert: func(inputRow interface{}) ([]interface{}, errors.Error) {
-			line := inputRow.(*githubModels.GithubJob)
-
-			tmp := make([]*SimpleBranch, 0)
-			clauses := []dal.Clause{
-				dal.Select("head_branch"),
-				dal.From("_tool_github_runs"),
-				dal.Where("id = ?", line.RunID),
-			}
-			err = db.All(&tmp, clauses...)
-			if err != nil {
-				return nil, err
-			}
+			line := inputRow.(*models.GithubJob)
 
-			domainjob := &devops.CICDTask{
-				DomainEntity: domainlayer.DomainEntity{Id: fmt.Sprintf("%s:%s:%d:%d", "github", "GithubJob", data.Options.ConnectionId, line.ID)},
+			domainJob := &devops.CICDTask{
+				DomainEntity: domainlayer.DomainEntity{Id: jobIdGen.Generate(data.Options.ConnectionId, line.RunID,
+					line.ID)},
 				Name:         line.Name,
 				StartedDate:  *line.StartedAt,
 				FinishedDate: line.CompletedAt,
+				PipelineId:   runIdGen.Generate(data.Options.ConnectionId, line.RepoId, line.RunID),
 			}
-
 			if deployTagRegexp != nil {
 				if deployFlag := deployTagRegexp.FindString(line.Name); deployFlag != "" {
-					domainjob.Type = devops.DEPLOYMENT
+					domainJob.Type = devops.DEPLOYMENT
 				}
 			}
-			if len(tmp) > 0 {
-				domainjob.PipelineId = fmt.Sprintf("%s:%s:%d:%d", "github", "GithubRun", data.Options.ConnectionId, line.RunID)
-			}
-
 			if line.Conclusion == "success" {
-				domainjob.Result = devops.SUCCESS
+				domainJob.Result = devops.SUCCESS
 			} else if line.Conclusion == "failure" || line.Conclusion == "startup_failure" {
-				domainjob.Result = devops.FAILURE
+				domainJob.Result = devops.FAILURE
 			} else {
-				domainjob.Result = devops.ABORT
+				domainJob.Result = devops.ABORT
 			}
 
 			if line.Status != "completed" {
-				domainjob.Status = devops.IN_PROGRESS
+				domainJob.Status = devops.IN_PROGRESS
 			} else {
-				domainjob.Status = devops.DONE
-				domainjob.DurationSec = uint64(line.CompletedAt.Sub(*line.StartedAt).Seconds())
+				domainJob.Status = devops.DONE
+				domainJob.DurationSec = uint64(line.CompletedAt.Sub(*line.StartedAt).Seconds())
 			}
 
 			return []interface{}{
-				domainjob,
+				domainJob,
 			}, nil
 		},
 	})
diff --git a/plugins/github/tasks/cicd_pipeline_convertor.go b/plugins/github/tasks/cicd_pipeline_convertor.go
index 58999cfa..53e9d103 100644
--- a/plugins/github/tasks/cicd_pipeline_convertor.go
+++ b/plugins/github/tasks/cicd_pipeline_convertor.go
@@ -18,7 +18,6 @@ limitations under the License.
 package tasks
 
 import (
-	"fmt"
 	"github.com/apache/incubator-devlake/errors"
 	"reflect"
 
@@ -30,7 +29,7 @@ import (
 	"github.com/apache/incubator-devlake/models/domainlayer"
 	"github.com/apache/incubator-devlake/models/domainlayer/devops"
 	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
-	githubModels "github.com/apache/incubator-devlake/plugins/github/models"
+	"github.com/apache/incubator-devlake/plugins/github/models"
 )
 
 var ConvertPipelinesMeta = core.SubTaskMeta{
@@ -46,7 +45,7 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 	data := taskCtx.GetData().(*GithubTaskData)
 	repoId := data.Repo.GithubId
 
-	pipeline := &githubModels.GithubRun{}
+	pipeline := &models.GithubRun{}
 	cursor, err := db.Cursor(
 		dal.Select("id, name, head_sha, head_branch, status, conclusion, github_created_at, github_updated_at"),
 		dal.From(pipeline),
@@ -56,7 +55,8 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 		return err
 	}
 	defer cursor.Close()
-
+	repoIdGen := didgen.NewDomainIdGenerator(&models.GithubRepo{})
+	runIdGen := didgen.NewDomainIdGenerator(&models.GithubRun{})
 	converter, err := helper.NewDataConverter(helper.DataConverterArgs{
 		RawDataSubTaskArgs: helper.RawDataSubTaskArgs{
 			Ctx: taskCtx,
@@ -67,12 +67,14 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 			},
 			Table: RAW_RUN_TABLE,
 		},
-		InputRowType: reflect.TypeOf(githubModels.GithubRun{}),
+		InputRowType: reflect.TypeOf(models.GithubRun{}),
 		Input:        cursor,
 		Convert: func(inputRow interface{}) ([]interface{}, errors.Error) {
-			line := inputRow.(*githubModels.GithubRun)
+			line := inputRow.(*models.GithubRun)
 			domainPipeline := &devops.CICDPipeline{
-				DomainEntity: domainlayer.DomainEntity{Id: fmt.Sprintf("%s:%s:%d:%d", "github", "GithubRun", data.Options.ConnectionId, line.ID)},
+				DomainEntity: domainlayer.DomainEntity{Id: runIdGen.Generate(
+					data.Options.ConnectionId, line.RepoId, line.ID),
+				},
 				Name:         line.Name,
 				Type:         "CI/CD",
 				CreatedDate:  *line.GithubCreatedAt,
@@ -94,10 +96,11 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 			}
 
 			domainPipelineProject := &devops.CiCDPipelineCommit{
-				PipelineId: fmt.Sprintf("%s:%s:%d:%d", "github", "GithubRun", data.Options.ConnectionId, line.ID),
-				CommitSha:  line.HeadSha,
-				Branch:     line.HeadBranch,
-				RepoId:     didgen.NewDomainIdGenerator(&githubModels.GithubRepo{}).Generate(data.Options.ConnectionId, repoId),
+				PipelineId: runIdGen.Generate(
+					data.Options.ConnectionId, line.RepoId, line.ID),
+				CommitSha: line.HeadSha,
+				Branch:    line.HeadBranch,
+				RepoId:    repoIdGen.Generate(data.Options.ConnectionId, repoId),
 			}
 
 			return []interface{}{


[incubator-devlake] 02/05: fix(jenkins): use didgen instead of fmt

Posted by ab...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 4fe95b9da737a63cf38a35dab66e994c8a7eb88d
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 16 17:48:51 2022 +0800

    fix(jenkins): use didgen instead of fmt
---
 plugins/jenkins/e2e/builds_test.go                 |  8 +--
 ...d_repos.csv => _tool_jenkins_build_commits.csv} |  0
 .../e2e/snapshot_tables/_tool_jenkins_builds.csv   | 76 +++++++++++-----------
 .../e2e/snapshot_tables/cicd_pipeline_commits.csv  | 16 ++---
 .../jenkins/e2e/snapshot_tables/cicd_pipelines.csv | 74 ++++++++++-----------
 plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv | 74 ++++++++++-----------
 .../snapshot_tables/cicd_tasks_after_stages.csv    |  6 +-
 plugins/jenkins/e2e/stages_test.go                 |  2 +-
 plugins/jenkins/impl/impl.go                       |  2 +-
 .../models/{build_repo.go => build_commit.go}      |  6 +-
 .../20220916_modify_jenkins_build.go               | 11 ++++
 .../jenkins/models/migrationscripts/register.go    |  1 +
 plugins/jenkins/tasks/build_cicd_convertor.go      |  5 +-
 ...repo_convertor.go => build_commit_convertor.go} | 15 +++--
 plugins/jenkins/tasks/build_extractor.go           |  2 +-
 plugins/jenkins/tasks/stage_convertor.go           | 11 ++--
 16 files changed, 160 insertions(+), 149 deletions(-)

diff --git a/plugins/jenkins/e2e/builds_test.go b/plugins/jenkins/e2e/builds_test.go
index 40112595..bd6fb662 100644
--- a/plugins/jenkins/e2e/builds_test.go
+++ b/plugins/jenkins/e2e/builds_test.go
@@ -44,7 +44,7 @@ func TestJenkinsBuildsDataFlow(t *testing.T) {
 
 	// verify extraction
 	dataflowTester.FlushTabler(&models.JenkinsBuild{})
-	dataflowTester.FlushTabler(&models.JenkinsBuildRepo{})
+	dataflowTester.FlushTabler(&models.JenkinsBuildCommit{})
 	dataflowTester.FlushTabler(&models.JenkinsStage{})
 
 	dataflowTester.Subtask(tasks.ExtractApiBuildsMeta, taskData)
@@ -61,8 +61,6 @@ func TestJenkinsBuildsDataFlow(t *testing.T) {
 			"result",
 			"timestamp",
 			"start_time",
-			"commit_sha",
-
 			"_raw_data_params",
 			"_raw_data_table",
 			"_raw_data_id",
@@ -71,8 +69,8 @@ func TestJenkinsBuildsDataFlow(t *testing.T) {
 	)
 
 	dataflowTester.VerifyTable(
-		models.JenkinsBuildRepo{},
-		"./snapshot_tables/_tool_jenkins_build_repos.csv",
+		models.JenkinsBuildCommit{},
+		"./snapshot_tables/_tool_jenkins_build_commits.csv",
 		[]string{
 			"connection_id",
 			"build_name",
diff --git a/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_build_repos.csv b/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_build_commits.csv
similarity index 100%
rename from plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_build_repos.csv
rename to plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_build_commits.csv
diff --git a/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_builds.csv b/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_builds.csv
index 5b2dd31a..0d18889c 100644
--- a/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_builds.csv
+++ b/plugins/jenkins/e2e/snapshot_tables/_tool_jenkins_builds.csv
@@ -1,38 +1,38 @@
-connection_id,job_name,number,duration,display_name,estimated_duration,result,timestamp,start_time,commit_sha,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
-1,devlake,1,14820,devlake #1,1457,SUCCESS,1650017416514,2022-04-15T10:10:16.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,95,
-1,devlake,2,2121,devlake #2,1457,SUCCESS,1650022548450,2022-04-15T11:35:48.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,94,
-1,devlake,3,1587,devlake #3,1457,SUCCESS,1650024049161,2022-04-15T12:00:49.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,93,
-1,devlake,4,13952,devlake #4,1457,SUCCESS,1662647203905,2022-09-08T14:26:43.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,92,
-1,devlake,5,1274,devlake #5,1457,SUCCESS,1662647231332,2022-09-08T14:27:11.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,91,
-1,devlake,6,1202,devlake #6,1457,SUCCESS,1662647242809,2022-09-08T14:27:22.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,90,
-1,devlake,7,1988,devlake #7,1457,SUCCESS,1662651625889,2022-09-08T15:40:25.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,89,
-1,devlake,8,1180,devlake #8,1457,SUCCESS,1662651640536,2022-09-08T15:40:40.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,88,
-1,free,1,70,dir-test » dir-test-2 » free #1,27,SUCCESS,1658385566471,2022-07-21T06:39:26.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,105,
-1,free,2,6,dir-test » dir-test-2 » free #2,27,SUCCESS,1658385576367,2022-07-21T06:39:36.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,104,
-1,free,3,4,dir-test » dir-test-2 » free #3,27,SUCCESS,1662647217041,2022-09-08T14:26:57.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,103,
-1,free1,1,4,dir-test » dir-test-2 » free1 #1,9,SUCCESS,1658386240842,2022-07-21T06:50:40.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,112,
-1,free1,2,11,dir-test » dir-test-2 » free1 #2,9,SUCCESS,1658386250446,2022-07-21T06:50:50.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,111,
-1,free1,3,4,dir-test » dir-test-2 » free1 #3,9,SUCCESS,1658386255052,2022-07-21T06:50:55.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,110,
-1,free1,4,11,dir-test » dir-test-2 » free1 #4,9,SUCCESS,1662647217746,2022-09-08T14:26:57.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,109,
-1,pipeline-test,1,1429,dir-test » pipeline-test #1,745,SUCCESS,1658385602419,2022-07-21T06:40:02.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,97,
-1,pipeline-test,2,61,dir-test » pipeline-test #2,745,SUCCESS,1662647211512,2022-09-08T14:26:51.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,96,
-1,pipeline-test2,1,4564,pipeline-test2 #1,1972,SUCCESS,1662651613681,2022-09-08T15:40:13.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,100,
-1,pipeline-test2,2,551,pipeline-test2 #2,1972,SUCCESS,1662651633991,2022-09-08T15:40:33.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,99,
-1,pipeline-test2,3,802,pipeline-test2 #3,1972,SUCCESS,1662651648992,2022-09-08T15:40:48.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,98,
-1,testfile,1,4,dir-test » testfile #1,8,SUCCESS,1658385600801,2022-07-21T06:40:00.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,102,
-1,testfile,2,11,dir-test » testfile #2,8,SUCCESS,1662647212436,2022-09-08T14:26:52.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,101,
-1,测试流水线,1,1539,测试流水线 #1,568,SUCCESS,1662647205888,2022-09-08T14:26:45.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,108,
-1,测试流水线,2,74,测试流水线 #2,568,SUCCESS,1662647232072,2022-09-08T14:27:12.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,107,
-1,测试流水线,3,90,测试流水线 #3,568,SUCCESS,1662651649571,2022-09-08T15:40:49.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,106,
-1,这是一个改了名字的测试任务,1,57,这是一个改了名字的测试任务 #1,6,SUCCESS,1650017153775,2022-04-15T10:05:53.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,124,
-1,这是一个改了名字的测试任务,2,4,这是一个改了名字的测试任务 #2,6,SUCCESS,1650017177939,2022-04-15T10:06:17.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,123,
-1,这是一个改了名字的测试任务,3,3,这是一个改了名字的测试任务 #3,6,SUCCESS,1650017186253,2022-04-15T10:06:26.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,122,
-1,这是一个改了名字的测试任务,4,6,这是一个改了名字的测试任务 #4,6,SUCCESS,1650022556910,2022-04-15T11:35:56.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,121,
-1,这是一个改了名字的测试任务,5,6,这是一个改了名字的测试任务 #5,6,SUCCESS,1650022558491,2022-04-15T11:35:58.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,120,
-1,这是一个改了名字的测试任务,6,10,这是一个改了名字的测试任务 #6,6,SUCCESS,1650022560954,2022-04-15T11:36:00.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,119,
-1,这是一个改了名字的测试任务,7,8,这是一个改了名字的测试任务 #7,6,SUCCESS,1650023883294,2022-04-15T11:58:03.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,118,
-1,这是一个改了名字的测试任务,8,11,这是一个改了名字的测试任务 #8,6,SUCCESS,1650023894336,2022-04-15T11:58:14.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,117,
-1,这是一个改了名字的测试任务,9,78,这是一个改了名字的测试任务 #9,6,SUCCESS,1662647207972,2022-09-08T14:26:47.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,116,
-1,这是一个改了名字的测试任务,10,12,这是一个改了名字的测试任务 #10,6,SUCCESS,1662647233074,2022-09-08T14:27:13.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,115,
-1,这是一个改了名字的测试任务,11,4,这是一个改了名字的测试任务 #11,6,SUCCESS,1662651656567,2022-09-08T15:40:56.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,114,
-1,这是一个改了名字的测试任务,12,2,这是一个改了名字的测试任务 #12,6,SUCCESS,1662651657893,2022-09-08T15:40:57.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_builds,113,
+connection_id,full_display_name,job_name,duration,estimated_duration,number,result,timestamp,start_time,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
+1,devlake #1,devlake,14820,1457,1,SUCCESS,1650017416514,2022-04-15T10:10:16.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,95,
+1,devlake #2,devlake,2121,1457,2,SUCCESS,1650022548450,2022-04-15T11:35:48.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,94,
+1,devlake #3,devlake,1587,1457,3,SUCCESS,1650024049161,2022-04-15T12:00:49.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,93,
+1,devlake #4,devlake,13952,1457,4,SUCCESS,1662647203905,2022-09-08T14:26:43.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,92,
+1,devlake #5,devlake,1274,1457,5,SUCCESS,1662647231332,2022-09-08T14:27:11.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,91,
+1,devlake #6,devlake,1202,1457,6,SUCCESS,1662647242809,2022-09-08T14:27:22.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,90,
+1,devlake #7,devlake,1988,1457,7,SUCCESS,1662651625889,2022-09-08T15:40:25.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,89,
+1,devlake #8,devlake,1180,1457,8,SUCCESS,1662651640536,2022-09-08T15:40:40.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,88,
+1,dir-test » dir-test-2 » free #1,free,70,27,1,SUCCESS,1658385566471,2022-07-21T06:39:26.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,105,
+1,dir-test » dir-test-2 » free #2,free,6,27,2,SUCCESS,1658385576367,2022-07-21T06:39:36.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,104,
+1,dir-test » dir-test-2 » free #3,free,4,27,3,SUCCESS,1662647217041,2022-09-08T14:26:57.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,103,
+1,dir-test » dir-test-2 » free1 #1,free1,4,9,1,SUCCESS,1658386240842,2022-07-21T06:50:40.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,112,
+1,dir-test » dir-test-2 » free1 #2,free1,11,9,2,SUCCESS,1658386250446,2022-07-21T06:50:50.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,111,
+1,dir-test » dir-test-2 » free1 #3,free1,4,9,3,SUCCESS,1658386255052,2022-07-21T06:50:55.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,110,
+1,dir-test » dir-test-2 » free1 #4,free1,11,9,4,SUCCESS,1662647217746,2022-09-08T14:26:57.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,109,
+1,dir-test » pipeline-test #1,pipeline-test,1429,745,1,SUCCESS,1658385602419,2022-07-21T06:40:02.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,97,
+1,dir-test » pipeline-test #2,pipeline-test,61,745,2,SUCCESS,1662647211512,2022-09-08T14:26:51.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,96,
+1,dir-test » testfile #1,testfile,4,8,1,SUCCESS,1658385600801,2022-07-21T06:40:00.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,102,
+1,dir-test » testfile #2,testfile,11,8,2,SUCCESS,1662647212436,2022-09-08T14:26:52.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,101,
+1,pipeline-test2 #1,pipeline-test2,4564,1972,1,SUCCESS,1662651613681,2022-09-08T15:40:13.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,100,
+1,pipeline-test2 #2,pipeline-test2,551,1972,2,SUCCESS,1662651633991,2022-09-08T15:40:33.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,99,
+1,pipeline-test2 #3,pipeline-test2,802,1972,3,SUCCESS,1662651648992,2022-09-08T15:40:48.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,98,
+1,测试流水线 #1,测试流水线,1539,568,1,SUCCESS,1662647205888,2022-09-08T14:26:45.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,108,
+1,测试流水线 #2,测试流水线,74,568,2,SUCCESS,1662647232072,2022-09-08T14:27:12.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,107,
+1,测试流水线 #3,测试流水线,90,568,3,SUCCESS,1662651649571,2022-09-08T15:40:49.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,106,
+1,这是一个改了名字的测试任务 #1,这是一个改了名字的测试任务,57,6,1,SUCCESS,1650017153775,2022-04-15T10:05:53.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,124,
+1,这是一个改了名字的测试任务 #10,这是一个改了名字的测试任务,12,6,10,SUCCESS,1662647233074,2022-09-08T14:27:13.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,115,
+1,这是一个改了名字的测试任务 #11,这是一个改了名字的测试任务,4,6,11,SUCCESS,1662651656567,2022-09-08T15:40:56.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,114,
+1,这是一个改了名字的测试任务 #12,这是一个改了名字的测试任务,2,6,12,SUCCESS,1662651657893,2022-09-08T15:40:57.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,113,
+1,这是一个改了名字的测试任务 #2,这是一个改了名字的测试任务,4,6,2,SUCCESS,1650017177939,2022-04-15T10:06:17.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,123,
+1,这是一个改了名字的测试任务 #3,这是一个改了名字的测试任务,3,6,3,SUCCESS,1650017186253,2022-04-15T10:06:26.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,122,
+1,这是一个改了名字的测试任务 #4,这是一个改了名字的测试任务,6,6,4,SUCCESS,1650022556910,2022-04-15T11:35:56.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,121,
+1,这是一个改了名字的测试任务 #5,这是一个改了名字的测试任务,6,6,5,SUCCESS,1650022558491,2022-04-15T11:35:58.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,120,
+1,这是一个改了名字的测试任务 #6,这是一个改了名字的测试任务,10,6,6,SUCCESS,1650022560954,2022-04-15T11:36:00.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,119,
+1,这是一个改了名字的测试任务 #7,这是一个改了名字的测试任务,8,6,7,SUCCESS,1650023883294,2022-04-15T11:58:03.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,118,
+1,这是一个改了名字的测试任务 #8,这是一个改了名字的测试任务,11,6,8,SUCCESS,1650023894336,2022-04-15T11:58:14.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,117,
+1,这是一个改了名字的测试任务 #9,这是一个改了名字的测试任务,78,6,9,SUCCESS,1662647207972,2022-09-08T14:26:47.000+00:00,"{""ConnectionId"":1}",_raw_jenkins_api_builds,116,
diff --git a/plugins/jenkins/e2e/snapshot_tables/cicd_pipeline_commits.csv b/plugins/jenkins/e2e/snapshot_tables/cicd_pipeline_commits.csv
index 71dd0034..5286fcd7 100644
--- a/plugins/jenkins/e2e/snapshot_tables/cicd_pipeline_commits.csv
+++ b/plugins/jenkins/e2e/snapshot_tables/cicd_pipeline_commits.csv
@@ -1,9 +1,9 @@
 pipeline_id,commit_sha,repo_id,repo_url,branch
-jenkins:JenkinsTask:1:devlake #1,ceeffdfdd06bce232f9adb3a656265bad13a8473,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #2,0f886c74949c3ee7e489188911c7dc0c1d547418,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #3,0f886c74949c3ee7e489188911c7dc0c1d547418,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #4,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #5,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #6,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #7,0006e8105d70318aff5eeee38d405fa181a32aa0,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
-jenkins:JenkinsTask:1:devlake #8,0006e8105d70318aff5eeee38d405fa181a32aa0,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #1,ceeffdfdd06bce232f9adb3a656265bad13a8473,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #2,0f886c74949c3ee7e489188911c7dc0c1d547418,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #3,0f886c74949c3ee7e489188911c7dc0c1d547418,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #4,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #5,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #6,20139afef3c6ec9f3ebffcb06e243b145cbef8c6,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #7,0006e8105d70318aff5eeee38d405fa181a32aa0,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
+jenkins:JenkinsBuild:1:devlake #8,0006e8105d70318aff5eeee38d405fa181a32aa0,,https://github.com/merico-dev/lake.git,refs/remotes/origin/main
diff --git a/plugins/jenkins/e2e/snapshot_tables/cicd_pipelines.csv b/plugins/jenkins/e2e/snapshot_tables/cicd_pipelines.csv
index 3b3c105a..0964ffd4 100644
--- a/plugins/jenkins/e2e/snapshot_tables/cicd_pipelines.csv
+++ b/plugins/jenkins/e2e/snapshot_tables/cicd_pipelines.csv
@@ -1,38 +1,38 @@
 id,name,result,status,type,duration_sec,environment,created_date,finished_date
-jenkins:JenkinsPipeline:1:devlake #1,devlake,SUCCESS,DONE,,14,,2022-04-15T10:10:16.000+00:00,2022-04-15T10:10:30.000+00:00
-jenkins:JenkinsPipeline:1:devlake #2,devlake,SUCCESS,DONE,,2,,2022-04-15T11:35:48.000+00:00,2022-04-15T11:35:50.000+00:00
-jenkins:JenkinsPipeline:1:devlake #3,devlake,SUCCESS,DONE,,1,,2022-04-15T12:00:49.000+00:00,2022-04-15T12:00:50.000+00:00
-jenkins:JenkinsPipeline:1:devlake #4,devlake,SUCCESS,DONE,,13,,2022-09-08T14:26:43.000+00:00,2022-09-08T14:26:56.000+00:00
-jenkins:JenkinsPipeline:1:devlake #5,devlake,SUCCESS,DONE,,1,,2022-09-08T14:27:11.000+00:00,2022-09-08T14:27:12.000+00:00
-jenkins:JenkinsPipeline:1:devlake #6,devlake,SUCCESS,DONE,,1,,2022-09-08T14:27:22.000+00:00,2022-09-08T14:27:23.000+00:00
-jenkins:JenkinsPipeline:1:devlake #7,devlake,SUCCESS,DONE,,1,,2022-09-08T15:40:25.000+00:00,2022-09-08T15:40:26.000+00:00
-jenkins:JenkinsPipeline:1:devlake #8,devlake,SUCCESS,DONE,,1,,2022-09-08T15:40:40.000+00:00,2022-09-08T15:40:41.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #1,free,SUCCESS,DONE,,0,,2022-07-21T06:39:26.000+00:00,2022-07-21T06:39:26.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #2,free,SUCCESS,DONE,,0,,2022-07-21T06:39:36.000+00:00,2022-07-21T06:39:36.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #3,free,SUCCESS,DONE,,0,,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #1,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:40.000+00:00,2022-07-21T06:50:40.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #2,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:50.000+00:00,2022-07-21T06:50:50.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #3,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:55.000+00:00,2022-07-21T06:50:55.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #4,free1,SUCCESS,DONE,,0,,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » pipeline-test #1,pipeline-test,SUCCESS,DONE,,1,,2022-07-21T06:40:02.000+00:00,2022-07-21T06:40:03.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » pipeline-test #2,pipeline-test,SUCCESS,DONE,,0,,2022-09-08T14:26:51.000+00:00,2022-09-08T14:26:51.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » testfile #1,testfile,SUCCESS,DONE,,0,,2022-07-21T06:40:00.000+00:00,2022-07-21T06:40:00.000+00:00
-jenkins:JenkinsPipeline:1:dir-test » testfile #2,testfile,SUCCESS,DONE,,0,,2022-09-08T14:26:52.000+00:00,2022-09-08T14:26:52.000+00:00
-jenkins:JenkinsPipeline:1:pipeline-test2 #1,pipeline-test2,SUCCESS,DONE,,4,,2022-09-08T15:40:13.000+00:00,2022-09-08T15:40:17.000+00:00
-jenkins:JenkinsPipeline:1:pipeline-test2 #2,pipeline-test2,SUCCESS,DONE,,0,,2022-09-08T15:40:33.000+00:00,2022-09-08T15:40:33.000+00:00
-jenkins:JenkinsPipeline:1:pipeline-test2 #3,pipeline-test2,SUCCESS,DONE,,0,,2022-09-08T15:40:48.000+00:00,2022-09-08T15:40:48.000+00:00
-jenkins:JenkinsPipeline:1:测试流水线 #1,测试流水线,SUCCESS,DONE,,1,,2022-09-08T14:26:45.000+00:00,2022-09-08T14:26:46.000+00:00
-jenkins:JenkinsPipeline:1:测试流水线 #2,测试流水线,SUCCESS,DONE,,0,,2022-09-08T14:27:12.000+00:00,2022-09-08T14:27:12.000+00:00
-jenkins:JenkinsPipeline:1:测试流水线 #3,测试流水线,SUCCESS,DONE,,0,,2022-09-08T15:40:49.000+00:00,2022-09-08T15:40:49.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #1,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:05:53.000+00:00,2022-04-15T10:05:53.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #10,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T14:27:13.000+00:00,2022-09-08T14:27:13.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #11,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T15:40:56.000+00:00,2022-09-08T15:40:56.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #12,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T15:40:57.000+00:00,2022-09-08T15:40:57.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #2,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:06:17.000+00:00,2022-04-15T10:06:17.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #3,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:06:26.000+00:00,2022-04-15T10:06:26.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #4,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:35:56.000+00:00,2022-04-15T11:35:56.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #5,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:35:58.000+00:00,2022-04-15T11:35:58.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #6,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:36:00.000+00:00,2022-04-15T11:36:00.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #7,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:58:03.000+00:00,2022-04-15T11:58:03.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #8,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:58:14.000+00:00,2022-04-15T11:58:14.000+00:00
-jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #9,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T14:26:47.000+00:00,2022-09-08T14:26:47.000+00:00
+jenkins:JenkinsBuild:1:devlake #1,devlake,SUCCESS,DONE,,14,,2022-04-15T10:10:16.000+00:00,2022-04-15T10:10:30.000+00:00
+jenkins:JenkinsBuild:1:devlake #2,devlake,SUCCESS,DONE,,2,,2022-04-15T11:35:48.000+00:00,2022-04-15T11:35:50.000+00:00
+jenkins:JenkinsBuild:1:devlake #3,devlake,SUCCESS,DONE,,1,,2022-04-15T12:00:49.000+00:00,2022-04-15T12:00:50.000+00:00
+jenkins:JenkinsBuild:1:devlake #4,devlake,SUCCESS,DONE,,13,,2022-09-08T14:26:43.000+00:00,2022-09-08T14:26:56.000+00:00
+jenkins:JenkinsBuild:1:devlake #5,devlake,SUCCESS,DONE,,1,,2022-09-08T14:27:11.000+00:00,2022-09-08T14:27:12.000+00:00
+jenkins:JenkinsBuild:1:devlake #6,devlake,SUCCESS,DONE,,1,,2022-09-08T14:27:22.000+00:00,2022-09-08T14:27:23.000+00:00
+jenkins:JenkinsBuild:1:devlake #7,devlake,SUCCESS,DONE,,1,,2022-09-08T15:40:25.000+00:00,2022-09-08T15:40:26.000+00:00
+jenkins:JenkinsBuild:1:devlake #8,devlake,SUCCESS,DONE,,1,,2022-09-08T15:40:40.000+00:00,2022-09-08T15:40:41.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #1,free,SUCCESS,DONE,,0,,2022-07-21T06:39:26.000+00:00,2022-07-21T06:39:26.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #2,free,SUCCESS,DONE,,0,,2022-07-21T06:39:36.000+00:00,2022-07-21T06:39:36.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #3,free,SUCCESS,DONE,,0,,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #1,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:40.000+00:00,2022-07-21T06:50:40.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #2,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:50.000+00:00,2022-07-21T06:50:50.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #3,free1,SUCCESS,DONE,,0,,2022-07-21T06:50:55.000+00:00,2022-07-21T06:50:55.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #4,free1,SUCCESS,DONE,,0,,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
+jenkins:JenkinsBuild:1:dir-test » pipeline-test #1,pipeline-test,SUCCESS,DONE,,1,,2022-07-21T06:40:02.000+00:00,2022-07-21T06:40:03.000+00:00
+jenkins:JenkinsBuild:1:dir-test » pipeline-test #2,pipeline-test,SUCCESS,DONE,,0,,2022-09-08T14:26:51.000+00:00,2022-09-08T14:26:51.000+00:00
+jenkins:JenkinsBuild:1:dir-test » testfile #1,testfile,SUCCESS,DONE,,0,,2022-07-21T06:40:00.000+00:00,2022-07-21T06:40:00.000+00:00
+jenkins:JenkinsBuild:1:dir-test » testfile #2,testfile,SUCCESS,DONE,,0,,2022-09-08T14:26:52.000+00:00,2022-09-08T14:26:52.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #1,pipeline-test2,SUCCESS,DONE,,4,,2022-09-08T15:40:13.000+00:00,2022-09-08T15:40:17.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #2,pipeline-test2,SUCCESS,DONE,,0,,2022-09-08T15:40:33.000+00:00,2022-09-08T15:40:33.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #3,pipeline-test2,SUCCESS,DONE,,0,,2022-09-08T15:40:48.000+00:00,2022-09-08T15:40:48.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #1,测试流水线,SUCCESS,DONE,,1,,2022-09-08T14:26:45.000+00:00,2022-09-08T14:26:46.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #2,测试流水线,SUCCESS,DONE,,0,,2022-09-08T14:27:12.000+00:00,2022-09-08T14:27:12.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #3,测试流水线,SUCCESS,DONE,,0,,2022-09-08T15:40:49.000+00:00,2022-09-08T15:40:49.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #1,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:05:53.000+00:00,2022-04-15T10:05:53.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #10,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T14:27:13.000+00:00,2022-09-08T14:27:13.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #11,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T15:40:56.000+00:00,2022-09-08T15:40:56.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #12,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T15:40:57.000+00:00,2022-09-08T15:40:57.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #2,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:06:17.000+00:00,2022-04-15T10:06:17.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #3,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T10:06:26.000+00:00,2022-04-15T10:06:26.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #4,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:35:56.000+00:00,2022-04-15T11:35:56.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #5,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:35:58.000+00:00,2022-04-15T11:35:58.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #6,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:36:00.000+00:00,2022-04-15T11:36:00.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #7,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:58:03.000+00:00,2022-04-15T11:58:03.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #8,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-04-15T11:58:14.000+00:00,2022-04-15T11:58:14.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #9,这是一个改了名字的测试任务,SUCCESS,DONE,,0,,2022-09-08T14:26:47.000+00:00,2022-09-08T14:26:47.000+00:00
diff --git a/plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv b/plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv
index bad13e28..1e41b084 100644
--- a/plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv
+++ b/plugins/jenkins/e2e/snapshot_tables/cicd_tasks.csv
@@ -1,38 +1,38 @@
 id,name,pipeline_id,result,status,type,environment,duration_sec,started_date,finished_date
-jenkins:JenkinsTask:1:devlake #1,devlake,jenkins:JenkinsPipeline:1:devlake #1,SUCCESS,DONE,,,14,2022-04-15T10:10:16.000+00:00,2022-04-15T10:10:30.000+00:00
-jenkins:JenkinsTask:1:devlake #2,devlake,jenkins:JenkinsPipeline:1:devlake #2,SUCCESS,DONE,,,2,2022-04-15T11:35:48.000+00:00,2022-04-15T11:35:50.000+00:00
-jenkins:JenkinsTask:1:devlake #3,devlake,jenkins:JenkinsPipeline:1:devlake #3,SUCCESS,DONE,,,1,2022-04-15T12:00:49.000+00:00,2022-04-15T12:00:50.000+00:00
-jenkins:JenkinsTask:1:devlake #4,devlake,jenkins:JenkinsPipeline:1:devlake #4,SUCCESS,DONE,,,13,2022-09-08T14:26:43.000+00:00,2022-09-08T14:26:56.000+00:00
-jenkins:JenkinsTask:1:devlake #5,devlake,jenkins:JenkinsPipeline:1:devlake #5,SUCCESS,DONE,,,1,2022-09-08T14:27:11.000+00:00,2022-09-08T14:27:12.000+00:00
-jenkins:JenkinsTask:1:devlake #6,devlake,jenkins:JenkinsPipeline:1:devlake #6,SUCCESS,DONE,,,1,2022-09-08T14:27:22.000+00:00,2022-09-08T14:27:23.000+00:00
-jenkins:JenkinsTask:1:devlake #7,devlake,jenkins:JenkinsPipeline:1:devlake #7,SUCCESS,DONE,,,1,2022-09-08T15:40:25.000+00:00,2022-09-08T15:40:26.000+00:00
-jenkins:JenkinsTask:1:devlake #8,devlake,jenkins:JenkinsPipeline:1:devlake #8,SUCCESS,DONE,,,1,2022-09-08T15:40:40.000+00:00,2022-09-08T15:40:41.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free #1,free,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #1,SUCCESS,DONE,,,0,2022-07-21T06:39:26.000+00:00,2022-07-21T06:39:26.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free #2,free,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #2,SUCCESS,DONE,,,0,2022-07-21T06:39:36.000+00:00,2022-07-21T06:39:36.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free #3,free,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free #3,SUCCESS,DONE,,,0,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free1 #1,free1,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #1,SUCCESS,DONE,,,0,2022-07-21T06:50:40.000+00:00,2022-07-21T06:50:40.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free1 #2,free1,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #2,SUCCESS,DONE,,,0,2022-07-21T06:50:50.000+00:00,2022-07-21T06:50:50.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free1 #3,free1,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #3,SUCCESS,DONE,,,0,2022-07-21T06:50:55.000+00:00,2022-07-21T06:50:55.000+00:00
-jenkins:JenkinsTask:1:dir-test » dir-test-2 » free1 #4,free1,jenkins:JenkinsPipeline:1:dir-test » dir-test-2 » free1 #4,SUCCESS,DONE,,,0,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
-jenkins:JenkinsTask:1:dir-test » pipeline-test #1,pipeline-test,jenkins:JenkinsPipeline:1:dir-test » pipeline-test #1,SUCCESS,DONE,,,1,2022-07-21T06:40:02.000+00:00,2022-07-21T06:40:03.000+00:00
-jenkins:JenkinsTask:1:dir-test » pipeline-test #2,pipeline-test,jenkins:JenkinsPipeline:1:dir-test » pipeline-test #2,SUCCESS,DONE,,,0,2022-09-08T14:26:51.000+00:00,2022-09-08T14:26:51.000+00:00
-jenkins:JenkinsTask:1:dir-test » testfile #1,testfile,jenkins:JenkinsPipeline:1:dir-test » testfile #1,SUCCESS,DONE,,,0,2022-07-21T06:40:00.000+00:00,2022-07-21T06:40:00.000+00:00
-jenkins:JenkinsTask:1:dir-test » testfile #2,testfile,jenkins:JenkinsPipeline:1:dir-test » testfile #2,SUCCESS,DONE,,,0,2022-09-08T14:26:52.000+00:00,2022-09-08T14:26:52.000+00:00
-jenkins:JenkinsTask:1:pipeline-test2 #1,pipeline-test2,jenkins:JenkinsPipeline:1:pipeline-test2 #1,SUCCESS,DONE,,,4,2022-09-08T15:40:13.000+00:00,2022-09-08T15:40:17.000+00:00
-jenkins:JenkinsTask:1:pipeline-test2 #2,pipeline-test2,jenkins:JenkinsPipeline:1:pipeline-test2 #2,SUCCESS,DONE,,,0,2022-09-08T15:40:33.000+00:00,2022-09-08T15:40:33.000+00:00
-jenkins:JenkinsTask:1:pipeline-test2 #3,pipeline-test2,jenkins:JenkinsPipeline:1:pipeline-test2 #3,SUCCESS,DONE,,,0,2022-09-08T15:40:48.000+00:00,2022-09-08T15:40:48.000+00:00
-jenkins:JenkinsTask:1:测试流水线 #1,测试流水线,jenkins:JenkinsPipeline:1:测试流水线 #1,SUCCESS,DONE,,,1,2022-09-08T14:26:45.000+00:00,2022-09-08T14:26:46.000+00:00
-jenkins:JenkinsTask:1:测试流水线 #2,测试流水线,jenkins:JenkinsPipeline:1:测试流水线 #2,SUCCESS,DONE,,,0,2022-09-08T14:27:12.000+00:00,2022-09-08T14:27:12.000+00:00
-jenkins:JenkinsTask:1:测试流水线 #3,测试流水线,jenkins:JenkinsPipeline:1:测试流水线 #3,SUCCESS,DONE,,,0,2022-09-08T15:40:49.000+00:00,2022-09-08T15:40:49.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #1,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #1,SUCCESS,DONE,,,0,2022-04-15T10:05:53.000+00:00,2022-04-15T10:05:53.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #10,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #10,SUCCESS,DONE,,,0,2022-09-08T14:27:13.000+00:00,2022-09-08T14:27:13.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #11,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #11,SUCCESS,DONE,,,0,2022-09-08T15:40:56.000+00:00,2022-09-08T15:40:56.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #12,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #12,SUCCESS,DONE,,,0,2022-09-08T15:40:57.000+00:00,2022-09-08T15:40:57.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #2,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #2,SUCCESS,DONE,,,0,2022-04-15T10:06:17.000+00:00,2022-04-15T10:06:17.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #3,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #3,SUCCESS,DONE,,,0,2022-04-15T10:06:26.000+00:00,2022-04-15T10:06:26.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #4,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #4,SUCCESS,DONE,,,0,2022-04-15T11:35:56.000+00:00,2022-04-15T11:35:56.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #5,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #5,SUCCESS,DONE,,,0,2022-04-15T11:35:58.000+00:00,2022-04-15T11:35:58.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #6,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #6,SUCCESS,DONE,,,0,2022-04-15T11:36:00.000+00:00,2022-04-15T11:36:00.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #7,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #7,SUCCESS,DONE,,,0,2022-04-15T11:58:03.000+00:00,2022-04-15T11:58:03.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #8,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #8,SUCCESS,DONE,,,0,2022-04-15T11:58:14.000+00:00,2022-04-15T11:58:14.000+00:00
-jenkins:JenkinsTask:1:这是一个改了名字的测试任务 #9,这是一个改了名字的测试任务,jenkins:JenkinsPipeline:1:这是一个改了名字的测试任务 #9,SUCCESS,DONE,,,0,2022-09-08T14:26:47.000+00:00,2022-09-08T14:26:47.000+00:00
+jenkins:JenkinsBuild:1:devlake #1,devlake,jenkins:JenkinsBuild:1:devlake #1,SUCCESS,DONE,,,14,2022-04-15T10:10:16.000+00:00,2022-04-15T10:10:30.000+00:00
+jenkins:JenkinsBuild:1:devlake #2,devlake,jenkins:JenkinsBuild:1:devlake #2,SUCCESS,DONE,,,2,2022-04-15T11:35:48.000+00:00,2022-04-15T11:35:50.000+00:00
+jenkins:JenkinsBuild:1:devlake #3,devlake,jenkins:JenkinsBuild:1:devlake #3,SUCCESS,DONE,,,1,2022-04-15T12:00:49.000+00:00,2022-04-15T12:00:50.000+00:00
+jenkins:JenkinsBuild:1:devlake #4,devlake,jenkins:JenkinsBuild:1:devlake #4,SUCCESS,DONE,,,13,2022-09-08T14:26:43.000+00:00,2022-09-08T14:26:56.000+00:00
+jenkins:JenkinsBuild:1:devlake #5,devlake,jenkins:JenkinsBuild:1:devlake #5,SUCCESS,DONE,,,1,2022-09-08T14:27:11.000+00:00,2022-09-08T14:27:12.000+00:00
+jenkins:JenkinsBuild:1:devlake #6,devlake,jenkins:JenkinsBuild:1:devlake #6,SUCCESS,DONE,,,1,2022-09-08T14:27:22.000+00:00,2022-09-08T14:27:23.000+00:00
+jenkins:JenkinsBuild:1:devlake #7,devlake,jenkins:JenkinsBuild:1:devlake #7,SUCCESS,DONE,,,1,2022-09-08T15:40:25.000+00:00,2022-09-08T15:40:26.000+00:00
+jenkins:JenkinsBuild:1:devlake #8,devlake,jenkins:JenkinsBuild:1:devlake #8,SUCCESS,DONE,,,1,2022-09-08T15:40:40.000+00:00,2022-09-08T15:40:41.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #1,free,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #1,SUCCESS,DONE,,,0,2022-07-21T06:39:26.000+00:00,2022-07-21T06:39:26.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #2,free,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #2,SUCCESS,DONE,,,0,2022-07-21T06:39:36.000+00:00,2022-07-21T06:39:36.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #3,free,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free #3,SUCCESS,DONE,,,0,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #1,free1,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #1,SUCCESS,DONE,,,0,2022-07-21T06:50:40.000+00:00,2022-07-21T06:50:40.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #2,free1,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #2,SUCCESS,DONE,,,0,2022-07-21T06:50:50.000+00:00,2022-07-21T06:50:50.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #3,free1,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #3,SUCCESS,DONE,,,0,2022-07-21T06:50:55.000+00:00,2022-07-21T06:50:55.000+00:00
+jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #4,free1,jenkins:JenkinsBuild:1:dir-test » dir-test-2 » free1 #4,SUCCESS,DONE,,,0,2022-09-08T14:26:57.000+00:00,2022-09-08T14:26:57.000+00:00
+jenkins:JenkinsBuild:1:dir-test » pipeline-test #1,pipeline-test,jenkins:JenkinsBuild:1:dir-test » pipeline-test #1,SUCCESS,DONE,,,1,2022-07-21T06:40:02.000+00:00,2022-07-21T06:40:03.000+00:00
+jenkins:JenkinsBuild:1:dir-test » pipeline-test #2,pipeline-test,jenkins:JenkinsBuild:1:dir-test » pipeline-test #2,SUCCESS,DONE,,,0,2022-09-08T14:26:51.000+00:00,2022-09-08T14:26:51.000+00:00
+jenkins:JenkinsBuild:1:dir-test » testfile #1,testfile,jenkins:JenkinsBuild:1:dir-test » testfile #1,SUCCESS,DONE,,,0,2022-07-21T06:40:00.000+00:00,2022-07-21T06:40:00.000+00:00
+jenkins:JenkinsBuild:1:dir-test » testfile #2,testfile,jenkins:JenkinsBuild:1:dir-test » testfile #2,SUCCESS,DONE,,,0,2022-09-08T14:26:52.000+00:00,2022-09-08T14:26:52.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #1,pipeline-test2,jenkins:JenkinsBuild:1:pipeline-test2 #1,SUCCESS,DONE,,,4,2022-09-08T15:40:13.000+00:00,2022-09-08T15:40:17.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #2,pipeline-test2,jenkins:JenkinsBuild:1:pipeline-test2 #2,SUCCESS,DONE,,,0,2022-09-08T15:40:33.000+00:00,2022-09-08T15:40:33.000+00:00
+jenkins:JenkinsBuild:1:pipeline-test2 #3,pipeline-test2,jenkins:JenkinsBuild:1:pipeline-test2 #3,SUCCESS,DONE,,,0,2022-09-08T15:40:48.000+00:00,2022-09-08T15:40:48.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #1,测试流水线,jenkins:JenkinsBuild:1:测试流水线 #1,SUCCESS,DONE,,,1,2022-09-08T14:26:45.000+00:00,2022-09-08T14:26:46.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #2,测试流水线,jenkins:JenkinsBuild:1:测试流水线 #2,SUCCESS,DONE,,,0,2022-09-08T14:27:12.000+00:00,2022-09-08T14:27:12.000+00:00
+jenkins:JenkinsBuild:1:测试流水线 #3,测试流水线,jenkins:JenkinsBuild:1:测试流水线 #3,SUCCESS,DONE,,,0,2022-09-08T15:40:49.000+00:00,2022-09-08T15:40:49.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #1,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #1,SUCCESS,DONE,,,0,2022-04-15T10:05:53.000+00:00,2022-04-15T10:05:53.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #10,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #10,SUCCESS,DONE,,,0,2022-09-08T14:27:13.000+00:00,2022-09-08T14:27:13.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #11,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #11,SUCCESS,DONE,,,0,2022-09-08T15:40:56.000+00:00,2022-09-08T15:40:56.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #12,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #12,SUCCESS,DONE,,,0,2022-09-08T15:40:57.000+00:00,2022-09-08T15:40:57.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #2,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #2,SUCCESS,DONE,,,0,2022-04-15T10:06:17.000+00:00,2022-04-15T10:06:17.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #3,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #3,SUCCESS,DONE,,,0,2022-04-15T10:06:26.000+00:00,2022-04-15T10:06:26.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #4,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #4,SUCCESS,DONE,,,0,2022-04-15T11:35:56.000+00:00,2022-04-15T11:35:56.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #5,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #5,SUCCESS,DONE,,,0,2022-04-15T11:35:58.000+00:00,2022-04-15T11:35:58.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #6,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #6,SUCCESS,DONE,,,0,2022-04-15T11:36:00.000+00:00,2022-04-15T11:36:00.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #7,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #7,SUCCESS,DONE,,,0,2022-04-15T11:58:03.000+00:00,2022-04-15T11:58:03.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #8,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #8,SUCCESS,DONE,,,0,2022-04-15T11:58:14.000+00:00,2022-04-15T11:58:14.000+00:00
+jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #9,这是一个改了名字的测试任务,jenkins:JenkinsBuild:1:这是一个改了名字的测试任务 #9,SUCCESS,DONE,,,0,2022-09-08T14:26:47.000+00:00,2022-09-08T14:26:47.000+00:00
diff --git a/plugins/jenkins/e2e/snapshot_tables/cicd_tasks_after_stages.csv b/plugins/jenkins/e2e/snapshot_tables/cicd_tasks_after_stages.csv
index 81f6f5af..3480c821 100644
--- a/plugins/jenkins/e2e/snapshot_tables/cicd_tasks_after_stages.csv
+++ b/plugins/jenkins/e2e/snapshot_tables/cicd_tasks_after_stages.csv
@@ -1,4 +1,4 @@
 id,name,pipeline_id,result,status,type,duration_sec,started_date,finished_date,environment,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
-jenkins:JenkinsStage:1:pipeline-test2 #1:Hello,Hello,jenkins:JenkinsPipeline:1:pipeline-test2 #1,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:17.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,5,
-jenkins:JenkinsStage:1:pipeline-test2 #2:Hello,Hello,jenkins:JenkinsPipeline:1:pipeline-test2 #2,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:34.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,6,
-jenkins:JenkinsStage:1:pipeline-test2 #3:Hello,Hello,jenkins:JenkinsPipeline:1:pipeline-test2 #3,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:49.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,3,
+jenkins:JenkinsStage:1:pipeline-test2 #1:Hello,Hello,jenkins:JenkinsBuild:1:pipeline-test2 #1,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:17.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,5,
+jenkins:JenkinsStage:1:pipeline-test2 #2:Hello,Hello,jenkins:JenkinsBuild:1:pipeline-test2 #2,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:34.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,6,
+jenkins:JenkinsStage:1:pipeline-test2 #3:Hello,Hello,jenkins:JenkinsBuild:1:pipeline-test2 #3,ABORT,DONE,,0,1970-01-01T00:00:00.000+00:00,2022-09-08T15:40:49.000+00:00,,"{""ConnectionId"":1}",_raw_jenkins_api_stages,3,
diff --git a/plugins/jenkins/e2e/stages_test.go b/plugins/jenkins/e2e/stages_test.go
index 42a084d1..61eb87a0 100644
--- a/plugins/jenkins/e2e/stages_test.go
+++ b/plugins/jenkins/e2e/stages_test.go
@@ -43,7 +43,7 @@ func TestJenkinsStagesDataFlow(t *testing.T) {
 
 	// import tool table
 	dataflowTester.ImportCsvIntoTabler("./snapshot_tables/_tool_jenkins_builds.csv", models.JenkinsBuild{})
-	dataflowTester.ImportCsvIntoTabler("./snapshot_tables/_tool_jenkins_build_repos.csv", models.JenkinsBuildRepo{})
+	dataflowTester.ImportCsvIntoTabler("./snapshot_tables/_tool_jenkins_build_commits.csv", models.JenkinsBuildCommit{})
 	dataflowTester.ImportCsvIntoTabler("./snapshot_tables/cicd_tasks.csv", devops.CICDTask{})
 
 	// verify extraction
diff --git a/plugins/jenkins/impl/impl.go b/plugins/jenkins/impl/impl.go
index 16687a0b..2ba87aaf 100644
--- a/plugins/jenkins/impl/impl.go
+++ b/plugins/jenkins/impl/impl.go
@@ -49,7 +49,7 @@ func (plugin Jenkins) Init(config *viper.Viper, logger core.Logger, db *gorm.DB)
 func (plugin Jenkins) GetTablesInfo() []core.Tabler {
 	return []core.Tabler{
 		&models.JenkinsBuild{},
-		&models.JenkinsBuildRepo{},
+		&models.JenkinsBuildCommit{},
 		&models.JenkinsConnection{},
 		&models.JenkinsJob{},
 		&models.JenkinsJobDag{},
diff --git a/plugins/jenkins/models/build_repo.go b/plugins/jenkins/models/build_commit.go
similarity index 90%
rename from plugins/jenkins/models/build_repo.go
rename to plugins/jenkins/models/build_commit.go
index 2a03e873..4b1f5796 100644
--- a/plugins/jenkins/models/build_repo.go
+++ b/plugins/jenkins/models/build_commit.go
@@ -19,7 +19,7 @@ package models
 
 import "github.com/apache/incubator-devlake/models/common"
 
-type JenkinsBuildRepo struct {
+type JenkinsBuildCommit struct {
 	ConnectionId uint64 `gorm:"primaryKey"`
 	BuildName    string `gorm:"primaryKey;type:varchar(255)"`
 	CommitSha    string `gorm:"primaryKey;type:varchar(255)"`
@@ -28,6 +28,6 @@ type JenkinsBuildRepo struct {
 	common.NoPKModel
 }
 
-func (JenkinsBuildRepo) TableName() string {
-	return "_tool_jenkins_build_repos"
+func (JenkinsBuildCommit) TableName() string {
+	return "_tool_jenkins_build_commits"
 }
diff --git a/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go b/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
index 9d0e6700..94294332 100644
--- a/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
+++ b/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
@@ -79,6 +79,13 @@ func (JenkinsBuil0916) TableName() string {
 	return "_tool_jenkins_builds"
 }
 
+type JenkinsBuildRepo0916 struct {
+}
+
+func (JenkinsBuildRepo0916) TableName() string {
+	return "_tool_jenkins_build_repos"
+}
+
 func (*modifyJenkinsBuild) Up(ctx context.Context, db *gorm.DB) errors.Error {
 	cursor, err := db.Model(&JenkinsBuildOld{}).Rows()
 	if err != nil {
@@ -88,6 +95,10 @@ func (*modifyJenkinsBuild) Up(ctx context.Context, db *gorm.DB) errors.Error {
 	if err != nil {
 		return errors.Default.Wrap(err, "fail to rename _tool_jenkins_builds")
 	}
+	err = db.Migrator().RenameTable(&JenkinsBuildRepo0916{}, "_tool_jenkins_build_commits")
+	if err != nil {
+		return errors.Default.Wrap(err, "fail to rename _tool_jenkins_builds")
+	}
 	err = db.Migrator().AutoMigrate(&JenkinsBuil0916{})
 	if err != nil {
 		return errors.Default.Wrap(err, "fail to create _tool_jenkins_builds")
diff --git a/plugins/jenkins/models/migrationscripts/register.go b/plugins/jenkins/models/migrationscripts/register.go
index 63eb2733..671c6884 100644
--- a/plugins/jenkins/models/migrationscripts/register.go
+++ b/plugins/jenkins/models/migrationscripts/register.go
@@ -26,5 +26,6 @@ func All() []migration.Script {
 	return []migration.Script{
 		new(addInitTables),
 		new(modifyAllEntities),
+		new(modifyJenkinsBuild),
 	}
 }
diff --git a/plugins/jenkins/tasks/build_cicd_convertor.go b/plugins/jenkins/tasks/build_cicd_convertor.go
index ea524e6c..e4c998b6 100644
--- a/plugins/jenkins/tasks/build_cicd_convertor.go
+++ b/plugins/jenkins/tasks/build_cicd_convertor.go
@@ -18,7 +18,6 @@ limitations under the License.
 package tasks
 
 import (
-	"fmt"
 	"github.com/apache/incubator-devlake/errors"
 	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
 	"github.com/apache/incubator-devlake/plugins/jenkins/models"
@@ -53,6 +52,7 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 		return err
 	}
 	defer cursor.Close()
+	buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
 
 	converter, err := helper.NewDataConverter(helper.DataConverterArgs{
 		InputRowType: reflect.TypeOf(models.JenkinsBuild{}),
@@ -86,7 +86,6 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 				finishTime := jenkinsBuild.StartTime.Add(time.Duration(durationSec * int64(time.Second)))
 				jenkinsPipelineFinishedDate = &finishTime
 			}
-			buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
 			jenkinsPipeline := &devops.CICDPipeline{
 				DomainEntity: domainlayer.DomainEntity{
 					Id: buildIdGen.Generate(jenkinsBuild.ConnectionId,
@@ -115,7 +114,7 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 			if !jenkinsBuild.HasStages {
 				jenkinsTask := &devops.CICDTask{
 					DomainEntity: domainlayer.DomainEntity{
-						Id: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsTask", jenkinsBuild.ConnectionId,
+						Id: buildIdGen.Generate(jenkinsBuild.ConnectionId,
 							jenkinsBuild.FullDisplayName),
 					},
 					Name:         jenkinsBuild.JobName,
diff --git a/plugins/jenkins/tasks/build_repo_convertor.go b/plugins/jenkins/tasks/build_commit_convertor.go
similarity index 84%
rename from plugins/jenkins/tasks/build_repo_convertor.go
rename to plugins/jenkins/tasks/build_commit_convertor.go
index 0dd10749..8af205d3 100644
--- a/plugins/jenkins/tasks/build_repo_convertor.go
+++ b/plugins/jenkins/tasks/build_commit_convertor.go
@@ -19,6 +19,7 @@ package tasks
 
 import (
 	"github.com/apache/incubator-devlake/errors"
+	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
 	"reflect"
 
 	"github.com/apache/incubator-devlake/models/domainlayer/devops"
@@ -42,7 +43,7 @@ func ConvertBuildRepos(taskCtx core.SubTaskContext) errors.Error {
 
 	clauses := []dal.Clause{
 		dal.Select("*"),
-		dal.From(&models.JenkinsBuildRepo{}),
+		dal.From(&models.JenkinsBuildCommit{}),
 		dal.Where("connection_id = ?", data.Options.ConnectionId),
 	}
 	cursor, err := db.Cursor(clauses...)
@@ -50,9 +51,10 @@ func ConvertBuildRepos(taskCtx core.SubTaskContext) errors.Error {
 		return err
 	}
 	defer cursor.Close()
+	buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
 
 	converter, err := helper.NewDataConverter(helper.DataConverterArgs{
-		InputRowType: reflect.TypeOf(models.JenkinsBuildRepo{}),
+		InputRowType: reflect.TypeOf(models.JenkinsBuildCommit{}),
 		Input:        cursor,
 		RawDataSubTaskArgs: helper.RawDataSubTaskArgs{
 			Params: JenkinsApiParams{
@@ -62,11 +64,10 @@ func ConvertBuildRepos(taskCtx core.SubTaskContext) errors.Error {
 			Table: RAW_BUILD_TABLE,
 		},
 		Convert: func(inputRow interface{}) ([]interface{}, errors.Error) {
-			jenkinsBuildRepo := inputRow.(*models.JenkinsBuildRepo)
-			buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
-			build := &devops.CiCDPipelineRepo{
-				PipelineId: buildIdGen.Generate(jenkinsBuild.ConnectionId,
-						jenkinsBuildRepo.BuildName),
+			jenkinsBuildRepo := inputRow.(*models.JenkinsBuildCommit)
+			build := &devops.CiCDPipelineCommit{
+				PipelineId: buildIdGen.Generate(jenkinsBuildRepo.ConnectionId,
+					jenkinsBuildRepo.BuildName),
 				CommitSha: jenkinsBuildRepo.CommitSha,
 				Branch:    jenkinsBuildRepo.Branch,
 				RepoUrl:   jenkinsBuildRepo.RepoUrl,
diff --git a/plugins/jenkins/tasks/build_extractor.go b/plugins/jenkins/tasks/build_extractor.go
index 2d1d233f..e0968138 100644
--- a/plugins/jenkins/tasks/build_extractor.go
+++ b/plugins/jenkins/tasks/build_extractor.go
@@ -101,7 +101,7 @@ func ExtractApiBuilds(taskCtx core.SubTaskContext) errors.Error {
 					}
 					for _, url := range a.RemoteUrls {
 						if url != "" {
-							buildCommitRemoteUrl := models.JenkinsBuildRepo{
+							buildCommitRemoteUrl := models.JenkinsBuildCommit{
 								ConnectionId: data.Options.ConnectionId,
 								BuildName:    build.FullDisplayName,
 								CommitSha:    sha,
diff --git a/plugins/jenkins/tasks/stage_convertor.go b/plugins/jenkins/tasks/stage_convertor.go
index f300b181..978ccbc0 100644
--- a/plugins/jenkins/tasks/stage_convertor.go
+++ b/plugins/jenkins/tasks/stage_convertor.go
@@ -18,8 +18,9 @@ limitations under the License.
 package tasks
 
 import (
-	"fmt"
 	"github.com/apache/incubator-devlake/errors"
+	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
+	"github.com/apache/incubator-devlake/plugins/jenkins/models"
 	"reflect"
 	"time"
 
@@ -77,7 +78,8 @@ func ConvertStages(taskCtx core.SubTaskContext) errors.Error {
 		return err
 	}
 	defer cursor.Close()
-
+	stageIdGen := didgen.NewDomainIdGenerator(&models.JenkinsStage{})
+	buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
 	convertor, err := helper.NewDataConverter(helper.DataConverterArgs{
 		InputRowType: reflect.TypeOf(JenkinsBuildWithRepoStage{}),
 		Input:        cursor,
@@ -108,14 +110,13 @@ func ConvertStages(taskCtx core.SubTaskContext) errors.Error {
 			startedDate := time.Unix(body.StartTimeMillis/1000, 0)
 			finishedDate := startedDate.Add(time.Duration(durationSec * int64(time.Second)))
 			jenkinsTaskFinishedDate = &finishedDate
-
 			jenkinsTask := &devops.CICDTask{
 				DomainEntity: domainlayer.DomainEntity{
-					Id: fmt.Sprintf("%s:%s:%d:%s:%s", "jenkins", "JenkinsStage", body.ConnectionId,
+					Id: stageIdGen.Generate(body.ConnectionId,
 						body.BuildName, body.Name),
 				},
 				Name: body.Name,
-				PipelineId: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsPipeline", body.ConnectionId,
+				PipelineId: buildIdGen.Generate(body.ConnectionId,
 					body.BuildName),
 				Result:       jenkinsTaskResult,
 				Status:       jenkinsTaskStatus,


[incubator-devlake] 01/05: fix(plugins): use didgen

Posted by ab...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 7db91aeaa31955618cb441bd0f35a56f1ca546b1
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 16 17:32:22 2022 +0800

    fix(plugins): use didgen
    
    closes #3087
---
 plugins/bitbucket/tasks/commit_extractor.go        |   2 +-
 plugins/jenkins/api/connection.go                  |   2 +-
 plugins/jenkins/api/init.go                        |   6 +-
 plugins/jenkins/e2e/builds_test.go                 |   2 +-
 plugins/jenkins/models/build.go                    |   6 +-
 .../20220916_modify_jenkins_build.go               | 146 +++++++++++++++++++++
 plugins/jenkins/tasks/build_cicd_convertor.go      |  17 +--
 plugins/jenkins/tasks/build_extractor.go           |   4 +-
 plugins/jenkins/tasks/build_repo_convertor.go      |   8 +-
 plugins/jenkins/tasks/stage_collector.go           |   2 +-
 plugins/jenkins/tasks/stage_convertor.go           |   2 +-
 11 files changed, 172 insertions(+), 25 deletions(-)

diff --git a/plugins/bitbucket/tasks/commit_extractor.go b/plugins/bitbucket/tasks/commit_extractor.go
index c6c44c43..75aee98e 100644
--- a/plugins/bitbucket/tasks/commit_extractor.go
+++ b/plugins/bitbucket/tasks/commit_extractor.go
@@ -99,7 +99,7 @@ func ExtractApiCommits(taskCtx core.SubTaskContext) errors.Error {
 			}
 
 			//if commit.Author != nil {
-			//	bitbucketCommit.AuthorName = commit.Author.User.DisplayName
+			//	bitbucketCommit.AuthorName = commit.Author.User.FullDisplayName
 			//	bitbucketCommit.AuthorId = commit.Author.User.AccountId
 			//	results = append(results, commit.Author)
 			//}
diff --git a/plugins/jenkins/api/connection.go b/plugins/jenkins/api/connection.go
index 6cd53092..bd52567f 100644
--- a/plugins/jenkins/api/connection.go
+++ b/plugins/jenkins/api/connection.go
@@ -58,7 +58,7 @@ func TestConnection(input *core.ApiResourceInput) (*core.ApiResourceOutput, erro
 		},
 		3*time.Second,
 		connection.Proxy,
-		basicRes,
+		BasicRes,
 	)
 	if err != nil {
 		return nil, err
diff --git a/plugins/jenkins/api/init.go b/plugins/jenkins/api/init.go
index 6774e148..f1fb68f9 100644
--- a/plugins/jenkins/api/init.go
+++ b/plugins/jenkins/api/init.go
@@ -27,13 +27,13 @@ import (
 
 var vld *validator.Validate
 var connectionHelper *helper.ConnectionApiHelper
-var basicRes core.BasicRes
+var BasicRes core.BasicRes
 
 func Init(config *viper.Viper, logger core.Logger, database *gorm.DB) {
-	basicRes = helper.NewDefaultBasicRes(config, logger, database)
+	BasicRes = helper.NewDefaultBasicRes(config, logger, database)
 	vld = validator.New()
 	connectionHelper = helper.NewConnectionHelper(
-		basicRes,
+		BasicRes,
 		vld,
 	)
 }
diff --git a/plugins/jenkins/e2e/builds_test.go b/plugins/jenkins/e2e/builds_test.go
index 81978338..40112595 100644
--- a/plugins/jenkins/e2e/builds_test.go
+++ b/plugins/jenkins/e2e/builds_test.go
@@ -55,7 +55,7 @@ func TestJenkinsBuildsDataFlow(t *testing.T) {
 			"connection_id",
 			"job_name",
 			"duration",
-			"display_name",
+			"full_display_name",
 			"estimated_duration",
 			"number",
 			"result",
diff --git a/plugins/jenkins/models/build.go b/plugins/jenkins/models/build.go
index fc347bdb..8e3a4fad 100644
--- a/plugins/jenkins/models/build.go
+++ b/plugins/jenkins/models/build.go
@@ -28,11 +28,11 @@ type JenkinsBuild struct {
 	common.NoPKModel
 	// collected fields
 	ConnectionId      uint64    `gorm:"primaryKey"`
-	JobName           string    `gorm:"primaryKey;type:varchar(255)"`
+	JobName           string    `gorm:"index;type:varchar(255)"`
 	Duration          float64   // build time
-	DisplayName       string    `gorm:"type:varchar(255)"` // "#7"
+	FullDisplayName   string    `gorm:"primaryKey;type:varchar(255)"` // "job name #7"
 	EstimatedDuration float64   // EstimatedDuration
-	Number            int64     `gorm:"primaryKey"`
+	Number            int64     `gorm:"index"`
 	Result            string    // Result
 	Timestamp         int64     // start time
 	StartTime         time.Time // convered by timestamp
diff --git a/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go b/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
new file mode 100644
index 00000000..9d0e6700
--- /dev/null
+++ b/plugins/jenkins/models/migrationscripts/20220916_modify_jenkins_build.go
@@ -0,0 +1,146 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package migrationscripts
+
+import (
+	"context"
+	"fmt"
+	"github.com/apache/incubator-devlake/errors"
+	"github.com/apache/incubator-devlake/models/migrationscripts/archived"
+	"github.com/apache/incubator-devlake/plugins/helper"
+	"github.com/apache/incubator-devlake/plugins/jenkins/api"
+	"gorm.io/gorm"
+	"reflect"
+	"strings"
+	"time"
+)
+
+type modifyJenkinsBuild struct{}
+
+type JenkinsBuildOld struct {
+	archived.NoPKModel
+	// collected fields
+	ConnectionId      uint64    `gorm:"primaryKey"`
+	JobName           string    `gorm:"primaryKey;type:varchar(255)"`
+	Duration          float64   // build time
+	DisplayName       string    `gorm:"type:varchar(255)"` // "#7"
+	EstimatedDuration float64   // EstimatedDuration
+	Number            int64     `gorm:"primaryKey"`
+	Result            string    // Result
+	Timestamp         int64     // start time
+	StartTime         time.Time // convered by timestamp
+	CommitSha         string    `gorm:"type:varchar(255)"`
+	Type              string    `gorm:"index;type:varchar(255)"`
+	Class             string    `gorm:"index;type:varchar(255)" `
+	TriggeredBy       string    `gorm:"type:varchar(255)"`
+	Building          bool
+	HasStages         bool
+}
+
+func (JenkinsBuildOld) TableName() string {
+	return "_tool_jenkins_builds"
+}
+
+type JenkinsBuil0916 struct {
+	archived.NoPKModel
+	// collected fields
+	ConnectionId      uint64    `gorm:"primaryKey"`
+	JobName           string    `gorm:"index;type:varchar(255)"`
+	Duration          float64   // build time
+	FullDisplayName   string    `gorm:"primaryKey;type:varchar(255)"` // "#7"
+	EstimatedDuration float64   // EstimatedDuration
+	Number            int64     `gorm:"index"`
+	Result            string    // Result
+	Timestamp         int64     // start time
+	StartTime         time.Time // convered by timestamp
+	Type              string    `gorm:"index;type:varchar(255)"`
+	Class             string    `gorm:"index;type:varchar(255)" `
+	TriggeredBy       string    `gorm:"type:varchar(255)"`
+	Building          bool
+	HasStages         bool
+}
+
+func (JenkinsBuil0916) TableName() string {
+	return "_tool_jenkins_builds"
+}
+
+func (*modifyJenkinsBuild) Up(ctx context.Context, db *gorm.DB) errors.Error {
+	cursor, err := db.Model(&JenkinsBuildOld{}).Rows()
+	if err != nil {
+		return errors.Convert(err)
+	}
+	err = db.Migrator().RenameTable(&JenkinsBuildOld{}, "_tool_jenkins_builds_old")
+	if err != nil {
+		return errors.Default.Wrap(err, "fail to rename _tool_jenkins_builds")
+	}
+	err = db.Migrator().AutoMigrate(&JenkinsBuil0916{})
+	if err != nil {
+		return errors.Default.Wrap(err, "fail to create _tool_jenkins_builds")
+	}
+	batch, err := helper.NewBatchSave(api.BasicRes, reflect.TypeOf(&JenkinsBuil0916{}), 300)
+	if err != nil {
+		return errors.Default.Wrap(err, "error getting batch from table")
+	}
+	defer batch.Close()
+	for cursor.Next() {
+		build := JenkinsBuildOld{}
+		err = db.ScanRows(cursor, &build)
+		if err != nil {
+			return errors.Convert(err)
+		}
+		newBuild := &JenkinsBuil0916{
+			NoPKModel:         build.NoPKModel,
+			ConnectionId:      build.ConnectionId,
+			JobName:           build.JobName,
+			Duration:          build.Duration,
+			FullDisplayName:   build.DisplayName,
+			EstimatedDuration: build.EstimatedDuration,
+			Number:            build.Number,
+			Result:            build.Result,
+			Timestamp:         build.Timestamp,
+			StartTime:         build.StartTime,
+			Type:              build.Type,
+			Class:             build.Class,
+			TriggeredBy:       build.TriggeredBy,
+			Building:          build.Building,
+			HasStages:         build.HasStages,
+		}
+		if strings.Contains(build.DisplayName, build.JobName) {
+			newBuild.FullDisplayName = build.DisplayName
+		} else {
+			newBuild.FullDisplayName = fmt.Sprintf("%s %s", build.JobName, build.DisplayName)
+		}
+		err = batch.Add(&newBuild)
+		if err != nil {
+			return errors.Convert(err)
+		}
+	}
+	if err != nil {
+		return errors.Convert(err)
+	}
+
+	return nil
+}
+
+func (*modifyJenkinsBuild) Version() uint64 {
+	return 20220916231237
+}
+
+func (*modifyJenkinsBuild) Name() string {
+	return "Jenkins modify build primary key"
+}
diff --git a/plugins/jenkins/tasks/build_cicd_convertor.go b/plugins/jenkins/tasks/build_cicd_convertor.go
index 97486132..ea524e6c 100644
--- a/plugins/jenkins/tasks/build_cicd_convertor.go
+++ b/plugins/jenkins/tasks/build_cicd_convertor.go
@@ -20,6 +20,7 @@ package tasks
 import (
 	"fmt"
 	"github.com/apache/incubator-devlake/errors"
+	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
 	"github.com/apache/incubator-devlake/plugins/jenkins/models"
 	"reflect"
 	"time"
@@ -85,10 +86,11 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 				finishTime := jenkinsBuild.StartTime.Add(time.Duration(durationSec * int64(time.Second)))
 				jenkinsPipelineFinishedDate = &finishTime
 			}
+			buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
 			jenkinsPipeline := &devops.CICDPipeline{
 				DomainEntity: domainlayer.DomainEntity{
-					Id: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsPipeline", jenkinsBuild.ConnectionId,
-						jenkinsBuild.DisplayName),
+					Id: buildIdGen.Generate(jenkinsBuild.ConnectionId,
+						jenkinsBuild.FullDisplayName),
 				},
 				Name:         jenkinsBuild.JobName,
 				Result:       jenkinsPipelineResult,
@@ -100,10 +102,10 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 
 			if jenkinsBuild.TriggeredBy != "" {
 				domainPipelineRelation := &devops.CICDPipelineRelationship{
-					ParentPipelineId: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsPipeline", jenkinsBuild.ConnectionId,
+					ParentPipelineId: buildIdGen.Generate(jenkinsBuild.ConnectionId,
 						jenkinsBuild.TriggeredBy),
-					ChildPipelineId: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsPipeline", jenkinsBuild.ConnectionId,
-						jenkinsBuild.DisplayName),
+					ChildPipelineId: buildIdGen.Generate(jenkinsBuild.ConnectionId,
+						jenkinsBuild.FullDisplayName),
 				}
 				results = append(results, domainPipelineRelation)
 			}
@@ -114,7 +116,7 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 				jenkinsTask := &devops.CICDTask{
 					DomainEntity: domainlayer.DomainEntity{
 						Id: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsTask", jenkinsBuild.ConnectionId,
-							jenkinsBuild.DisplayName),
+							jenkinsBuild.FullDisplayName),
 					},
 					Name:         jenkinsBuild.JobName,
 					Result:       jenkinsPipelineResult,
@@ -124,8 +126,7 @@ func ConvertBuildsToCICD(taskCtx core.SubTaskContext) errors.Error {
 					FinishedDate: jenkinsPipelineFinishedDate,
 				}
 
-				jenkinsTask.PipelineId = fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsPipeline",
-					jenkinsBuild.ConnectionId, jenkinsBuild.DisplayName)
+				jenkinsTask.PipelineId = buildIdGen.Generate(jenkinsBuild.ConnectionId, jenkinsBuild.FullDisplayName)
 
 				jenkinsTask.RawDataOrigin = jenkinsBuild.RawDataOrigin
 				results = append(results, jenkinsTask)
diff --git a/plugins/jenkins/tasks/build_extractor.go b/plugins/jenkins/tasks/build_extractor.go
index ba51475e..2d1d233f 100644
--- a/plugins/jenkins/tasks/build_extractor.go
+++ b/plugins/jenkins/tasks/build_extractor.go
@@ -76,7 +76,7 @@ func ExtractApiBuilds(taskCtx core.SubTaskContext) errors.Error {
 				ConnectionId:      data.Options.ConnectionId,
 				JobName:           input.Name,
 				Duration:          body.Duration,
-				DisplayName:       body.DisplayName,
+				FullDisplayName:   body.DisplayName,
 				EstimatedDuration: body.EstimatedDuration,
 				Number:            body.Number,
 				Result:            body.Result,
@@ -103,7 +103,7 @@ func ExtractApiBuilds(taskCtx core.SubTaskContext) errors.Error {
 						if url != "" {
 							buildCommitRemoteUrl := models.JenkinsBuildRepo{
 								ConnectionId: data.Options.ConnectionId,
-								BuildName:    build.DisplayName,
+								BuildName:    build.FullDisplayName,
 								CommitSha:    sha,
 								RepoUrl:      url,
 								Branch:       branch,
diff --git a/plugins/jenkins/tasks/build_repo_convertor.go b/plugins/jenkins/tasks/build_repo_convertor.go
index ac0b68eb..0dd10749 100644
--- a/plugins/jenkins/tasks/build_repo_convertor.go
+++ b/plugins/jenkins/tasks/build_repo_convertor.go
@@ -18,7 +18,6 @@ limitations under the License.
 package tasks
 
 import (
-	"fmt"
 	"github.com/apache/incubator-devlake/errors"
 	"reflect"
 
@@ -64,9 +63,10 @@ func ConvertBuildRepos(taskCtx core.SubTaskContext) errors.Error {
 		},
 		Convert: func(inputRow interface{}) ([]interface{}, errors.Error) {
 			jenkinsBuildRepo := inputRow.(*models.JenkinsBuildRepo)
-			build := &devops.CiCDPipelineCommit{
-				PipelineId: fmt.Sprintf("%s:%s:%d:%s", "jenkins", "JenkinsTask", jenkinsBuildRepo.ConnectionId,
-					jenkinsBuildRepo.BuildName),
+			buildIdGen := didgen.NewDomainIdGenerator(&models.JenkinsBuild{})
+			build := &devops.CiCDPipelineRepo{
+				PipelineId: buildIdGen.Generate(jenkinsBuild.ConnectionId,
+						jenkinsBuildRepo.BuildName),
 				CommitSha: jenkinsBuildRepo.CommitSha,
 				Branch:    jenkinsBuildRepo.Branch,
 				RepoUrl:   jenkinsBuildRepo.RepoUrl,
diff --git a/plugins/jenkins/tasks/stage_collector.go b/plugins/jenkins/tasks/stage_collector.go
index 43c810ef..3ba652ea 100644
--- a/plugins/jenkins/tasks/stage_collector.go
+++ b/plugins/jenkins/tasks/stage_collector.go
@@ -50,7 +50,7 @@ func CollectApiStages(taskCtx core.SubTaskContext) errors.Error {
 	db := taskCtx.GetDal()
 	data := taskCtx.GetData().(*JenkinsTaskData)
 	clauses := []dal.Clause{
-		dal.Select("tjj.path,tjb.job_name,tjb.number,tjb.display_name"),
+		dal.Select("tjj.path,tjb.job_name,tjb.number,tjb.full_display_name"),
 		dal.From("_tool_jenkins_builds as tjb,_tool_jenkins_jobs as tjj"),
 		dal.Where(`tjb.connection_id = ? and tjb.class = ? and tjb.job_name = tjj.name`,
 			data.Options.ConnectionId, "WorkflowRun"),
diff --git a/plugins/jenkins/tasks/stage_convertor.go b/plugins/jenkins/tasks/stage_convertor.go
index b68e6168..f300b181 100644
--- a/plugins/jenkins/tasks/stage_convertor.go
+++ b/plugins/jenkins/tasks/stage_convertor.go
@@ -68,7 +68,7 @@ func ConvertStages(taskCtx core.SubTaskContext) errors.Error {
 			tjs.pause_duration_millis, tjs.type, 
 			tjb.triggered_by, tjb.building`),
 		dal.From("_tool_jenkins_builds tjb"),
-		dal.Join("left join _tool_jenkins_stages tjs on tjs.build_name = tjb.display_name"),
+		dal.Join("left join _tool_jenkins_stages tjs on tjs.build_name = tjb.full_display_name"),
 		dal.Where("tjb.connection_id = ? ", data.Options.ConnectionId),
 	}
 


[incubator-devlake] 04/05: fix(gitlab): use didgen instead of fmt

Posted by ab...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit a19aaf2f1c4197fe878975e666874803a05cfe5f
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 16 19:20:32 2022 +0800

    fix(gitlab): use didgen instead of fmt
---
 plugins/gitlab/tasks/pipeline_convertor.go | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/plugins/gitlab/tasks/pipeline_convertor.go b/plugins/gitlab/tasks/pipeline_convertor.go
index 47c8c89f..57474915 100644
--- a/plugins/gitlab/tasks/pipeline_convertor.go
+++ b/plugins/gitlab/tasks/pipeline_convertor.go
@@ -50,6 +50,7 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 	defer cursor.Close()
 
 	pipelineIdGen := didgen.NewDomainIdGenerator(&gitlabModels.GitlabPipeline{})
+	projectIdGen := didgen.NewDomainIdGenerator(&gitlabModels.GitlabProject{})
 
 	converter, err := helper.NewDataConverter(helper.DataConverterArgs{
 		InputRowType: reflect.TypeOf(gitlabModels.GitlabPipeline{}),
@@ -74,7 +75,7 @@ func ConvertPipelines(taskCtx core.SubTaskContext) errors.Error {
 				DomainEntity: domainlayer.DomainEntity{
 					Id: pipelineIdGen.Generate(data.Options.ConnectionId, gitlabPipeline.GitlabId),
 				},
-				Name: didgen.NewDomainIdGenerator(&gitlabModels.GitlabProject{}).
+				Name: projectIdGen.
 					Generate(data.Options.ConnectionId, gitlabPipeline.ProjectId),
 				Result: devops.GetResult(&devops.ResultRule{
 					Failed:  []string{"failed"},