From ec9eee6921ccd9d353653b96c9e63ec7a3c5a865 Mon Sep 17 00:00:00 2001 From: Ian Ducrot--Thollon-Pommerol Date: Tue, 25 Oct 2022 17:42:17 +0200 Subject: [PATCH 1/5] More logging on slack hook error --- .../director/src/lib/hooks/reporters/slack.ts | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/packages/director/src/lib/hooks/reporters/slack.ts b/packages/director/src/lib/hooks/reporters/slack.ts index 5846632b..04a64b03 100644 --- a/packages/director/src/lib/hooks/reporters/slack.ts +++ b/packages/director/src/lib/hooks/reporters/slack.ts @@ -146,7 +146,31 @@ export async function reportToSlack( ], icon_url: 'https://sorry-cypress.s3.amazonaws.com/images/logo-bg.png', }, - }).catch((error) => { + }).then(function (response) { + console.log("[CUSTOM] SLACK HOOK SUCESS"); + console.log(response.data); + console.log(response.status); + console.log(response.statusText); + console.log(response.headers); + console.log(response.config); + }) + .catch((error) => { + console.log("[CUSTOM] SLACK HOOK ERROR"); + if (error.response) { + // The request was made and the server responded with a status code + // that falls out of the range of 2xx + console.log(error.response.data); + console.log(error.response.status); + console.log(error.response.headers); + } else if (error.request) { + // The request was made but no response was received + // `error.request` is an instance of XMLHttpRequest in the browser and an instance of + // http.ClientRequest in node.js + console.log(error.request); + } else { + // Something happened in setting up the request that triggered an Error + console.log('Error', error.message); + } getLogger().error( { error, ...hook }, `Error while posting Slack message to ${hook.url}` From a4b17feea5609aac259a6dd4660fb10cc2bbf47e Mon Sep 17 00:00:00 2001 From: Ian Ducrot--Thollon-Pommerol Date: Thu, 27 Oct 2022 14:38:49 +0200 Subject: [PATCH 2/5] Better message --- packages/director/src/lib/hooks/reporters/slack.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/director/src/lib/hooks/reporters/slack.ts b/packages/director/src/lib/hooks/reporters/slack.ts index 04a64b03..be0f5101 100644 --- a/packages/director/src/lib/hooks/reporters/slack.ts +++ b/packages/director/src/lib/hooks/reporters/slack.ts @@ -79,12 +79,15 @@ export async function reportToSlack( } *Passed:* ${passes}\n\n\n` + `${ failures > 0 ? ':red_circle:' : ':white_circle:' - } *Failed*: ${failures}` + - `${skipped > 0 ? ':red_circle:' : ':white_circle:'} *Skipped*: ${skipped}` + + } *Failed*: ${failures}\n\n\n` + + `${ + skipped > 0 ? ':red_circle:' : ':white_circle:' + } *Skipped*: ${skipped}\n\n\n` + `${ pending > 0 ? ':large_yellow_circle:' : ':white_circle:' } *Ignored:* ${pending}\n\n\n` + - `${flaky > 0 ? `\n\n\n:large_yellow_circle: *Flaky*: ${flaky}` : ''}`; + `${ + flaky > 0 ? `\n\n\n:large_yellow_circle: *Flaky*: ${flaky}` : ''}`; const commitDescription = (event.run.meta.commit?.branch || event.run.meta.commit?.message) && From 30b5b4d0f84d03b1ed51189315dc1b1c42b9ed10 Mon Sep 17 00:00:00 2001 From: Ian Ducrot--Thollon-Pommerol Date: Thu, 27 Oct 2022 17:46:33 +0200 Subject: [PATCH 3/5] Added links and better message format --- .../director/src/lib/hooks/reporters/slack.ts | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/packages/director/src/lib/hooks/reporters/slack.ts b/packages/director/src/lib/hooks/reporters/slack.ts index be0f5101..1619fb37 100644 --- a/packages/director/src/lib/hooks/reporters/slack.ts +++ b/packages/director/src/lib/hooks/reporters/slack.ts @@ -87,16 +87,33 @@ export async function reportToSlack( pending > 0 ? ':large_yellow_circle:' : ':white_circle:' } *Ignored:* ${pending}\n\n\n` + `${ - flaky > 0 ? `\n\n\n:large_yellow_circle: *Flaky*: ${flaky}` : ''}`; + flaky > 0 ? `:large_yellow_circle: *Flaky*: ${flaky}` : ''}`; + + + const branchLink = (event.run.meta.commit?.branch || event.run.meta.commit?.remoteOrigin) && + `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.branch}`; + + const commitLink = (event.run.meta.commit?.branch || event.run.meta.commit?.sha) && + `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.sha}`; + + const shortCommitMessage = (event.run.meta.commit?.message) && + `${event.run.meta.commit?.message.replace("\r", '').replace("\n", '')}`; + + console.log("Short commit Message is :", shortCommitMessage); const commitDescription = - (event.run.meta.commit?.branch || event.run.meta.commit?.message) && - `*Branch:*\n${event.run.meta.commit.branch}\n\n*Commit:*\n${truncate( + (event.run.meta.commit?.branch || event.run.meta.commit?.message || event.run.meta.commit.authorName || event.run.meta.commit.remoteOrigin || branchLink || commitLink || shortCommitMessage) && + `*Branch:*\n${event.run.meta.commit.branch} + \n\n*Commit:*\n${truncate( event.run.meta.commit.message, { length: 100, } - )}`; + )}\n\n*Author:*\n${event.run.meta.commit.authorName} + \n\n*Branch link:*\n<${branchLink}|${event.run.meta.commit.branch}> + \n\n*Commit link:*\n<${commitLink}|${shortCommitMessage}>`; + + console.log("Short commit Desc is :", commitDescription); axios({ method: 'post', From c6d8454986758b31188fd584ea3df111db2709d0 Mon Sep 17 00:00:00 2001 From: Ian Ducrot--Thollon-Pommerol Date: Mon, 31 Oct 2022 15:22:42 +0100 Subject: [PATCH 4/5] Links if from github --- docker-compose.minio.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docker-compose.minio.yml b/docker-compose.minio.yml index dec85de5..89bd01eb 100644 --- a/docker-compose.minio.yml +++ b/docker-compose.minio.yml @@ -8,7 +8,9 @@ services: ports: - 27017:27017 director: - image: agoldis/sorry-cypress-director:latest + build: + dockerfile: packages/director/Dockerfile + context: . environment: DASHBOARD_URL: http://localhost:8080 EXECUTION_DRIVER: '../execution/mongo/driver' From b7fdcc7835658f63f1f10a6e9c3d776d22f7a916 Mon Sep 17 00:00:00 2001 From: Ian Ducrot--Thollon-Pommerol Date: Mon, 31 Oct 2022 15:24:00 +0100 Subject: [PATCH 5/5] Links if from github - sry for bad code --- .../director/src/lib/hooks/reporters/slack.ts | 42 +++++++++++-------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/packages/director/src/lib/hooks/reporters/slack.ts b/packages/director/src/lib/hooks/reporters/slack.ts index 1619fb37..80990b37 100644 --- a/packages/director/src/lib/hooks/reporters/slack.ts +++ b/packages/director/src/lib/hooks/reporters/slack.ts @@ -89,31 +89,39 @@ export async function reportToSlack( `${ flaky > 0 ? `:large_yellow_circle: *Flaky*: ${flaky}` : ''}`; - - const branchLink = (event.run.meta.commit?.branch || event.run.meta.commit?.remoteOrigin) && - `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.branch}`; - const commitLink = (event.run.meta.commit?.branch || event.run.meta.commit?.sha) && - `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.sha}`; + let commitDescription ; - const shortCommitMessage = (event.run.meta.commit?.message) && - `${event.run.meta.commit?.message.replace("\r", '').replace("\n", '')}`; + if (event.run.meta.commit?.remoteOrigin?.startsWith('https://github.com')){ - console.log("Short commit Message is :", shortCommitMessage); + const branchLink = (event.run.meta.commit?.remoteOrigin || event.run.meta.commit?.branch) && + `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.branch}`; - const commitDescription = - (event.run.meta.commit?.branch || event.run.meta.commit?.message || event.run.meta.commit.authorName || event.run.meta.commit.remoteOrigin || branchLink || commitLink || shortCommitMessage) && - `*Branch:*\n${event.run.meta.commit.branch} - \n\n*Commit:*\n${truncate( + const commitLink = (event.run.meta.commit?.remoteOrigin || event.run.meta.commit?.sha) && + `${event.run.meta.commit.remoteOrigin?.replace("\.git", '')}/${event.run.meta.commit.sha}`; + + const sanitizedCommitMessage = (event.run.meta.commit?.message) && + `${truncate(event.run.meta.commit?.message,{ length: 100 ,}).replace("\r", '').replace("\n", '')}`; + + + commitDescription = + (event.run.meta.commit?.branch || branchLink || event.run.meta.commit.authorName || commitLink || sanitizedCommitMessage) && + `*Branch:*\n<${branchLink}|${event.run.meta.commit.branch}> + \n*Commit:*\n<${commitLink}|${sanitizedCommitMessage}> + \n*Author:*\n${event.run.meta.commit.authorName}\n\n`; + + } else { + + commitDescription = + (event.run.meta.commit?.branch || event.run.meta.commit?.message) && + `*Branch:*\n${event.run.meta.commit.branch}\n\n*Commit:*\n${truncate( event.run.meta.commit.message, { length: 100, } - )}\n\n*Author:*\n${event.run.meta.commit.authorName} - \n\n*Branch link:*\n<${branchLink}|${event.run.meta.commit.branch}> - \n\n*Commit link:*\n<${commitLink}|${shortCommitMessage}>`; - - console.log("Short commit Desc is :", commitDescription); + )}`; + + } axios({ method: 'post',