Post-deployment core tasks don't work with plugins

Bug #1607520 reported by Andrey Grebennikov
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Invalid
High
Georgy Kibardin
8.0.x
Won't Fix
High
Georgy Kibardin
Mitaka
Invalid
High
Georgy Kibardin
Newton
Invalid
High
Georgy Kibardin

Bug Description

MOS8

I deploy the environment with Contrail and set of StackLight plugins.
Both plugins should include dns-client and ntp-client as post-deployment steps.

From current Contrail plugin:
# Group for post-deployment tasks
- id: contrail-post-deploy
  type: group
  role: [primary-contrail-db, contrail-db,
    primary-contrail-config,contrail-config,
    primary-contrail-control,contrail-control]
  tasks: [configure_default_route, dns-client, ntp-client]
  required_for: [post_deployment_end]
  requires: [post_deployment_start]
  parameters:
    strategy:
      type: parallel

But the tasks were not executed.

Current version of StackLight plugins don't have such tasks.
I manually create the task for influxdb-grafana plugin, sync plugins, then do

[<email address hidden>]# fuel node --node 114,115,116 --start dns-client
Started tasks [u'ntp-client', u'ntp-server', u'ntp-check', u'dns-client'] for nodes nodes [114, 115, 116].

Nailgun registers the API call, but in Astute log there is no mentioning that these tasks are going to be executed. The nodes in fact start executing All tasks in general.

Changed in fuel:
milestone: none → 9.1
assignee: nobody → Fuel Sustaining (fuel-sustaining-team)
importance: Undecided → High
status: New → Confirmed
tags: added: area-python
Dmitry Pyzhov (dpyzhov)
tags: added: 9.1-proposed
Revision history for this message
Georgy Kibardin (gkibardin) wrote :

On fresh mitaka with the following added to the plugin example:

- id: post-deploy-doesnt-work
  type: group
  role: [compute]
  tasks: [apache]
  required_for: [post_deployment_end]
  requires: [post_deployment_start]
  parameters:
    strategy:
      type: parallel

apache core task works. Checking on 8.0

Revision history for this message
Georgy Kibardin (gkibardin) wrote :

The problem is in the way deployment graphs work in 8.0. For the deployment single graph is created and tasks are ordered and spread by the deployment stages and only after that filtering by roles happens. This produces interesting side effects. In most cases core tasks are run on deployment stage and, therefore not included into post deployment stage. However, later, these core tasks may be stripped from deployment stage depending on node role causing the problem described by the bug.

In 9.0 this problem is solved. To solve the problem in 8.0 we need to backport quite a major refactoring.

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.