Name: fastlane
Owner: AFNetworking
Description: A fastlane setup to deploy Objective-C and Swift frameworks.
Created: 2015-11-10 19:22:08.0
Updated: 2018-01-17 13:50:00.0
Pushed: 2016-09-22 18:29:23.0
Homepage: null
Size: 41
Language: Ruby
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
? Note this is still a work in progress, and is not ready for production yet ?
Creating a new release for an Objective-C/Swift open source framework is a tedious process. This fastlane setup is an attempt to streamline that process by creating a single button to generate a new release, allowing developers to focus on great updates, without the overhead of creating new releases.
It is recommended to have a high level understanding of what fastlane is, but it is not required. You can read up more on fastlane here.
To install fastlane, simply use gem (related: Should I use sudo?):
o] gem install fastlane
The goal is to create a one button release like so with almost no overhead for a developer.
lane prepare_framework_release version:3.0.0 env --deploy
That does the following:
When the tests have passed on CI, the complete_framework_release
lane will automatically run:
In order to get the most out of this tool, it is recommended you manage your Github repo with the following best practices. It's easy to do, and gives you a lot of automation power with fastlane. Below is how AFNetworking is being managed:
There are primary use cases for these fastlanes: testing and deployment. When used together, a full continuous integration system can be created.
Getting the testing harness configured is an easy process.
Follow the getting started guide to configure the framework for testing.
Getting up and running is a simple process:
A full deployment guide has been created to help get developers get started with automating deployment.
The lanes provided are divided into two groups: lanes meant for for testing, and lanes meant for deployment. In combination with the Github best practices above, developers can fully automate the release process.