Giter Site home page Giter Site logo

my_fastlane_lanes's Introduction

My fastlane lanes ๐Ÿš€

By the end of 2014, I discovered a project that was going to save me hours every week: fastlane by KrauseFx. After using it locally on my Mac, setting it up on my college's Macs, putting it on our CI, today is part of our daily routine. I created lanes that we share between our projects, this repository contains these lanes. It is not perfect but I hope it will help.

Adding my lanes in a new project

Just run this on your project folder: curl https://raw.githubusercontent.com/barrault01/my_fastlane_lanes/master/install-fastlane.sh | bash

What can I do with your lanes?

Change version and build number

  • change_version_number: Change version number with prompt
  • patch: Increment by one the project version number (ex: 2.0.1 => 2.0.2)
  • minor: Increment by one the project version number (ex: 2.0.1 => 2.1.0)
  • major: Increment by one the project version number (ex: 2.0.1 => 3.0.0)
  • bump: Increment build number

Work on Apple developer portal

  • device: Add new device to Apple portal
  • rematch: Renew provisioning profiles

Automate your git process

  • pr: Create a pull request from your terminal
  • tag_the_release: Create a tag with the date of today using build number and version number

Manage your cocoapods repositories

  • install_private_repo: Install you private pods repository on your mac or on the CI
  • publish_pod: Publish a new version of you pod automatically
  • tag_and_pod: Publish a new version of you pod automatically after creating a new tag based on the project version number
  • lint_pod: Lint the .podspec

Test and build your iOS apps

  • snap: Create Snapshots to tests if autolayout is OK
  • testing: Test your project and generate logs
  • building_time: Generate reports for building time.
  • prod: Create a new app in production and send it to Apple
  • fabric: Create a beta version of the app with a custom icon and then send it to fabric
  • submit: Submit the last build to the app store

How to use it

Project configuration

To use our lanes, fork this repository and just add a line on the top of your fastfile:

import_from_git(url: '[email protected]:YOUR_USERNAME/my_fastlane_lanes.git', path: 'fastlane/Fastfile') 

Then declare the informations of your project like this:

def proj 
{
	plist: "./PATH_TO_PROJECT/Info.plist",
	xcodeproj: "./PATH_TO_PROJECT.xcodeproj/",
 	repo_url: "https://github.com/MyTeam/fastlane",
 	scheme: "MyProject",
 	scheme_prod: "MyProject-Prod",
 	scheme_qa: "MyProject-Beta,
 	app_identifier_for_qa: "my.company.myapp.beta", #optional use this if you have different app identifier between QA and prod
    fabric_testers: 'vivapro---ios',
    default_branch: 'develop'

}

If your project is a pod:

def cocoapods 
{
	private_repo: "my_private_repo",
	private_repo_name: "my_private_repo",
	private_repo_git_url: "[email protected]:MyTeam/my_private_repo.git",
	podspec: "./MyPod.podspec",
	pod_name: "MyPod"
}

To use our lanes

fastlane THE_NAME_OF_THE_LANE

Troubleshooting

Check that this variable are setted:

ENV["CRASHLYTICS_API_TOKEN"] = 
ENV["CRASHLYTICS_BUILD_SECRET"] = 
ENV["SLACK_URL"] = 
ENV["DELIVER_PASSWORD"] = 
ENV["PILOT_USERNAME"] = 
ENV["MATCH_PASSWORD"] = 
ENV["DELIVER_USER"] = 
ENV["GITHUB_TOKEN"] = 
team_id = 

Not resolving?

Please submit an issue on GitHub and ping me on Twitter with the link of the issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.