Can xcodebuild manage automatic signing? Can xcodebuild manage automatic signing? xcode xcode

Can xcodebuild manage automatic signing?


This isn't directly supported in Xcode 8. In Xcode 9, however, you can pass -allowProvisioningUpdates to xcodebuild and automatic signing will work just as in the Xcode UI, without needing any additional tools.

e.g. cordova run ios --buildFlag="-allowProvisioningUpdates"


Answer is yes. What I used and what I can confirm is working and it is great:

https://fastlane.tools/

You can set up everything to be automatic:

  1. Signing keys
  2. Taking screenshots
  3. Uploading on iTunes

and many other things

In background it is using xcodebuild command line. I was skeptic that something like this is possible, but just set up, start and enjoy.


For Automatically manage signing you can use Fastlane. It's easy to install and setup.

For using it on a remote build server - you can use Jenkins.

Here example. You need to setup Jenkins with Fastlane to your remote machine. Than Jenkins will check your repository thread or just by you command to it. After it Jenkins run Fastlane on remote build server. And Fastlane will create all certificate and other setup that you write in Fastfile.

If you have only one deploy certificate, you can use Fastlane service called Match

Easily sync your certificates and profiles across your team using Git

or just send and setup it locally.

Hope it helps you, good luck!

Here example for beta deploy (for me work with Xcode 9):

 desc "Build devFoo and upload it to Fabric"      lane :uploadToFabric do        cocoapods        cert(        development: true,        output_path: "./fastlane"        )        sigh(        development: true,        output_path: "./fastlane"        )        clear_derived_data        gym(        scheme: "Foo",        configuration: "Debug",        clean: true,        output_directory: "./fastlane",        )        crashlytics(        api_token: "foofoofoofoo",        build_secret: "foofoofoofoo",        emails: ["foo@foo.com"],        notifications: true        )        slack(        message: "New build for test successfully deployed in Fabric",        success: true        )      end

Here example for release deploy:

desc "Build and upload it to the AppStore and TestFlight"  lane :uploadToAppStore do    cocoapods    cert(    development: false,    output_path: "./fastlane"    )    sigh(    development: false,    app_identifier: "foofoo",    output_path: "./fastlane"    )    clear_derived_data    gym(    scheme: "Foo",    configuration: "Release",    clean: false,    output_directory: "./fastlane",    )    deliver(    force: true,    app_identifier: "foo",    skip_metadata: true,    skip_screenshots: true,    submit_for_review: false,    skip_binary_upload: false    )    slack(    message: "New build successfully deployed to AppStore",    success: true    )    upload_symbols_to_crashlytics(dsym_path: "./fastlane/foo.app.dSYM.zip")    slack(    message: "dSYM symbolication files uploaded to Crashlytics",    success: true    )