2014-02-11 42 views
1

我希望你们中的一些人能够指引我走向正确的方向。我是部署新手,希望得到一些帮助。我搜索了一下,但一直未能得到适合我的答案。Jenkins + Grunt + Git部署(新手帮助)

这是我的。

我正在开发一个angularjs应用程序。我正在运行咕噜声和业力,我想在部署方面提供一些帮助。

我之前完成的方法如下。

#!/bin/bash 
#git push --mirror [email protected]:<group>/<repo>.git 
echo "pushing to repo" 
git push --mirror [email protected]<location>:<group>/<repo>.git 
curl http://jenkins.<something.com>/git/notifyCommit? 
[email protected]:<group>/<repo>.git 
  1. 笔记本电脑本地回购推到本地服务器。
  2. 本地服务器接收推送。
  3. 本地服务器启用了一个更新挂钩以便使用。
  4. 本地服务器中的Git钩子将回购站镜像到安装了jenkins的服务器上。它也通知jenkins。
  5. 詹金斯服务器收到cahanges。詹金斯通过本地服务器上的挂钩通知。
  6. 詹金斯运行一个bash脚本,其中包含一个git diff进程,并FTPs更改的文件。

这是一切都很好,很棒;然而,我现在正在开发一个需要咕噜声的应用程序,以便它可以被构建,并且我不知道jenkins从哪里开始。

这是我的计划,IM希望你们能够进一步指导我:

  1. 相同的过程,因为只有这个时候,我们会忽略在本地机器上的DIST /文件夹,其中包含按什么咕噜建立之前您对代码所做的更改。
  2. 代码被推送到本地服务器。
  3. 本地服务器镜像回购给jenkin的服务器。詹金斯也得到通知。
  4. 在jenkins服务器上调用Grunt以根据推送到该服务器的更改运行。
  5. Jenkins将dist /文件夹推送到我想要的任何服务器。

我的问题是关于如何使用jenkins运行grunt。以及如何仅使用jenkins分发dist /文件夹。我已经在jenkins所在的服务器上安装了grunt,但是就我而言,这已经到了。请帮忙。

回答

1

我有一个类似的应用程序设置我还没有在它的CI部分工作,但通过詹金斯,你可以运行grunt作为一个执行Windows批处理命令,然后使用发送文件到Windows共享(我不知道非windows env)在Jenkins中将您的dist文件夹复制到“服务器”。希望这有助于有点

更新: 我终于在CI部分现在的工作,这就是我使用“执行Windows批处理命令”选项

npm install 
bower install 
grunt build --force 
xcopy Website\dist \\Destination-Servier\Website 

容易做对詹金斯?