Bug 485561 - pki-silent is broken in dogtag 1.0.0
pki-silent is broken in dogtag 1.0.0
Status: CLOSED CURRENTRELEASE
Product: Dogtag Certificate System
Classification: Community
Component: Other (Show other bugs)
1.0
All Linux
low Severity medium
: ---
: ---
Assigned To: Ade Lee
Chandrasekar Kannan
: Reopened
Depends On:
Blocks: 443788
  Show dependency treegraph
 
Reported: 2009-02-14 08:23 EST by Roman Kisilenko
Modified: 2015-01-04 18:36 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-04-02 14:40:14 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Roman Kisilenko 2009-02-14 08:23:04 EST
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
Comment 1 Ade Lee 2009-02-20 12:16:14 EST
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)

Note You need to log in before you can comment on or make changes to this bug.