def _load_config(self, *files):
        """
        Load and parse the given configuration file.

        :param files:
            One or more sets of configuration files to load.
        """
        final_config = {'config': {}, 'watch': {}}
        for f in files:
            try:
                data = yaml.safe_load(open(f))
            except (IOError, yaml.parser.ParserError) as e:
                print("Error loading {f}: {e!s}".format(f=f, e=e), file=sys.stderr)
                sys.exit(1)
            try:
                final_config = merge(final_config, data)
            except ValueError as e:
                print(
                    "You have an error in the configuration file {f}: {e!s}".format(f=f, e=e),
                    file=sys.stderr
                )
                sys.exit(1)

        self.config = final_config['config']
        for key, value in final_config['watch'].items():
            try:
                self._validate_watch_configuration(value)
            except __HOLE__ as e:
                print(
                    "You have an error in the configuration file {f}: {e!s}".format(f=f, e=e),
                    file=sys.stderr
                )
                sys.exit(1)
            self.containerset.append(ContainerSet(
                name=key,
                images=value.get('images', []),
                commands=value.get('commands', []),
            ))
dataset/ETHPy150Open zoni/docker-image-updater/diu/main.py/Application._load_config