Files
orca/config/scripts/sign-mac-app.mjs
T

23 lines
842 B
JavaScript

import { createRequire } from 'node:module'
export function signMacApp(options, { sign, retry }) {
// A custom signer bypasses electron-builder's retry wrapper.
return retry(() => sign({ ...options, batchCodesignCalls: true }), {
retries: 3,
interval: 5000,
backoff: 5000
})
}
export default async function sign(options) {
const { sign: signApplication } = await import('@electron/osx-sign')
const builderRequire = createRequire(createRequire(import.meta.url).resolve('electron-builder'))
const require = createRequire(builderRequire.resolve('app-builder-lib'))
const { retry } = require('builder-util')
const started = performance.now()
await signMacApp(options, { sign: signApplication, retry })
console.log(
`[mac-sign] batched signing completed in ${Math.round(performance.now() - started)}ms`
)
}