用 Github Action 編譯並發 Release

如果自己寫的小工具的 GitHub 頁面右邊 Release 那欄有個什麼東西,一定很酷對吧!如果裡面已經提供了不同作業系統編譯好的程式,一定更酷! 想要建立 Release,你可以在新版本發布時自己手動 crose compile 再手動設定 Release,這個方法可行,但是聽起來全手動就很 low,我們要用一個全自動的方式發 Release! Github Actioin 既然我們程式碼都託管在 GitHub 了,直接用 Gtithub Action 是很合理的吧! 觸發條件 因為我們要做的是發布版本,不是每個 commit 都要觸發,因此觸發條件就設成 on: push: tags: - "v[0-9]+.[0-9]+.[0-9]+" 意思是只有像是 v0.1.13 這樣的標籤會觸發,也就是你建立新版本時。 編譯 在嘗試各種套件之後,我覺得 goreleaser-action 是我用起來最舒服的,不用太多設定,就直接都編譯好了(詳細設定可以去 goreleaser 的網站看 ) 在 GitHub Action 中設定就下面幾行,第一個步驟是安裝 go,再來就是編譯了。 - name: Set up Go uses: actions/[email protected] with: go-version: 1.17.x - name: Run GoReleaser uses: goreleaser/[email protected] with: version: latest args: release --rm-dist env: GITHUB_TOKEN: ${{ secrets....

2022-March-27 · 2 分鐘 · simba-fs

GitHub Action 自動部署 hexo

前言 本來部署 hexo 都是手動下指令,但是這樣在手機上因為沒辦法裝 hexo ,所以一直不能在手機上寫文章。剛好想到 GitHub Action 可以滿足我的需求,上網查了一下資料發現蠻多人有和我一樣的需求,這次參考的是 owlran 大大的文章。 ssh key 因為要部署到 GitHub repo,最方便的方法當然是 ssh key 啦。 ssh-keygen 首先隨便找個資料夾產生一組 ssh key ssh-keygen -f deploy-key GitHub 再來要讓 GitHub 知道你的 ssh key(public/secret 都要) public key public key 是要放在你的 <username>.github.io 的 repo 下 .ggithub.io -> settings -> Deploy keys -> add deploy key 新增一個 ssh key,名字叫 DEPLOY_KEY_PUB 把 depoly-key.pub 的內容貼上,記得下面的勾勾(Allow write access )要選起來 secret key secret key 要放在你存放部落格檔案的 repo,owlran 大大是放在同一個 repo 不同 branch,我是放在兩個不同 repo,其中放部落格檔案的 repo 我設成 private repo(因為我放了一些 gitalk 要用的 clientSecret,這個不能公開)。...

2020-August-16 · 2 分鐘 · simba-fs

audo-depoly-by-github-action

自動部屬部落格 參考網址:https://op30132.github.io/2020/02/05/github-action/ 生成公私鑰時不用在部落格根目錄,記的不要加入 git,要刪掉 name: HEXO CI on: push: branches: - master jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [12.x] steps: - uses: actions/[email protected] - name: Use Node.js ${{ matrix.node-version }} uses: actions/[email protected] with: node-version: ${{ matrix.node-version }} - name: Configuration environment env: HEXO_DEPLOY_PRI: ${{secrets.HEXO_DEPLOY_PRI}} run: |mkdir -p ~/....

2020-February-11 · 1 分鐘 · simba-fs