All Projects → Mindera → fastlane-plugin-cosigner

Mindera / fastlane-plugin-cosigner

Licence: MIT license
A fastlane plugin to help you sign your iOS builds

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to fastlane-plugin-cosigner

fastlane-plugin-validate app
Validate your app with altool before uploading to iTunes Connect
Stars: ✭ 16 (-36%)
Mutual labels:  fastlane, fastlane-plugin
firim
Upload ipa binary to fir.im in fastlane chain
Stars: ✭ 51 (+104%)
Mutual labels:  fastlane, fastlane-plugin
fastlane-plugin-flutter
Flutter actions plugin for Fastlane
Stars: ✭ 31 (+24%)
Mutual labels:  fastlane, fastlane-plugin
fastlane-plugin-run tests firebase testlab
Runs Android tests in Firebase Test Lab 🚀
Stars: ✭ 46 (+84%)
Mutual labels:  fastlane, fastlane-plugin
fastlane-plugins
自创造超实用性 Fastlane 插件和自定义 actions 的聚合仓库
Stars: ✭ 19 (-24%)
Mutual labels:  fastlane, fastlane-plugin
fastlane-plugin-jira release notes
Fastlane Plugin for Jira Release Notes
Stars: ✭ 14 (-44%)
Mutual labels:  fastlane, fastlane-plugin
icon-banner
🚩 IconBanner adds custom nice-looking banners over your mobile app icons 📱
Stars: ✭ 18 (-28%)
Mutual labels:  fastlane, fastlane-plugin
souyuz
Fastlane build plugin for building Xamarin.iOS and Xamarin.Android applications
Stars: ✭ 35 (+40%)
Mutual labels:  fastlane, fastlane-plugin
TiFastlane
With TiFastlane you'll be able to fully optimize the way you submit your app updates and maintain your certificates and provisioning profiles of all your Titanium Apps.
Stars: ✭ 83 (+232%)
Mutual labels:  fastlane, provisioning-profiles
xcresult
Ruby interface for inspecting data and exporting data from Xcode 11 .xcresult files
Stars: ✭ 31 (+24%)
Mutual labels:  fastlane
iInject
Tool to automate the process of embedding dynamic libraries into iOS applications from GNU/Linux
Stars: ✭ 64 (+156%)
Mutual labels:  codesigning
skeletoid
Bootstrapping and Utils code for Android applications 🤖made at Mindera 💛
Stars: ✭ 24 (-4%)
Mutual labels:  mindera
HitNotes
Rhythm-based mobile game
Stars: ✭ 24 (-4%)
Mutual labels:  fastlane
cook
macOS command line tool to automate common iOS development tasks
Stars: ✭ 50 (+100%)
Mutual labels:  provisioning-profiles
Shuttle
Swift package heavily inspired by https://spaceship.airforce
Stars: ✭ 29 (+16%)
Mutual labels:  provisioning-profiles
fastlane-ios-example
Fastlane iOS Example for Beta, Release
Stars: ✭ 38 (+52%)
Mutual labels:  fastlane
LongWeekend-iOS
🏖📱 LongWeekend is iOS Application that supports checking long weekends when taking a vacation in Japan
Stars: ✭ 19 (-24%)
Mutual labels:  fastlane
Swiftmazing
A iOS application with layout based on App Store that can check the most starred and last updated Swift repository
Stars: ✭ 73 (+192%)
Mutual labels:  fastlane
fastlane-plugin-create xcframework
Fastlane plugin that creates xcframework for given list of destinations 🚀
Stars: ✭ 58 (+132%)
Mutual labels:  fastlane
RecordingSample
Recording Sample by React Native
Stars: ✭ 27 (+8%)
Mutual labels:  fastlane

Cosigner ✍️

Fastlane plugin which enables iOS workflows to change the Xcode project's code signing settings before building a target, being your "cosigner".

Deprecation notice ⚠️

cosigner has long been integrated into fastlane, and as such is considered deprecated and will no longer receive updates. Please use fastlane's update_code_signing_settings action instead. 🙏

Why do I need it? 🤔

This action is especially useful to avoid having to configure the Xcode project with a "static" set of code signing configurations for:

  • Code Signing Style (Xcode8+): Manual / Automatic (originally Provisioning Style on Xcode 8)
  • Code Signing Identity: iPhone Development / iPhone Distribution
  • Provisioning Profile UUID (Xcode 7 and earlier)
  • Provisioning Profile Name (Xcode8+)
  • Team ID
  • Application Bundle identifier

By being able to configure this before each build (e.g. gym call), it allows having separate sets of code signing configurations on the same project without being "intrusive".

Some practical scenarios can be for example:

  • Xcode project in which two different Apple Developer accounts/teams are required (e.g. 1 for Development and 1 for Release)
  • Shared Xcode project where teams have different code signing configurations (e.g. Automatic vs Manual Provisioning Style)

How to use it? 👀

  1. Run fastlane add_plugin cosigner on your project folder.
  2. Invoke cosigner in your Fastfile and provide the required options.
  3. Enjoy your new dynamic code signing setup!

Available options 🛠

Option Description Environment Variable Default Optional
xcodeproj_path The Xcode project's path PROJECT_PATH
scheme The Xcode project's scheme SCHEME
build_configuration Build configuration ("Debug", "Release", ...) BUILD_CONFIGURATION
code_sign_style Code signing style ("Automatic", "Manual ") (Xcode 8+, previously provisioning_style) CODE_SIGN_STYLE (previously PROVISIONING_STYLE) "Manual"
code_sign_identity Code signing identity type ("iPhone Development", "iPhone Distribution") CODE_SIGN_IDENTITY "iPhone Distribution"
profile_name Provisioning profile name to use for code signing (Xcode 8+) PROVISIONING_PROFILE_SPECIFIER
profile_uuid Provisioning profile UUID to use for code signing (Xcode 7 and earlier) PROVISIONING_PROFILE ✔️
development_team Development team identifier TEAM_ID
bundle_identifier Application Product Bundle Identifier APP_IDENTIFIER ✔️

Example usage 🔍

.env.default

TEAM_ID=XYZ1234
SCHEME=MyAppScheme
PROJECT_PATH='/path/to/MyApp.xcodeproj'

Fastfile

lane :build do
  app_identifier = "com.my.app.identifier"
  configuration = "Release"

  match(type: "adhoc", app_identifier: app_identifier)

  cosigner(
    build_configuration: configuration,
    profile_name: ENV['sigh_' + app_identifier + '_adhoc_profile-name'],
    profile_uuid: ENV['sigh_' + app_identifier + '_adhoc']
  )

  gym(
    configuration: configuration,
    export_options: {
      method: "ad-hoc"
    }
  )
end

Precautions ⚠️

Please be aware that cosigner effectively modifies your Xcode project file, so be careful if your workflow commits changes to source control, or if steps further down your pipeline can be affected by the resulting modifications.

Contributing 🙌

See CONTRIBUTING.

With ❤️ from Mindera 🤓

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].