diff --git a/notarize.js b/notarize.js index 15c3db9..4f48d0d 100644 --- a/notarize.js +++ b/notarize.js @@ -9,20 +9,34 @@ exports.default = async function notarizing(context) { return; } - if (!(process.env.APPLE_ID && process.env.APPLE_ID_PASSWORD && process.env.TEAM_ID)) { - console.log('Skipping notarization'); - - return; - } - const appName = context.packager.appInfo.productFilename; + const appPath = `${appOutDir}/${appName}.app`; + + if (process.env.APPLE_ID && process.env.APPLE_ID_PASSWORD && process.env.TEAM_ID) { + console.log(`Notarizing ${appPath} with user & password`); + + return await notarize({ + tool: 'notarytool', + appBundleId: pkgJson.build.appId, + appPath, + appleId: process.env.APPLE_ID, + appleIdPassword: process.env.APPLE_ID_PASSWORD, + teamId: process.env.TEAM_ID + }); + } else if (process.env.API_KEY_FILE && process.env.API_KEY_ID && process.env.API_KEY_ISSUER_ID) { + console.log(`Notarizing ${appPath} with API key`); + + return await notarize({ + tool: 'notarytool', + appBundleId: pkgJson.build.appId, + appPath, + appleApiKey: process.env.API_KEY_FILE, + appleApiKeyId: process.env.API_KEY_ID, + appleApiIssuer: process.env.API_KEY_ISSUER_ID + }); + } + console.log('Skipping notarization'); + + return; - return await notarize({ - tool: 'notarytool', - appBundleId: pkgJson.build.appId, - appPath: `${appOutDir}/${appName}.app`, - appleId: process.env.APPLE_ID, - appleIdPassword: process.env.APPLE_ID_PASSWORD, - teamId: process.env.TEAM_ID - }); };