iT邦幫忙

2024 iThome 鐵人賽

DAY 2
2
DevOps

菜逼八用Github Actions系列 第 2

Day 02 - Github Actions簡介 & YAML簡介 & VS Code套件

  • 分享至 

  • xImage
  •  

目錄

摘要

在這篇我們會來了解一下什麼是Github Actions、YAML,以及分享開發會使用到的套件

Github Actions是什麼

Github Actions 是一個 CI/CD 平台,它提供了 Linux、Windows、macOS 的虛擬機 (VM)

這三種中Linux 虛擬機是最常用的一種,常用於大多數的 CI/CD,因為消耗相對較低,而且每分鐘的價格也比另外兩種便宜

如果使用的是GitHub Free方案的話,每個月有2000分鐘的額度,記憶體容量則是500MB

https://ithelp.ithome.com.tw/upload/images/20240727/20135568ZybFSb2m1P.png

Github Actions常被用於對 repo 的 code 進行 build、test、deploy,或者check PR 內的內容

workflow會用YAML格式撰寫,並設定觸發的時機,之後就可以手動、自動觸發它們

YAML是什麼

YAML (YAML Ain't Markup Language) 是一種人類可讀的資料格式,使用縮排表示結構層次

嚴格的縮排而這也是它最為人詬病的點,而且很嚴格,只要縮排不對馬上就給你噴錯

它常被用於各種 DevOps 工具,如GitHub Actions 、 Kubernetes、Docker,支援多種type,不過因為它只是一種格式,所以沒有變數、運算的功能

YAML撰寫的檔案有.yaml、.yml兩種副檔名。兩者一樣,只是後者是由於早期Windows系統限制副檔名只能有三個字母

有助開發的VS Code套件

Github Actions

https://ithelp.ithome.com.tw/upload/images/20240727/20135568c9r1IEkorJ.png

GitHub Actions

安裝了這個套件以後左側的drawer會多出一個按鈕,只要有登入就會列出現這個repo的workflow的執行紀錄以及其他資訊,也可以選擇rerun

rerun workflow

此外它還有以下功能

1.檢查.github/workflows內的.yml(或.yaml)的語法是否符合Github Actions的schema

https://ithelp.ithome.com.tw/upload/images/20240729/20135568ctHMDA4jW1.png

2.針對Github Actions的snippet

檢查語法

不過這個套件沒有format功能

YAML

YAML

Redhat的YAML除了驗證YAML語法的功能以外,還是目前少數有format功能的VS Code套件,它的format功能並不是那麼強大,只能做些簡單的縮排調整,或者依據給予的schema去format

但這是因為yaml的縮排不限制一定要縮幾個空白,而是只要對齊就好,導致很難完美format


上一篇
Day 01 - 前言 & 大綱
下一篇
Day 03 - YAML基本語法
系列文
菜逼八用Github Actions29
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言