Ship - Publishing iOS app fails when validating metadata

#1

We have our build pipeline successfully building a new version of our iOS app which we want to publish to the App Store using Ship. The new version is 2.1.6, the existing published version is 2.1.5.

The Ship publish step fails when trying to validate the metadata because Ship seems to be trying to update metadata for the existing 2.1.5 version, rather than creating a new app version. The 2.1.6 build does successfully upload and is available to use on App Store Connect, but a new App Store Version hasn’t been created for that build.

Here’s the relevant part of the log:

[2020-06-29 18:04:41 UTC] <main> DBG-X: Using operation named: validateMetadata
[2020-06-29 18:04:41 UTC] <main> DBG-X: Apple's web service operation input parameters:
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Application = iTMSTransporter
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter BaseVersion = 1.13.0
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Files = [iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png, iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png, iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png, metadata.xml, iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png, iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png, iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png, iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png, iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png]
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Metadata = <package xmlns="http://apple.com/itunes/importer" version="software5.11">
    <metadata_token>1593453871933-b2bf1cb800264f14a8ac9fb709543bf21c1411ca12e787cf2c9cffb72d876038</metadata_token>
    <provider>REDACTED</provider>
    <team_id>REDACTED</team_id>
    <software>
        <vendor_id>juntomobile</vendor_id>
        <software_metadata>
            <versions>
                <version string="2.1.5">
                    <locales>
                        <locale name="en-US" remove="">
                            <title>Junto - Do your best work</title>
                            <subtitle>Daily learning for work skills</subtitle>
                            <description>With 10 minutes a day Junto&#39;s interactive courses help you make better decisions, build stronger relationships, and do better work. &#xA;&#xA;COURSE TOPICS&#xA;&#xA;Courses cover topics like communicating clearly in writing, managing feedback, using coaching techniques in conversations, design thinking, taking an experimental approach to work, storytelling, and more.&#xA;&#xA;LEARN USEFUL WORK SKILLS EVERYDAY.&#xA;&#xA;Short lessons that take 10 minutes a day and teach you a core skill can use to do better work.&#xA;&#xA;IMMERSE YOURSELF IN INTERACTIVE LESSONS.&#xA;&#xA;Lessons are interactive and get you to engage with the ideas more deeply than just a quick read. Test your knowledge, think through a scenario, or hear someone share their experience.&#xA;&#xA;MAKE REAL PROGRESS.&#xA;&#xA;Get guidance on how to apply what you&#39;re learning in real world situations. Check-ins, deep-dives, and additional exercises to help you integrate the ideas into your work habits.&#xA;&#xA;LEARN TOGETHER (Coming Soon)&#xA;&#xA;Get help from your peers and have some fun along the way.&#xA;&#xA;Cohorts: Join your coworkers or friends and learn together.&#xA;&#xA;Discussion: Brainstorm ideas and discuss different points of view.&#xA;&#xA;Community: Discover what others are learning to do their best work.</description>
                            <keywords>
                                <keyword>Junto</keyword>
                                <keyword> Jinto</keyword>
                                <keyword> Minto</keyword>
                                <keyword> Work skills</keyword>
                                <keyword> learning</keyword>
                                <keyword> education</keyword>
                            </keywords>
                            <version_whats_new>Some big changes in this new version of Junto!&#xA;&#xA;NEW DESIGN&#xA;· Brand new tab-based design.&#xA;· The Today tab makes it easy to access your available lessons and your active courses.&#xA;· The Explore tab shows you all of Junto&#39;s courses.&#xA;&#xA;MULTIPLE COURSES&#xA;· You can now work on multiple courses at the same time.&#xA;· All of your active courses and their lessons will show up in Today.&#xA;&#xA;INTRODUCING COURSE PROBLEMS&#xA;· Challenge your understanding with exercises that get you to apply what you&#39;ve learned.&#xA;&#xA;OTHER FEATURES&#xA;· You can now go back to lessons and courses you&#39;ve completed.</version_whats_new>
                            <software_url>https://juntohq.com</software_url>
                            <privacy_url>https://www.juntohq.com/privacy</privacy_url>
                            <support_url>https://juntohq.com</support_url>
                            <software_screenshots>
                                <software_screenshot display_target="iOS-5.5-in" position="1">
                                    <file_name>iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png</file_name>
                                    <size>205523</size>
                                    <checksum type="md5">1c4d05c9ece58d7a024b3d31f7baf8d1</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-5.5-in" position="2">
                                    <file_name>iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png</file_name>
                                    <size>238493</size>
                                    <checksum type="md5">c4c95e3de64e29d9696b71a0f159bb22</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-5.5-in" position="3">
                                    <file_name>iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png</file_name>
                                    <size>284632</size>
                                    <checksum type="md5">7d142debe50016d9c603fe9e0824b066</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-5.5-in" position="4">
                                    <file_name>iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png</file_name>
                                    <size>236856</size>
                                    <checksum type="md5">32717eb321d6b00c0f288b09e3c713d0</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-6.5-in" position="1">
                                    <file_name>iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png</file_name>
                                    <size>248449</size>
                                    <checksum type="md5">5beb9cdb271d0337bef375c2ff83ad32</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-6.5-in" position="2">
                                    <file_name>iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png</file_name>
                                    <size>322232</size>
                                    <checksum type="md5">a5986991d97850084d18686a4bdccc2f</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-6.5-in" position="3">
                                    <file_name>iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png</file_name>
                                    <size>291686</size>
                                    <checksum type="md5">0d1c8580654b5fbff790a2c052f6f496</checksum>
                                </software_screenshot>
                                <software_screenshot display_target="iOS-6.5-in" position="4">
                                    <file_name>iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png</file_name>
                                    <size>274971</size>
                                    <checksum type="md5">f7805f63cabde9a34dce9d4ec1bdf11a</checksum>
                                </software_screenshot>
                            </software_screenshots>
                        </locale>
                    </locales>
                </version>
            </versions>
            <products>&#xA;                &#xA;            
                <product>&#xA;                    &#xA;                    &#xA;                    &#xA;                    &#xA;                    &#xA;                
                    <territory>WW</territory>
                    <sales_start_date>2020-04-15</sales_start_date>
                    <cleared_for_sale>true</cleared_for_sale>
                    <allow_volume_discount>true</allow_volume_discount>
                </product>
            </products>
        </software_metadata>
    </software>
</package>
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter MetadataChecksum = f9c24bc3c3fef8a83a474d35d9a1bd9e
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter MetadataCompressed = (suppressed)
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter MetadataInfo = {packageVersion=software5.11}
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter OSIdentifier = Mac OS X 10.15.4 (x86_64); jvm=25.71-b02; jre=1.8.0-u131-b11-iTMSTransporter-b02
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter PackageName = juntomobile.itmsp
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter PackageSize = 2110411
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter StatisticsClientStartDateTimeZoneISO = 2020-06-29T18:04:41+00:00
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter TransporterArguments = -m upload -f ./juntomobile.itmsp -vendor_id juntomobile -u bitrise@juntohq.com -p **hidden value**
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Version = 2.0.0
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter iTMSTransporterMode = upload
[2020-06-29 18:04:41 UTC] <main>  INFO: id = 20200629180441-510
[2020-06-29 18:04:41 UTC] <main>  INFO: iTMSTransporter Correlation Key: 2899670d-a2c3-444e-aa41-867b476da9d1-0001
[2020-06-29 18:04:41 UTC] <main> DBG-X: Apple's web service operation return value:
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter EnableJWTForAllCalls = false
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter MinimumFileSizeThresholdForCheckum = 104857600
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter SoftwareMediaDescriptionFormat = binary
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter RestartClient = false
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter SoftwareMediaDescriptionThresholds = {in-app-purchase-content={extensions=[pkg], size=100000000}, ccats={extensions=[pdf], size=100000000}, product-archive={extensions=[pkg], size=100000000}, developer-id-package={extensions=[zip, pkg, dmg], size=100000000}, bundle={extensions=[zip, ipa], size=100000000}, large-icon={extensions=[jpg, png, jpeg], size=100000000}}
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Success = false
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Errors = [ERROR ITMS-2000: "Version '2.1.5', Locale 'en-US': software_screenshots cannot be edited in the current state" at Software/SoftwareMetadata/SoftwareVersion/SoftwareVersionLanguageDetail]
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter FilesToUpload = [metadata.xml, iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png, iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png, iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png, iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png, iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png, iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png, iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png, iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png]
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter AssetsToDescribe = [{Role=source, Filename=iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png, ShouldDescribeAsset=true, UTI=public.png}, {Role=source, Filename=iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png, ShouldDescribeAsset=true, UTI=public.png}]
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter AssetNamesToBeReplaced = [iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png, iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png, iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png, iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png, iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png, iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png, iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png, iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png]
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter Checksums = {iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png=7d142debe50016d9c603fe9e0824b066, iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png=1c4d05c9ece58d7a024b3d31f7baf8d1, iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png=f7805f63cabde9a34dce9d4ec1bdf11a, iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png=5beb9cdb271d0337bef375c2ff83ad32, iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png=a5986991d97850084d18686a4bdccc2f, iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png=c4c95e3de64e29d9696b71a0f159bb22, iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png=32717eb321d6b00c0f288b09e3c713d0, iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png=0d1c8580654b5fbff790a2c052f6f496}
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter FileSizes = {iOS-5.5-in_ded85050-8b4b-4094-bc47-08aca6c52e53.png=284632, iOS-5.5-in_48db04e2-2139-4a64-8225-3ba342365ca1.png=205523, iOS-6.5-in_c93eb804-9e5a-4ef2-b926-dd28996988be.png=274971, iOS-6.5-in_7beb4040-fd70-4130-8092-09ac97f430c4.png=248449, iOS-6.5-in_8b91f38c-2516-48d2-a2f3-bc18c60a9912.png=322232, iOS-5.5-in_a092bf5f-5a7a-456d-aec1-a82abcf8f7a9.png=238493, iOS-5.5-in_e810a6c1-9513-45f0-87ac-66a7c50d42aa.png=236856, iOS-6.5-in_9c02ba52-ed1b-497c-b843-f8007f09fe90.png=291686}
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter ErrorCode = 1102
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter ErrorMessage = ERROR ITMS-2000: "Version '2.1.5', Locale 'en-US': software_screenshots cannot be edited in the current state" at Software/SoftwareMetadata/SoftwareVersion/SoftwareVersionLanguageDetai
 (1102)
[2020-06-29 18:04:41 UTC] <main> DBG-X:   parameter ShouldUseRESTAPIs = false
[2020-06-29 18:04:41 UTC] <main> ERROR: ERROR ITMS-2000: "Version '2.1.5', Locale 'en-US': software_screenshots cannot be edited in the current state" at Software/SoftwareMetadata/SoftwareVersion/SoftwareVersionLanguageDetail
[2020-06-29 18:04:41 UTC] <main> DBG-X: The error code is: 1102



Package Summary:
 
1 package(s) were not uploaded because they had problems:
	/Users/vagrant/git/./juntomobile.itmsp - Error Messages:
		ERROR ITMS-2000: "Version '2.1.5', Locale 'en-US': software_screenshots cannot be edited in the current state" at Software/SoftwareMetadata/SoftwareVersion/SoftwareVersionLanguageDetail
[2020-06-29 18:04:42 UTC] <main> DBG-X: Returning 1
e[31;1mFailed to upload metadata, errpr: exit status 1e[0m
e[33;1mFor more details you can enable the debug logs by turning on the verbose step input.e[0m

0 Likes

#2

Sorry to learn about this issue @bencdavis! We will have to investigate this, but we will require access to your app and Ship dashboard. For that we need a link to an example build, and having Support User access in the Settings of the app, enabled. Can you do that for us? Thanks!

0 Likes