continuous-integrationapp-store-connecttvosfastlanefastlane-deliver

How do I make Fastlane Deliver work for tvOS?


Upload to iTunesConnect fails with the following error:

"Invalid Provisioning Profile. This provisioning profile is not compatible with iOS apps."

+-----------------------+---------------------------------------+
|                    deliver 2.26.1 Summary                     |
+-----------------------+---------------------------------------+
| username              | iosdev@inspirato.com                  |
| ipa                   | /Users/vagrant/deploy/InspiratoTV.ipa |
| skip_screenshots      | true                                  |
| skip_metadata         | true                                  |
| force                 | true                                  |
| app_identifier        | com.inspirato.travel.InspiratoTV      |
| screenshots_path      | ./screenshots                         |
| metadata_path         | ./metadata                            |
| app_version           | 1.0                                   |
| edit_live             | false                                 |
| platform              | ios                                   |
| skip_binary_upload    | false                                 |
| submit_for_review     | false                                 |
| automatic_release     | false                                 |
| overwrite_screenshots | false                                 |
+-----------------------+---------------------------------------+

It appears that the platform is stuck on "ios" even though I don't have an iOS related app for this bundle ID. I've tried adding "--platform tvOS" to the end of the $ fastlane deliver ... command with no luck.


Solution

  • Deliver uses the notation "appletvos" for the tvOS platform.


    Add that to the end of the $ fastlane deliver command:

    $ fastlane deliver ... ... "--platform" "appletvos"
    

    Or add it to your .Deliver file like so:

    deliver(platform: "appletvos")