'Executes the requested action.
Catches any HTTPErrors raised by the action and prints them to stderr.
Returns:
1 on error, 0 if successful.'

def Run(self):

    try:
        self.action(self)
    except urllib2.HTTPError as e:
        body = e.read()
        if self.wrap_server_error_message:
            error_format = 'Error    %d:    ---    begin    server    output    ---\n%s\n---    end    server    output    ---'
        else:
            error_format = 'Error    %d:    %s'
        print >>self.error_fh, (error_format % (e.code, body.rstrip('\n')))
        return 1
    except yaml_errors.EventListenerError as e:
        print >>self.error_fh, ('Error    parsing    yaml    file:\n%s' % e)
        return 1
    except CannotStartServingError:
        print >>self.error_fh, 'Could    not    start    serving    the    given    version.'
        return 1
    return 0
