All files / src/lib/forge/hooks notarize.js

0% Statements 0/14
0% Branches 0/2
0% Functions 0/2
0% Lines 0/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34                                                                   
/* eslint-disable @typescript-eslint/no-var-requires */
const { notarize } = require("@electron/notarize");
const Path = require("path");
 
module.exports = (_config, {outputPaths}) => {
  
  Iif (process.platform !== "darwin") {
    console.log("Not a Mac; skipping notarization");
    return Promise.resolve();
  }
 
  console.log("Notarizing...");
 
  Iif (!process.env.APPLE_ID) {
    console.log(
      "Missing APPLE_ID and APPLE_ID_PASSWORD environment variables required for notorizing."
    );
    return Promise.resolve();
  }
 
  const buildOutput = Path.join(outputPaths[0], "GB Studio.app");
 
  return notarize({
    appBundleId: "dev.gbstudio.gbstudio",
    appPath: buildOutput,
    appleId: process.env.APPLE_ID,
    appleIdPassword: process.env.APPLE_ID_PASSWORD,
    teamId: process.env.APPLE_TEAM_ID
  }).catch((e) => {
    console.error(e);
    throw e;
  });
};