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/09 15:16:32 UTC

[incubator-devlake] branch main updated: fix(gitlab): update e2e

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


The following commit(s) were added to refs/heads/main by this push:
     new fa40bf92 fix(gitlab): update e2e
fa40bf92 is described below

commit fa40bf92015e307900c2f5c03de8404490b5ef4b
Author: Yingchu Chen <yi...@merico.dev>
AuthorDate: Fri Sep 9 22:16:26 2022 +0800

    fix(gitlab): update e2e
    
    relate to #2871
---
 plugins/gitlab/e2e/job_test.go                     | 23 +++++++-
 plugins/gitlab/e2e/pipelines_test.go               | 33 +++++++++++
 .../e2e/snapshot_tables/cicd_pipeline_repos.csv    | 21 +++++++
 .../gitlab/e2e/snapshot_tables/cicd_pipelines.csv  | 21 +++++++
 plugins/gitlab/e2e/snapshot_tables/cicd_tasks.csv  | 68 ++++++++++++++++++++++
 plugins/gitlab/tasks/job_convertor.go              | 10 ++--
 6 files changed, 168 insertions(+), 8 deletions(-)

diff --git a/plugins/gitlab/e2e/job_test.go b/plugins/gitlab/e2e/job_test.go
index ceec7094..a73f1398 100644
--- a/plugins/gitlab/e2e/job_test.go
+++ b/plugins/gitlab/e2e/job_test.go
@@ -18,6 +18,7 @@ limitations under the License.
 package e2e
 
 import (
+	"github.com/apache/incubator-devlake/models/domainlayer/devops"
 	"testing"
 
 	"github.com/apache/incubator-devlake/helpers/e2ehelper"
@@ -60,15 +61,33 @@ func TestGitlabJobDataFlow(t *testing.T) {
 			"allow_failure",
 			"duration",
 			"web_url",
-
 			"gitlab_created_at",
 			"started_at",
 			"finished_at",
-
 			"_raw_data_params",
 			"_raw_data_table",
 			"_raw_data_id",
 			"_raw_data_remark",
 		},
 	)
+
+	// verify conversion
+	dataflowTester.FlushTabler(&devops.CICDTask{})
+	dataflowTester.Subtask(tasks.ConvertJobMeta, taskData)
+	dataflowTester.VerifyTable(
+		devops.CICDTask{},
+		"./snapshot_tables/cicd_tasks.csv",
+		[]string{
+			"id",
+			"name",
+			"pipeline_id",
+			"result",
+			"status",
+			"type",
+			"duration_sec",
+			"started_date",
+			"finished_date",
+			"environment",
+		},
+	)
 }
diff --git a/plugins/gitlab/e2e/pipelines_test.go b/plugins/gitlab/e2e/pipelines_test.go
index 5e0cd500..e15699a8 100644
--- a/plugins/gitlab/e2e/pipelines_test.go
+++ b/plugins/gitlab/e2e/pipelines_test.go
@@ -18,6 +18,7 @@ limitations under the License.
 package e2e
 
 import (
+	"github.com/apache/incubator-devlake/models/domainlayer/devops"
 	"testing"
 
 	"github.com/apache/incubator-devlake/helpers/e2ehelper"
@@ -79,4 +80,36 @@ func TestGitlabPipelineDataFlow(t *testing.T) {
 			"_raw_data_remark",
 		},
 	)
+
+	// verify conversion
+	dataflowTester.FlushTabler(&devops.CICDPipeline{})
+	dataflowTester.FlushTabler(&devops.CiCDPipelineRepo{})
+	dataflowTester.Subtask(tasks.ConvertPipelineMeta, taskData)
+	dataflowTester.Subtask(tasks.ConvertPipelineProjectMeta, taskData)
+	dataflowTester.VerifyTable(
+		devops.CICDPipeline{},
+		"./snapshot_tables/cicd_pipelines.csv",
+		[]string{
+			"id",
+			"name",
+			"result",
+			"status",
+			"type",
+			"duration_sec",
+			"created_date",
+			"finished_date",
+			"environment",
+		},
+	)
+
+	dataflowTester.VerifyTable(
+		devops.CiCDPipelineRepo{},
+		"./snapshot_tables/cicd_pipeline_repos.csv",
+		[]string{
+			"id",
+			"commit_sha",
+			"branch",
+			"repo",
+		},
+	)
 }
diff --git a/plugins/gitlab/e2e/snapshot_tables/cicd_pipeline_repos.csv b/plugins/gitlab/e2e/snapshot_tables/cicd_pipeline_repos.csv
new file mode 100644
index 00000000..6288aab4
--- /dev/null
+++ b/plugins/gitlab/e2e/snapshot_tables/cicd_pipeline_repos.csv
@@ -0,0 +1,21 @@
+id,commit_sha,branch,repo
+gitlab:GitlabPipeline:1:457474837,b1b82852d48b516a18e56c5bab0ebf54b8f4ccfd,renovate/pin-dependencies,gitlab:GitlabProject:1:457474837
+gitlab:GitlabPipeline:1:457474996,739ab912e6e1ed27cecd8a2d00bfd6fa52afd90a,renovate/jest-monorepo,gitlab:GitlabProject:1:457474996
+gitlab:GitlabPipeline:1:457475160,44d127e0ab7dbc4bc259b55929c9d00b62fc3bf4,renovate/lodash-monorepo,gitlab:GitlabProject:1:457475160
+gitlab:GitlabPipeline:1:457475337,10a6464b6bd2cf4b59b8ac37ce1466e013f5a20d,renovate/shx-0.x,gitlab:GitlabProject:1:457475337
+gitlab:GitlabPipeline:1:485811050,c791ea6949d6b4aadf79b15ba666cb690c6527ac,EE-7121,gitlab:GitlabProject:1:485811050
+gitlab:GitlabPipeline:1:485811059,c791ea6949d6b4aadf79b15ba666cb690c6527ac,refs/merge-requests/74/head,gitlab:GitlabProject:1:485811059
+gitlab:GitlabPipeline:1:485813816,ecc7c0b2874c812ed882c9effbbda26e0abc7110,EE-7121,gitlab:GitlabProject:1:485813816
+gitlab:GitlabPipeline:1:485813830,ecc7c0b2874c812ed882c9effbbda26e0abc7110,refs/merge-requests/74/head,gitlab:GitlabProject:1:485813830
+gitlab:GitlabPipeline:1:485814501,6a3346f8434cc65fbe3f7a80a0edec5b4014a733,EE-7121,gitlab:GitlabProject:1:485814501
+gitlab:GitlabPipeline:1:485814516,6a3346f8434cc65fbe3f7a80a0edec5b4014a733,refs/merge-requests/74/head,gitlab:GitlabProject:1:485814516
+gitlab:GitlabPipeline:1:485814871,f731732471961fed061a01fa99631f69e861c4a2,refs/merge-requests/74/head,gitlab:GitlabProject:1:485814871
+gitlab:GitlabPipeline:1:485817670,5b95c5aebce1eae6a1b95ecf6fbc870851455375,refs/merge-requests/74/head,gitlab:GitlabProject:1:485817670
+gitlab:GitlabPipeline:1:485837602,a79e2aaeee9916338a11b665cb4201f24627f3f1,refs/merge-requests/74/head,gitlab:GitlabProject:1:485837602
+gitlab:GitlabPipeline:1:485842553,9e0934cedcd83abab8d34c5bb0f597c7837a55f0,refs/merge-requests/74/head,gitlab:GitlabProject:1:485842553
+gitlab:GitlabPipeline:1:485845850,b3b581940f6d4d3226db31e48eab2b3b73f4c6db,refs/merge-requests/74/head,gitlab:GitlabProject:1:485845850
+gitlab:GitlabPipeline:1:485852752,82df93eeb72c71271dad5a85359f39661de899fe,refs/merge-requests/74/head,gitlab:GitlabProject:1:485852752
+gitlab:GitlabPipeline:1:485865876,db45efd231dbaca1337bd29bc1f65f404754e6bd,refs/merge-requests/74/head,gitlab:GitlabProject:1:485865876
+gitlab:GitlabPipeline:1:485877118,09f81b1b2d083411c0bfecd32d7728479b594503,refs/merge-requests/74/head,gitlab:GitlabProject:1:485877118
+gitlab:GitlabPipeline:1:485905167,cce432655861efafcd05edc8de09e305c772d2b8,refs/merge-requests/74/head,gitlab:GitlabProject:1:485905167
+gitlab:GitlabPipeline:1:485932863,12fc3a42080bb98ca520817bd4fe0ca33c0bb279,refs/merge-requests/74/head,gitlab:GitlabProject:1:485932863
diff --git a/plugins/gitlab/e2e/snapshot_tables/cicd_pipelines.csv b/plugins/gitlab/e2e/snapshot_tables/cicd_pipelines.csv
new file mode 100644
index 00000000..158b9ec8
--- /dev/null
+++ b/plugins/gitlab/e2e/snapshot_tables/cicd_pipelines.csv
@@ -0,0 +1,21 @@
+id,name,result,status,type,duration_sec,created_date,finished_date,environment
+gitlab:GitlabPipeline:1:457474837,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-01-27T10:07:09.429+00:00,2022-01-27T10:07:09.553+00:00,
+gitlab:GitlabPipeline:1:457474996,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-01-27T10:07:18.884+00:00,2022-01-27T10:07:19.043+00:00,
+gitlab:GitlabPipeline:1:457475160,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-01-27T10:07:26.435+00:00,2022-01-27T10:07:26.638+00:00,
+gitlab:GitlabPipeline:1:457475337,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,1,2022-01-27T10:07:36.502+00:00,2022-01-27T10:07:37.545+00:00,
+gitlab:GitlabPipeline:1:485811050,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:26:42.109+00:00,2022-03-07T06:26:42.109+00:00,
+gitlab:GitlabPipeline:1:485811059,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:26:43.784+00:00,2022-03-07T06:26:43.784+00:00,
+gitlab:GitlabPipeline:1:485813816,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:33:56.824+00:00,2022-03-07T06:33:56.824+00:00,
+gitlab:GitlabPipeline:1:485813830,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:33:58.889+00:00,2022-03-07T06:33:58.889+00:00,
+gitlab:GitlabPipeline:1:485814501,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:35:28.111+00:00,2022-03-07T06:35:28.111+00:00,
+gitlab:GitlabPipeline:1:485814516,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,0,2022-03-07T06:35:31.255+00:00,2022-03-07T06:35:31.255+00:00,
+gitlab:GitlabPipeline:1:485814871,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,42,2022-03-07T06:36:50.020+00:00,2022-03-07T06:37:32.103+00:00,
+gitlab:GitlabPipeline:1:485817670,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,1956,2022-03-07T06:45:09.471+00:00,2022-03-07T07:17:46.305+00:00,
+gitlab:GitlabPipeline:1:485837602,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,434,2022-03-07T07:20:45.859+00:00,2022-03-07T07:28:00.277+00:00,
+gitlab:GitlabPipeline:1:485842553,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,287,2022-03-07T07:30:47.018+00:00,2022-03-07T07:35:34.998+00:00,
+gitlab:GitlabPipeline:1:485845850,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,419,2022-03-07T07:38:58.611+00:00,2022-03-07T07:45:58.412+00:00,
+gitlab:GitlabPipeline:1:485852752,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,319,2022-03-07T07:46:09.385+00:00,2022-03-07T07:51:28.709+00:00,
+gitlab:GitlabPipeline:1:485865876,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,480,2022-03-07T08:04:56.406+00:00,2022-03-07T08:12:56.453+00:00,
+gitlab:GitlabPipeline:1:485877118,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,289,2022-03-07T08:22:48.943+00:00,2022-03-07T08:27:38.364+00:00,
+gitlab:GitlabPipeline:1:485905167,gitlab:GitlabProject:1:0,FAILURE,DONE,CI/CD,687,2022-03-07T09:02:09.994+00:00,2022-03-07T09:13:37.013+00:00,
+gitlab:GitlabPipeline:1:485932863,gitlab:GitlabProject:1:0,SUCCESS,DONE,CI/CD,398,2022-03-07T09:34:57.476+00:00,2022-03-07T09:41:36.267+00:00,
diff --git a/plugins/gitlab/e2e/snapshot_tables/cicd_tasks.csv b/plugins/gitlab/e2e/snapshot_tables/cicd_tasks.csv
new file mode 100644
index 00000000..afc60453
--- /dev/null
+++ b/plugins/gitlab/e2e/snapshot_tables/cicd_tasks.csv
@@ -0,0 +1,68 @@
+id,name,pipeline_id,result,status,type,duration_sec,started_date,finished_date,environment
+gitlab:GitlabJob:1:100,100,gitlab:GitlabJob:1:24,SUCCESS,DONE,CI/CD,2,2022-07-25T15:06:57.051+00:00,2022-07-25T15:06:59.885+00:00,
+gitlab:GitlabJob:1:101,101,gitlab:GitlabJob:1:25,SUCCESS,DONE,CI/CD,3,2022-07-25T15:13:37.206+00:00,2022-07-25T15:13:40.246+00:00,
+gitlab:GitlabJob:1:102,102,gitlab:GitlabJob:1:26,SUCCESS,DONE,CI/CD,2,2022-07-25T15:30:22.560+00:00,2022-07-25T15:30:25.315+00:00,
+gitlab:GitlabJob:1:103,103,gitlab:GitlabJob:1:27,SUCCESS,DONE,CI/CD,2,2022-07-25T15:30:55.671+00:00,2022-07-25T15:30:58.650+00:00,
+gitlab:GitlabJob:1:104,104,gitlab:GitlabJob:1:28,SUCCESS,DONE,CI/CD,2,2022-07-25T15:32:04.954+00:00,2022-07-25T15:32:07.726+00:00,
+gitlab:GitlabJob:1:105,105,gitlab:GitlabJob:1:28,FAILURE,DONE,CI/CD,3,2022-07-25T15:32:07.953+00:00,2022-07-25T15:32:11.077+00:00,
+gitlab:GitlabJob:1:106,106,gitlab:GitlabJob:1:29,SUCCESS,DONE,CI/CD,2,2022-07-25T15:33:26.382+00:00,2022-07-25T15:33:29.356+00:00,
+gitlab:GitlabJob:1:107,107,gitlab:GitlabJob:1:30,SUCCESS,DONE,CI/CD,2,2022-07-25T15:34:23.665+00:00,2022-07-25T15:34:26.392+00:00,
+gitlab:GitlabJob:1:108,108,gitlab:GitlabJob:1:31,SUCCESS,DONE,CI/CD,2,2022-07-25T15:35:11.707+00:00,2022-07-25T15:35:14.224+00:00,
+gitlab:GitlabJob:1:109,109,gitlab:GitlabJob:1:31,SUCCESS,DONE,CI/CD,3,2022-07-25T15:35:14.724+00:00,2022-07-25T15:35:17.828+00:00,
+gitlab:GitlabJob:1:110,110,gitlab:GitlabJob:1:32,SUCCESS,DONE,CI/CD,2,2022-07-25T15:36:18.097+00:00,2022-07-25T15:36:20.954+00:00,
+gitlab:GitlabJob:1:111,111,gitlab:GitlabJob:1:33,SUCCESS,DONE,CI/CD,3,2022-07-25T15:38:03.463+00:00,2022-07-25T15:38:06.467+00:00,
+gitlab:GitlabJob:1:112,112,gitlab:GitlabJob:1:34,SUCCESS,DONE,CI/CD,3,2022-07-25T21:19:14.509+00:00,2022-07-25T21:19:17.811+00:00,
+gitlab:GitlabJob:1:113,113,gitlab:GitlabJob:1:35,SUCCESS,DONE,CI/CD,5,2022-07-26T09:37:05.694+00:00,2022-07-26T09:37:10.873+00:00,
+gitlab:GitlabJob:1:114,114,gitlab:GitlabJob:1:36,SUCCESS,DONE,CI/CD,2,2022-07-26T09:37:38.057+00:00,2022-07-26T09:37:40.975+00:00,
+gitlab:GitlabJob:1:115,115,gitlab:GitlabJob:1:37,SUCCESS,DONE,CI/CD,3,2022-07-26T09:38:29.318+00:00,2022-07-26T09:38:32.970+00:00,
+gitlab:GitlabJob:1:116,116,gitlab:GitlabJob:1:38,SUCCESS,DONE,CI/CD,3,2022-07-26T21:19:13.888+00:00,2022-07-26T21:19:17.021+00:00,
+gitlab:GitlabJob:1:117,117,gitlab:GitlabJob:1:39,SUCCESS,DONE,CI/CD,3,2022-07-27T08:19:24.376+00:00,2022-07-27T08:19:28.159+00:00,
+gitlab:GitlabJob:1:118,118,gitlab:GitlabJob:1:40,SUCCESS,DONE,CI/CD,4,2022-07-27T21:19:32.288+00:00,2022-07-27T21:19:36.850+00:00,
+gitlab:GitlabJob:1:119,119,gitlab:GitlabJob:1:41,FAILURE,DONE,CI/CD,0,2022-07-28T21:19:24.257+00:00,2022-07-28T23:00:17.842+00:00,
+gitlab:GitlabJob:1:120,120,gitlab:GitlabJob:1:41,SUCCESS,DONE,CI/CD,56,2022-07-29T02:10:58.370+00:00,2022-07-29T02:11:55.170+00:00,
+gitlab:GitlabJob:1:121,121,gitlab:GitlabJob:1:42,FAILURE,DONE,CI/CD,0,2022-07-29T21:19:02.884+00:00,2022-07-29T23:00:24.840+00:00,
+gitlab:GitlabJob:1:122,122,gitlab:GitlabJob:1:43,FAILURE,DONE,CI/CD,0,2022-07-30T21:19:26.310+00:00,2022-07-30T23:00:25.126+00:00,
+gitlab:GitlabJob:1:123,123,gitlab:GitlabJob:1:44,FAILURE,DONE,CI/CD,0,2022-07-31T21:19:05.348+00:00,2022-07-31T23:00:29.135+00:00,
+gitlab:GitlabJob:1:124,124,gitlab:GitlabJob:1:45,FAILURE,DONE,CI/CD,0,2022-08-01T21:19:02.489+00:00,2022-08-01T23:00:22.874+00:00,
+gitlab:GitlabJob:1:125,125,gitlab:GitlabJob:1:46,FAILURE,DONE,CI/CD,0,2022-08-02T21:19:25.568+00:00,2022-08-02T23:00:23.221+00:00,
+gitlab:GitlabJob:1:126,126,gitlab:GitlabJob:1:47,FAILURE,DONE,CI/CD,0,2022-08-03T08:19:06.570+00:00,2022-08-03T10:00:05.573+00:00,
+gitlab:GitlabJob:1:127,127,gitlab:GitlabJob:1:48,FAILURE,DONE,CI/CD,0,2022-08-03T21:19:21.010+00:00,2022-08-03T23:00:06.114+00:00,
+gitlab:GitlabJob:1:128,128,gitlab:GitlabJob:1:49,FAILURE,DONE,CI/CD,0,2022-08-04T21:19:12.398+00:00,2022-08-04T23:00:25.717+00:00,
+gitlab:GitlabJob:1:129,129,gitlab:GitlabJob:1:50,FAILURE,DONE,CI/CD,0,2022-08-05T21:19:09.648+00:00,2022-08-05T23:00:18.441+00:00,
+gitlab:GitlabJob:1:130,130,gitlab:GitlabJob:1:51,FAILURE,DONE,CI/CD,0,2022-08-06T21:19:29.253+00:00,2022-08-06T23:00:04.246+00:00,
+gitlab:GitlabJob:1:131,131,gitlab:GitlabJob:1:52,FAILURE,DONE,CI/CD,0,2022-08-07T21:19:33.476+00:00,2022-08-07T23:00:01.350+00:00,
+gitlab:GitlabJob:1:132,132,gitlab:GitlabJob:1:53,FAILURE,DONE,CI/CD,0,2022-08-08T21:19:02.531+00:00,2022-08-08T23:00:30.138+00:00,
+gitlab:GitlabJob:1:133,133,gitlab:GitlabJob:1:54,FAILURE,DONE,CI/CD,0,2022-08-09T21:19:34.379+00:00,2022-08-09T23:00:15.331+00:00,
+gitlab:GitlabJob:1:134,134,gitlab:GitlabJob:1:55,FAILURE,DONE,CI/CD,0,2022-08-10T08:19:08.693+00:00,2022-08-10T10:00:10.203+00:00,
+gitlab:GitlabJob:1:135,135,gitlab:GitlabJob:1:56,FAILURE,DONE,CI/CD,0,2022-08-10T21:19:05.714+00:00,2022-08-10T23:00:41.546+00:00,
+gitlab:GitlabJob:1:136,136,gitlab:GitlabJob:1:57,FAILURE,DONE,CI/CD,0,2022-08-11T21:19:25.605+00:00,2022-08-11T23:00:08.674+00:00,
+gitlab:GitlabJob:1:137,137,gitlab:GitlabJob:1:58,FAILURE,DONE,CI/CD,0,2022-08-12T21:19:08.350+00:00,2022-08-12T23:00:03.492+00:00,
+gitlab:GitlabJob:1:138,138,gitlab:GitlabJob:1:59,FAILURE,DONE,CI/CD,0,2022-08-13T21:19:06.775+00:00,2022-08-13T23:00:06.728+00:00,
+gitlab:GitlabJob:1:139,139,gitlab:GitlabJob:1:60,FAILURE,DONE,CI/CD,0,2022-08-14T21:19:07.007+00:00,2022-08-14T23:00:22.581+00:00,
+gitlab:GitlabJob:1:140,140,gitlab:GitlabJob:1:61,FAILURE,DONE,CI/CD,0,2022-08-15T21:19:09.087+00:00,2022-08-15T23:00:31.590+00:00,
+gitlab:GitlabJob:1:141,141,gitlab:GitlabJob:1:62,FAILURE,DONE,CI/CD,0,2022-08-16T21:19:12.248+00:00,2022-08-16T23:00:16.800+00:00,
+gitlab:GitlabJob:1:142,142,gitlab:GitlabJob:1:63,FAILURE,DONE,CI/CD,0,2022-08-17T08:20:06.419+00:00,2022-08-17T10:00:36.594+00:00,
+gitlab:GitlabJob:1:143,143,gitlab:GitlabJob:1:64,FAILURE,DONE,CI/CD,0,2022-08-17T21:19:11.908+00:00,2022-08-17T23:00:23.915+00:00,
+gitlab:GitlabJob:1:144,144,gitlab:GitlabJob:1:65,FAILURE,DONE,CI/CD,0,2022-08-18T21:19:14.072+00:00,2022-08-18T23:00:26.546+00:00,
+gitlab:GitlabJob:1:145,145,gitlab:GitlabJob:1:66,FAILURE,DONE,CI/CD,0,2022-08-19T21:19:03.364+00:00,2022-08-19T23:00:19.772+00:00,
+gitlab:GitlabJob:1:146,146,gitlab:GitlabJob:1:67,FAILURE,DONE,CI/CD,0,2022-08-20T21:19:37.743+00:00,2022-08-20T23:00:09.418+00:00,
+gitlab:GitlabJob:1:147,147,gitlab:GitlabJob:1:68,FAILURE,DONE,CI/CD,0,2022-08-21T21:19:02.164+00:00,2022-08-21T23:00:18.538+00:00,
+gitlab:GitlabJob:1:148,148,gitlab:GitlabJob:1:69,FAILURE,DONE,CI/CD,0,2022-08-22T21:19:16.175+00:00,2022-08-22T23:00:08.653+00:00,
+gitlab:GitlabJob:1:149,149,gitlab:GitlabJob:1:70,FAILURE,DONE,CI/CD,0,2022-08-23T21:19:13.313+00:00,2022-08-23T23:00:20.712+00:00,
+gitlab:GitlabJob:1:150,150,gitlab:GitlabJob:1:71,FAILURE,DONE,CI/CD,0,2022-08-24T08:19:19.653+00:00,2022-08-24T10:00:04.660+00:00,
+gitlab:GitlabJob:1:151,151,gitlab:GitlabJob:1:72,FAILURE,DONE,CI/CD,0,2022-08-24T21:19:29.226+00:00,2022-08-24T23:00:14.036+00:00,
+gitlab:GitlabJob:1:152,152,gitlab:GitlabJob:1:73,FAILURE,DONE,CI/CD,0,2022-08-25T21:19:10.938+00:00,2022-08-25T23:00:08.594+00:00,
+gitlab:GitlabJob:1:86,86,gitlab:GitlabJob:1:16,FAILURE,DONE,CI/CD,0,2022-07-25T13:40:42.020+00:00,2022-07-25T13:40:42.892+00:00,
+gitlab:GitlabJob:1:87,87,gitlab:GitlabJob:1:16,FAILURE,DONE,CI/CD,0,2022-07-25T13:41:11.601+00:00,2022-07-25T13:41:11.932+00:00,
+gitlab:GitlabJob:1:88,88,gitlab:GitlabJob:1:17,FAILURE,DONE,CI/CD,0,2022-07-25T13:42:59.674+00:00,2022-07-25T13:42:59.998+00:00,
+gitlab:GitlabJob:1:89,89,gitlab:GitlabJob:1:17,ABORT,DONE,CI/CD,0,2022-07-25T13:46:15.482+00:00,2022-07-25T13:49:42.952+00:00,
+gitlab:GitlabJob:1:90,90,gitlab:GitlabJob:1:18,ABORT,DONE,CI/CD,0,2022-07-25T13:50:40.680+00:00,2022-07-25T14:19:03.023+00:00,
+gitlab:GitlabJob:1:91,91,gitlab:GitlabJob:1:18,FAILURE,DONE,CI/CD,2,2022-07-25T14:26:02.616+00:00,2022-07-25T14:26:05.480+00:00,
+gitlab:GitlabJob:1:92,92,gitlab:GitlabJob:1:18,FAILURE,DONE,CI/CD,1,2022-07-25T14:47:12.876+00:00,2022-07-25T14:47:14.295+00:00,
+gitlab:GitlabJob:1:93,93,gitlab:GitlabJob:1:19,FAILURE,DONE,CI/CD,1,2022-07-25T14:53:56.227+00:00,2022-07-25T14:53:57.910+00:00,
+gitlab:GitlabJob:1:94,94,gitlab:GitlabJob:1:20,FAILURE,DONE,CI/CD,1,2022-07-25T14:55:26.493+00:00,2022-07-25T14:55:28.331+00:00,
+gitlab:GitlabJob:1:95,95,gitlab:GitlabJob:1:21,FAILURE,DONE,CI/CD,1,2022-07-25T14:56:59.811+00:00,2022-07-25T14:57:01.498+00:00,
+gitlab:GitlabJob:1:96,96,gitlab:GitlabJob:1:21,FAILURE,DONE,CI/CD,5,2022-07-25T14:59:29.276+00:00,2022-07-25T14:59:34.282+00:00,
+gitlab:GitlabJob:1:97,97,gitlab:GitlabJob:1:22,SUCCESS,DONE,CI/CD,3,2022-07-25T15:00:43.749+00:00,2022-07-25T15:00:46.895+00:00,
+gitlab:GitlabJob:1:98,98,gitlab:GitlabJob:1:23,SUCCESS,DONE,CI/CD,2,2022-07-25T15:03:23.471+00:00,2022-07-25T15:03:26.432+00:00,
+gitlab:GitlabJob:1:99,99,gitlab:GitlabJob:1:24,SUCCESS,DONE,CI/CD,2,2022-07-25T15:06:54.037+00:00,2022-07-25T15:06:56.819+00:00,
diff --git a/plugins/gitlab/tasks/job_convertor.go b/plugins/gitlab/tasks/job_convertor.go
index d5ffb151..72b3ab34 100644
--- a/plugins/gitlab/tasks/job_convertor.go
+++ b/plugins/gitlab/tasks/job_convertor.go
@@ -19,9 +19,6 @@ package tasks
 
 import (
 	"fmt"
-	"reflect"
-	"time"
-
 	"github.com/apache/incubator-devlake/models/domainlayer"
 	"github.com/apache/incubator-devlake/models/domainlayer/devops"
 	"github.com/apache/incubator-devlake/models/domainlayer/didgen"
@@ -29,6 +26,7 @@ import (
 	"github.com/apache/incubator-devlake/plugins/core/dal"
 	gitlabModels "github.com/apache/incubator-devlake/plugins/gitlab/models"
 	"github.com/apache/incubator-devlake/plugins/helper"
+	"reflect"
 )
 
 var ConvertJobMeta = core.SubTaskMeta{
@@ -65,9 +63,9 @@ func ConvertJobs(taskCtx core.SubTaskContext) error {
 		Convert: func(inputRow interface{}) ([]interface{}, error) {
 			gitlabJob := inputRow.(*gitlabModels.GitlabJob)
 
-			startedAt := time.Now()
+			startedAt := gitlabJob.GitlabCreatedAt
 			if gitlabJob.StartedAt != nil {
-				startedAt = *gitlabJob.StartedAt
+				startedAt = gitlabJob.StartedAt
 			}
 
 			domainJob := &devops.CICDTask{
@@ -89,7 +87,7 @@ func ConvertJobs(taskCtx core.SubTaskContext) error {
 				Type: "CI/CD",
 
 				DurationSec:  uint64(gitlabJob.Duration),
-				StartedDate:  startedAt,
+				StartedDate:  *startedAt,
 				FinishedDate: gitlabJob.FinishedAt,
 			}