Sha256: b55e4fd780b9f6e75472d4651f0805767887d152329c0a569c1fbc73a559e6a7

Contents?: true

Size: 1.33 KB

Versions: 4

Compression:

Stored size: 1.33 KB

Contents

require_relative 'module'
require_relative 'runner'

module Snapshot
  # Migrate helper files
  class Update
    # @return [Array] A list of helper files (usually just one)
    def self.find_helper
      paths = Dir["./**/SnapshotHelper.swift"] + Dir["./**/SnapshotHelperXcode8.swift"]
      # exclude assets in gym
      paths.reject { |p| p.include?("snapshot/lib/assets/") }
    end

    def update
      paths = self.class.find_helper
      UI.user_error!("Couldn't find any SnapshotHelper files in current directory") if paths.count == 0

      UI.message "Found the following SnapshotHelper:"
      paths.each { |p| UI.message "\t#{p}" }
      UI.important "Are you sure you want to automatically update the helpers listed above?"
      UI.message "This will overwrite all its content with the latest code."
      UI.message "The underlying API will not change. You can always migrate manually by looking at"
      UI.message "https://github.com/fastlane/fastlane/blob/master/snapshot/lib/assets/SnapshotHelper.swift"

      return 1 unless UI.confirm("Overwrite configuration files?")

      paths.each do |path|
        UI.message "Updating '#{path}'..."
        input_path = Snapshot::Runner.path_to_helper_file_from_gem
        File.write(path, File.read(input_path))
      end

      UI.success "Successfully updated helper files"
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fastlane-2.74.1 snapshot/lib/snapshot/update.rb
fastlane-2.74.0 snapshot/lib/snapshot/update.rb
fastlane-2.74.0.beta.20180108010004 snapshot/lib/snapshot/update.rb
fastlane-2.74.0.beta.20180107010004 snapshot/lib/snapshot/update.rb