UNPKG

@knapsack-pro/core

Version:

Knapsack Pro Core library splits tests across CI nodes and makes sure that tests will run in optimal time on each CI node. This library gives core features like communication with KnapsackPro.com API. This library is a dependency for other projects specif

45 lines (44 loc) 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GitlabCI = void 0; const _1 = require("."); class GitlabCI extends _1.CIProviderBase { static get ciNodeTotal() { return process.env.CI_NODE_TOTAL; } static get ciNodeIndex() { if (process.env.GITLAB_CI) { const index = process.env.CI_NODE_INDEX; if (index) { return (parseInt(index, 10) - 1).toString(); } } } static get ciNodeBuildId() { return process.env.CI_PIPELINE_ID || process.env.CI_BUILD_ID; } static get ciNodeRetryCount() { return undefined; } static get commitHash() { return process.env.CI_COMMIT_SHA || process.env.CI_BUILD_REF; } static get branch() { return process.env.CI_COMMIT_REF_NAME || process.env.CI_BUILD_REF_NAME; } static get userSeat() { const userName = process.env.GITLAB_USER_NAME; const userEmail = process.env.GITLAB_USER_EMAIL; return userName || userEmail; } static get detect() { return 'GITLAB_CI' in process.env ? this : null; } static get fixedQueueSplit() { return true; } static get ciProvider() { return 'Gitlab CI'; } } exports.GitlabCI = GitlabCI;