class OpenvpnPlugin::OpenvpnUserCreate
Public Instance Methods
check_arguments()
click to toggle source
# File lib/chef/knife/openvpn.rb, line 336 def check_arguments unless name_args.size == 2 fail_with 'Specify SERVERNAME and USERNAME for new openvpn user!' end end
create_new_user(server_name, user_name)
click to toggle source
# File lib/chef/knife/openvpn.rb, line 324 def create_new_user(server_name, user_name) databag_name = get_databag_name server_name ca_item = load_databag_item(databag_name, 'openvpn-ca') ca_cert, ca_key = load_cert_and_key ca_item['cert'], ca_item['key'] config_item = load_databag_item(databag_name, 'openvpn-config') cert_config = config_item.to_hash user_subject = make_name user_name, cert_config user_cert, user_key = generate_cert_and_key user_subject, cert_config, false, ca_cert, ca_key, true save_databag_item(user_name, server_name, 'cert' => user_cert.to_pem, 'key' => user_key.to_s) ui.info "Done, now you can upload #{databag_name}/#{user_name}.json" end
run()
click to toggle source
# File lib/chef/knife/openvpn.rb, line 315 def run check_arguments server_name = name_args[0] user_name = name_args[1] check_existing_databag server_name, false check_databag_secret create_new_user server_name, user_name end