用 GitHub Actions, Drone CI 或 GitLab CI 部署 AWS Lambda

Screen Shot 2018-10-24 at 9.37.49 AM

最近剛好把 drone-lambda 新增了一些新的功能,也就是可以透過 CI/CD 的方式來更新 AWS Lambda 基本設定,像是 Memory Size, Handler, Timeout, Runtime 或 Role 等 …,趁這機會寫篇教學紀錄如何透過 GitHub Actions, Drone CIGitLab CI 部署 AWS Lambda。這三套部署方式都是透過 drone-lambda 包好的 Image 來進行。底下的程式碼都可以在這邊找到

[Read More]

Docker 推出官方 GitHub Actions 套件

cover

去年 GitHub 推出 Actions,就有不少開發者相繼把 CI/CD 流程內會使用到的 Plugin 都丟到 Marktetplace,而在這 Docker 容器時代,肯定是需要用自動化上傳容器到 Docker Registry,而官方也在上週正式釋出第一版 GitHub Actions,雖然在 Marktet 尚有不少開發者已經有實現了此功能,但是官方既然推出了,就採用官方的套件會比較適合。底下我們來看看如何使用 Docker 推出的 GitHub Aciton 來自動化上傳 Docker Image。除了介紹如何使用 GitHub Action 上傳 Image 外,我也會拿 DroneDocker Plugin 來進行比較。

[Read More]

用 GitHub Actions 部署 Go 語言服務

GitHub Actions 也推出一陣子了,相信有不少雷,也是有很多優勢,未來在 GitHub 上面串接任何開源專案,都可以免費使用,過幾年可以看看 GitHub Actions 對 Travis 的影響是多少?本篇要來介紹如何透過 GitHub Actions 來部署 Go 語言服務,會用一個簡單 httpd 範例教大家如何透過 Docker 方式來更新。使用 Go 語言基本服務流程大致上會是『測試 -> 編譯 -> 上傳 -> 啟動』,透過這四個步驟來學習 GitHub Actions 該如何設定。

  • 測試: Unit Testing 多一層保護
  • 編譯: 透過 go build 編譯出 Binary 檔案
  • 上傳: 寫 Dockerfile 將 Binary 包進容器內
  • 啟動: 透過 docker-compose 方式來更新服務
[Read More]

GitHub 推出 CI/CD 服務 Actions 之踩雷經驗

GitHub Actions 簡介

今年很高興又去 Cloud Summit 研討會給一場議程『初探 GitHub 自動化流程工具 Actions』,這場議程沒有講很多如何使用 GitHub Actions,反倒是講了很多設計上的缺陷,以及為什麼我現在不推薦使用。GitHub Actions 在去年推出來,在這麼多 CI/CD 的免費服務,GitHub 自家出來做很正常,我還在想到底什麼時候才會推出,beta 版出來馬上就申請來試用,但是使用下來體驗非常的不好,有蠻多不方便的地方,底下我們就來聊聊 GitHub Acitons 有哪些缺陷以及該改進的地方。

[Read More]