GitLab 推出 CLI 工具以及新版 Web IDE:15.7 更新

GitLab 發布 15.7 的更新了~這次的更新感覺有一些實用的功能,所以這邊稍微紀錄一下。

官方的公告是《GitLab 15.7 released introducing the GitLab CLI and with browser-based DAST GA》這篇文章,裡面內容也相當多,這邊就只撿個人覺得有趣/有用的東西拿來講了。

在 Heresy 自己來看,這次的更新帶來了兩個比較大的功能:GitLab CLI 和基於 Visual Studio Code 的 Web IDE(Beta)。


GitLab CLI

GitLab 本來就有提供 API 讓使用者可以自行串接,但是那主要還是針對藥開發程式的人才比較好用。

而現在,GitLab 則是推出了 CLI 的程式,讓使用者可以透過命令提示字元來操作 GitLab 的特定功能了!對於想要寫腳本自動化的人來說,這應該會是相當方便的!

官方的介紹是《Put `glab` at your fingertips with the GitLab CLI》,專案有放在 GitLab 上(Repo);文件則可以參考官網的《GitLab CLI》,但是感覺還是 repo 裡面寫的比較詳細。

目前看來,它除了可以複製專案外,還可以針對 issue、merge request、pipeline 作一定程度上的管理。

要使用的話,需要先到 GitLab 的網站上面建立 token,然後使用 glab auth login 這個指令先登入;如果要自動化的話,官方建議是用下面的指令來完成登入:

glab auth login --hostname mygilab.com --stdin < myaccesstoken.txt

不過他在送命令的時候,似乎會是以 GITLAB_URI 這個環境變數當作伺服器,預設會是 https://gitlab.com/,所以如果是自己架設的 GitLab 的話,似乎是需要先修改這個環境變數的值才行。

之後,就可以透過他的指令來做一些操作了~例如要看 Heresy/ci-test 這個專案的 issue 列表的話,可以用下面的指令:

glab issue list -R Heresy/ci-test

這邊也可以透過相關的指令,來控制 issue 的狀態。

要看 CI 的狀態的話,則是:

glab ci list -R Heresy/ci-test

也可以透過相關的指令,來執行 CI 的 pipeline。

個人目前是還沒想到要拿來幹嘛,但是感覺有必要的話,應該可以更方便地透過腳本來執行 GitLab 的操作。


Web IDE Beta

在 15.7 裡,GitLab 開始測試新版、基於 Visual Studio Code 的 Web IDE,官方的介紹是《A first look at the new GitLab Web IDE and remote development experience》,相關的說明可以參考官方文件(連結)。

這項功能目前在 https://gitlab.com 已經可以使用了,但是如果是自行架設的 GitLab 的話,預設是關閉的,需要透過設定「vscode_web_ide」這個 feature flag 來手動開啟。

Feature flag 的設定方法可以參考《GitLab 的 feature flag 設定》,基本上就是進入 gitlab-rails console 後,執行「Feature.disable(:vscode_web_ide)」這個指令就可以了。

新的編輯器介面長得像下面的樣子,基本上就是 VSCode 的外觀了~

所以如果本來就是在用 Visual Studio Code 開發的人來說,應該會更容易使用新版的 Web IDE 來做修改吧?(不過對使用 Visual Studio 的 Heresy 來說就有點無感了)

不過目前他應該是還不支援 extension,算是比較可惜的了。


其他當然也還不少改變,像是現在在 Markdown 語法中就可以透過 {width=100 height=100} 這類的形式來指定圖片顯示大小。

下面就是官方給的範例:

![alt text](img/markdown_logo.png "Title Text"){width=100 height=100px}

![alt text](img/markdown_logo.png "Title Text"){width=75%}

更詳細的說明可以參考官方文件

此外,之前也介紹過的、在手動執行 pipeline 的時候可以設定預先輸入變數的功能也有做了一點改進,現在變成可以提供一個選單讓使用者去選、不用擔心被亂填了~ XD

下面是官方的範例:

variables:
  DEPLOY_ENVIRONMENT:
    value: "staging"
    options:
      - "production"
      - "staging"
      - "canary"
    description: "The deployment target. Set to 'staging' by default."

這樣一來,在手動執行 pipeline 的時候,「DEPLOY_ENVIRONMENT」就會變成以下拉選單的形式來呈現,而不是讓使用者自由輸入了!

詳細的說明可以參考官方文件


Heresy 這邊基本上只是記錄自己覺得有趣的、或是覺得用得上的,更詳細的更新紀錄,就還請回去參考官方的介紹了~

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *