From 22590c5d0ed9a297ce0e8a3fa9b32c5505b87814 Mon Sep 17 00:00:00 2001 From: yulongcai <141199398+yulongcai@users.noreply.github.com> Date: Mon, 15 Apr 2024 18:03:34 +0800 Subject: [PATCH] ADM-919:[backend] fix: set code committer is null when author is null (#1382) --- .../service/report/CSVFileGenerator.java | 9 ++-- .../service/report/CSVFileGeneratorTest.java | 24 +++++----- .../e2e/fixtures/create-new/pipeline-data.csv | 47 +++++++------------ .../fixtures/import-file/pipeline-data.csv | 47 +++++++------------ 4 files changed, 51 insertions(+), 76 deletions(-) diff --git a/backend/src/main/java/heartbeat/service/report/CSVFileGenerator.java b/backend/src/main/java/heartbeat/service/report/CSVFileGenerator.java index 7b42b868ef..349168149d 100644 --- a/backend/src/main/java/heartbeat/service/report/CSVFileGenerator.java +++ b/backend/src/main/java/heartbeat/service/report/CSVFileGenerator.java @@ -99,7 +99,7 @@ public void convertPipelineDataToCSV(List leadTimeData, String File file = new File(fileName); try (CSVWriter csvWriter = new CSVWriter(new FileWriter(file))) { String[] headers = { "Organization", "Pipeline Name", "Pipeline Step", "Valid", "Build Number", - "Code Committer", "Pipeline Creator", "First Code Committed Time In PR", "PR Created Time", + "Code Committer", "Build Creator", "First Code Committed Time In PR", "PR Created Time", "PR Merged Time", "No PR Committed Time", "Job Start Time", "Pipeline Start Time", "Pipeline Finish Time", "Total Lead Time (HH:mm:ss)", "PR Lead Time (HH:mm:ss)", "Pipeline Lead Time (HH:mm:ss)", "Status", "Branch", "Revert" }; @@ -119,19 +119,16 @@ public void convertPipelineDataToCSV(List leadTimeData, String } private String[] getRowData(PipelineCSVInfo csvInfo) { - List committerNames = new ArrayList<>(); + String committerName = null; if (csvInfo.getBuildInfo().getAuthor() != null && csvInfo.getBuildInfo().getAuthor().getName() != null) { - String authorName = String.valueOf(csvInfo.getBuildInfo().getAuthor().getName()); - committerNames.add(authorName); + committerName = String.valueOf(csvInfo.getBuildInfo().getAuthor().getName()); } String creatorName = null; if (csvInfo.getBuildInfo().getCreator() != null && csvInfo.getBuildInfo().getCreator().getName() != null) { creatorName = csvInfo.getBuildInfo().getCreator().getName(); - committerNames.add(creatorName); } - String committerName = committerNames.isEmpty() ? null : String.join("\n", committerNames); String organization = csvInfo.getOrganizationName(); String pipelineName = csvInfo.getPipeLineName(); String stepName = csvInfo.getStepName(); diff --git a/backend/src/test/java/heartbeat/service/report/CSVFileGeneratorTest.java b/backend/src/test/java/heartbeat/service/report/CSVFileGeneratorTest.java index 64cfdc4570..5ae5529d02 100644 --- a/backend/src/test/java/heartbeat/service/report/CSVFileGeneratorTest.java +++ b/backend/src/test/java/heartbeat/service/report/CSVFileGeneratorTest.java @@ -72,7 +72,7 @@ void shouldConvertPipelineDataToCsvGivenCommitInfoNotNull() throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(fileInputStream)); String headers = reader.readLine(); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); String firstLine = reader.readLine(); assertEquals( @@ -98,7 +98,7 @@ void shouldConvertPipelineDataToCsvGivenCommitInfoNotNullAndPipelineStateIsCance BufferedReader reader = new BufferedReader(new InputStreamReader(fileInputStream)); String headers = reader.readLine(); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); String firstLine = reader.readLine(); assertEquals( @@ -123,7 +123,7 @@ void shouldConvertPipelineDataToCsvWithoutCreator() throws IOException { assertTrue(file.exists()); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); assertEquals( "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"null\",\"880\",\"XXXX\",,\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"1683793037000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", @@ -147,7 +147,7 @@ void shouldConvertPipelineDataToCsvWithoutCreatorName() throws IOException { assertTrue(file.exists()); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); assertEquals( "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"null\",\"880\",,,\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", @@ -171,7 +171,7 @@ void shouldConvertPipelineDataToCsvGivenNullCommitInfo() throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(fileInputStream)); String headers = reader.readLine(); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); String firstLine = reader.readLine(); assertEquals( @@ -196,7 +196,7 @@ void shouldConvertPipelineDataToCsvGivenCommitMessageIsRevert() throws IOExcepti assertTrue(file.exists()); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); assertEquals( "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"null\",\"880\",\"XXXX\",,\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"true\"", @@ -220,10 +220,10 @@ void shouldConvertPipelineDataToCsvGivenAuthorIsNull() throws IOException { assertTrue(file.exists()); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); assertEquals( - "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"null\",\"880\",\"XXX\",\"XXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", + "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"null\",\"880\",,\"XXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", firstLine); reader.close(); fileInputStream.close(); @@ -257,7 +257,7 @@ void shouldHasContentWhenGetDataFromCsvGivenDataTypeIsPipeline() throws IOExcept .collect(Collectors.joining("\n")); Assertions.assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"\n" + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"\n" + "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"true\",\"880\",\"XXXX\",,\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", csvPipelineData); @@ -281,12 +281,12 @@ void shouldConvertPipelineDataToCsvGivenTwoOrganizationsPipeline() throws IOExce BufferedReader reader = new BufferedReader(new InputStreamReader(fileInputStream)); String headers = reader.readLine(); assertEquals( - "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Pipeline Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", + "\"Organization\",\"Pipeline Name\",\"Pipeline Step\",\"Valid\",\"Build Number\",\"Code Committer\",\"Build Creator\",\"First Code Committed Time In PR\",\"PR Created Time\",\"PR Merged Time\",\"No PR Committed Time\",\"Job Start Time\",\"Pipeline Start Time\",\"Pipeline Finish Time\",\"Total Lead Time (HH:mm:ss)\",\"PR Lead Time (HH:mm:ss)\",\"Pipeline Lead Time (HH:mm:ss)\",\"Status\",\"Branch\",\"Revert\"", headers); String firstLine = reader.readLine(); assertEquals( - "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"true\",\"880\",\"XXXX\",\"XXXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", + "\"Thoughtworks-Heartbeat\",\"Heartbeat\",\":rocket: Deploy prod\",\"true\",\"880\",,\"XXXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", firstLine); String secondLine = reader.readLine(); @@ -296,7 +296,7 @@ void shouldConvertPipelineDataToCsvGivenTwoOrganizationsPipeline() throws IOExce String thirdLine = reader.readLine(); assertEquals( - "\"Thoughtworks-Foxtel\",\"Heartbeat1\",\":rocket: Deploy prod\",\"true\",\"880\",\"XXXX\",\"XXXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", + "\"Thoughtworks-Foxtel\",\"Heartbeat1\",\":rocket: Deploy prod\",\"true\",\"880\",,\"XXXX\",\"2023-05-08T07:18:18Z\",\"168369327000\",\"1683793037000\",,\"168369327000\",\"168369327000\",\"1684793037000\",\"8379303\",\"16837\",\"653037000\",\"passed\",\"branch\",\"\"", thirdLine); reader.close(); diff --git a/frontend/e2e/fixtures/create-new/pipeline-data.csv b/frontend/e2e/fixtures/create-new/pipeline-data.csv index bdc85795a0..581b1cf87a 100644 --- a/frontend/e2e/fixtures/create-new/pipeline-data.csv +++ b/frontend/e2e/fixtures/create-new/pipeline-data.csv @@ -1,31 +1,23 @@ -"Organization","Pipeline Name","Pipeline Step","Valid","Build Number","Code Committer","Pipeline Creator","First Code Committed Time In PR","PR Created Time","PR Merged Time","No PR Committed Time","Job Start Time","Pipeline Start Time","Pipeline Finish Time","Total Lead Time (HH:mm:ss)","PR Lead Time (HH:mm:ss)","Pipeline Lead Time (HH:mm:ss)","Status","Branch","Revert" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4210","guzhongren -guzhongren","guzhongren","2024-01-19T14:58:27Z","2024-01-19T14:59:15Z","2024-01-19T15:02:47Z",,"2024-01-19T15:26:59Z","2024-01-19T15:02:47Z","2024-01-19T15:27:32.983Z","0:24:45","0:0:0","0:24:45","passed","main","true" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4208",guzhongren,"guzhongren",,,,,,,"2024-01-19T15:09:15.439Z",,,,"failed","main","" +"Organization","Pipeline Name","Pipeline Step","Valid","Build Number","Code Committer",Build Creator,"First Code Committed Time In PR","PR Created Time","PR Merged Time","No PR Committed Time","Job Start Time","Pipeline Start Time","Pipeline Finish Time","Total Lead Time (HH:mm:ss)","PR Lead Time (HH:mm:ss)","Pipeline Lead Time (HH:mm:ss)","Status","Branch","Revert" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4210",guzhongren,"guzhongren","2024-01-19T14:58:27Z","2024-01-19T14:59:15Z","2024-01-19T15:02:47Z",,"2024-01-19T15:26:59Z","2024-01-19T15:02:47Z","2024-01-19T15:27:32.983Z","0:24:45","0:0:0","0:24:45","passed","main","true" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4208",,"guzhongren",,,,,,,"2024-01-19T15:09:15.439Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":mag: Check Frontend License","false","4204","Steveay",,,,,,,,"2024-01-19T11:16:12.025Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4187","sqsq5566",,"2024-01-19T04:01:30Z","2024-01-19T06:07:51Z","2024-01-19T06:18:27Z",,"2024-01-19T06:37:09Z","2024-01-19T06:18:27Z","2024-01-19T06:37:42.885Z","2:36:12","2:16:57","0:19:15","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4185","neomgb",,"2024-01-18T09:08:32Z","2024-01-19T02:59:59Z","2024-01-19T05:47:24Z",,"2024-01-19T06:14:02Z","2024-01-19T05:47:24Z","2024-01-19T06:14:32.418Z","21:6:0","20:38:52","0:27:8","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4178","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:51:58Z","2024-01-18T16:55:57Z","2024-01-18T15:51:58Z","2024-01-18T16:56:25.673Z","1:4:27","0:0:0","1:4:27","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4177","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-18T16:18:32.089Z",,,,"failed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4176","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-18T16:06:41.439Z",,,,"passed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4175","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:16:05Z","2024-01-18T15:53:30Z","2024-01-18T15:16:05Z","2024-01-18T15:53:58.280Z","0:37:53","0:0:0","0:37:53","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4174","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:00:53Z","2024-01-18T15:27:37Z","2024-01-18T15:00:53Z","2024-01-18T15:28:06.427Z","0:27:13","0:0:0","0:27:13","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4178",guzhongren,"guzhongren",,,,"2024-01-18T15:51:58Z","2024-01-18T16:55:57Z","2024-01-18T15:51:58Z","2024-01-18T16:56:25.673Z","1:4:27","0:0:0","1:4:27","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4177",guzhongren,"guzhongren",,,,,,,"2024-01-18T16:18:32.089Z",,,,"failed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4176",guzhongren,"guzhongren",,,,,,,"2024-01-18T16:06:41.439Z",,,,"passed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4175",guzhongren,"guzhongren",,,,"2024-01-18T15:16:05Z","2024-01-18T15:53:30Z","2024-01-18T15:16:05Z","2024-01-18T15:53:58.280Z","0:37:53","0:0:0","0:37:53","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4174",guzhongren,"guzhongren",,,,"2024-01-18T15:00:53Z","2024-01-18T15:27:37Z","2024-01-18T15:00:53Z","2024-01-18T15:28:06.427Z","0:27:13","0:0:0","0:27:13","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4173","Chao",,"2024-01-18T09:54:35Z","2024-01-18T05:47:24Z","2024-01-18T10:08:17Z",,"2024-01-18T10:33:18Z","2024-01-18T10:08:17Z","2024-01-18T10:33:46.039Z","0:39:11","0:13:42","0:25:29","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4171","neomgb",,"2024-01-18T02:33:54Z","2024-01-18T02:54:05Z","2024-01-18T09:41:40Z",,"2024-01-18T10:07:00Z","2024-01-18T09:41:40Z","2024-01-18T10:07:29.676Z","7:33:35","7:7:46","0:25:49","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4166","junbo dai",,"2024-01-18T08:28:22Z","2024-01-18T08:27:11Z","2024-01-18T08:56:52Z",,"2024-01-18T09:15:09Z","2024-01-18T08:56:52Z","2024-01-18T09:15:44.306Z","0:47:22","0:28:30","0:18:52","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4162","李雪冰",,"2024-01-18T05:45:03Z","2024-01-18T06:34:30Z","2024-01-18T08:28:09Z",,"2024-01-18T08:52:29Z","2024-01-18T08:28:09Z","2024-01-18T08:52:58.699Z","3:7:55","2:43:6","0:24:49","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4151","yichen.wang -heartbeat-user","heartbeat-user",,,,"2024-01-18T05:35:15Z","2024-01-18T05:55:59Z","2024-01-18T05:35:15Z","2024-01-18T05:56:34.575Z","0:21:19","0:0:0","0:21:19","passed","main","true" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4148","yichen.wang -heartbeat-user","heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4151",yichen.wang,"heartbeat-user",,,,"2024-01-18T05:35:15Z","2024-01-18T05:55:59Z","2024-01-18T05:35:15Z","2024-01-18T05:56:34.575Z","0:21:19","0:0:0","0:21:19","passed","main","true" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4148",yichen.wang,"heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4147","Steveay",,"2024-01-17T07:43:29Z","2024-01-17T09:42:52Z","2024-01-17T10:47:01Z",,"2024-01-17T11:21:20Z","2024-01-17T10:47:01Z","2024-01-17T11:22:02.967Z","3:38:33","3:3:32","0:35:1","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4146","李雪冰",,"2024-01-17T08:06:19Z","2024-01-17T09:34:27Z","2024-01-17T09:48:38Z",,"2024-01-17T10:13:10Z","2024-01-17T09:48:38Z","2024-01-17T10:13:39.473Z","2:7:20","1:42:19","0:25:1","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4137",heartbeat-user,"heartbeat-user","2024-01-17T03:05:11Z","2024-01-17T04:01:00Z","2024-01-17T06:46:34Z",,"2024-01-17T07:22:06Z","2024-01-17T06:46:34Z","2024-01-17T07:22:40.087Z","4:17:29","3:41:23","0:36:6","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4137",,"heartbeat-user","2024-01-17T03:05:11Z","2024-01-17T04:01:00Z","2024-01-17T06:46:34Z",,"2024-01-17T07:22:06Z","2024-01-17T06:46:34Z","2024-01-17T07:22:40.087Z","4:17:29","3:41:23","0:36:6","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4133","junbo dai",,"2024-01-17T03:54:13Z","2024-01-17T03:59:41Z","2024-01-17T06:15:16Z",,"2024-01-17T06:33:32Z","2024-01-17T06:15:16Z","2024-01-17T06:34:03.987Z","2:39:50","2:21:3","0:18:47","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4123","junbo dai",,,,,,,,"2024-01-17T03:28:28.520Z",,,,"passed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4119","sqsq5566",,"2024-01-17T02:26:10Z","2024-01-17T02:31:10Z","2024-01-17T02:55:54Z",,"2024-01-17T03:14:17Z","2024-01-17T02:55:54Z","2024-01-17T03:14:48.671Z","0:48:38","0:29:44","0:18:54","passed","main","false" @@ -35,24 +27,21 @@ heartbeat-user","heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","m "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4104","sqsq5566",,"2024-01-16T08:55:43Z","2024-01-16T09:33:36Z","2024-01-16T13:49:23Z",,"2024-01-16T14:09:48Z","2024-01-16T13:49:23Z","2024-01-16T14:10:20.523Z","5:14:37","4:53:40","0:20:57","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4094","xuebing",,"2024-01-16T08:20:20Z","2024-01-16T08:42:05Z","2024-01-16T09:03:42Z",,"2024-01-16T09:29:48Z","2024-01-16T09:03:42Z","2024-01-16T09:30:16.889Z","1:9:56","0:43:22","0:26:34","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4087","Yunsong",,"2024-01-16T08:42:19Z","2024-01-16T08:43:18Z","2024-01-16T08:43:45Z",,"2024-01-16T09:02:16Z","2024-01-16T08:43:45Z","2024-01-16T09:02:46.685Z","0:20:27","0:1:26","0:19:1","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4078",heartbeat-user,"heartbeat-user","2024-01-16T06:33:44Z","2024-01-16T07:25:34Z","2024-01-16T07:58:33Z",,"2024-01-16T08:31:57Z","2024-01-16T07:58:33Z","2024-01-16T08:32:28.349Z","1:58:44","1:24:49","0:33:55","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4078",,"heartbeat-user","2024-01-16T06:33:44Z","2024-01-16T07:25:34Z","2024-01-16T07:58:33Z",,"2024-01-16T08:31:57Z","2024-01-16T07:58:33Z","2024-01-16T08:32:28.349Z","1:58:44","1:24:49","0:33:55","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4075","Yunsong",,,,,,,,"2024-01-16T07:58:17.589Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4070","Yunsong",,"2024-01-16T07:06:35Z","2024-01-16T07:11:17Z","2024-01-16T07:31:50Z",,"2024-01-16T07:50:18Z","2024-01-16T07:31:50Z","2024-01-16T07:50:58.369Z","0:44:23","0:25:15","0:19:8","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4065","Nathan Wang",,"2024-01-16T03:51:04Z","2024-01-10T07:48:39Z","2024-01-16T05:44:17Z",,"2024-01-16T06:36:15Z","2024-01-16T05:44:17Z","2024-01-16T06:36:44.984Z","2:45:40","1:53:13","0:52:27","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4064",heartbeat-user,"heartbeat-user","2024-01-16T03:35:20Z","2024-01-16T03:38:26Z","2024-01-16T03:47:27Z",,"2024-01-16T06:10:58Z","2024-01-16T03:47:27Z","2024-01-16T06:11:26.201Z","2:36:6","0:12:7","2:23:59","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4064",,"heartbeat-user","2024-01-16T03:35:20Z","2024-01-16T03:38:26Z","2024-01-16T03:47:27Z",,"2024-01-16T06:10:58Z","2024-01-16T03:47:27Z","2024-01-16T06:11:26.201Z","2:36:6","0:12:7","2:23:59","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4056","weiran.sun",,"2024-01-16T02:27:37Z","2024-01-16T02:38:02Z","2024-01-16T02:41:35Z",,"2024-01-16T03:00:48Z","2024-01-16T02:41:35Z","2024-01-16T03:01:19.266Z","0:33:42","0:13:58","0:19:44","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4054","Jianxun.Ma",,,,,,,,"2024-01-16T02:22:28.775Z",,,,"passed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4050","junbo.dai",,"2024-01-16T01:14:24Z","2024-01-16T01:13:59Z","2024-01-16T01:36:23Z",,"2024-01-16T01:56:42Z","2024-01-16T01:36:23Z","2024-01-16T01:57:13.241Z","0:42:49","0:21:59","0:20:50","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4047","guzhongren -guzhongren","guzhongren",,,,"2024-01-15T15:41:49Z","2024-01-15T16:09:35Z","2024-01-15T15:41:49Z","2024-01-15T16:10:04.028Z","0:28:15","0:0:0","0:28:15","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy e2e","false","4046","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-15T15:40:09.332Z",,,,"passed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4045","guzhongren -guzhongren","guzhongren",,,,"2024-01-15T14:30:35Z","2024-01-15T14:58:51Z","2024-01-15T14:30:35Z","2024-01-15T14:59:21.298Z","0:28:46","0:0:0","0:28:46","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4047",guzhongren,"guzhongren",,,,"2024-01-15T15:41:49Z","2024-01-15T16:09:35Z","2024-01-15T15:41:49Z","2024-01-15T16:10:04.028Z","0:28:15","0:0:0","0:28:15","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy e2e","false","4046",guzhongren,"guzhongren",,,,,,,"2024-01-15T15:40:09.332Z",,,,"passed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4045",guzhongren,"guzhongren",,,,"2024-01-15T14:30:35Z","2024-01-15T14:58:51Z","2024-01-15T14:30:35Z","2024-01-15T14:59:21.298Z","0:28:46","0:0:0","0:28:46","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4044","GuangbinMa",,"2024-01-15T09:00:10Z","2024-01-15T09:55:27Z","2024-01-15T10:06:21Z",,"2024-01-15T10:33:21Z","2024-01-15T10:06:21Z","2024-01-15T10:33:54.045Z","1:33:44","1:6:11","0:27:33","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4034","JiangRu1",,,,,,,,"2024-01-15T08:49:47.422Z",,,,"failed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":mag: Check Backend License","false","4033",heartbeat-user,"heartbeat-user",,,,,,,"2024-01-15T08:14:07.027Z",,,,"canceled","main","" -"Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4031",heartbeat-user,"heartbeat-user",,,,,,,"2024-01-15T07:58:40.203Z",,,,"canceled","main","" +"Thoughtworks-Heartbeat","Heartbeat",":mag: Check Backend License","false","4033",,"heartbeat-user",,,,,,,"2024-01-15T08:14:07.027Z",,,,"canceled","main","" +"Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4031",,"heartbeat-user",,,,,,,"2024-01-15T07:58:40.203Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4027","Jianxun.Ma",,,,,,,,"2024-01-15T08:25:40.681Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4018","GuangbinMa",,,,,,,,"2024-01-15T06:49:24.921Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4012","Steveay",,"2024-01-12T08:02:24Z","2024-01-15T01:27:53Z","2024-01-15T03:45:41Z",,"2024-01-15T04:04:34Z","2024-01-15T03:45:41Z","2024-01-15T04:05:06.398Z","68:2:42","67:43:17","0:19:25","passed","main","false" diff --git a/frontend/e2e/fixtures/import-file/pipeline-data.csv b/frontend/e2e/fixtures/import-file/pipeline-data.csv index bdc85795a0..581b1cf87a 100644 --- a/frontend/e2e/fixtures/import-file/pipeline-data.csv +++ b/frontend/e2e/fixtures/import-file/pipeline-data.csv @@ -1,31 +1,23 @@ -"Organization","Pipeline Name","Pipeline Step","Valid","Build Number","Code Committer","Pipeline Creator","First Code Committed Time In PR","PR Created Time","PR Merged Time","No PR Committed Time","Job Start Time","Pipeline Start Time","Pipeline Finish Time","Total Lead Time (HH:mm:ss)","PR Lead Time (HH:mm:ss)","Pipeline Lead Time (HH:mm:ss)","Status","Branch","Revert" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4210","guzhongren -guzhongren","guzhongren","2024-01-19T14:58:27Z","2024-01-19T14:59:15Z","2024-01-19T15:02:47Z",,"2024-01-19T15:26:59Z","2024-01-19T15:02:47Z","2024-01-19T15:27:32.983Z","0:24:45","0:0:0","0:24:45","passed","main","true" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4208",guzhongren,"guzhongren",,,,,,,"2024-01-19T15:09:15.439Z",,,,"failed","main","" +"Organization","Pipeline Name","Pipeline Step","Valid","Build Number","Code Committer",Build Creator,"First Code Committed Time In PR","PR Created Time","PR Merged Time","No PR Committed Time","Job Start Time","Pipeline Start Time","Pipeline Finish Time","Total Lead Time (HH:mm:ss)","PR Lead Time (HH:mm:ss)","Pipeline Lead Time (HH:mm:ss)","Status","Branch","Revert" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4210",guzhongren,"guzhongren","2024-01-19T14:58:27Z","2024-01-19T14:59:15Z","2024-01-19T15:02:47Z",,"2024-01-19T15:26:59Z","2024-01-19T15:02:47Z","2024-01-19T15:27:32.983Z","0:24:45","0:0:0","0:24:45","passed","main","true" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4208",,"guzhongren",,,,,,,"2024-01-19T15:09:15.439Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":mag: Check Frontend License","false","4204","Steveay",,,,,,,,"2024-01-19T11:16:12.025Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4187","sqsq5566",,"2024-01-19T04:01:30Z","2024-01-19T06:07:51Z","2024-01-19T06:18:27Z",,"2024-01-19T06:37:09Z","2024-01-19T06:18:27Z","2024-01-19T06:37:42.885Z","2:36:12","2:16:57","0:19:15","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4185","neomgb",,"2024-01-18T09:08:32Z","2024-01-19T02:59:59Z","2024-01-19T05:47:24Z",,"2024-01-19T06:14:02Z","2024-01-19T05:47:24Z","2024-01-19T06:14:32.418Z","21:6:0","20:38:52","0:27:8","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4178","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:51:58Z","2024-01-18T16:55:57Z","2024-01-18T15:51:58Z","2024-01-18T16:56:25.673Z","1:4:27","0:0:0","1:4:27","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4177","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-18T16:18:32.089Z",,,,"failed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4176","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-18T16:06:41.439Z",,,,"passed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4175","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:16:05Z","2024-01-18T15:53:30Z","2024-01-18T15:16:05Z","2024-01-18T15:53:58.280Z","0:37:53","0:0:0","0:37:53","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4174","guzhongren -guzhongren","guzhongren",,,,"2024-01-18T15:00:53Z","2024-01-18T15:27:37Z","2024-01-18T15:00:53Z","2024-01-18T15:28:06.427Z","0:27:13","0:0:0","0:27:13","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4178",guzhongren,"guzhongren",,,,"2024-01-18T15:51:58Z","2024-01-18T16:55:57Z","2024-01-18T15:51:58Z","2024-01-18T16:56:25.673Z","1:4:27","0:0:0","1:4:27","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4177",guzhongren,"guzhongren",,,,,,,"2024-01-18T16:18:32.089Z",,,,"failed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4176",guzhongren,"guzhongren",,,,,,,"2024-01-18T16:06:41.439Z",,,,"passed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4175",guzhongren,"guzhongren",,,,"2024-01-18T15:16:05Z","2024-01-18T15:53:30Z","2024-01-18T15:16:05Z","2024-01-18T15:53:58.280Z","0:37:53","0:0:0","0:37:53","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4174",guzhongren,"guzhongren",,,,"2024-01-18T15:00:53Z","2024-01-18T15:27:37Z","2024-01-18T15:00:53Z","2024-01-18T15:28:06.427Z","0:27:13","0:0:0","0:27:13","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4173","Chao",,"2024-01-18T09:54:35Z","2024-01-18T05:47:24Z","2024-01-18T10:08:17Z",,"2024-01-18T10:33:18Z","2024-01-18T10:08:17Z","2024-01-18T10:33:46.039Z","0:39:11","0:13:42","0:25:29","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4171","neomgb",,"2024-01-18T02:33:54Z","2024-01-18T02:54:05Z","2024-01-18T09:41:40Z",,"2024-01-18T10:07:00Z","2024-01-18T09:41:40Z","2024-01-18T10:07:29.676Z","7:33:35","7:7:46","0:25:49","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4166","junbo dai",,"2024-01-18T08:28:22Z","2024-01-18T08:27:11Z","2024-01-18T08:56:52Z",,"2024-01-18T09:15:09Z","2024-01-18T08:56:52Z","2024-01-18T09:15:44.306Z","0:47:22","0:28:30","0:18:52","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4162","李雪冰",,"2024-01-18T05:45:03Z","2024-01-18T06:34:30Z","2024-01-18T08:28:09Z",,"2024-01-18T08:52:29Z","2024-01-18T08:28:09Z","2024-01-18T08:52:58.699Z","3:7:55","2:43:6","0:24:49","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4151","yichen.wang -heartbeat-user","heartbeat-user",,,,"2024-01-18T05:35:15Z","2024-01-18T05:55:59Z","2024-01-18T05:35:15Z","2024-01-18T05:56:34.575Z","0:21:19","0:0:0","0:21:19","passed","main","true" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4148","yichen.wang -heartbeat-user","heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4151",yichen.wang,"heartbeat-user",,,,"2024-01-18T05:35:15Z","2024-01-18T05:55:59Z","2024-01-18T05:35:15Z","2024-01-18T05:56:34.575Z","0:21:19","0:0:0","0:21:19","passed","main","true" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4148",yichen.wang,"heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4147","Steveay",,"2024-01-17T07:43:29Z","2024-01-17T09:42:52Z","2024-01-17T10:47:01Z",,"2024-01-17T11:21:20Z","2024-01-17T10:47:01Z","2024-01-17T11:22:02.967Z","3:38:33","3:3:32","0:35:1","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4146","李雪冰",,"2024-01-17T08:06:19Z","2024-01-17T09:34:27Z","2024-01-17T09:48:38Z",,"2024-01-17T10:13:10Z","2024-01-17T09:48:38Z","2024-01-17T10:13:39.473Z","2:7:20","1:42:19","0:25:1","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4137",heartbeat-user,"heartbeat-user","2024-01-17T03:05:11Z","2024-01-17T04:01:00Z","2024-01-17T06:46:34Z",,"2024-01-17T07:22:06Z","2024-01-17T06:46:34Z","2024-01-17T07:22:40.087Z","4:17:29","3:41:23","0:36:6","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4137",,"heartbeat-user","2024-01-17T03:05:11Z","2024-01-17T04:01:00Z","2024-01-17T06:46:34Z",,"2024-01-17T07:22:06Z","2024-01-17T06:46:34Z","2024-01-17T07:22:40.087Z","4:17:29","3:41:23","0:36:6","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4133","junbo dai",,"2024-01-17T03:54:13Z","2024-01-17T03:59:41Z","2024-01-17T06:15:16Z",,"2024-01-17T06:33:32Z","2024-01-17T06:15:16Z","2024-01-17T06:34:03.987Z","2:39:50","2:21:3","0:18:47","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4123","junbo dai",,,,,,,,"2024-01-17T03:28:28.520Z",,,,"passed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4119","sqsq5566",,"2024-01-17T02:26:10Z","2024-01-17T02:31:10Z","2024-01-17T02:55:54Z",,"2024-01-17T03:14:17Z","2024-01-17T02:55:54Z","2024-01-17T03:14:48.671Z","0:48:38","0:29:44","0:18:54","passed","main","false" @@ -35,24 +27,21 @@ heartbeat-user","heartbeat-user",,,,,,,"2024-01-18T03:01:41.593Z",,,,"failed","m "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4104","sqsq5566",,"2024-01-16T08:55:43Z","2024-01-16T09:33:36Z","2024-01-16T13:49:23Z",,"2024-01-16T14:09:48Z","2024-01-16T13:49:23Z","2024-01-16T14:10:20.523Z","5:14:37","4:53:40","0:20:57","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4094","xuebing",,"2024-01-16T08:20:20Z","2024-01-16T08:42:05Z","2024-01-16T09:03:42Z",,"2024-01-16T09:29:48Z","2024-01-16T09:03:42Z","2024-01-16T09:30:16.889Z","1:9:56","0:43:22","0:26:34","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4087","Yunsong",,"2024-01-16T08:42:19Z","2024-01-16T08:43:18Z","2024-01-16T08:43:45Z",,"2024-01-16T09:02:16Z","2024-01-16T08:43:45Z","2024-01-16T09:02:46.685Z","0:20:27","0:1:26","0:19:1","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4078",heartbeat-user,"heartbeat-user","2024-01-16T06:33:44Z","2024-01-16T07:25:34Z","2024-01-16T07:58:33Z",,"2024-01-16T08:31:57Z","2024-01-16T07:58:33Z","2024-01-16T08:32:28.349Z","1:58:44","1:24:49","0:33:55","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4078",,"heartbeat-user","2024-01-16T06:33:44Z","2024-01-16T07:25:34Z","2024-01-16T07:58:33Z",,"2024-01-16T08:31:57Z","2024-01-16T07:58:33Z","2024-01-16T08:32:28.349Z","1:58:44","1:24:49","0:33:55","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4075","Yunsong",,,,,,,,"2024-01-16T07:58:17.589Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4070","Yunsong",,"2024-01-16T07:06:35Z","2024-01-16T07:11:17Z","2024-01-16T07:31:50Z",,"2024-01-16T07:50:18Z","2024-01-16T07:31:50Z","2024-01-16T07:50:58.369Z","0:44:23","0:25:15","0:19:8","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4065","Nathan Wang",,"2024-01-16T03:51:04Z","2024-01-10T07:48:39Z","2024-01-16T05:44:17Z",,"2024-01-16T06:36:15Z","2024-01-16T05:44:17Z","2024-01-16T06:36:44.984Z","2:45:40","1:53:13","0:52:27","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4064",heartbeat-user,"heartbeat-user","2024-01-16T03:35:20Z","2024-01-16T03:38:26Z","2024-01-16T03:47:27Z",,"2024-01-16T06:10:58Z","2024-01-16T03:47:27Z","2024-01-16T06:11:26.201Z","2:36:6","0:12:7","2:23:59","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4064",,"heartbeat-user","2024-01-16T03:35:20Z","2024-01-16T03:38:26Z","2024-01-16T03:47:27Z",,"2024-01-16T06:10:58Z","2024-01-16T03:47:27Z","2024-01-16T06:11:26.201Z","2:36:6","0:12:7","2:23:59","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4056","weiran.sun",,"2024-01-16T02:27:37Z","2024-01-16T02:38:02Z","2024-01-16T02:41:35Z",,"2024-01-16T03:00:48Z","2024-01-16T02:41:35Z","2024-01-16T03:01:19.266Z","0:33:42","0:13:58","0:19:44","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4054","Jianxun.Ma",,,,,,,,"2024-01-16T02:22:28.775Z",,,,"passed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4050","junbo.dai",,"2024-01-16T01:14:24Z","2024-01-16T01:13:59Z","2024-01-16T01:36:23Z",,"2024-01-16T01:56:42Z","2024-01-16T01:36:23Z","2024-01-16T01:57:13.241Z","0:42:49","0:21:59","0:20:50","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4047","guzhongren -guzhongren","guzhongren",,,,"2024-01-15T15:41:49Z","2024-01-15T16:09:35Z","2024-01-15T15:41:49Z","2024-01-15T16:10:04.028Z","0:28:15","0:0:0","0:28:15","passed","main","false" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy e2e","false","4046","guzhongren -guzhongren","guzhongren",,,,,,,"2024-01-15T15:40:09.332Z",,,,"passed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4045","guzhongren -guzhongren","guzhongren",,,,"2024-01-15T14:30:35Z","2024-01-15T14:58:51Z","2024-01-15T14:30:35Z","2024-01-15T14:59:21.298Z","0:28:46","0:0:0","0:28:46","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4047",guzhongren,"guzhongren",,,,"2024-01-15T15:41:49Z","2024-01-15T16:09:35Z","2024-01-15T15:41:49Z","2024-01-15T16:10:04.028Z","0:28:15","0:0:0","0:28:15","passed","main","false" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy e2e","false","4046",guzhongren,"guzhongren",,,,,,,"2024-01-15T15:40:09.332Z",,,,"passed","main","" +"Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4045",guzhongren,"guzhongren",,,,"2024-01-15T14:30:35Z","2024-01-15T14:58:51Z","2024-01-15T14:30:35Z","2024-01-15T14:59:21.298Z","0:28:46","0:0:0","0:28:46","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4044","GuangbinMa",,"2024-01-15T09:00:10Z","2024-01-15T09:55:27Z","2024-01-15T10:06:21Z",,"2024-01-15T10:33:21Z","2024-01-15T10:06:21Z","2024-01-15T10:33:54.045Z","1:33:44","1:6:11","0:27:33","passed","main","false" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4034","JiangRu1",,,,,,,,"2024-01-15T08:49:47.422Z",,,,"failed","main","" -"Thoughtworks-Heartbeat","Heartbeat",":mag: Check Backend License","false","4033",heartbeat-user,"heartbeat-user",,,,,,,"2024-01-15T08:14:07.027Z",,,,"canceled","main","" -"Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4031",heartbeat-user,"heartbeat-user",,,,,,,"2024-01-15T07:58:40.203Z",,,,"canceled","main","" +"Thoughtworks-Heartbeat","Heartbeat",":mag: Check Backend License","false","4033",,"heartbeat-user",,,,,,,"2024-01-15T08:14:07.027Z",,,,"canceled","main","" +"Thoughtworks-Heartbeat","Heartbeat",":pipeline: Upload pipeline.yml","false","4031",,"heartbeat-user",,,,,,,"2024-01-15T07:58:40.203Z",,,,"canceled","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4027","Jianxun.Ma",,,,,,,,"2024-01-15T08:25:40.681Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Run e2e","false","4018","GuangbinMa",,,,,,,,"2024-01-15T06:49:24.921Z",,,,"failed","main","" "Thoughtworks-Heartbeat","Heartbeat",":rocket: Deploy prod","true","4012","Steveay",,"2024-01-12T08:02:24Z","2024-01-15T01:27:53Z","2024-01-15T03:45:41Z",,"2024-01-15T04:04:34Z","2024-01-15T03:45:41Z","2024-01-15T04:05:06.398Z","68:2:42","67:43:17","0:19:25","passed","main","false"