centos 6.5 上安装使用upsource

时间:2024-03-05 08:09:28

这里应领导的要求,在服务器上装了upsource

Upsource的安装和与JetBrains工具的集成

JetBrains的工具一直都是我开发和学习的好帮手,本人工作主要是iOS开发,使用的是AppCode,而这里主要介绍下JetBrains的代码审查工具Upsource,它把代码审查做成了类似社交工具的效果,可以在不修改代码的情况下对代码进行注释和评论,然后再让相关人员去进行修复,而且有很多人性化的小功能。这里首先说下其安装和集成步骤。
这里IDE我用的是AppCode,版本控制则是SVN。
注意:这里仅按照mac系统来写的,windows系统最好参考下官网的具体说明,但是基本上大同小异。

一、下载和安装

首先去官网下载最新版本的Upsource,点击跳转到下载地址,这里我使用的是苹果的mac系统,但是目测windows下载下来解压后和mac都类似。目录如下:

Upsource目录结构图
这个解压后的文件夹其实已经可以当做软件包了,里面包括了它的各种依赖等等,Upsource是基于Java写的,已经内置了java7,也可以自定义引入java8,官网说明有详细的命令行教程,但是目测会有点小问题,不太建议重新引入,毕竟你不用去修改人家源代码。

bin目录下即是Upsource的命令行工具,我这里是mac系统,使用.sh结尾的文件upsource.sh即可,使用之前,最好是在root权限下进行,如下:

sudo -i

之后输入密码即可。windows系统则使用upsource.bat
随后运行命令行工具,直接把upsource.sh文件拖入命令行工具后空格输入start:如下

JeffreydeMacBook-Pro:~ jeffrey$ /Users/jeffrey/Soft/upsource-2017.1.1821/bin/upsource.sh start

上面的/Users/jeffrey/Soft/upsource-2017.1.1821为我Upsource文件夹本地路径,对应换成自己的即可,如果是拖到命令行去的,则路径已经是对应自己的Upsource文件夹的路径了。

start命令执行后,等待系统安装完即可。最后命令行结果如下:
命令行结果图

二、设置

1.URL设置

这里我们可以直接启动,要是我们的8080端口没有呗占用,upsource 的端口就会是8080,但是要是8080端口被占用了的话,他会自动的往后排,8081,8082......

启动的时候会再终端打印出来你的端口到底是哪一个

这里我想使用域名的形式去启动,所以这里我们就得去进行相关的配置

这里我参考的文章是:https://www.jetbrains.com/help/upsource/proxy-configuration.html?search=prox

因为这里我的系统是centos的。文章中说的

<upsource_home>\bin\upsource.bat

在我的环境下就是

<upsource_home>\bin\upsource.sh

<upsource_home>\bin\upsource.sh configure --listen-port 8181 --base-url http://upsource.mydomain.com

这里的listen-port 就是upsource的端口

后面是访问的URL

这个执行完成之后我们要去启动一下

<upsource_home>\bin\upsource.sh start

然后我们去配置一下nginx

server {
         listen  80;
         server_name  upsource.mydomain.com;
         location  / {
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_http_version 1.1;

            # to proxy WebSockets in nginx
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_pass http://127.0.0.1:8181;
            proxy_pass_header Sec-Websocket-Extensions;
         }
      }

 

 

start执行完毕后会打开默认设置的xxx-pro.local:8080这个地址,xxx-pro.local为你服务器地址,需要配置,配置这块目前还没过多的查看,这里只做简要安装集成介绍,这里只需要知道是其实是把Upsource部署在了localhost:8080即可。因为xxx-pro.local是没有配置的,所以默认打开的地址肯定是无效的,不管它,直接手动输入localhost:8080或者把localhost改成你的ip地址(端口号别忘了写)。这样你会看到Upsource的正式页面了,如下:
命令行结果图

点击Set up进行设置,进入如下页面:
URL设置

把默认的Base URL修改掉,因为那个地址是无效的,如果需要有效需要自己去配置。
Application Listen Port端口号可以自己修改成自己想设置的,这里使用默认的8080没有修改。之后点击下一步,进行账户设置。

2.账户设置

点击后界面如下:
账户设置

管理员账户用户名修改成自己想要的,然后输入密码并重复密码即可。

3.许可

许可
默认的是免费的许可,只能10个人使用,可以点击申请60天的10000人的许可。目前我这边只是前端iOS开发,就2个人,会审查下自己和同事的代码,所以暂时免费的已经够用了。如果比较大型的公司或者团队,可能需要使用收费的。这里直接点击Finish完成。

4.等待安装完成

等待安装完成
这个可能会花费一点时间,但是如果你之前在设置Base URL的时候没有设置为localhost:8080,那么这里会一直卡在这个等待页面不成功,你最好重新安装下(注意,最好重新解压压缩文件用新解压的文件重新来一遍)
最后完成后就是如下页面:
欢迎页
输入之前设置好的管理员账号即可进入管理页面

三、创建项目

1.配置填写

点击右上角登录,使用之前的管理员登录,然后点击create a project创建一个新项目如下图:
创建新项目

填写好项目名称project name,下面的Porject ID和Code review ID Pattern直接用系统自动生成的即可。

VCS版本控制工具这里我使用的是SVN,认证方式选的中间的账号密码认证。这里需要注意下Branches的填写,理论上你svn的路径下应该有trunk(主分支),Branches(其他分支)和tags(保存的历史版本),这里默认帮你填写了trunk和Branches,如果你直接管理你当前的的项目,那么这些需要删除掉,让Branches里面留空白即可,我这里svn路径下项目已经是我要管理的当前版本了(相当于trunk),所以Branches里面是都删除掉了的。最后点一下Test connection,如果成功,点击最下面的Create project完成即可。

注意:我这里svn使用的是https的协议,会报一个错误:

svn: E200015: Server SSL certificate for ‘https://xxx.x.x.xx:8443’ rejected, consider testing your SSL certificate with https://www.ssllabs.com/ssltest

这里xxx.x.x.xx是我ip地址。这个报错主要是因为svn使用了自签证书,如果你的svn使用的也是https协议且是自签证书,那么需要单独处理下

2.svn若使用的是https协议自签证书的处理

猜测Upsource应该和大部分前端工具一样,已经内置了常规的国际信任的证书,但是自签名证书不包括在内,这里就需要把你svn的自签证书导入到Upsource密钥库中去。

首先你需要把证书下载下来,你可以通过直接在浏览器输入你的svn的地址,我这里是火狐的浏览器,其他浏览器请自行在安全选项里把对应的证书导出来。
进入安全选项

证书下载

选择导出,导出到自己指定的一个路径即可。

然后开始使用钥匙串的命令行工具进行证书导入。记得首先进入root权限:

JeffreydeMacBook-Pro:~ jeffrey$ sudo -i
JeffreydeMacBook-Pro:~ root# keytool -import -alias my_svn_alias -keystore /Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts -file /Users/jeffrey/Desktop/5a8948a593e2424.cer

具体解释:

第一行进入root权限,keytool -import -alias为钥匙串的命令行指令,导入的意思,其中-alias是别名的意思,后面自己起个名字,我随便起的叫my_svn_alias,这个是在密钥库里你这个证书的别名叫什么-keystore 后面接密钥库路径,具体的路径如下图:

密钥库

在Upsource文件夹里找到对应系统的cacerts文件即可,我这里的路径是/Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts,-file后面跟你要导入到密钥库的本地证书的路径,我这里是/Users/jeffrey/Desktop/5a8948a593e2424.cer,这个就是之前从浏览器导出的证书。
大致意思其实就是使用命令行把路径/Users/jeffrey/Desktop/5a8948a593e2424.cer的这个证书,导入到了Upsource里的/Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts这个密钥库文件中

如果命令行输入没有问题,那么会继续提示你需要输入密钥库的密码(导入到密钥库中需要这个密钥库的密码),Upsource自带的密码为默认的changeit,之后提示是否信任,输入y即可,最后会提示证书已添加到密钥库中。最后回到Upsource配置svn的页面在测试下,就不会报错而是成功了,点击左下角Create project即可。等待一会,则会显示成功后的第一个项目页面了:
成功页面

四、IDE中集成

1.checkout项目

checkout一份项目下来,具体JetBrains的svn用法可以参考我另外一篇文章文章还是使用Appcode,但是目测大部分JetBrains的版本控制工具用法都是一样的,包括安卓studio。

2.安装插件

JetBrains已经开发了Upsource的相关插件,左上角点击Appcode->Preference->Plugins->Install JetBrains plugins,搜索Upsource,找到Upsource Integration安装并重启IDE:

插件安装

3.插件配置

checkout项目后,IDE右下角你回发现Upsource的小图片,点击:

点击图标

配置好Upsource的路径,填写为之前设置好的Base URL,即:http://localhost:8080:

路径配置

4.关联登录

点击“OK”后,会自动进入网页中,需要关联登录,入住对应的账号登录并接收即可,最后关闭后即可和IDE相关联了。

关联账号

确认关联

关联成功

最后成功后的结果如下:

配置完成

可以看到,左下角选择器多出来了一个Reviews,右下角的Upsource的图标已经点亮。

至此,如何安装已经介绍完,后续会深入研究后会再具体说明Upsource的使用。目前关于URL这块的配置没有太详细的深入了解,大致看了下,配置完一些地方后,是可以进行外网连接且自定义域名的,类似刚开始默认的域名,个人觉得就是一个推荐的域名,但是需要你让它可用,否则默认是打不开。

 

原文摘自:http://blog.csdn.net/wrjzycok/article/details/70598639

upsource的官方帮助文档:https://www.jetbrains.com/help/upsource/getting-started-with-upsource.html