'Uploads the shell script and then executes it.
See also :class:`Deployment.run`'

def run(self, node, client):

    file_path = client.put(path=self.name, chmod=int('755', 8), contents=self.script)
    if (self.name[0] != '/'):
        base_path = os.path.dirname(file_path)
        name = os.path.join(base_path, self.name)
    else:
        name = self.name
    cmd = name
    if self.args:
        cmd = ('%s    %s' % (name, '    '.join(self.args)))
    else:
        cmd = name
    (self.stdout, self.stderr, self.exit_status) = client.run(cmd)
    if self.delete:
        client.delete(self.name)
    return node
