怎么搭建个环境,能让前端项目每次提交后自动部署到开发环境, jenkins 还是进后台点

2017-07-26 10:41:12 +08:00
 caniuse
8760 次点击
所在节点    程序员
41 条回复
suman
2017-07-26 14:34:48 +08:00
git,svn 都可以设置 hook, 比如 post-update, post-commit
wingoo
2017-07-26 14:38:10 +08:00
做个定时脚本好了, 每几分钟 pull 一次
Charkey
2017-07-26 14:48:29 +08:00
@hand515 我用过的 TeamCity,支持 Pre-test Commit,也就是提交时不是真正的提交,会执行指定的构建,构建成功后 TeamCity 会自动提交
millercn
2017-07-26 14:49:13 +08:00
Jenkins 不行吗
zenxds
2017-07-26 14:57:41 +08:00
刚写了个 webhook,然后利用 git 的 archive 打包远程代码,再解压到目标目录实现的
hl
2017-07-26 15:05:51 +08:00
你是运维么?
caniuse
2017-07-26 15:21:59 +08:00
@hl 我现在是前端
caniuse
2017-07-26 15:22:25 +08:00
@zenxds 直接 git clone 不就好了
Mirachael
2017-07-26 15:25:17 +08:00
gitlab 有个.gitlab-cli.yml ,用这个自定义 taghook,然后会触发 gitlab 的 runner 去执行,你在 yml 文件中定义的操作。
zenxds
2017-07-26 15:28:20 +08:00
@caniuse 只对特定规则带版本的 tag push 才执行发布,线上的目录是带版本的,而且解压也只解静态目录
timwei
2017-07-26 15:33:47 +08:00
@caniuse

不用 git clone 可能很多原因

像是部属的环境并无法接触 git 远端

或是不希望 git log、git remote 等等的信息洩漏


当然如果部属的环境不考虑这些,直接 clone 也没毛病
LioMore
2017-07-26 18:16:35 +08:00
我的思路是服务器上 git init --bare 一个空仓库,然后配置 git hook,post-receive 自动 checkout 代码

本地配置好一个 git remote add dev git@example.com:repo.git

需要部署的时候 git push dev master 就可以了

这样应该可以满足需求,不过会出现一些安全上的问题吧,具体的我也不是很了解,请大家指点
gdzzzyyy
2017-07-26 19:01:20 +08:00
SlipStupig
2017-07-26 19:12:43 +08:00
docker!
fyxtc
2017-07-26 19:14:18 +08:00
如果会 python 得话 。我用的 fabric。。。贼方便
huangzxx
2017-07-26 19:28:14 +08:00
jenkins
gitlab-ci
docker
都可以
leopku
2017-07-26 22:42:10 +08:00
gitlab-ci 最新版可以配合 docker 一起玩
nicevar
2017-07-27 08:19:59 +08:00
jenkins 配合 gitlab 非常方便,就是 gitlab 有点臃肿,看公司还是个人了,个人不用 gitlab 也行,直接根据 git 的 push 来发布,master 的分支只用来发版本,平时提交试用其他分支
sunqi0928
2017-07-27 10:47:20 +08:00
jenkins + gitlab 会满足你的
flashback313
2017-07-27 10:52:27 +08:00
gitlab-ci +1

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/378012

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX