Files
kopia/app/notarize.js
Jarek Kowalski 70ae6a2c81 chore(ci): install apple notarization key before build (#3715)
This should recent regression after Electron upgrade.

Fixes #3711
2024-03-08 23:41:27 -08:00

30 lines
958 B
JavaScript

require('dotenv').config();
const { notarize } = require('@electron/notarize');
const fs = require('fs');
const crypto = require('crypto');
exports.default = async function notarizing(context) {
const { electronPlatformName, appOutDir } = context;
if (electronPlatformName !== 'darwin') {
return;
}
if (!process.env.KOPIA_UI_NOTARIZE) {
console.log('Not notarizing because KOPIA_UI_NOTARIZE is not set');
return;
}
const appName = context.packager.appInfo.productFilename;
console.log('Submitting app for Apple notarization...')
let timerId = setInterval(() => { console.log('Still waiting for notarization response...') }, 30000);
let x = await notarize({
appBundleId: 'io.kopia.ui',
appPath: `${appOutDir}/${appName}.app`,
appleApiIssuer: process.env.APPLE_API_ISSUER,
appleApiKeyId: process.env.APPLE_API_KEY_ID,
appleApiKey: process.env.APPLE_API_KEY,
});
clearTimeout(timerId);
return x;
};