25 lines
875 B
TypeScript
25 lines
875 B
TypeScript
|
import * as plugins from './plugins.js';
|
||
|
import * as paths from '../npmci.paths.js';
|
||
|
import { logger } from '../npmci.logging.js';
|
||
|
import { Npmci } from '../npmci.classes.npmci.js';
|
||
|
|
||
|
export const handleCli = async (npmciRefArg: Npmci, argvArg: any) => {
|
||
|
logger.log('info', 'checking execution context');
|
||
|
const presentRunnerTags = process.env.CI_RUNNER_TAGS.split(',').map((stringArg) =>
|
||
|
stringArg.trim()
|
||
|
);
|
||
|
let allDesiredGitlabRunnerTagsPresent = true;
|
||
|
for (const desiredRunnerTag of npmciRefArg.npmciConfig.getConfig().gitlabRunnerTags) {
|
||
|
if (!presentRunnerTags.includes(desiredRunnerTag)) {
|
||
|
allDesiredGitlabRunnerTagsPresent = false;
|
||
|
logger.log(
|
||
|
'error',
|
||
|
`Desired runnerRag ${desiredRunnerTag} is missing in current execution context.`
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
if (!allDesiredGitlabRunnerTagsPresent) {
|
||
|
process.exit(1);
|
||
|
}
|
||
|
};
|