Comment 3 for bug 1892528

Revision history for this message
Amit Kumar (amit-netwk) wrote :

Hi Manpreet,

I figured out the root cause, actually during populating mistral actions and workflow in db

mistral-db-manage --config-file /etc/mistral/mistral.conf populate

the tacker.vim_ping_action was not able to populate into the db because 'base' class wasn't found in mistral.
the class mistral.actions.base.Action is moved to mistral_lib.actions.Action.

So I had to modify the /opt/stack/tacker/tacker/nfvo/workflows/vim_monitor/vim_ping_action.py file with below update:

--------------------------------------------------------
import netaddr

from mistral_lib import actions ---> #1
from oslo_config import cfg
from oslo_log import log as logging

LOG = logging.getLogger(__name__)

class PingVimAction(actions.Action): ----> #2

    def __init__(self, count, targetip, vim_id,
                 interval, timeout):
 def _update(self, status):
                          vim_id=self.vim_id,
                          status=status)

    def run(self, action_ctx): ----> #3
        servers = []
        try:
            rpc.init_action_rpc(cfg.CONF)

--------------------------------------------------------

After making this change, I am able to populate mistral DB with tacker.vim_ping_action and everything is working fine now.