find-github-release.js 882 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. if (!process.env.CI) require('dotenv-safe').load();
  2. const { Octokit } = require('@octokit/rest');
  3. const octokit = new Octokit({
  4. auth: process.env.ELECTRON_GITHUB_TOKEN
  5. });
  6. if (process.argv.length < 3) {
  7. console.log('Usage: find-release version');
  8. process.exit(1);
  9. }
  10. const version = process.argv[2];
  11. async function findRelease () {
  12. const releases = await octokit.repos.listReleases({
  13. owner: 'electron',
  14. repo: version.indexOf('nightly') > 0 ? 'nightlies' : 'electron'
  15. });
  16. const targetRelease = releases.data.find(release => release.tag_name === version);
  17. let returnObject = {};
  18. if (targetRelease) {
  19. returnObject = {
  20. id: targetRelease.id,
  21. draft: targetRelease.draft,
  22. exists: true
  23. };
  24. } else {
  25. returnObject = {
  26. exists: false,
  27. draft: false
  28. };
  29. }
  30. console.log(JSON.stringify(returnObject));
  31. }
  32. findRelease();