51Testing软件测试论坛

标题: jenkins搭建(mac) [打印本页]

作者: Sy_小单    时间: 2019-4-26 16:34
标题: jenkins搭建(mac)
本帖最后由 Sy_小单 于 2019-4-26 17:07 编辑

一、环境部署

1、JDK安装(Jenkins的运行依赖Java环境,所以在安装Jenkins之前要安装JDK)

(1)到官网去下载个jdk的dmg文件,直接安装即可

(2)环境变量的配置

进入命令行,进行操作

open -e .bash_profile

ps:如果没有.bash_profile文件的话,就要新建一个

输入jdk变量配置的内容:
export JAVA_HOME= /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home #jdk安装路径  
export PATH=$JAVA_HOME/binPATH
export CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar
保存
更新配置文件
source .bash_profile
在终端输入java -version,有显示出版本号就表示安装成功
2、Jenkins安装

Jenkins的安装方式有两种

(1)直接在官网下载dmg安装包,在本地解压安装即可

(2)命令行安装,通过brew命令安装Jenkins

由于用dmg安装包去安装jenkins,Jenkins不会用本地的用户去构建,任何创建的文件都是“jenkins”用户所有,这会造成很多权限问题,无法调用自己写的脚本,执行shell会出现没有权限的错误。而且,用命令行去安装Jenkins也比较简单方便。所以,这里介绍一下用brew命令安装Jenkins的步骤。

通过brew安装Jenkins:

(1)安装brew

在mac终端输入:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ps:url请到https://brew.sh里面去看

(2)安装Jenkins

brew install jenkins

(3)链接launchd配置文件

ln -sfv /usr/local/opt/jenkins/*.plist ~/Library/LaunchAgents

(4)启动Jenkins

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

(5)停止Jenkins

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.jenkins.plist

在浏览器上输入localhost:8080(Jenkins默认的端口是8080),出现下图,就说明安装成功了



根据上面的目录去获取密码,输入密码即可,接下来的不走,默认即可

PS:

Jenkins安装后的默认端口号是8080,很容易跟其他服务的端口号产生冲突,如需要修改Jenkins的默认端口号:

找到Jenkins的配置文件,修改httpPort的值即可

vim /usr/local/opt/jenkins/homebrew.mxcl.jenkins.plist



3、SDK(打安卓包需要用android-sdk)

(1)下载mac的版android-sdk,解压即可

(2)环境变量设置:

进入命令行,进行操作

open -e .bash_profile

输入sdk变量配置的内容:

export ANDROID_HOME=/Users/hhht/Library/Android/sdk(sdk解压到的目录)

export PATH=$PATHANDROID_HOME/bin

保存

更新配置文件

source .bash_profile

PS:最后我发现使用Android集成开发工具Android Studio有自带的sdk,Android Studio可以一键安装ndk很方便,而且使用Android Studio工具可以避免一些自动化测试中遇到的问题,比如Android_SDK_ROOT is undefined问题

4、git安装

通过brew命令安装

打开终端,执行下面的命令:

brew install git

安装完了之后,输入git --version命令,显示git的版本,就代表git安装成功了

5、gradle安装

gradle安装方式也有两种:

(1)压缩包安装

(2)命令行安装

压缩包安装:

(1)到官网下个mac版的gradle压缩包解压

(2)环境变量配置:

GRADLE_HOME=/usr/local/Cellar/gradle-4.6(gradle 解压到的目录)

export GRADLE_HOME

export PATH=$PATHGRADLE_HOME/bin

保存

更新配置文件

source .bash_profile

在终端输入gradle -v,显示出版本号就代表安装成功

命令行安装:

(1)在终端输入 brew install gradle

通过命令行安装gradle,不需要配置环境变量

在终端输入gradle -v,显示出版本号就代表安装成功(brew安装的gradle是最新的版本)

(2)如果想通过brew 安装指定版本的gradle,请参考下面的操作:

查看所有gradle的版本:

brew versions gradle

checkout到指定版本:

cd /usr/local

git checkout 2b10422 Library/Formula/gradle.rb

安装指定版本gradle:

brew install gradle

PS:

如果执行brewversions gradle 命令出现以下的错误:



执行以下两条命令:

brew versions install

brew tap homebrew/boneyard(先执行这条命令试试,还报错,在执行上面那条命令)

6、Apache-maven安装

(1)到官网去下载Apache-maven的压缩包

(2)环境变量配置:

export MAVEN_HOME=/Users/hhht/Downloads/apache-maven-3.6.0(Apache-maven解压到目录)

export PATH=$PATHMAVEN_HOME/bin保存

更新配置文件

source .bash_profile

在终端输入mvn -v,显示出版本号就代表安装成功

7、nodejs安装

(1)到官网去下载nodejs的安装文件,直接安装即可

在终端输入mvn -v,显示出版本号就代表安装成功

二、环境验证

上面的工具都安装完了之后,进行一次打包验证这套环境是否ok(这里是安卓打包)

1、系统管理的设置

(1)系统设置

全局属性:勾选环境变量

键:环境变量的路径,一般使用PATH

值:环境搭建时所配的环境变量,在mac终端执行echo $PATH命令就可以查看到

(2)全局工具配置

JDK、Gradle、Maven、NodeJS都是按照下图的格式进行配置

别名:按照最简单的工具名称来填

HOME:工具的安装目录(不记得就去看环境变量)



(3)插件管理

安装所需的插件,在Jenkins的初始化时候已经有安装过一些插件了的:

Git plugin:git插件

Gradle plugin:android打包所需

Git Parameter:获取所有分支名,作为参数列表

Git Changelog Plugin:获取Git提交log

PostBuildScript Plugin:编译完成后执行脚本

build-name-setter / description setter plugin:修改Build名称/描述

SSH Credentials Plugin

2、新建一个Jenkins任务



3、设置好配置

(1)General

勾选上参数化构建过程

添加Git Parameter



(2)源码管理

选中Git

Pepository URL:填写这次打包需要拉取代码的源码git仓库的地址

Credentials:git的账号和密码(在git服务器上存在一个git用户,并且对Pepository URL的仓库拥有所有权)



(3)构建

增加构建的步骤:Invoke Gradle scrip

选中Invoke Gradle

添加gradle命令:clean assembleRelease -PdevEnvEnabled=true



3、选择分支进行打包,打包成功代表环境没问题,打包不成功则代表环境或者Jenkins的配置有问题,要进行问题排查

PS:在Jenkins上打包之前,一定要先在本地打包成功,如果本地都打包不成功就证明环境有问题。另外补充一点,这里添加的gradle命令,不要带gradle,要不然就会报错(如下图):





作者: Sy_小单    时间: 2019-4-26 16:44
为什么符号显示为表情?

作者: Miss_love    时间: 2020-12-30 16:00
支持




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2