def project(self, project, **kwargs):
        """Wraps `Rundeck API /project/[NAME] <http://rundeck.org/docs/api/index.html#getting-project-info>`_

        :Parameters:
            project : str
                name of Project

        :Keywords:
            create : bool
                Create the project if it is not found (requires API version >11)
                [default: True for API version >11 else False]

        :return: A :class:`~.rundeck.connection.RundeckResponse``
        :rtype: :class:`~.rundeck.connection.RundeckResponse`
        """
        # check if project creation is desired and apply defaults
        create = kwargs.pop('create', None)
        if create is None:
            if self.connection.api_version >= 11:
                create = True
            else:
                create = False
        elif create == True:
            self.requires_version(11)

        rd_url = 'project/{0}'.format(urlquote(project))

        # seed project var (seems cleaner than alternatives)
        project = None
        try:
            project = self._exec(GET, rd_url, **kwargs)
        except __HOLE__ as exc:
            if create:
                project = self._exec(POST, rd_url, **kwargs)
            else:
                raise

        return project
dataset/ETHPy150Open marklap/rundeckrun/rundeck/api.py/RundeckApiTolerant.project