def extract_bundle(self, resource, timeout=-1):
        """
        Extracts the existing bundle on the appliance and creates all the artifacts.

        Args:
            resource (dict): Artifact Bundle to extract.
            timeout:
                Timeout in seconds. Waits for task completion by default. The timeout does not abort the operation in
                OneView, it just stops waiting for its completion.

        Returns:
            dict: The Artifact Bundle.
        """
        return self._client.update(resource, timeout=timeout, custom_headers={"Content-Type": "text/plain"})
Extracts the existing bundle on the appliance and creates all the artifacts.

        Args:
            resource (dict): Artifact Bundle to extract.
            timeout:
                Timeout in seconds. Waits for task completion by default. The timeout does not abort the operation in
                OneView, it just stops waiting for its completion.

        Returns:
            dict: The Artifact Bundle.