class CredentialsManager::CLI
Public Instance Methods
run()
click to toggle source
Parses command options and executes actions
# File credentials_manager/lib/credentials_manager/cli.rb, line 10 def run program :name, 'CredentialsManager' program :version, Fastlane::VERSION program :description, 'Manage credentials for fastlane tools.' global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`') # Command to add entry to Keychain command :add do |c| c.syntax = 'fastlane fastlane-credentials add' c.description = 'Adds a fastlane credential to the keychain.' c.option('--username username', String, 'Username to add.') c.option('--password password', String, 'Password to add.') c.action do |args, options| username = options.username || ask('Username: ') password = options.password || ask('Password: ') { |q| q.echo = '*' } add(username, password) puts("Credential #{username}:#{'*' * password.length} added to keychain.") end end # Command to remove credential from Keychain command :remove do |c| c.syntax = 'fastlane fastlane-credentials remove' c.description = 'Removes a fastlane credential from the keychain.' c.option('--username username', String, 'Username to remove.') c.action do |args, options| username = options.username || ask('Username: ') remove(username) end end run! end
Private Instance Methods
add(username, password)
click to toggle source
Add entry to Apple Keychain using AccountManager
# File credentials_manager/lib/credentials_manager/cli.rb, line 55 def add(username, password) CredentialsManager::AccountManager.new( user: username, password: password ).add_to_keychain end
remove(username)
click to toggle source
Remove entry from Apple Keychain using AccountManager
# File credentials_manager/lib/credentials_manager/cli.rb, line 63 def remove(username) CredentialsManager::AccountManager.new( user: username ).remove_from_keychain end