def unpack_auth_b64(self, docker_registry):
        """Decode and unpack base64 'auth' credentials from config file.

        :param docker_registry: str, registry reference in config file

        :return: namedtuple, UnpackedAuth (or None if no 'auth' is available)
        """
        UnpackedAuth = namedtuple('UnpackedAuth', ['raw_str', 'username', 'password'])
        credentials = self.get_credentials(docker_registry)
        auth_b64 = credentials.get('auth')
        if auth_b64:
            raw_str = b64decode(auth_b64).decode('utf-8')
            unpacked_credentials = raw_str.split(':', 1)
            if len(unpacked_credentials) == 2:
                return UnpackedAuth(raw_str, *unpacked_credentials)
            else:
                raise ValueError("Failed to parse 'auth' in '%s'" % self.json_secret_path)
Decode and unpack base64 'auth' credentials from config file.

        :param docker_registry: str, registry reference in config file

        :return: namedtuple, UnpackedAuth (or None if no 'auth' is available)