Skip to content

Add a package/publish command for iOS #1172

Closed
@fealebenpae

Description

@fealebenpae

Right now a lot of our users rely on opening the Xcode project in platforms/ios and manually going through Xcode's Archive step in order to submit a binary to the store.

xcodebuild has an archive action that performs the same kind of build. Xcode's toolchain attaches additional meaning to archive builds - for instance, only archive triggers full Bitcode generation as opposed to markers-only generation in regular builds of projects that enable Bitcode. So it's not the same as doing a normal build in the Release configuration.

I propose that a new command is added to the CLI, one that invokes xcodebuild archive internally, and depending on switches either reveals the created archive in Xcode's Organizer, runs a validation or even initiates App Store publishing right from the command-line. Ideally, this new command will be hook-able so that actions that make sense for App Store builds can run.

I'm not familiar whether there's a special kind of build that has to be done for Android in order to get the app in Store-ready state, but I think that what this command can do for both Android and iOS is to always codesign with distribution credentials and allow the resulting package to be saved in a custom location, rather than the platform folder.

Examples:
tns package ios --archive - perform xcodebuild archive and open the archive in Xcode. Could be the default action.
tns package ios --output <path-to-new-ipa-location>
tns package ios --verify - run itmstransporter's verification on the archive
tns package ios --publish - run itmstransporters publish step interactively
tns package android --output <path-to-new-apk-location>

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions