持續(xù)集成
- 定義 :持續(xù)集成是一種軟件開發(fā)實踐,即團隊開發(fā)成員經(jīng)常集成他們的工作,通過每個成員每天至少集成一次,也就意味著每天可能會發(fā)生多次集成。每次集成都通過自動化的構(gòu)建(包括編譯,發(fā)布,自動化測試)來驗證,從而盡早地發(fā)現(xiàn)集成錯誤。
- 原則: 先在本地構(gòu)建 然后提交到版本控制庫中,每次構(gòu)建都要100%通過。
- 工具:持續(xù)集成的工具很多,本次選擇gitlab cl來使用和學(xué)習(xí)。
- 步驟
- 在gitlab中創(chuàng)建一個項目例如: cli-demo-20870
- 把本地項目和gitlab上的項目關(guān)聯(lián)采用ssh協(xié)議需要配置密鑰
Bash命令:ssh-keygen //生成密鑰
cat ~/.ssh/id_rsa.pub //獲取密鑰
將獲取的密鑰通過gitlab的設(shè)置選項保存起來
git init
git remote add origingit@code.choerodon.com.cn:frontend-train-2018/ci-demo-20870.git
在本地項目的根目錄下添加.gitlab-cli.yml
image: node
deploy:
cache:
paths:
- node_modules/
- yarn.lock
- .cache/
script:
- yarn --cache-folder ./.cache
- PUBLIC_URL=./ yarn build
- yarn global add gh-pages --cache-folder ./.cache
- git config --global user.email ${GITLAB_USER_EMAIL}
- git config --global user.name ${GITLAB_USER_NAME}-${GITLAB_USER_LOGIN}
- gh-pages -d build -b gh-pages -m "${CI_COMMIT_MESSAGE}" -r https://${GITEE_USER}:${GITEE_PASS}@gitee.com/geekleng/ci-app.git
artifacts:
paths:
- build
only:
- master
上述代碼中注意一點 https://后面的路徑是你在碼云上創(chuàng)建的項目路徑。