From 2ba7bda0b98bf21052822722f7ab456cdd60162f Mon Sep 17 00:00:00 2001 From: Joseph Baylon Date: Tue, 3 Jan 2023 19:38:27 -0800 Subject: [PATCH] Detox Report: Add commit hash to report (#6929) --- detox/save_report.js | 1 + detox/utils/artifacts.js | 3 ++- detox/utils/report.js | 3 ++- detox/utils/test_cases.js | 3 ++- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/detox/save_report.js b/detox/save_report.js index 58e10680f..e8269d241 100644 --- a/detox/save_report.js +++ b/detox/save_report.js @@ -12,6 +12,7 @@ * Environment variables: * BRANCH=[branch] : Branch identifier from CI * BUILD_ID=[build_id] : Build identifier from CI + * COMMIT_HASH=[commit_hash] : Commit hash from repo * DEVICE_NAME=[device_name] : Name of the device used for testing * DEVICE_OS_NAME=[device_os_name] : OS of the device used for testing * HEADLESS=[boolean] : Headed by default (false) or headless (true) diff --git a/detox/utils/artifacts.js b/detox/utils/artifacts.js index 980bd7637..b2b70d29e 100644 --- a/detox/utils/artifacts.js +++ b/detox/utils/artifacts.js @@ -18,6 +18,7 @@ require('dotenv').config(); const { BRANCH, BUILD_ID, + COMMIT_HASH, DETOX_AWS_S3_BUCKET, DETOX_AWS_ACCESS_KEY_ID, DETOX_AWS_SECRET_ACCESS_KEY, @@ -42,7 +43,7 @@ async function saveArtifacts() { return; } - const s3Folder = `${BUILD_ID}-${BRANCH}`.replace(/\./g, '-'); + const s3Folder = `${BUILD_ID}-${COMMIT_HASH}-${BRANCH}`.replace(/\./g, '-'); const uploadPath = path.resolve(__dirname, `../${ARTIFACTS_DIR}`); const filesToUpload = await getFiles(uploadPath); diff --git a/detox/utils/report.js b/detox/utils/report.js index ac90f1016..5f3ab3567 100644 --- a/detox/utils/report.js +++ b/detox/utils/report.js @@ -308,6 +308,7 @@ function generateTestReport(summary, isUploadedToS3, reportLink, environment, te function generateTitle() { const { BRANCH, + COMMIT_HASH, IOS, PULL_REQUEST, RELEASE_BUILD_NUMBER, @@ -320,7 +321,7 @@ function generateTitle() { const lane = `${platform} Build`; const appExtension = IOS === 'true' ? 'ipa' : 'apk'; const appFileName = TYPE === 'GEKIDOU' ? `Mattermost_Beta.${appExtension}` : `Mattermost.${appExtension}`; - let buildLink = ` with [${lane}](https://pr-builds.mattermost.com/mattermost-mobile/${BRANCH}/${appFileName})`; + let buildLink = ` with [${lane}:${COMMIT_HASH}](https://pr-builds.mattermost.com/mattermost-mobile/${BRANCH}-${COMMIT_HASH}/${appFileName})`; if (RELEASE_VERSION && RELEASE_BUILD_NUMBER) { const releaseType = TYPE === 'GEKIDOU' ? 'mattermost-mobile-beta' : 'mattermost-mobile'; buildLink = ` with [${RELEASE_VERSION}:${RELEASE_BUILD_NUMBER}](https://releases.mattermost.com/${releaseType}/${RELEASE_VERSION}/${RELEASE_BUILD_NUMBER}/${appFileName})`; diff --git a/detox/utils/test_cases.js b/detox/utils/test_cases.js index 4be1c3118..d43107f5c 100644 --- a/detox/utils/test_cases.js +++ b/detox/utils/test_cases.js @@ -80,6 +80,7 @@ async function createTestCycle(startDate, endDate) { const { BRANCH, BUILD_ID, + COMMIT_HASH, JIRA_PROJECT_KEY, ZEPHYR_CYCLE_NAME, ZEPHYR_FOLDER_ID, @@ -87,7 +88,7 @@ async function createTestCycle(startDate, endDate) { const testCycle = { projectKey: JIRA_PROJECT_KEY, - name: ZEPHYR_CYCLE_NAME ? `${ZEPHYR_CYCLE_NAME} (${BUILD_ID}-${BRANCH})` : `${BUILD_ID}-${BRANCH}`, + name: ZEPHYR_CYCLE_NAME ? `${ZEPHYR_CYCLE_NAME} (${BUILD_ID}-${COMMIT_HASH}-${BRANCH})` : `${BUILD_ID}-${COMMIT_HASH}-${BRANCH}`, description: `Detox automated test with ${BRANCH}`, plannedStartDate: startDate, plannedEndDate: endDate,