Sha256: a34c1ff30a11a848d73edeb2e7a6490218b006a23e23370d8f4b6ccfe62b6ff6

Contents?: true

Size: 1.33 KB

Versions: 3

Compression:

Stored size: 1.33 KB

Contents

module CocoaPodsKeys
  class PreInstaller
    def initialize(user_options)
      @user_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') { CocoaPodsKeys::NameWhisperer.get_project_name }
      keyring = KeyringLiberator.get_keyring_named(project) || KeyringLiberator.get_keyring(current_dir)

      keyring = CocoaPodsKeys::Keyring.new(project, current_dir, []) unless keyring

      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

3 entries across 3 versions & 1 rubygems

Version Path
cocoapods-keys-1.2.1 lib/preinstaller.rb
cocoapods-keys-1.2.0 lib/preinstaller.rb
cocoapods-keys-1.1.0 lib/preinstaller.rb