UNPKG

tdpw

Version:

CLI tool for uploading Playwright test reports to TestDino platform with Azure storage support

57 lines 2.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CiCollector = void 0; const tslib_1 = require("tslib"); const os_1 = tslib_1.__importDefault(require("os")); const env_1 = require("../utils/env"); /** * Collector for CI metadata */ class CiCollector { /** * Gather CI metadata from environment */ static collect() { const { env } = process; const providerKey = env_1.EnvironmentUtils.detectCIProvider(); const provider = providerKey; // Pipeline information const pipelineId = env.GITHUB_RUN_ID || env.CI_PIPELINE_ID; const pipelineName = env.GITHUB_WORKFLOW || env.CI_PIPELINE_NAME; let pipelineUrl; if (env.GITHUB_SERVER_URL && env.GITHUB_REPOSITORY && env.GITHUB_RUN_ID) { pipelineUrl = `${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}`; } else if (env.CI_PIPELINE_URL) { pipelineUrl = env.CI_PIPELINE_URL; } // Build information const buildNumber = env.GITHUB_RUN_NUMBER || env.CI_BUILD_NUMBER; const buildTrigger = env.GITHUB_EVENT_NAME || env.CI_PIPELINE_TRIGGER; // Environment details const osName = env.RUNNER_OS; const environmentType = os_1.default.platform(); const osRelease = `${os_1.default.type()} ${os_1.default.release()}`; const nodeVersion = process.version; return { provider, pipeline: { ...(pipelineId && { id: pipelineId }), ...(pipelineName && { name: pipelineName }), ...(pipelineUrl && { url: pipelineUrl }), }, build: { ...(buildNumber && { number: buildNumber }), ...(buildTrigger && { trigger: buildTrigger }), }, environment: { ...(osName && { name: osName }), ...(environmentType && { type: environmentType }), ...(osRelease && { os: osRelease }), ...(nodeVersion && { node: nodeVersion }), }, }; } } exports.CiCollector = CiCollector; //# sourceMappingURL=ci.js.map