Command line notarization Dealing with ITMS-90732 Duplicate upload.

I am currently notarizing from the command line.


When I try to notarize an item that has already been uploaded the result from the command line is:


2019-07-30 12:43:05.491 altool[11971:259993] No errors getting notarization info.


RequestUUID: <redacted>

Date: 2019-07-30 16:40:25 +0000

Status: invalid

LogFileURL: (null)



"Then in a minute or two I get an email explaining that "ITMS-90732: Duplicate Upload - The software asset has already been uploaded."


My question is how I can get this info from the command line so the build script can deal with the result?

When I try to notarize an item that has already been uploaded the result from the command line is …

Hmmm. When I try to notarise the same file twice I get the error back from

altool
immediately:
$ xcrun altool --notarize-app …credentials redacted… --primary-bundle-id com.example.apple-samplecode.Test120609 --file Test120609.zip 
2019-07-31 08:52:55.616 altool[20593:1116167] No errors uploading 'Test120609.zip'.
RequestUUID = f8f79582-6284-4bb6-bd15-b71cec14c4b3
$ xcrun altool --notarize-app …credentials redacted… --primary-bundle-id com.example.apple-samplecode.Test120609 --file Test120609.zip 
…
Package Summary:

1 package(s) were not uploaded because they had problems:
    /var/folders/7j/6bzgmchs7z11xphl4c1nwfph0001yh/T/87D4DB2A-983E-4F82-B55E-E802065C34B1/Untitled.itmsp - Error Messages:
        ERROR ITMS-90732: "The software asset has already been uploaded. The upload ID is f8f79582-6284-4bb6-bd15-b71cec14c4b3" at SoftwareAssets/EnigmaSoftwareAsset
2019-07-31 08:55:24.623 altool[20869:1121163] *** Error: ERROR ITMS-90732: "The software asset has already been uploaded. The upload ID is f8f79582-6284-4bb6-bd15-b71cec14c4b3" at SoftwareAssets/EnigmaSoftwareAsset

Thus, I never get a second request UUID. Can you describe in a little more detail the process you’re using?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

I am sorry, my question was not detailed enough.


I am uploading a pkg file that has been recreated and resigned with pkgbuild, but with the same contents.


Because of signature timestamps and such the file is not exactly the same (different MD5's each time), so it seems it allows the upload because the hash is different. It seems after it is uploaded the system does additional checks decides that it is a duplicate package.


The email message looks like this:


The Mac software that you uploaded could not be notarized due to processing errors. Please address the issues listed below and upload your software again.

Bundle Identifier: <redacted>
Request Identifier: ab59b3d2-4fba-4b90-a6ef-<redacted>

ITMS-90732: Duplicate Upload - The software asset has already been uploaded. The upload ID is f5243c9f-ffcf-4b49-9734-<redacted>



So it is generating a new request identifier on an upload that is sucessful.

Given that you’re getting a new request UUID, you should be able to pass that to the

--notarization-info
option to request the status of that second request. What does it show?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

So with the new uuid I get a couple of "in progress" results followed by:


RequestUUID: <redacted>

Date: 2019-07-30 16:40:25 +0000

Status: invalid

LogFileURL: (null)


Which will be repeated if I continue to call it. There is never a valid LogFileUrl. Once I get the email, the staple will work.

There is never a valid

LogFileURL
.

Well, that’s annoying. My recommendation is that you file a bug about this, making sure to include the UUIDs of both the original and the duplicate request.

Please post your bug number, just for the record.

Why are you submitting duplicate requests? It seems like it’d be best to filter these out at your end?

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"
Command line notarization Dealing with ITMS-90732 Duplicate upload.
 
 
Q