本站介紹

本網站以 GitLab Pages / Hugo 建置。

介紹 Ansible 的使用與心得分享。

解壓縮只取第二層目錄以下的檔案與目錄

Angular/Vue 這類的前端框架,在執行 npm run build 建置以後,會產生 dist 的資料夾,裏面就是要佈署的檔案。一般會使用 tar czf dist.tar.gz dist 將該資料夾裡的檔案打包為 tarball。

使用 Ansible 佈署時,需要使用 unarchive 模組解壓縮,這時會直接解壓縮出 dist 目錄。

通常解法會有兩種,第一種是在打包時,先進入 dist 資料夾,再進行打包。

第二種方法就是本文要介紹的小技巧。

等待 API 回應完成

情境是這樣的,Playbook 在送出 HTTP 請求後,需要送出一個 HTTP 請求去持續詢問是否完成,如果還沒完成,就等待一段時間後,再去詢問,那這個情境下可以怎麼做呢?

使用ansible-Vault加密字串

在撰寫 Playbook 時,難免會用到敏感性的資訊,Ansible 提供了 ansible-vault 這個工具,可以針對檔案或是字串來做加密。

如果變數內容需要加密的話,該怎麼使用呢?

Script

以前我不知道有 script 模組,所以要執行自己的腳本,都是先把腳本複製過去,再用 shell/command 去執行。

Windows SSH setup

Ansible 可以透過 WinRM 連線到 Windows 主機進行操作,這部份的設置可以參考 Setting up a Windows Host

這篇文章裡,有一部份是我之前沒注意到的,就是 Windows 主機除了可以用 WinRM 之外,也可以用 SSH 來操作。