LOGO
Yutuo

最近私有项目放弃了GitHub,全面转向GitLab。原因有两个,一个是GitLab免费,另一个是GitHub被微软收购了。虽然微软是一个伟大的公司,但被它收购的项目基本上伟大不起来,呵呵。

在使用GitLab时,发现免费版的它居然支持AutoDev,太让人感动了,我都想买它的收费服务了。哈哈。

闲话不说了,直接说AutoDev的设置和使用方法,到目前为止,我只使用了它的FTP功能,所以只介绍用GitLab的AutoDev实现自动FTP上传。

1. 设置环境变量

在项目的设置(Setting) → CD/CI 菜单,打开 CD/CI 设置页面,然后在变量(Variables)里设置变量,因为是FTP上传,所以我设置了FTP_HOSTFTP_PASSWORDFTP_USERNAME这三个变量。如下图。

设置环境变量

2. 在项目中添加AutoDev设置文件

在项目中添加AutoDev设置文件.gitlab-ci.yml。GitLab的AutoDev支持很多命令,具体的可以需要自己去查。我是用LFTP实现文件的上传。LFTP的语法请自行搜索,如果是全部上传的话,可以参考下面的内容。

stages:
  - deploy

upload:
  stage: deploy
  image: mwienk/docker-lftp:latest
  script:
    - lftp -e "set ftp:ssl-allow false; mirror -RLv -x .git -x test ./ / --transfer-all --parallel=20 --no-perm; exit;" -u $FTP_USERNAME,$FTP_PASSWORD $FTP_HOST
  only:
    - master
  when: on_success

我上面文件大概内容如下:

  • 只有在提交到master时才上传文件到服务器
  • -x .git -x test禁止了.gittest文件夹上传到服务器。
  • --parallel=20设置了用20个线程上传
  • --transfer-all设置了上传所有文件

3. AutoDev的限制

免费版一个月可以执行2000分钟,对于我这种只用FTP上传一点文件的人来说,已经是足够了。一个上传一次三到五分钟,一天两到三次。如果需要更多执行时间,可以买收费版,或者自己搭执行服务器。

转载请注明:宇托的狗窝 » GitLab的AutoDev试用笔记
上一篇 下一篇
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址