日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Github continuous deployment (CD) 最佳实践

發(fā)布時間:2023/12/19 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Github continuous deployment (CD) 最佳实践 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

About continuous deployment

您可以使用 GitHub 操作直接在 GitHub 存儲庫中創(chuàng)建自定義持續(xù)部署 (CD) 工作流。

About continuous deployment

持續(xù)部署 (CD) 是使用自動化來發(fā)布和部署軟件更新的做法。作為典型 CD 流程的一部分,代碼會在部署前自動構建和測試。

持續(xù)部署通常與持續(xù)集成相結合。有關持續(xù)集成的更多信息,請參閱“關于持續(xù)集成”。

About continuous deployment using GitHub Actions

您可以設置 GitHub 操作工作流來部署您的軟件產(chǎn)品。為了驗證您的產(chǎn)品是否按預期工作,您的工作流程可以在您的存儲庫中構建代碼并在部署之前運行您的測試。

您可以將 CD 工作流配置為在 GitHub 事件發(fā)生時(例如,將新代碼推送到存儲庫的默認分支時)、按設定的計劃、手動或在使用存儲庫調(diào)度 Webhook 發(fā)生外部事件時運行。有關何時可以運行工作流的更多信息,請參閱“觸發(fā)工作流的事件”。

GitHub Actions 提供的功能可讓您更好地控制部署。例如,您可以使用 environments 要求批準作業(yè)才能繼續(xù)、限制哪些分支可以觸發(fā)工作流或限制對機密的訪問。您可以使用并發(fā)將 CD 管道限制為最多一個正在進行的部署和一個待處理的部署。有關這些功能的更多信息,請參閱“使用 GitHub 操作進行部署”和“使用環(huán)境進行部署”。

Using environments for deployment

您可以使用 protection rules 和 secrets 配置環(huán)境。 在運行或訪問環(huán)境的 secrets 之前,引用環(huán)境的工作流作業(yè)必須遵循環(huán)境的任何保護規(guī)則。

什么是 environments

環(huán)境用于描述一般部署目標,如生產(chǎn)、暫存或開發(fā)。 當 GitHub Actions 工作流部署到環(huán)境時,環(huán)境會顯示在存儲庫的主頁上。有關查看環(huán)境部署的更多信息,請參閱“查看部署歷史記錄”。

您可以使用保護規(guī)則和 secrets 配置環(huán)境。 當工作流作業(yè)引用環(huán)境時,在所有環(huán)境保護規(guī)則都通過之前,作業(yè)不會啟動。在所有環(huán)境保護規(guī)則都通過之前,作業(yè)也無法訪問環(huán)境中定義的機密。

Environment protection rules

環(huán)境保護規(guī)則要求通過特定條件才能繼續(xù)進行引用環(huán)境的作業(yè)。您可以使用環(huán)保規(guī)則來要求手動審批、延遲作業(yè)或將環(huán)境限制為某些分支機構。

Required reviewers

使用必需的審閱者來要求特定人員或團隊批準引用環(huán)境的工作流作業(yè)。您最多可以列出六個用戶或團隊作為審閱者。審閱者必須至少具有對存儲庫的讀取權限。 只有一名所需的審閱者需要批準作業(yè)才能繼續(xù)進行。

Environment secrets

存儲在環(huán)境中的機密僅可用于引用該環(huán)境的工作流作業(yè)。 如果環(huán)境需要批準,則在所需的審閱者之一批準之前,作業(yè)無法訪問環(huán)境機密。

Using an environment

工作流中的每個作業(yè)都可以引用一個環(huán)境。在將引用環(huán)境的作業(yè)發(fā)送到運行程序之前,必須通過為環(huán)境配置的任何保護規(guī)則。 只有在將作業(yè)發(fā)送給運行程序后,作業(yè)才能訪問環(huán)境的機密。

當工作流引用環(huán)境時,環(huán)境將出現(xiàn)在存儲庫的部署中。 有關查看當前和以前部署的詳細信息,請參閱“查看部署歷史記錄”。

您可以為工作流程中的每個作業(yè)指定一個環(huán)境。 為此,添加一個 jobs. <job_id> .environment 鍵,后跟環(huán)境名稱。

例如,此工作流將使用稱為 production 的環(huán)境。

name: Deploymenton:push:branches:- mainjobs:deployment:runs-on: ubuntu-latestenvironment: productionsteps:- name: deploy# ...deployment-specific steps

當上述工作流運行時,部署作業(yè)將遵循為生產(chǎn)環(huán)境配置的任何規(guī)則。 例如,如果環(huán)境需要審閱者,則作業(yè)將暫停,直到其中一位審閱者批準該作業(yè)。

您還可以為環(huán)境指定 URL。 指定的 URL 將顯示在存儲庫的部署頁面(通過單擊存儲庫主頁上的環(huán)境訪問)和工作流運行的可視化圖中。 如果拉取請求觸發(fā)了工作流,則 URL 還會在拉取請求時間線中顯示為“查看部署”按鈕。

How environments relate to deployments

當引用環(huán)境的工作流作業(yè)運行時,它會創(chuàng)建一個部署對象,并將環(huán)境屬性設置為您的環(huán)境名稱。 隨著工作流的進行,它還會創(chuàng)建部署狀態(tài)對象,其中 environment 屬性設置為您的環(huán)境名稱,environment_url 屬性設置為 environment 的 URL(如果在工作流中指定),以及 state 屬性設置為工作。

您可以通過 REST API 或 GraphQL API 訪問這些對象。 您還可以訂閱這些 webhook 事件。

總結

以上是生活随笔為你收集整理的Github continuous deployment (CD) 最佳实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。