摘要:是目前新興的開源持續(xù)集成構(gòu)建項目,采用格式,簡潔清新獨樹一幟。目前大多數(shù)的項目都已經(jīng)移入到的構(gòu)建隊列中。測試提交代碼到中查看部署情況至此,整個部署完成,趕快自己嘗試一下吧
Travis CI是目前新興的開源持續(xù)集成構(gòu)建項目,采用yaml格式,簡潔清新獨樹一幟。目前大多數(shù)的github項目都已經(jīng)移入到Travis CI的構(gòu)建隊列中。Travis-CI會同步你在GitHub上托管的項目,每當(dāng)你commit push成功之后,就可以根據(jù)配置文件進行項目的構(gòu)建發(fā)布。作為一名苦逼(qiongsuan)程序員,想自己搞點什么,又苦于現(xiàn)在什么都收費,于是乎,有了本篇文章,滿足了廣大和我一樣,囊中羞澀卻又按耐不住一顆躁動的心的開發(fā)者們
之前用hexo搭建了一個博客,掛載在自己的github上,之所以選擇這兩者,因為他們都是開源的(其實為了免費),也因此,github域名無法在百度等搜索引擎?zhèn)浒?,我的博客張吉成的博客主頁也是毫無訪問量可言T_T。
之前每次部署都是最基本的手動編譯,打包,上傳github,搞過一段時間的jenkins(有興趣的朋友可以移步我的博客),由于沒有自己的服務(wù)器,每次自己的電腦都要開著作為服務(wù)器,實在麻煩。后來無意間發(fā)現(xiàn)了Travis,功能強大且配置簡單,還是免費的,簡直完美,唯一的缺點是只支持github項目。
本文記錄了配置Travis的全過程,構(gòu)建步驟為:
本地開發(fā)完成,提交代碼到github倉庫;
github收到提交的更新,通知Travis;
Travis 收到github的提交通知,進行構(gòu)建;
hexo 的安裝使用本文就不做介紹了,可以參考之前的文章hexo常用命令,hexo創(chuàng)建文章&文章縮略圖及banner&MarkDown
注冊配置 Travis打開Travis CI官網(wǎng),進行注冊,這里就不做太多贅述,推薦用github賬戶注冊;
綁定你的github賬戶,此時Travis會同步你的github倉庫,將你要監(jiān)聽的github倉庫名選中,此時Travis會監(jiān)聽該倉庫的push操作,并執(zhí)行指定的腳本文件;
添加 .travis.yml當(dāng)我們提交代碼后執(zhí)行的一系列操作都是在 .travis.yml文件中配置的;
language: node_js #設(shè)置語言 node_js: stable #設(shè)置相應(yīng)的版本 cache: apt: true directories: - node_modules # 緩存不經(jīng)常更改的內(nèi)容 install: # 執(zhí)行安裝操作 ... script: # 開始部署 ... after_script: # 部署后操作 ... branches: # 配置監(jiān)聽的分支 only: - master #只監(jiān)測master分支,master是我的博客源碼分支的名稱,可根據(jù)自己情況設(shè)置 env: # 環(huán)境變量配置 global: - GH_REF: github.com/***/blog.git #設(shè)置GH_REF,注意更改***
更詳細的參數(shù)配置可以參考官網(wǎng)
如下是我的配置信息:
language: node_js #設(shè)置語言 node_js: stable #設(shè)置相應(yīng)的版本 cache: apt: true directories: - node_modules # 緩存不經(jīng)常更改的內(nèi)容 before_install: - echo 安裝hexo相關(guān)環(huán)境... install: # - npm install -g cnpm --registry=https://registry.npm.taobao.org - cnpm install before_script: - echo 正在清空緩存靜態(tài)文件... - hexo clean # 清除緩存靜態(tài)文件 - echo 正在生成靜態(tài)文件... - hexo g # 生成靜態(tài)文件 - cd ./public - ls -l script: - echo 開始部署... - git init - git config --global user.name "${GH_username}" # 修改name - git config --global user.email "${GH_useremail}" # 修改email - git add ./ - git commit -m "update" - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master # GH_TOKEN是在Travis中配置token的名稱 after_script: - echo 部署完成! branches: only: - master # 只監(jiān)測master分支,master是我的博客源碼分支的名稱,可根據(jù)自己情況設(shè)置 env: global: - GH_REF: github.com/生成github access Token 并 配置到 Travis# 設(shè)置 github 項目倉庫地址 - GH_username: # 設(shè)置 github 用戶名 - GH_useremail: # 設(shè)置 github 綁定郵箱地址
此步驟是為了使travis獲得對github的操作權(quán)限,如git push等生成github access Token
如上圖所示,登陸github并打開該頁面,并新建token
如上圖進行對應(yīng)操作,生成token,注意token只顯示一次,要保存好備用。
配置 access token 到 Travis打開Travis CI 找到setting頁面,填寫對應(yīng)的token名及上面步驟生成的token值,如下圖:
細心的同學(xué)可能會發(fā)現(xiàn)我的 .travis.yml 文件中有下面這樣一段配置
after_script: - echo 開始部署... - cd ./public - git init - git config --global user.name "yourname" #修改name - git config --global user.email "youremail" #修改email - git add ./ - git commit -m "update" - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master #GH_TOKEN是在Travis中配置token的名稱 - echo 部署完成! branches: only: - master #只監(jiān)測master分支,master是我的博客源碼分支的名稱,可根據(jù)自己情況設(shè)置 env: global: - GH_REF: github.com/yourname/bolg.git #設(shè)置GH_REF,注意更改yourname
其中有兩個變量,GH_REF是在env中配置的,而GH_TOKEN則是我們剛剛在設(shè)置中添加的github token,此時執(zhí)行git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master命令就可以在不用輸入用戶名密碼的情況下進行提交。
測試提交代碼到github中
查看部署情況
至此,整個部署完成,趕快自己嘗試一下吧!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/101087.html
摘要:配置觸發(fā)方式一般會得到這么個語雀配置配置一個倉庫的可以選擇所有更新觸發(fā)或者主動觸發(fā),主動觸發(fā)的意思即發(fā)布需要勾選一個選項才會觸發(fā)。 Hexo + Github + 語雀 + yuque-hexo +travis-ci+severless 打造全自動持續(xù)集成個人博客,云端寫作,自動部署,完美體驗~ 一、Hexo+Github 的痛點 1.為啥要用hexo+github? 作為一個程序猿,...
摘要:配置觸發(fā)方式一般會得到這么個語雀配置配置一個倉庫的可以選擇所有更新觸發(fā)或者主動觸發(fā),主動觸發(fā)的意思即發(fā)布需要勾選一個選項才會觸發(fā)。 Hexo + Github + 語雀 + yuque-hexo +travis-ci+severless 打造全自動持續(xù)集成個人博客,云端寫作,自動部署,完美體驗~ 一、Hexo+Github 的痛點 1.為啥要用hexo+github? 作為一個程序猿,...
摘要:博客從遷移到騰訊云最近的服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn),重新部署也無法解決。碼云自定義域名收費,只好遷移到騰訊云上了。不會配置的可以參考官方示例直接就發(fā)布到騰訊云上了,訪問速度相當(dāng)快,對也好。 Hexo博客從Coding遷移到騰訊云COS 最近coding的Pages 服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn)404,重新部署也無法解決。國內(nèi)訪問GitHub Pages 不是很快,而且百度S...
摘要:博客從遷移到騰訊云最近的服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn),重新部署也無法解決。碼云自定義域名收費,只好遷移到騰訊云上了。不會配置的可以參考官方示例直接就發(fā)布到騰訊云上了,訪問速度相當(dāng)快,對也好。 Hexo博客從Coding遷移到騰訊云COS 最近coding的Pages 服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn)404,重新部署也無法解決。國內(nèi)訪問GitHub Pages 不是很快,而且百度S...
摘要:博客從遷移到騰訊云最近的服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn),重新部署也無法解決。碼云自定義域名收費,只好遷移到騰訊云上了。不會配置的可以參考官方示例直接就發(fā)布到騰訊云上了,訪問速度相當(dāng)快,對也好。 Hexo博客從Coding遷移到騰訊云COS 最近coding的Pages 服務(wù)一直不穩(wěn)定,這兩天訪問還出現(xiàn)404,重新部署也無法解決。國內(nèi)訪問GitHub Pages 不是很快,而且百度S...
閱讀 1707·2021-10-09 09:44
閱讀 3269·2021-09-27 13:36
閱讀 1527·2021-09-22 15:33
閱讀 1282·2021-09-22 15:23
閱讀 1168·2021-09-06 15:02
閱讀 1706·2019-08-29 16:14
閱讀 2913·2019-08-29 15:26
閱讀 2414·2019-08-28 18:08