[Centos7] Package 'daemonize' is not installed in mcollective container on master node

Bug #1524116 reported by Artem Panchenko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
MOS Linux

Bug Description

Fuel version info (8.0 build #264): http://paste.openstack.org/show/481257/

Nailgun's task 'update_dnsmasq', which configures DHCP server on master node, fails because mcollective can't run 'puppet apply' in container:

sh: /usr/sbin/daemonize: No such file or directory

Steps to reproduce:

1. Create environment
2. Upload its network configuration
3. Check nailgun tasks (`fuel task` command in CLI)

Expected result: there is ready task 'update_dnsmasq'

Actual: task 'update_dnsmasq' has error status

The issue was introduced by patch for Centos 7 support: https://github.com/openstack/fuel-main/commit/a311e9422d523056184c2b1d53cb729bd69bcb20#diff-8551f144e511ac3cce5b9d5f19c8d6d1L19

Previously 'daemonize' package was added to mcollective container is scope of dynamic dnsmasq feature: https://github.com/openstack/fuel-main/commit/698acf125a1beb8d6b3b4439daa806f92ee6bab9#diff-8551f144e511ac3cce5b9d5f19c8d6d1R15 AFAIK it's used by mcollective agent to run puppet: https://github.com/openstack/fuel-astute/blob/68e741f8fc51197dd9c36ea630e77650480c4863/mcagents/puppetd.rb#L42-L45

Currently there is no 'daemonize' package in MOS repositories for Centos 7:

[root@nailgun ~]# dockerctl shell mcollective yum install daemonize
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
No package daemonize available.
Error: Nothing to do

Workaround is install the packaged from Centos 6 repo:

[root@nailgun ~]# dockerctl shell mcollective rpm -ihv http://mirror.seed-cz1.fuel-infra.org/mos-repos/centos/mos8.0-centos6-fuel/os/x86_64/Packages/daemonize-1.7.3-1.el6.mira2.x86_64.rpm
Retrieving http://mirror.seed-cz1.fuel-infra.org/mos-repos/centos/mos8.0-centos6-fuel/os/x86_64/Packages/daemonize-1.7.3-1.el6.mira2.x86_64.rpm
warning: /var/tmp/rpm-tmp.axE8QK: Header V4 RSA/SHA1 Signature, key ID 3e301371: NOKEY
Preparing... ################################# [100%]
Updating / installing...
   1:daemonize-1.7.3-1.el6.mira2 ################################# [100%]

Tags: area-linux
Changed in fuel:
status: New → Confirmed
Dmitry Pyzhov (dpyzhov)
tags: added: area-linux
Revision history for this message
Vladimir Sharshov (vsharshov) wrote :

Hi!

It is also very required for our task based deployment spec. Please fix it as soon as possible.

Revision history for this message
Dmitry Teselkin (teselkin-d) wrote :

Could you please try to install python-daemonize manually inside the container and check if it helps?

---
yum install python-daemonize
---

Revision history for this message
Dmitry Teselkin (teselkin-d) wrote :

Let's get rid of daemonize in favor of systemd-run.

systemd-run — Run programs in transient scope or service or timer units

From http://www.freedesktop.org/software/systemd/man/systemd-run.html

Revision history for this message
Alexey Shtokolov (ashtokolov) wrote :

Folks, daemonize is used by mcollective agent on ubuntu slaves. I guess we should keep the same way for daemonization until systemd will be available in Ubuntu too.

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Related fix proposed to fuel-infra/jeepyb-config (master)

Related fix proposed to branch: master
Change author: Alexander Tsamutali <email address hidden>
Review: https://review.fuel-infra.org/14546

Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Related fix merged to fuel-infra/jeepyb-config (master)

Reviewed: https://review.fuel-infra.org/14546
Submitter: Igor Shishkin <email address hidden>
Branch: master

Commit: e62b8b2fdb1365f8490fa6d5d1bdb8f526c7ccf1
Author: Alexander Tsamutali <email address hidden>
Date: Wed Dec 9 15:39:52 2015

Add new project: packages/centos7/daemonize

Required by mcollective container.

Change-Id: If599c728e57e1552783a6c09124f92e8aab52fd3
Related-Bug: #1524116

Revision history for this message
Alexander Tsamutali (astsmtl) wrote :
Changed in fuel:
status: In Progress → Fix Released
status: Fix Released → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-main (master)

Fix proposed to branch: master
Review: https://review.openstack.org/256074

Revision history for this message
Dmitry Teselkin (teselkin-d) wrote :

custom_8.0_iso #1106 works

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-main (master)

Reviewed: https://review.openstack.org/256074
Committed: https://git.openstack.org/cgit/openstack/fuel-main/commit/?id=c65a6d5faf8fb7d72edb84c671acf2d173afd1b2
Submitter: Jenkins
Branch: master

commit c65a6d5faf8fb7d72edb84c671acf2d173afd1b2
Author: Dmitry Teselkin <email address hidden>
Date: Thu Dec 10 22:46:46 2015 +0300

    Install daemonize into mcollective container

    Change-Id: I419dfaa447336d7c1cb04b8f6f8354038b90ee03
    Closes-Bug: #1524116

Revision history for this message
Egor Kotko (ykotko) wrote :

ISO#506

Changed in fuel:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.