Description of problem: pkisilent is broken in dogtag 1.0.0 Version-Release number of selected component (if applicable): pki-silent-1.0.0-1 How reproducible: always Steps to Reproduce: 1. Run pkisilent ConfigureCA ... in order to configure CA. Actual results: Exception in thread "main" java.lang.NoClassDefFoundError: ConfigureCA Caused by: java.lang.ClassNotFoundException: ConfigureCA at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:323) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:268) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336) Could not find the main class: ConfigureCA. Program will exit. Expected results: CA silently configured
That specific problem has been fixed. Please update from the latest source tree. As of today, the latest version is: pki-silent-1.0.0-8 You will also need to specify several parameters. Here is an example invocation from a python script. You can easily pick out the parameters here. args = ["/usr/bin/perl", "/usr/bin/pkisilent", "ConfigureCA", "-cs_hostname", options.host_name, "-cs_port", str(secure_port), "-client_certdb_dir", client_certdb_dir, "-client_certdb_pwd", options.admin_password, "-preop_pin" , preop_pin, "-domain_name", options.domain_name, "-admin_user", admin_user, "-admin_email", admin_email, "-admin_password", options.admin_password, "-agent_name", agent_name, "-agent_key_size", str(key_size), "-agent_key_type", str(key_type), "-agent_cert_subject", agent_cert_subject + options.domain_name + "\"", "-ldap_host", options.host_name, "-ldap_port", str(ldap_port), "-bind_dn", bind_dn, "-bind_password", options.dm_password, "-base_dn", base_dn, "-db_name", db_name, "-key_size", str(key_size), "-key_type", str(key_type), "-save_p12", "true", "-backup_pwd", options.admin_password, "-subsystem_name", pki_instance_name, "-token_name", token_name, "-ca_subsystem_cert_subject_name", ca_subsystem_cert_subject_name + options.domain_name + "\"", "-ca_ocsp_cert_subject_name", ca_ocsp_cert_subject_name + options.domain_name + "\"", "-ca_server_cert_subject_name", "CN=" + options.host_name + ",O=" + options.domain_name, "-ca_sign_cert_subject_name", ca_sign_cert_subject_name + options.domain_name + "\"" ] if (options.external): args.append("-external") args.append("true") args.append("-ext_csr_file") args.append(ext_csr_file) if (options.cacertfile): args.append("-ext_ca_cert_file") args.append(options.cacertfile) if (options.cacertchainfile): args.append("-ext_ca_cert_chain_file") args.append(options.cacertchainfile) else: args.append("-external") args.append("false") if (options.clone): args.append("-clone") args.append("true") args.append("-clone_p12_file") args.append(options.clonefile) args.append("-clone_p12_password") args.append(options.clonepasswd) args.append("-clone_uri") args.append(options.cloneURI) args.append("-sd_hostname") args.append(options.sd_hostname) args.append("-sd_ssl_port") args.append(options.sd_ssl_port) args.append("-sd_admin_name") args.append(options.sd_admin_name) args.append("-sd_admin_password") args.append(options.sd_admin_password) else: args.append("-clone") args.append("false") print args run(args)