37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# File 'lib/chef/knife/opc_user_edit.rb', line 37
def run
user_name = @name_args[0]
if user_name.nil?
show_usage
ui.fatal("You must specify a user name")
exit 1
end
original_user = root_rest.get("users/#{user_name}")
if config[:input]
edited_user = JSON.parse(IO.read(config[:input]))
else
edited_user = edit_data(original_user)
end
if original_user != edited_user
result = root_rest.put("users/#{user_name}", edited_user)
ui.msg("Saved #{user_name}.")
unless result["private_key"].nil?
if config[:filename]
File.open(config[:filename], "w") do |f|
f.print(result["private_key"])
end
else
ui.msg result["private_key"]
end
end
else
ui.msg("User unchanged, not saving.")
end
end
|