<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def guest_deploy(self, userid, image_name, transportfiles=None, remotehost=None, vdev=None, hostname=None):
 """ Deploy the image to vm. :param userid: (str) the user id of the vm :param image_name: (str) the name of image that used to deploy the vm :param transportfiles: (str) the files that used to customize the vm :param remotehost: the server where the transportfiles located, the format is username@IP, eg nova@192.168.99.1 :param vdev: (str) the device that image will be deploy to :param hostname: (str) the hostname of the vm. This parameter will be ignored if transportfiles present. """

        action = ("deploy image '%(img)s' to guest '%(vm)s'" %
                  {'img': image_name, 'vm': userid})
        with zvmutils.log_and_reraise_sdkbase_error(action):
            self._vmops.guest_deploy(userid, image_name, transportfiles,
                                     remotehost, vdev, hostname)