commitmnt
Version:
Copy your gitlab and bitbucket commits to a new, publishable github repo
53 lines • 3.45 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.copyRepo = void 0;
const path_1 = __importDefault(require("path"));
const git = __importStar(require("../../utils/git"));
const copy_commits_to_repo_1 = require("../copy-commits-to-repo");
const get_commits_for_repo_1 = require("../get-commits-for-repo");
/**
* Helper function that represents the copy operation for a single repo.
* Uses {@link getCommitsForRepo} & {@link copyCommitsToRepo} together
* to copy commits from a list of repositories.
*
* @param repo the repository to copy
* @returns the number of commits copied
*
* @category Public API Module
*/
async function copyRepo(deps, repo) {
const dates = await (0, get_commits_for_repo_1.getCommitsForRepo)(deps, repo);
if (dates.length > 0) {
const total = await (0, copy_commits_to_repo_1.copyCommitsToRepo)(deps, dates);
await deps.cache.set(repo.path, Object.assign(Object.assign({}, repo), { after: dates[dates.length - 1] }));
await git.add();
await git.commit({ message: `cache updates for ${path_1.default.basename(repo.path)}` });
await git.push();
return total;
}
return 0;
}
exports.copyRepo = copyRepo;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1yZXBvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bGVzL2NvcHktcmVwby9jb3B5LXJlcG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUF3QjtBQUd4QixxREFBdUM7QUFDdkMsa0VBQTREO0FBQzVELGtFQUE0RDtBQUU1RDs7Ozs7Ozs7O0dBU0c7QUFDSSxLQUFLLFVBQVUsUUFBUSxDQUFDLElBQVUsRUFBRSxJQUFnQjtJQUN6RCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUEsd0NBQWlCLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRWxELElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDcEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFBLHdDQUFpQixFQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVuRCxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFhLElBQUksQ0FBQyxJQUFJLGtDQUFPLElBQUksS0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLElBQUcsQ0FBQztRQUN6RixNQUFNLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUscUJBQXFCLGNBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQy9FLE1BQU0sR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRWpCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFFRCxPQUFPLENBQUMsQ0FBQztBQUNYLENBQUM7QUFmRCw0QkFlQyJ9