microsoftconnect/intune-app-wrapping-tool-ios

Ipa framework side effect in 11.2.0 version

daordonez11 opened this issue · 23 comments

Describe the bug:
Running the wrapping command with the 11.0.3 version works but fails with version 11.2.0

To Reproduce
Steps to reproduce the behavior:
Execute wrapping command with 11.0.3 in our test Ipa result:
The application was successfully packaged
Execute Wrapping command with version 11.2.0 in the same Ipa, result:
The app's Frameworks directory could not be signed. This may be because it contains files whose format was unrecognized, invalid, or unsuitable.
Cause of the error to be provided for investigation:Error Domain=IntuneAppPackager Code=1 "/usr/bin/codesign exited with an error." UserInfo={Error Description=SignFrameworksError, NSLocalizedDescription=/usr/bin/codesign exited with an error.}

Expected behavior:
Running the command with the same parameters in 2 different version should work in the same way for both.
Screenshots and logs:
image
image
Input params:
image

Intune app wrapping tool (please complete the following information):

  • What version of the wrapper are you using? Are you using the latest version?
    11.0.3 and 11.2.0

Hey @daordonez11, I believe I've identified the root cause of this issue. Just to confirm, could you verify that you are specifying a SHA-1 certificate hash and getting the warning about it being deprecated? Could you also confirm that if you specify the cert name instead, it works?

Hey @daordonez11, just checking in again to see if specifying the certificate name worked for you?

I have the same issue with the latest 12.0.12 version. If I specify the hash I get the deprecation warning and the above error, but if I specify the cert name instead I just get the error.

Hey @daordonez11 and @rliljest, could either of you list out the file extension types that are contained within the "Frameworks" directory of your app bundle?

Actually, if either of you could share the complete contents of the Frameworks directory, that would be quite helpful

We have several IPAs that show the same issue, and one of them does not even have a Frameworks directory

Hey @rliljest, were the IPAs you are attempting to wrap built with Xcode 11?

Built with Xcode 11 using the legacy build system

What do you mean by legacy build system? Does the machine you are wrapping with have Xcode 11 installed along with command line tools as well?

Yes, built using Xcode 11 using the iOS 13 SDK. The legacy build system might not be relevant.
legacy_build_system

Are you wrapping on the same machine with Xcode 11 installed?

Different machine, but both are using Xcode 11

@Kyle-Reis I found out what the issue is with this error.

We have two distribution certificates with the same name: one for enterprise distribution (which we will wrap with the intune app wrapping tool) and one for app store distribution. Our development machines have both certificates installed.

Regardless of if we provide the (deprecated) cert hash or the certificate name, the error is the same. If I remove the app store certificate from my keychain, then the wrapping tool works without issue. I have verified that the provisioning profile specified is only associated with the enterprise cert (per our discussion on #29).

So it looks like at some point, the duplicate names are causing confusion. Since we need to be able to work on public and enterprise builds, removing the app store cert from our machines is not a long-term solution.

Hey @rliljest, just wanted to let you know we have a potential fix for this issue in review now.

@Kyle-Reis Any estimate on when the fix would be available?

Hey @rliljest, this fix is NOT included in yesterday's update. It should be in the next update. ETA is sometime in December.

Hello, @Kyle-Reis ! Sorry I hadn't read my Github notifications, do you still require anything from my side?

@daordonez11 Nope! We’re working on releasing the fix. Should be out soon!

Saw the 12.2.0 update and verified it fixed the issue I was having. Thanks a lot @Kyle-Reis and team!

No problem 🙂 @daordonez11 just an FYI that this issue is fixed in the latest release (12.2.0)

Hey @Kyle-Reis today I downloaded 11.2.0 and tried to test it but in my mac it said that the tool was corrupted and I wasn't able to test it

Hi Need urgent help! I am seeing the same error though i am running the latest version to wrap the LOB app

Warning: Unable to verify system settings for certificate revocation checks. If you would like to enforce certificate revocation checks, run the following commands - 'defaults write com.apple.security.revocation CRLStyle BestAttempt' and 'defaults write com.apple.security.revocation OCSPStyle BestAttempt'

Execution of defaults failed with error: Error Domain=IntuneAppPackager Code=1 "/usr/bin/defaults exited with an error." UserInfo={NSLocalizedDescription=/usr/bin/defaults exited with an error.}.

Packager Version: 14.0.0, Packager Build: 2011.9, App Build: 1.1.0, Concatenated Build: 2026.10.0

The app's Frameworks directory could not be signed. This may be because it contains files whose format was unrecognized, invalid, or unsuitable.

Cause of the error to be provided for investigation:Error Domain=IntuneAppPackager Code=1 "/usr/bin/codesign exited with an error." UserInfo={Error Description=SignFrameworksError, NSLocalizedDescription=/usr/bin/codesign exited with an error.}

Guys, i am having the same error, I am using the latest wrapping tool build, any help?