On 11.05.2017 15:56, Markus Zoeller wrote: > I'm working on a nova live-migration hook which configures and starts > the nova-serialproxy service, runs a subset of tempest tests, and tears > down the previously started service. > > https://review.openstack.org/#/c/347471/47 > > After the change to "systemd", I thought all I have to do was to start > the service with: > > systemctl enable devstack at n-sproxy > systemctl restart devstack at n-sproxy > > But this results in the error "Failed to execute operation: No such file > or directory". The reason is, that there is no systemd "user unit file". > This file gets written in Devstack at: > > https://github.com/openstack-dev/devstack/blob/37a6b0b2d7d9615b9e89bbc8e8848cffc3bddd6d/functions-common#L1512-L1529 > > For that to happen, a service must be in the list "ENABLED_SERVICES": > > https://github.com/openstack-dev/devstack/blob/37a6b0b2d7d9615b9e89bbc8e8848cffc3bddd6d/functions-common#L1572-L1574 > > Which is *not* the case for the "n-sproxy" service: > > https://github.com/openstack-dev/devstack/blob/8b8441f3becbae2e704932569bff384dcc5c6713/stackrc#L55-L56 > > I'm not sure how to approach this problem. I could: > 1) add "n-sproxy" to the default ENABLED_SERVICES list for Nova in > Devstack > 2) always write the systemd user unit file in Devstack > (despite being an enabled service) > 3) Write the "user unit file" on the fly in the hook (in Nova). > 4) ? > > Right now I tend to option 2, as I think it brings more flexibility (for > other services too) with less change in the set of default enabled > services in the gate. > > Is this the right direction? Any other thoughts? > > FWIW, here's my attempt to implement 2): https://review.openstack.org/#/c/469390/ -- Regards, Markus Zoeller (markus_z)