Sha256: f5078a54594268729eff0e5409036b7a88280c91312191d1f4ccc8497147c85a

Contents?: true

Size: 1.46 KB

Versions: 72

Compression:

Stored size: 1.46 KB

Contents

module FastlaneCore
  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

    # Path to the Fastfile inside the fastlane folder. This is nil when none is available
    def self.fastfile_path
      path = File.join(self.path || '.', 'Fastfile')
      return path if File.exist?(path)
      return nil
    end

    # Does a fastlane configuration already exist?
    def self.setup?
      return false unless self.fastfile_path
      File.exist?(self.fastfile_path)
    end

    def self.create_folder!(path = nil)
      path = File.join(path || '.', FOLDER_NAME)
      return if File.directory?(path) # directory is already there
      UI.user_error!("Found a file called 'fastlane' at path '#{path}', please delete it") if File.exist?(path)
      FileUtils.mkdir_p(path)
      UI.success "Created new folder '#{path}'."
    end
  end
end

Version data entries

72 entries across 72 versions & 2 rubygems

Version Path
fastlane-2.20.0.beta.20170315010053 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170314010029 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170313010048 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170312010035 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170311010030 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170310010058 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170309010049 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170308010036 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.3 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170307010029 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.2 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170306010752 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170305010057 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170304010023 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170303010054 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.20.0.beta.20170302010029 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.1 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.0 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.0.beta.20170301010932 fastlane_core/lib/fastlane_core/fastlane_folder.rb
fastlane-2.19.0.beta.20170228010016 fastlane_core/lib/fastlane_core/fastlane_folder.rb