github拉取请求的代码审查机器人
项目描述
定义:
一种主要影响马和骡子皮肤及浅表淋巴管的马鼻疽形式。
虽然马和骡子可以正常使用farcy,但这些动物可能 更愿意 不使用它们,而且对于观察这些动物的人来说是一种瑕疵。未经审查的源代码类似于对马类的farcy,其中源代码的执行可能按预期工作,但对于处理源代码的人来说可能是一种瑕疵。farcy试图通过评论拉取请求中引入的变化来指导拉取请求的作者移除他们添加的瑕疵。
安装和执行
使用pip安装farcy最为简便
$ pip install farcy
通过指定github仓库所有者(或组织)、仓库名和可选的日志级别来运行farcy
$ farcy --level INFO appfolio farcy
配置
farcy允许通过配置文件进行配置。配置文件的存在是可选的,可以通过命令行参数覆盖值。在启动时,farcy将在~/.config/farcy/farcy.conf中查找配置文件。
配置文件可以包含一个DEFAULT部分以及每个存储库的特定设置的分区。DEFAULT部分可以包含一个可选的repository键。
[DEFAULT]
log_level: INFO
repository:appfolio/farcy
[appfolio/farcy]
debug: true
exclude_paths: npm_modules, vendor, db
limit_users: balloob, bboe
pr_issue_report_limit: 32
[appfolio/gemsurance]
exclude_users: bboe
log_level: WARNING
pr_issue_report_limit: 10
不同linters的配置文件可以放置在~/.config/farcy/handler_NAME.conf。将NAME替换为处理器的名称。
各种文件类型所需的可选外部包
Python:farcy将利用两个工具处理Python文件:flake8和pep257。这些可以通过以下方式与farcy一起安装:
$ pip install farcy[python]
Ruby:为了提供对ruby文件的代码审查,需要rubocop。通过以下方式安装:
$ gem install rubocop
JavaScript:jsxhint用于提供对JavaScript和JSX文件的代码审查。通过以下方式安装:
$ npm install -g jsxhint
Docker
Farcy作为一个包含所有处理器的Docker镜像可用,并已准备好使用。
要开始,创建一个包含配置文件farcy.conf的配置文件夹,该文件指向您的存储库。
[DEFAULT]
repository: appfolio/farcy
之后,以交互模式运行Docker容器以设置GitHub凭据。这将在您的配置文件夹中创建文件github_auth。如果您计划创建多个容器,则此文件可以重复使用。
$ docker run -t -i -v /path/to/local/farcy/config:/config appfolio/farcy
初始设置完成后,Farcy即可使用,并且可以以守护进程模式运行Docker容器。
$ docker run -d --name="farcy" -v /path/to/local/farcy/config:/config appfolio/farcy
版权和许可
源代码在简化版BSD许可证下发布。
版权(c),2014,AppFolio,Inc
版权(c),2014,Bryce Boe
版权(c),2015,Paulus Schoutsen
项目详情
下载文件
下载适合您平台文件的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。