phabricator
依赖环境 系统centos,mysql,php,nginx
1.下载安装脚本 https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/install_rhel-derivs.sh
    直接运行sh install_rhel-derivs.sh安装或者修改脚本把安装apache改为安装nginx。
    下面我们采用默认安装,安装失败的地方通过手动方式安装。
    在阿里云centos 7以上mysql安装将会失败需要手动安装mariadb,yum -y install mariadb
    脚本安装依赖apache,手动安装nginx,yum -y install nginx
调用install脚本后会git clone下面三个工程
   libphutil,phabricator,arcanist
 
2.将上面三个目录拷贝到/usr/share/nginx/html/下面,注意不能将phabricator的webroot放在/root/**/下面否则nginx将无法访问到php脚本文件
   并修改nginx.conf的配置文件

# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/ user root;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid; # Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf; events {
worker_connections 1024;
} http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048; include /etc/nginx/mime.types;
default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf; server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html/phabricator/webroot; # Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf; location / {
index index.php;
if ( !-f $request_filename ) {
rewrite ^/(.*)$ /index.php?__path__=/$1 last;
break;
}
}
location /index.php {
fastcgi_pass localhost:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
} error_page 404 /404.html;
location = /40x.html {
} error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
} # Settings for a TLS enabled server.
#
# server {
# listen 443 ssl http2 default_server;
# listen [::]:443 ssl http2 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# ssl_certificate "/etc/pki/nginx/server.crt";
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 10m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# location / {
# }
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# } }
3.安装php-fpm, yum install php-fpm。启动 service php-fpm start
4.进入phabricator/bin目录下执行./storage upgrade初始化phabricator数据库
5. 如果需要支持发送邮件需要在bin目录下启动phd

   ./mail send-test --to xxxx@qq.com --subject hi < body.txt
    测试发送邮件
安装完后:
   启动nginx 进入localhost
   配置管理员密码和用户名后进入管理主页
   config -->Mail 修改metamta.default-address 和 metamta.mail-adapter
   metamta.default-address 发送的邮箱地址如xxx@163.com
   metamta.mail-adapter 选择PhabricatorMailImplementationPHPMailerAdapter
   然后进入PHPMailer修改相应配置。

或者直接进入/usr/share/nginx/html/phabricator/conf/local直接修改local.json

{
"phpmailer.smtp-host": "smtp.mxhichina.com",
"phpmailer.smtp-port": 25,
"phpmailer.smtp-user": "xxx@nbugs.com",
"phpmailer.smtp-password": "xxxxx",
"differential.require-test-plan-field": false
}

上述配置完成后进入phabricator/bin

执行./mail send-test --to xxxx@qq.com --subject hi < body.txt

通过./mail list-outbound

[root@localhost bin]# ./mail list-outbound
1 Sent [Phabricator] Email Verification
2 Sent [Phabricator] New User "sylar" Awaiting Approval
4 Sent hi
5 Sent [Phabricator] Phabricator Account "sylar" Approved
6 Sent [Phabricator] admin (admin) has invited you to join Phabricator
7 Sent [Phabricator] admin (admin) has invited you to join Phabricator
8 Sent [Phabricator] admin (admin) has invited you to join Phabricator
9 Sent [Phabricator] admin (admin) has invited you to join Phabricator
6,进去Auth---->Add Provider让phabricator支持用户名密码登陆
 
这样基础的phabricator服务就配置完成了
 
 

搭建phabricator代码审核工具的更多相关文章

  1. gerrit代码审核工具之“error unpack failed error Missing unknown”错误解决思路

    使用gerrit代码审核工具时遇到error: unpack failed: error Missing unknown d6d7c89bd1d77f44c5c8e99437aaffbfc0684e7 ...

  2. ubuntu搭建Gerrit代码审核服务器

    谷歌的 Android 开源项目在 Git 的使用上有两个重要的创新,一个是为多版本库协同而引入的 repo,另外一个重要的创新就是 Gerrit —— 代码审核服务器.Gerrit 为 git 引入 ...

  3. Phabricator代码审核Audit用户指南

    作者: shaneZhang 分类: 互联网技术 发布时间: 2015-07-04 13:37 概览 Phabricator支持两种代码审查工作流:“review”(提交前审查)和 “audit”(提 ...

  4. jenkins集成sonar代码审核工具

    在项目测试管理过程中,项目上线很多时候时间仓促,导致代码质量不高,测试时间不充分会导致线上出现各种各样的问题,这个时候一方面是增加测试的质量把控,还要从根本上解决开发小哥的代码质量问题.而Sonar这 ...

  5. facebook开源的代码审核工具phabricator

    主页地址:http://phabricator.org/

  6. ubuntu搭建gerrit+gitweb代码审核系统

    一.Gerrit的简介 Gerrit是Google开源的一套基于web的代码review工具,它是基于git的版本管理系统.Google开源Gerrit旨在提供一个轻量级框架,用于在代码入库之前对每个 ...

  7. Gerrit代码审核服务器搭建全过程

    Gerrit代码审核服务器搭建全过程 转载请标明出处:http://blog.csdn.net/ganshuyu/article/details/8978614 环境:Ubuntu12.xx 1.建立 ...

  8. 代码质量管理工具 sonar 配置

    代码检查工具有很多findBugs等等 sonar配置: 1.下载sonar 5.5, 解压,运行 sonarqube-5.5\bin\windows-x86-64\StartSonar.bat , ...

  9. 四、VueJs 填坑日记之搭建Axios接口请求工具

    上一章,我们认识了项目的目录结构,以及对项目的目录结构做了一些调整,已经能把项目重新跑起来了.今天我们来搭建api接口调用工具Axios.Vue本身是不支持ajax调用的,如果你需要这些功能就需要安装 ...

随机推荐

  1. Spring Boot Dubbo applications.properties 配置清单

    摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 与其纠结,不如行动学习.Innovate ,And out execute ! 』 本文 ...

  2. 欲练JS,必先攻CSS——前端修行之路(码易直播)

    以下是直播大概内容的文字版: 感谢大家今天来到直播间收听本期的码易直播.今天我讲的主题是css,具体聊一下我大概的css学习历史,分享一些干货,希望这次分享对大家有所启发和帮助. 个人的css历史: ...

  3. 使用DocFX生成文档

    使用DocFX命令行生成文档 使用docfx 命令 1.下载 https://github.com/dotnet/docfx/releases 2.使用 创建初始项目 docfx init -q 此命 ...

  4. java内存模型二

    数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性.数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之 ...

  5. jQuery之文档处理

    jQuery 文档处理 1)内部插入 2)外部插入 3)包裹 4)替换 5)删除 6)复制 1.内部插入 append(content|fn) 向每个匹配的元素内部追加内容. 向所有段落中追加一些HT ...

  6. NancyFx 2.0的开源框架的使用-CustomModule(自定义模块)

    NancyFx框架的自定义模块 新建一个空的Web项目 然后通过NuGet库安装下面的包 Nancy Nancy.Hosting.Aspnet 然后添加Models,Module,Views三个文件夹 ...

  7. 第三方登录SDK

    紧接着上次的第三方登录文档,这一波又来了. 一.使用qq登录https://connect.qq.com/ 首次登录的话会跳转到应用开发者注册,自己测试的话选择个人.下面的各项自己按真实情况填写. 注 ...

  8. 【AngularJS中的自定义服务service VS factory VS provider】---它们的区别,你知道么?

    在介绍AngularJS自定义服务之前,我们先来了解一下AngularJS~ 学过HTML的人都知道,HTML是一门很好的伪静态文本展示设计的声明式语言,但是,要构建WEB应用的话它就显得乏力了. 而 ...

  9. HttpClien Get&Post

    新公司上班第二周,开始进军.Net Core,这方面的东西比较新,所以已经封装好的东西比较少,比如HttpClien之类的开源类库,找了NuGet好久,没有找到,所以先写个简陋的来用着先. 引用: u ...

  10. Swoole笔记(二)

    本文示例代码详见:https://github.com/52fhy/swoole_demo. Task 我们可以在worker进程中投递一个异步任务到task_worker池中.此函数是非阻塞的,执行 ...