Sha256: 9e1d2ebd2e307aa208ce2e91170cdda926d91d7ab4b890285dbaca0210b4c125
Contents?: true
Size: 1.63 KB
Versions: 1
Compression:
Stored size: 1.63 KB
Contents
module Fastlane class FastlaneFolder FOLDER_NAME = 'fastlane' # Path to the fastlane folder containing the Fastfile and other configuration files def self.path value ||= "./#{FOLDER_NAME}/" if File.directory?("./#{FOLDER_NAME}/") value ||= "./.#{FOLDER_NAME}/" if File.directory?("./.#{FOLDER_NAME}/") # hidden folder value ||= "./" if File.basename(Dir.getwd) == FOLDER_NAME && File.exist?('Fastfile') # inside the folder value ||= "./" if File.basename(Dir.getwd) == ".#{FOLDER_NAME}" && File.exist?('Fastfile') # inside the folder and hidden value = nil if Helper.is_test? # this is required, as the tests would use the ./fastlane folder otherwise return value end def self.fastfile_path return nil if path.nil? File.join(path, "Fastfile") end # Does a fastlane configuration already exist? def self.setup? return false unless path File.exist?(self.fastfile_path) end def self.create_folder!(path = nil) path = File.join(path || '.', FOLDER_NAME) FileUtils.mkdir_p(path) UI.success "Created new folder '#{path}'." end # Returns an array of symbols for the available lanes for the Fastfile # This doesn't actually use the Fastfile parser, but only # the available lanes. This way it's much faster # Use this only if performance is :key: def self.available_lanes return [] if fastfile_path.nil? output = Helper.backticks("cat #{fastfile_path.shellescape} | grep \"^\s*lane \:\" | awk -F ':' '{print $2}' | awk -F ' ' '{print $1}'") return output.strip.split(" ").collect(&:to_sym) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fastlane-1.86.0 | lib/fastlane/fastlane_folder.rb |