Class: Duse::CLI::Register

Inherits:
ApiCommand show all
Includes:
KeyHelper, PasswordHelper
Defined in:
lib/duse/cli/register.rb

Instance Attribute Summary

Attributes inherited from Command

#arguments, #force_interactive, #input, #output

Instance Method Summary collapse

Methods included from PasswordHelper

#ask_for_current_password, #ask_for_password

Methods included from KeyHelper

#choose_key, #choose_private_key_file, #ensure_matching_keys_for, #generate_key, #home_dir, #matching_keys?, #possible_ssh_keys, #private_key_for, #ssh_dir, #valid_ssh_private_key?

Methods inherited from ApiCommand

#execute, #setup

Methods inherited from Command

abstract, abstract?, #check_arity, #color, #command_name, command_name, #config, description, #error, #execute, #format, #full_command, full_command, has_subcommands?, has_super_command?, #help, #help_subcommands, #initialize, #interactive?, #parse, #say, #setup, skip, subcommand, subcommands, #success, super_command, super_command=, #terminal, #usage, #usage_for, #warn, #write_to, #wrong_args

Methods included from Parser

#new, #on, #on_initialize

Constructor Details

This class inherits a constructor from Duse::CLI::Command

Instance Method Details

#runObject



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/duse/cli/register.rb', line 15

def run
  ask_for_user_input
  user = Duse::User.create(
    username: @username,
    email: @email,
    password: @password,
    public_key: @key.public_key.to_pem.gsub('RSA PUBLIC KEY', 'PUBLIC KEY')
  )
  Duse::CLIConfig.new.save_private_key_for user, @key.to_pem
  success 'Successfully created your account! An email to confirm it has been sent. Once confirmed you can login with "duse login"'
end