<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_actions(self, action_name, config_name, instances=None, map_name=None, **kwargs):
 """ Returns the entire set of actions performed for the indicated action name. :param action_name: Action name. :type action_name: unicode | str :param config_name: Name(s) of container configuration(s) or MapConfigId tuple(s). :type config_name: unicode | str | collections.Iterable[unicode | str] | dockermap.map.input.MapConfigId | collections.Iterable[dockermap.map.input.MapConfigId] :param instances: Optional instance names, where applicable but not included in ``config_name``. :type instances: unicode | str | collections.Iterable[unicode | str] :param map_name: Optional map name, where not inlcuded in ``config_name``. :param kwargs: Additional kwargs for state generation, action generation, runner, or the client action. :return: Resulting actions of the configurations. :rtype: collections.Iterable[list[dockermap.map.action.ItemAction]] """

        policy = self.get_policy()
        action_generator = self.get_action_generator(action_name, policy, kwargs)
        for state in self.get_states(action_name, config_name, instances=instances, map_name=map_name, **kwargs):
            log.debug("Evaluating state: %s.", state)
            actions = action_generator.get_state_actions(state, **kwargs)
            if actions:
                log.debug("Running actions: %s", actions)
                yield actions
            else:
                log.debug("No actions returned.")