Jenkins
概述
Jenkins 是一款跨平臺的持續集成和持續交付(CI/CD, continuous integration and continuous delivery)應用。
它具備以下特性:
- 易於安裝,只需要運行
java -jar jenkins.war
即可。 - 易於配置,所有配置都能通過 GUI 進行。
- 豐富的插件生態,提供 SCM(Source Control Management,源碼控制管理) 和構建工具。
- 可擴展,可以很方便地創建新的 Jenkins 插件。
- 分佈式構建,可以將構建或測試負載分發到多臺計算機多種操作系統。
起步
安裝
見:https://jenkins.io/doc/book/installing/
在 Amazon Linux 中安裝 Jenkins,參考:
# install jenkins
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
sudo yum install jenkins -y
sudo service jenkins start
官方教程
見:https://jenkins.io/doc/pipeline/tour/getting-started/
設置環境變量
從 Jenkins GUI 依次點擊系統管理 -> 系統設置 -> 環境變量
,添加環境變量。鍵填入:PATH,值填入所需的配置,例如: /sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin:/usr/local/go/bin/:/home/ec2-user/bin
。
更改 Jenkins 用戶
默認的 Jenkins 用戶爲 Jenkins
,很多命令都很受限,無法執行。特別是當在 aws EC2 中使用時,AWS 的服務角色授權是授予 ec2-user
的,其他用戶(包括 root
)都無法正常使用 AWS CLI 相關命令。更改 Jenkins 用戶的步驟如下(以 ec2-user
爲例):
(1)編輯 Jenkins 配置,設置 JENKINS_USER
。
vim /etc/sysconfig/jenkins
找到並修改 JENKINS_USER="ec2-user"
。
(2)修改 Jenkins 相關文件權限。
sudo chown -R ec2-user:ec2-user /var/lib/jenkins
sudo chown -R ec2-user:ec2-user /var/cache/jenkins
sudo chown -R ec2-user:ec2-user /var/log/jenkins
(3)重啓服務
sudo service jenkins restart
QA
Jenkins 的工作目錄在哪裏?
假定新建了名爲 projectA
的 Jenkins 任務,當執行 Jenkins 構建時,其工作目錄位於 /var/lib/jenkins/workspace/projectA
。