gitlab

gitlab升级新版后显示500错误

今天gitlab从7.x升级到8.0.1,发现有部分页面出现了http500错误,比如管理后台的setting页面、ci系统、各个项目的hook页面。 通过查看gitlab的日志,所有页面出错的原因基本是都是某个方法找不到(undefined method enable_ssl_verification=’ 或者 undefined methodimport_sources’),通过搜索,发现gitlab上有类似的问题。 按照里面的步骤先执行 gitlab-rake gitlab:check 大多数地点都是OK,有个地方error All migrations up? … no Try fixing

  • Leo Chen
    Leo Chen
1 min read
gitlab

Gitlab使用omniauth自定义第三方登录方式

公司原本使用gitolite搭建的git仓库,gitolite本身的配置、员工的公钥都是通过一个git仓库来管理的。但随着公司发展,经常有人需要修改公钥,经常有一些小项目需要单独开一个仓库,每次都需要通过我这边操作配置,比较麻烦,因此我决定改用gitlab作为git仓库服务端。gitlab允许成员自己添加公钥,创建自己的项目,可以较好的满足目前的需求。 =以上是废话== 公司内部有一个单点登录系统(SSO),我希望gitlab也能集成这个SSO系统的登录,这样新入职的员工就不需要管理员手动添加帐号。 通过查阅gitlab的文档,发现gitlab本身集成了omniauth,这是一套集成第三方登录的通用框架,只要编写简单的代码就能集成一个第三方登录。 gitlab的web端是基于rails开发的,对于ruby和rails我都不是很熟悉,只能一点点尝试。 首先找到omniauth的开发文档,在文档的末尾提到一个项目可以用来比较方便的调试omniauth的strategy。 但这个项目的readme里只说了如何调试一个已经发布的gem,并没有说开发中的应该如何操作。(我TM都开发并发布好了还需要你这个项目干啥??) 另外就是clone好这个项目后,需要先在根目录创建一个db目录,不然会报错。 搜索了一下,

  • Leo Chen
    Leo Chen
4 min read