iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 27
0

前情提要

各位邦友,通常官方的文件都有很完整的文件內容,今天小編會以我們目前的.travis.yml裡的設定來做說明,一方面也是讓自己先了解目前設定的參數是什麼。畢竟那是小編目前工作上「正在運作」的狀態。當然也因此有機會進一步了解「更多」,但這邊只會點到為止。

package.json(新增片斷)

  "scripts": {
    "test": "echo 'test'",
  },

還記得昨天沒有這一段,建立結果是成功的。(後面說明)

.travis.yml(新增設定)

  sudo: false
  dist: trusty
  node_js:
    - '8'
    - '7'
  cache:
    yarn: true
    directories:
      - node_modules
  branches:
    only:
      - develop
      # - "/^release\\/.*$/"
      - master
  • sudo: false
    這個參數是用來設定「建立環境」的,設定值有兩種:
    • required(預設值):用Google Cloud的VM來跑你的Build, 它可以使用的ubuntu版本(Precise|Trusty|Xenial)。
    • false:透過Docker的Container來執行你的Build,它可以使用的ubuntu版本(Trusty)。
  • dist: trusty
    這邊指的是linux ubuntu發行的版本(開發代號),如果不輸入的話,預設trusty
  • node_js:Node.js的版本,如果你設定二個的話,travis會同時進行,不同Node.js版本的Build。當小編設定版本(8)之後,發現它改用yarn進行「套件安裝|測試」,看了官網說明之後,它說:如果你的專案底下有yarn.lock的檔案的話,它就會用yarn取代npm來執行build。但如果你沒有把yarn.lock放進專案的話,你就要自己「進行安裝yarn」的動作。而昨天由於沒有指定「版本」,node版本太低,無法用yarn來執行。而今天用yarn執行後,它卻會執行yarn test。所以上面的package.json就改了一下。
  • cache:Travis為了加快你的Build,會把不常改變的內容,建立「快取機制」。這邊設定了yarn。
  • branches:設定哪些branch要build。
    • except(黑名單):不進行build的名單。
    • only(白名單):進行build的名單。

      PS:branch名稱可以使用正規表示式。

travis執行結果

由於我們設定了二個Node.js版本,執行如下:8成功,7失敗

Node.js 8(成功畫面)

專案參考:
GitHub slack-demo
Travis CI slack-demo Builds


各位邦友,本來今天預計完成.travis.yml的設定,並把程式放到S3上去。由於小編正在了解,今天的嘗試中,發現很多細節…所以進度有點慢。
先到這邊Orz。


上一篇
= = 部門 Slack DevOps 頻道 GG了 > Slack小結
下一篇
= = 部門 Slack DevOps 頻道 GG了 > Travis to S3 II
系列文
AWS高手同事離職後不止30天30

尚未有邦友留言

立即登入留言