搭建 Jenkins
在本地搭建 Jenkins
.
參考 jenkins 安裝
配置 SSH
配置 ssh
, 程式在 Jenkins
伺服器打包完之後,釋出到目標伺服器上.
Manage Jenkins
-> Configure System
-> Publish over SSH
-> Add
這裡需要特別注意的是 Remote Directory
.
此目錄必須存在,不會自動建立. 而且釋出機(Jenkins)只能將檔案放在此目錄下.
配置專案
- 建立一個專案
- 輸入專案名字,選擇
Freestyle project
- 新增專案倉庫
- 配置構建
project=blog
desc_name=/tmp/$project.$BUILD_ID.$BUILD_NUMBER.tar.gz
composer install --no-dev
tar -cvz --exclude='.git' --exclude=$desc_name -f $desc_name .
mv $desc_name .
這裡使用 .
而不是 ./*
, ./*
不會壓縮隱藏檔案
專案裡會包含配置檔案 .env.example
這種隱藏檔案.
- 構建完之後,釋出到目標伺服器
PREFIX=/data/www
LIB=$PREFIX/lib
TIME=$(date +%Y%m%d%H%M%S)
DESC_NAME=blog."$TIME"
DESC=$LIB/$DESC_NAME
LINK_NAME=blog
LINK_DESC=$PREFIX/$LINK_NAME
mkdir -p $DESC
tar -xzf /tmp/demo/blog.$BUILD_ID.$BUILD_NUMBER.tar.gz -C $DESC
cd $DESC
cp .env.example .env
ln -snf $DESC $LINK_DESC
配置完成,儲存,點選 Build Now
就可以了.