Sha256: 4b27a0e9744e4f4007cbbc1a748df861af660bb6cbfc6a6eeb030e64d7773330
Contents?: true
Size: 1.69 KB
Versions: 2
Compression:
Stored size: 1.69 KB
Contents
require "vmc/cli/command" module VMC class User < Command desc "create [EMAIL]", "Create a user" group :admin, :user, :hidden => true flag(:email) { ask("Email") } flag(:password) { ask("Password", :echo => "*", :forget => true) } flag(:verify) { ask("Verify Password", :echo => "*", :forget => true) } def create(email = nil) email ||= input(:email) password = input(:password) verify = input(:verify) if password != verify fail "Passwords don't match." end with_progress("Creating user") do client.register(email, password) end end desc "delete [EMAIL]", "Delete a user" group :admin, :user, :hidden => true flag(:really) { |email| force? || ask("Really delete user #{c(email, :blue)}?", :default => false) } def delete(email) return unless input(:really, email) with_progress("Deleting #{c(email, :blue)}") do client.user(email).delete! end ensure forget(:really) end desc "passwd [EMAIL]", "Update a user's password" group :admin, :user, :hidden => true flag(:email) { ask("Email") } flag(:password) { ask("Password", :echo => "*", :forget => true) } flag(:verify) { ask("Verify Password", :echo => "*", :forget => true) } def passwd(email = nil) email ||= input(:email) password = input(:password) verify = input(:verify) if password != verify fail "Passwords don't match." end with_progress("Changing password") do user = client.user(email) user.password = password user.update! end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
vmc-0.4.0.beta.2 | vmc-ng/lib/vmc/cli/user.rb |
vmc-0.4.0.beta.1 | vmc-ng/lib/vmc/cli/user.rb |