UNPKG

@cordxapp/lintydeps

Version:

Finds and reports missing or unused dependencies and dev dependencies

44 lines 1.89 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildStatus = void 0; const superagent_1 = __importDefault(require("superagent")); const logger_1 = require("./logger"); const yargs_1 = __importDefault(require("yargs")); const argv = yargs_1.default.option('token', { type: 'string', description: 'GitHub personal access token', demandOption: true }).argv; /** * Update the build status on GitHub using the GitHub API and Travis CI environment variables * @param {BuildData} data - The build data * @returns {Promise<void>} */ const buildStatus = async (data) => { const ORG_NAME = process.env.TRAVIS_REPO_SLUG?.split('/')[0]; const REPO_NAME = process.env.TRAVIS_REPO_SLUG?.split('/')[1]; const COMMIT_SHA = process.env.TRAVIS_COMMIT; const BUILD_ID = process.env.TRAVIS_BUILD_ID; const AUTH_TOKEN = process.env[argv.token || 'GITHUB_PERSONAL_TOKEN']; if (ORG_NAME && REPO_NAME && COMMIT_SHA && BUILD_ID && AUTH_TOKEN) { const url = `https://api.github.com/repos/${ORG_NAME}/${REPO_NAME}/statuses/${COMMIT_SHA}`; const body = { state: data.state, target_url: `https://travis-ci.com/${ORG_NAME}/${REPO_NAME}/builds/${BUILD_ID}`, description: data.message, context: '[lintydeps]: Dependency check' }; try { await superagent_1.default.post(url).set('Authorization', `token ${AUTH_TOKEN}`).send(body); logger_1.logger.success(`Build status updated to ${data.state}`); } catch (error) { logger_1.logger.error(`Failed to update build status: ${error.message}`); } } }; exports.buildStatus = buildStatus; //# sourceMappingURL=status.js.map