build-macos.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/usr/bin/env node
  2. /* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
  3. const builder = require('electron-builder').build
  4. const vars = require('./vars')
  5. const isTag = (process.env.GITHUB_REF || '').startsWith('refs/tags/')
  6. process.env.ARCH = process.env.ARCH || process.arch
  7. if (process.env.GITHUB_HEAD_REF) {
  8. delete process.env.CSC_LINK
  9. delete process.env.CSC_KEY_PASSWORD
  10. process.env.CSC_IDENTITY_AUTO_DISCOVERY = 'false'
  11. }
  12. builder({
  13. dir: true,
  14. mac: ['pkg', 'zip'],
  15. arm64: process.env.ARCH === 'arm64',
  16. config: {
  17. extraMetadata: {
  18. version: vars.version,
  19. },
  20. mac: {
  21. identity: !process.env.CI || process.env.CSC_LINK ? undefined : null,
  22. },
  23. npmRebuild: process.env.ARCH !== 'arm64',
  24. publish: process.env.KEYGEN_TOKEN ? {
  25. product: {
  26. arm64: '98fbadee-c707-4cd6-9d99-56683595a846',
  27. x86_64: 'f5a48841-d5b8-4b7b-aaa7-cf5bffd36461',
  28. }[process.env.ARCH],
  29. ...vars.keygenConfig,
  30. } : undefined,
  31. },
  32. publish: process.env.KEYGEN_TOKEN ? isTag ? 'always' : 'onTagOrDraft' : 'never',
  33. }).catch(e => {
  34. console.error(e)
  35. process.exit(1)
  36. })