UNPKG

renovate

Version:

Automated dependency updates. Flexible so you don't need to be.

46 lines 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.tryReuseAutoclosedPr = tryReuseAutoclosedPr; const luxon_1 = require("luxon"); const global_1 = require("../../../../config/global"); const logger_1 = require("../../../../logger"); const platform_1 = require("../../../../modules/platform"); const REOPEN_THRESHOLD_MILLIS = 1000 * 60 * 60 * 24 * 7; async function tryReuseAutoclosedPr(branchName) { if (!platform_1.platform.tryReuseAutoclosedPr) { return null; } const autoclosedPr = await platform_1.platform.findPr({ branchName, state: 'closed' }); if (!autoclosedPr) { return null; } if (!autoclosedPr.title.endsWith(' - autoclosed')) { return null; } const closedAt = autoclosedPr.closedAt; if (!closedAt) { return null; } const closedMillisAgo = luxon_1.DateTime.fromISO(closedAt) .diffNow() .negate() .toMillis(); if (closedMillisAgo > REOPEN_THRESHOLD_MILLIS) { logger_1.logger.debug(`Found autoclosed PR ${autoclosedPr.number} but it is too old to reopen`); return null; } logger_1.logger.debug({ number: autoclosedPr.number }, 'Found autoclosed PR for branch'); if (global_1.GlobalConfig.get('dryRun')) { logger_1.logger.info('DRY-RUN: Would try to reopen autoclosed PR'); return null; } try { const pr = await platform_1.platform.tryReuseAutoclosedPr(autoclosedPr); return pr; } catch (err) { logger_1.logger.debug({ err }, `Error trying to reuse existing PR with branch=${branchName}`); return null; } } //# sourceMappingURL=pr-reuse.js.map