class Fastlane::Actions::EnsureGitBranchAction

Raises an exception and stop the lane execution if the repo is not on a specific branch

Public Class Methods

author() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 46
def self.author
  ['dbachrach', 'Liquidsoul']
end
available_options() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 33
def self.available_options
  [
    FastlaneCore::ConfigItem.new(key: :branch,
                                 env_name: "FL_ENSURE_GIT_BRANCH_NAME",
                                 description: "The branch that should be checked for. String that can be either the full name of the branch or a regex e.g. `^feature\/.*$` to match",
                                 default_value: 'master')
  ]
end
category() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 59
def self.category
  :source_control
end
description() click to toggle source

@!group Documentation

# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 22
def self.description
  "Raises an exception if not on a specific git branch"
end
details() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 26
def self.details
  [
    "This action will check if your git repo is checked out to a specific branch.",
    "You may only want to make releases from a specific branch, so `ensure_git_branch` will stop a lane if it was accidentally executed on an incorrect branch."
  ].join("\n")
end
example_code() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 50
def self.example_code
  [
    "ensure_git_branch # defaults to `master` branch",
    "ensure_git_branch(
      branch: 'develop'
    )"
  ]
end
is_supported?(platform) click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 63
def self.is_supported?(platform)
  true
end
output() click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 42
def self.output
  []
end
run(params) click to toggle source
# File fastlane/lib/fastlane/actions/ensure_git_branch.rb, line 8
def self.run(params)
  branch = params[:branch]
  branch_expr = /#{branch}/
  if Actions.git_branch =~ branch_expr
    UI.success("Git branch matches `#{branch}`, all good! 💪")
  else
    UI.user_error!("Git is not on a branch matching `#{branch}`. Current branch is `#{Actions.git_branch}`! Please ensure the repo is checked out to the correct branch.")
  end
end