(一)Jenkins+GitHub实现项目自动化部署1、想灵活构建项目的不同分支怎么办?1、安装Git参数插件打开系统管理-->插件管理在可选插件选项中搜索Git参数,勾选,直接安装,等待安装完成重启,即可在已安装的选项插件中看到这个2.重新配置我们之前的任务项目。在General选项下勾选参数化构建过程,添加Git参数。在新建的参数配置中填写名称,在源代码管理选项下选择参数类型为“branch”,选择Git项,将branch填入上面定义的变量,在源码库浏览器中选择“Automatic”并保存。3.测试和构建不同的分支。进入项目,可以看到之前的“BuildNow”已经改为BuildwithParameters。点击进入后,可以看到分支列表,选择“立即构建”的分支,访问ip地址,可以看到页面内容发生了变化,说明配置成功。2、想要npmrun选项怎么办?之前的demo项目只是一个简单的h5,现在我们使用laravel+vue来进行演示。我们知道,在vue项目中,如果页面内容发生变化,需要先编译才能显示效果。如何用jenkins方便的操作。1、配置任务项目2、参数化构建流程下,添加参数,选择布尔参数,如图。3、修改shell命令,命令如下。//当前目录pwdcomposerinstall//如果不勾选`npmrun`选项,将以下文件打包到指定目录if[$npmrun='false'];thenrsync-arlh--exclude=node_modules--exclude=.git--exclude=.env--exclude=public*/usr/share/nginx/html/ceshi#将除这些文件之外的文件打包到指定目录中fichmod-R777storage//如果勾选了`npmrun`选项,将以下文件打包到指定目录下,编译if[$npmrun='true'];thenrsync-arlh--exclude=node_modules--exclude=.git--exclude=.env*/usr/share/nginx/html/ceshicd/usr/share/nginx/html/ceshinpminstallnpmrundevfi4.这时候我们去build项目的时候会报错。打开控制台输出,可以看到报告composer:commandnotfound5。下面来安装composer、PHP、nodeJsPHP安装教程composer安装教程nodejs安装教程6、安装完成后,如果再次构建时仍然显示composer:commandnotfound,在命令行输入echo$PATH获取环境变量。配置到詹金斯。系统管理-->系统配置-->全局属性-->环境变量,新建键值7,修改nginx配置文件,使用nginx-sreload命令重启nginxserver{listen80;服务器名称本地主机;root/usr/share/nginx/html/ceshi/public;indexindex.htmlindex.php;location/{try_files$uri$uri//index.php$is_args$query_string;}location~\.php${try_files$uri=404;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;包括fastcgi_params;}}8.如果访问服务器ip出错,可以到nginx错误日志/var/log/nginx/error.log中查看具体原因。如果出现500错误,可能是vendor和storage文件夹的权限有问题。chown-Rnginx:nginxvendor//vendor文件夹的属主改为nginxchown-Rnginx:nginxstorage//storage文件夹的属主改为nginx就大功告成了
