From 3249580515eb869c02a25dd977b709c7d855a7d7 Mon Sep 17 00:00:00 2001 From: Harel Mazor Date: Mon, 27 Jul 2020 15:01:32 +0300 Subject: [PATCH 1/4] Multiple provisioning profile support --- bin/templates/scripts/cordova/build | 2 +- bin/templates/scripts/cordova/lib/build.js | 18 ++++++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/bin/templates/scripts/cordova/build b/bin/templates/scripts/cordova/build index f4b0d9a04..84ba10436 100755 --- a/bin/templates/scripts/cordova/build +++ b/bin/templates/scripts/cordova/build @@ -40,7 +40,7 @@ var buildOpts = nopt({ emulator: Boolean, codeSignIdentity: String, codeSignResourceRules: String, - provisioningProfile: String, + provisioningProfile: [String, Array], automaticProvisioning: Boolean, developmentTeam: String, packageType: String, diff --git a/bin/templates/scripts/cordova/lib/build.js b/bin/templates/scripts/cordova/lib/build.js index a72038756..7c4f6b1eb 100644 --- a/bin/templates/scripts/cordova/lib/build.js +++ b/bin/templates/scripts/cordova/lib/build.js @@ -168,7 +168,16 @@ module.exports.run = buildOpts => { extraConfig += `CODE_SIGN_RESOURCE_RULES_PATH = ${buildOpts.codeSignResourceRules}\n`; } if (buildOpts.provisioningProfile) { - extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile}\n`; + if (typeof(buildOpts.provisioningProfile) === 'string') { + extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile}\n`; + } else { + // HM TODO: this can probably be improved... + const project = createProjectObject(projectPath, projectName); + const bundleIdentifier = project.getPackageName(); + console.log("bundleIdentifier is: ", bundleIdentifier); + const keys = Object.keys(buildOpts.provisioningProfile); + extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile[keys[0]]}\n`; + } } if (buildOpts.developmentTeam) { extraConfig += `DEVELOPMENT_TEAM = ${buildOpts.developmentTeam}\n`; @@ -231,7 +240,12 @@ module.exports.run = buildOpts => { } if (buildOpts.provisioningProfile && bundleIdentifier) { - exportOptions.provisioningProfiles = { [bundleIdentifier]: String(buildOpts.provisioningProfile) }; + if (typeof(buildOpts.provisioningProfile) === 'string') { + exportOptions.provisioningProfiles = { [bundleIdentifier]: String(buildOpts.provisioningProfile) }; + } else { + console.log("Setting multiple provisioning profiles:", buildOpts.provisioningProfile); + exportOptions.provisioningProfiles = buildOpts.provisioningProfile; + } exportOptions.signingStyle = 'manual'; } From f9bffce9f8390fb10c3e53a9bc248143e058e58e Mon Sep 17 00:00:00 2001 From: Harel Mazor Date: Mon, 27 Jul 2020 15:42:46 +0300 Subject: [PATCH 2/4] Remove redundant console log and testing code --- bin/templates/scripts/cordova/lib/build.js | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/bin/templates/scripts/cordova/lib/build.js b/bin/templates/scripts/cordova/lib/build.js index 7c4f6b1eb..40d79393a 100644 --- a/bin/templates/scripts/cordova/lib/build.js +++ b/bin/templates/scripts/cordova/lib/build.js @@ -171,11 +171,7 @@ module.exports.run = buildOpts => { if (typeof(buildOpts.provisioningProfile) === 'string') { extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile}\n`; } else { - // HM TODO: this can probably be improved... - const project = createProjectObject(projectPath, projectName); - const bundleIdentifier = project.getPackageName(); - console.log("bundleIdentifier is: ", bundleIdentifier); - const keys = Object.keys(buildOpts.provisioningProfile); + const keys = Object.keys(buildOpts.provisioningProfile); // using keys[0] due to issue #955 extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile[keys[0]]}\n`; } } @@ -243,7 +239,7 @@ module.exports.run = buildOpts => { if (typeof(buildOpts.provisioningProfile) === 'string') { exportOptions.provisioningProfiles = { [bundleIdentifier]: String(buildOpts.provisioningProfile) }; } else { - console.log("Setting multiple provisioning profiles:", buildOpts.provisioningProfile); + console.log("Setting multiple provisioning profiles for signing"); exportOptions.provisioningProfiles = buildOpts.provisioningProfile; } exportOptions.signingStyle = 'manual'; From bccf86f7863a56f54873e53fd7c6f5333b09615c Mon Sep 17 00:00:00 2001 From: Harel Mazor Date: Mon, 27 Jul 2020 16:10:18 +0300 Subject: [PATCH 3/4] Fix lint --- bin/templates/scripts/cordova/lib/build.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/templates/scripts/cordova/lib/build.js b/bin/templates/scripts/cordova/lib/build.js index 40d79393a..ec72650ae 100644 --- a/bin/templates/scripts/cordova/lib/build.js +++ b/bin/templates/scripts/cordova/lib/build.js @@ -168,7 +168,7 @@ module.exports.run = buildOpts => { extraConfig += `CODE_SIGN_RESOURCE_RULES_PATH = ${buildOpts.codeSignResourceRules}\n`; } if (buildOpts.provisioningProfile) { - if (typeof(buildOpts.provisioningProfile) === 'string') { + if (typeof buildOpts.provisioningProfile === 'string') { extraConfig += `PROVISIONING_PROFILE = ${buildOpts.provisioningProfile}\n`; } else { const keys = Object.keys(buildOpts.provisioningProfile); // using keys[0] due to issue #955 @@ -236,10 +236,10 @@ module.exports.run = buildOpts => { } if (buildOpts.provisioningProfile && bundleIdentifier) { - if (typeof(buildOpts.provisioningProfile) === 'string') { + if (typeof buildOpts.provisioningProfile === 'string') { exportOptions.provisioningProfiles = { [bundleIdentifier]: String(buildOpts.provisioningProfile) }; } else { - console.log("Setting multiple provisioning profiles for signing"); + console.log('Setting multiple provisioning profiles for signing'); exportOptions.provisioningProfiles = buildOpts.provisioningProfile; } exportOptions.signingStyle = 'manual'; From 266dc8fa0932f99eb8b0b54774bb16ed8b025323 Mon Sep 17 00:00:00 2001 From: Harel M Date: Thu, 20 Aug 2020 18:45:00 +0300 Subject: [PATCH 4/4] Fix console.log according to code review comment --- bin/templates/scripts/cordova/lib/build.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/templates/scripts/cordova/lib/build.js b/bin/templates/scripts/cordova/lib/build.js index ec72650ae..e978494d1 100644 --- a/bin/templates/scripts/cordova/lib/build.js +++ b/bin/templates/scripts/cordova/lib/build.js @@ -239,7 +239,7 @@ module.exports.run = buildOpts => { if (typeof buildOpts.provisioningProfile === 'string') { exportOptions.provisioningProfiles = { [bundleIdentifier]: String(buildOpts.provisioningProfile) }; } else { - console.log('Setting multiple provisioning profiles for signing'); + events.emit('log', 'Setting multiple provisioning profiles for signing'); exportOptions.provisioningProfiles = buildOpts.provisioningProfile; } exportOptions.signingStyle = 'manual';