Sha256: 879539558ad3408d2256031417df2c5256833a3fb455b42f47a43f34894ff466

Contents?: true

Size: 1.37 KB

Versions: 1

Compression:

Stored size: 1.37 KB

Contents

module CocoaPodsKeys
  class PreInstaller
    def initialize(user_options)
      @options = user_options
    end

    def setup
      require 'key_master'
      require 'keyring_liberator'
      require 'pod/command/keys/set'

      options = @user_options || {}
      current_dir = Dir.getwd
      project = options.fetch('project', nil)
      keyring = KeyringLiberator.get_keyring_named(project) || KeyringLiberator.get_keyring(current_dir)
      unless keyring
        name = project || CocoaPodsKeys::NameWhisperer.get_project_name
        keyring = CocoaPodsKeys::Keyring.new(name, current_dir, [])
      end
      
      data = keyring.keychain_data
      has_shown_intro = false
      keys = options.fetch("keys", [])
      keys.each do |key|
        unless data.keys.include? key
          
          unless has_shown_intro
            puts "\n CocoaPods-Keys has detected a keys mismatch for your setup."
            has_shown_intro = true
          end
          
          puts " What is the key for " + key.green
          answer = ""
          loop do
            print " > "
            answer = STDIN.gets.chomp
            break if answer.length > 0
          end
          
          puts ""
          args = CLAide::ARGV.new([key, answer, keyring.name])
          setter = Pod::Command::Keys::Set.new(args)
          setter.run
          
        end
      end
      
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cocoapods-keys-1.0.1 lib/preinstaller.rb