本頁面中
CI 和 GitHub Actions
Deno Deploy 的 Git 整合功能夠部署推送到 GitHub 儲存庫的程式碼變更。在生產分支上的提交將會部署為生產部署。在所有其他分支上的提交將會部署為預覽部署。
Git 整合有兩種操作模式
- 自動:Deno Deploy 會在您每次推送時自動從您的儲存庫來源提取程式碼和資產,並部署它。此模式非常快速,但不允許建置步驟。對於大多數使用者來說,這是建議的模式。
- GitHub Actions:在此模式中,您從 GitHub Actions 工作流程將您的程式碼和資產推送到 Deno Deploy。這允許您在部署之前執行建置步驟。
Deno Deploy 將根據您的自訂部署配置選擇適當的模式。以下,我們將更詳細地介紹自動和 GitHub Actions 模式的不同配置。
自動 跳到標題
如果您的專案不需要任何額外的建置步驟,則系統會選擇自動模式。進入點檔案僅僅是 Deno Deploy 將執行的檔案。
GitHub Actions 跳到標題
如果您在專案配置中輸入安裝步驟和/或建置步驟中的命令,Deno Deploy 將建立必要 GitHub Actions 工作流程檔案並將其推送到您的儲存庫中。在此工作流程檔案中,我們利用 deployctl
Github action 來部署您的專案。您可以執行任何您需要執行的操作,例如在部署到 Deno Deploy 之前執行建置命令。
若要配置您想要執行的預處理命令,請點擊選擇您的 git 儲存庫後出現的顯示進階選項按鈕。然後根據需要輸入數值到輸入框。
提示
例如,如果您想要為 Fresh 專案啟用 預先編譯建置,您將在建置步驟框中輸入 deno task build
。
另請參閱 Fresh 文件,以了解如何將 Fresh 專案部署到 Deno Deploy。
Deno Deploy 產生並推送到您的儲存庫的 GitHub Actions 工作流程檔案如下所示。
.github/workflows/deploy.yml
name: Deploy
on:
push:
branches: main
pull_request:
branches: main
jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
permissions:
id-token: write # Needed for auth with Deno Deploy
contents: read # Needed to clone the repository
steps:
- name: Clone repository
uses: actions/checkout@v4
- name: Install Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x
- name: Build step
run: "deno task build"
- name: Upload to Deno Deploy
uses: denoland/deployctl@v1
with:
project: ""
entrypoint: "main.ts"
root: "."
請參閱 deployctl README 以了解更多詳細資訊。