'Executes the operation commands (like "actionstart", "actionstop", etc).
Replace the tags in the action command with actions properties
and executes the resulting command.'

def _executeOperation(self, tag, operation, family=[]):

    res = True
    try:
        startCmd = None
        if ((not family) or ('inet4' in family)):
            startCmd = self._getOperation(tag, 'inet4')
            if startCmd:
                res &= self.executeCmd(startCmd, self.timeout)
        if (allowed_ipv6 and ((not family) or ('inet6' in family))):
            startCmd6 = self._getOperation(tag, 'inet6')
            if (startCmd6 and (startCmd6 != startCmd)):
                res &= self.executeCmd(startCmd6, self.timeout)
        if (not res):
            raise RuntimeError(('Error    %s    action    %s/%s' % (operation, self._jail, self._name)))
    except ValueError as e:
        raise RuntimeError(('Error    %s    action    %s/%s:    %r' % (operation, self._jail, self._name, e)))
