Description of problem: Assigning node to a hostgroup for example Neutron controller in foreman. Running puppet on assigned node gives sort of random "must pass" error. puppet-agent[17820]: Could not retrieve catalog from remote server: Error 400 on SERVER: Must pass neutron_metadata_proxy_secret to Class[Quickstack::Nova] at Error 400 on SERVER: Must pass admin_password to Class[Quickstack::Nova] Version-Release number of selected component (if applicable): Scientific Linux 6.5 foreman.noarch 1.5.0-1.el6 openstack-puppet-modules.noarch 2014.1-12.el6 @openstack-icehouse openstack-foreman-installer.noarch 2.0.0.0-1.el6 puppet.noarch 2.7.25-2.el6 @epel How reproducible: Steps to Reproduce: 1. Kickstart Scientific linux 6.5 2. If puppet installed remove ssl cert and regenerate rm -rf /var/lib/puppet/ssl/ puppet cert list -a puppet master --no-daemonize --verbose 3. yum install openstack-foreman-installer fix puppet repo files to not destroy my local mirror def edit /usr/share/foreman-installer/modules/foreman/manifests/install/repos/ extra.pp and yum.pp 4. cd /usr/share/openstack-foreman-installer/bin export FOREMAN_GATEWAY=false # The Gateway set up for foreman provisioning (or 'false' when no provisioning) export FOREMAN_PROVISIONING=false # Will foreman be used for provisioning? 5. bash foreman_server.sh 6. Wait.... 7. Log in assign hostgroups to smart proxy edit smartparameters or just test with the ones from seeds.rb 8. Assigne the node you installed foreman on or any other available node to hostgroup 9. on node run puppet agent --test --debug Actual results: debug: Puppet::Type::User::ProviderPw: file pw does not exist debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl does not exist debug: Puppet::Type::User::ProviderLdap: true value when expecting false debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not exist debug: /File[/var/lib/puppet/ssl/certs/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: /File[/var/lib/puppet/ssl/private_keys/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/private_keys] debug: /File[/var/lib/puppet/ssl/public_keys/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/public_keys] debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/var/lib/puppet/state] debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet] debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/state/last_run_report.yaml]: Autorequiring File[/var/lib/puppet/state] debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/classes.txt]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/state/resources.txt]: Autorequiring File[/var/lib/puppet/state] debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/puppet] debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/state/last_run_summary.yaml]: Autorequiring File[/var/lib/puppet/state] debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/lib/puppet/state] debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/clientbucket]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/classes.txt]/mode: mode changed '0644' to '0640' debug: Finishing transaction 69968725927800 debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/puppet] debug: /File[/var/lib/puppet/ssl/private_keys/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/private_keys] debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/public_keys/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/public_keys] debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: /File[/var/lib/puppet/ssl/certs/a.mosler.uppmax.uu.se.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: Finishing transaction 69968724762660 debug: Using cached certificate for ca debug: Using cached certificate for a.mosler.uppmax.uu.se debug: Finishing transaction 69968727006820 debug: Loaded state in 0.01 seconds info: Retrieving plugin debug: file_metadata supports formats: b64_zlib_yaml pson raw yaml; using pson debug: Using cached certificate for ca debug: Using cached certificate for a.mosler.uppmax.uu.se debug: Using cached certificate_revocation_list for ca debug: Finishing transaction 69968725451960 info: Loading facts in /var/lib/puppet/lib/facter/puppet_bug.rb info: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_version.rb info: Loading facts in /var/lib/puppet/lib/facter/staging_windir.rb info: Loading facts in /var/lib/puppet/lib/facter/ipa_client_configured.rb info: Loading facts in /var/lib/puppet/lib/facter/hamysql_active_node.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_ports.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_vrrp.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_bricks.rb info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardirtmp.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_fsuuid.rb info: Loading facts in /var/lib/puppet/lib/facter/root_home.rb info: Loading facts in /var/lib/puppet/lib/facter/hamysql_is_running.rb info: Loading facts in /var/lib/puppet/lib/facter/iptables_persistent_version.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_fsm.rb info: Loading facts in /var/lib/puppet/lib/facter/iptables_version.rb info: Loading facts in /var/lib/puppet/lib/facter/facter_dot_d.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_host.rb info: Loading facts in /var/lib/puppet/lib/facter/rabbitmq_erlang_cookie.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_uuid.rb info: Loading facts in /var/lib/puppet/lib/facter/gluster_property.rb info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb info: Loading facts in /var/lib/puppet/lib/facter/ip6tables_version.rb info: Loading facts in /var/lib/puppet/lib/facter/staging_http_get.rb debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using pson err: Could not retrieve catalog from remote server: Error 400 on SERVER: Must pass db_password to Class[Quickstack::Nova] at /usr/share/openstack-foreman-installer/puppet/modules/quickstack/manifests/nova.pp:65 on node a.mosler.uppmax.uu.se warning: Not using cache on failed catalog err: Could not retrieve catalog; skipping run debug: report supports formats: b64_zlib_yaml pson raw yaml; using pson Expected results: Install openstack controller neutron Additional info:
Are you still seeing this issue on fresh installs? We appear to seed both mentioned missing parameters in the installer, and the latest on rdo/icehouse is currently openstack-foreman-installer-2.0.21-1.el6.noarch.rpm, which is much newer than where you hit this. Also, you should be able to override either parameter via the ui with a valid value, so even if the expected securerandom.hex were not set, you could set it to whatever you needed.
Hej yes I sort of resolved this. Upgrading puppet to latest from puppet helped giving better error messages. Also I forked the git library. I think one problem is that the ruby script override every parameter even thoose that just should inherit values from quickstack. And it overrides with "null" or empty string. So updating puppet and using update redhat-openstack/astapor I managed to unset or set override parameters to valid ones and managed to install openstack.
Which ruby script do you mean? in our installer, we do set all params to be _able_ to be overridden, but we only change the values for those listed in seeds.rb. Also, I have never seen the behavior you describe. So I am a bit unclear on whether you still believe there is a bug in openstack-foreman-installer itself, and if so, what it is.
yes in seeds.rb The errors I got when running puppet was resolved when unchecking the override tickbox of the parameters puppet complained about. Also I needed to install ruby-json rubygems to get things running.
[Triaging bugs here.] Jonas, looks like your issue is specific to environment (from your comment #4). Can you confirm if it is so?
I guess so.