Bug 1298992

Summary: updating gutterball.conf or candlepin.conf causes katello-installer to fail
Product: Red Hat Satellite Reporter: Pavel Moravec <pmoravec>
Component: InstallerAssignee: Katello Bug Bin <katello-bugs>
Status: CLOSED WONTFIX QA Contact: Katello QA List <katello-qa-list>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.1.5CC: aperotti, bbuckingham
Target Milestone: Unspecified   
Target Release: Unused   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-19 01:02:34 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Pavel Moravec 2016-01-15 15:59:08 UTC
Description of problem:
Applying whatever change to /etc/gutterball/gutterball.conf or to /etc/candlepin/candlepin.conf causes subsequent run of katello-installer to fail with error:

 /Stage[main]/Gutterball::Database/Postgresql::Server::Db[gutterball]/Postgresql::Server::Database[gutterball]/Exec[/usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball']: Failed to call refresh: /usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball' returned 1 instead of one of [0]

See Additional info for explanation.


Version-Release number of selected component (if applicable):
katello-installer-2.3.22-1.el7sat.noarch


How reproducible:
100%


Steps to Reproduce:
1. Have Sat6 installed
2. echo >> /etc/gutterball/gutterball.conf
(or apply any other change there)

(alternative reproducer: replace gutterball.conf by candlepin.conf)

3. katello-installer


Actual results:
installer fails with:
 /Stage[main]/Gutterball::Database/Postgresql::Server::Db[gutterball]/Postgresql::Server::Database[gutterball]/Exec[/usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball']: Failed to call refresh: /usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball' returned 1 instead of one of [0]

katello-installer.log having:

[ERROR 2015-12-01 15:33:24 main]  /Stage[main]/Gutterball::Database/Postgresql::Server::Db[gutterball]/Postgresql::Server::Database[gutterball]/Exec[/usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball']: Failed to call refresh: /usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball' returned 1 instead of one of [0]


Expected results:
installer runs fine


Additional info:
why is createdb called? because:

[ INFO 2015-12-01 15:33:24 main]  /Stage[main]/Gutterball::Database/Postgresql::Server::Db[gutterball]/Postgresql::Server::Database[gutterball]/Postgresql_psql[Check for existence of db 'gutterball']: Scheduling refresh of Exec[/usr/bin/createdb --port='5432' --owner='postgres' --template=template0 --encoding 'utf8' --locale=en_US.utf8  'gutterball']

that is because:

[ INFO 2015-12-01 15:33:24 main]  Postgresql::Server::Database[gutterball]: Scheduling refresh of Postgresql_psql[Check for existence of db 'gutterball']

that is because:

[ INFO 2015-12-01 15:33:21 main]  Postgresql::Server::Db[gutterball]: Scheduling refresh of Postgresql::Server::Database[gutterball]

that is because:

[ INFO 2015-12-01 15:33:21 main]  Class[Gutterball::Database]: Scheduling refresh of Postgresql::Server::Db[gutterball]

that is because:

[ INFO 2015-12-01 15:33:21 main]  Class[Gutterball::Config]: Scheduling refresh of Class[Gutterball::Database]

that is because:

[DEBUG 2015-12-01 15:33:21 main]  /Stage[main]/Gutterball::Config/File[/etc/gutterball/gutterball.conf]: The container Class[Gutterball::Config] will propagate my refresh event

So when puppet is forced to revert back a change in gutterball.conf or candlepin.conf, it ends up in attempt to createdb for gutterball.

Interestingly, createdb for candlepin is _not_ to be refreshed. So some katello-installer setting from candlepin can be carried to gutterball to fix this BZ.

Comment 2 Brad Buckingham 2016-04-19 01:02:34 UTC
The plan is to remove gutterball in Satellite 6.2 as part of bug 1315286; therefore, closing this BZ.

Comment 3 Pavel Moravec 2016-04-19 06:00:13 UTC
/me checked in current 6.2 beta that updating candlepin.conf and running installer, it passes. So not further present in 6.2.