1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import { Octokit } from '@octokit/rest';
- import { createGitHubTokenStrategy } from './github-token';
- import { ELECTRON_ORG, ELECTRON_REPO, ElectronReleaseRepo, NIGHTLY_REPO } from './types';
- if (process.argv.length < 3) {
- console.log('Usage: find-release version');
- process.exit(1);
- }
- const version = process.argv[2];
- const targetRepo = findRepo();
- const octokit = new Octokit({
- authStrategy: createGitHubTokenStrategy(targetRepo)
- });
- function findRepo (): ElectronReleaseRepo {
- return version.indexOf('nightly') > 0 ? NIGHTLY_REPO : ELECTRON_REPO;
- }
- async function findRelease () {
- const releases = await octokit.repos.listReleases({
- owner: ELECTRON_ORG,
- repo: targetRepo
- });
- const targetRelease = releases.data.find(release => release.tag_name === version);
- let returnObject = {};
- if (targetRelease) {
- returnObject = {
- id: targetRelease.id,
- draft: targetRelease.draft,
- exists: true
- };
- } else {
- returnObject = {
- exists: false,
- draft: false
- };
- }
- console.log(JSON.stringify(returnObject));
- }
- findRelease()
- .catch((err) => {
- console.error(err);
- process.exit(1);
- });
|