【Kubernetes社區之路】kubernetes機器人指令介紹

Prow是kubernetes社區使用的CI/CD系統,基於kubernetes實現,它提供了一系列/foo格式的命令供用戶使用。使用這些指令,可讓機器人完成相應的工做,例如,當你提交PR後,可使用/assign @<somebody>命令來指定一個owner來審覈你的PR。app

當開發者提交PR(Pull Request)到kubernetes社區時,機器人會自動回覆你,並在回覆中指示當前PR的狀態或者指示你下一步該如何作,別人也會在你的PR中回覆一些機器人命令,因此,作爲開發者有必要清楚的瞭解經常使用的一些命令。ide

下面介紹一些比較常見的命令,更多的命令能夠查閱官方介紹(https://prow.k8s.io/command-help)。測試

TODO: 或許能夠按照標籤操做類、流程控制類、其餘來分類ui

重跑失敗的用例:/retest

顧名思義,這個命令用於從新執行失敗的測試(有時自動化測試會因環境因素而失敗),因爲只有PR纔會觸發自動化測試,因此這個命令僅用於PR中。this

用法舉例:code

  • /retest : 重啓失敗的測試

使用條件:blog

  • 只能用於可信的PR,即包含ok-to-test標籤的PR;
  • 任何人均可以使用;

命令效果:ip

  • 從新啓動失敗的測試;

圖示以下:開發

手動觸發測試用途:/test

/test用於手動執行某個或所有測試用例,有些用例並沒包括在自動化測試用例範圍內,若有必要能夠手動觸發。rem

用法舉例:

  • /test pull-kubernetes-bazel-test:啓動pull-kubernetes-bazel-test測試;
  • /test all: 啓動所有測試用例;

限制條件:

  • 只能用於可信的PR,即包含ok-to-test標籤的PR;
  • 任何人均可以使用;

命令效果:

  • 啓動指定的測試用例;

圖示以下:

修改標題:/retitle

看起來不錯:/lgtm

lgtmlooks good to me的縮寫,用來表示對某個PR的承認。

當某個reviewer在PR中回覆/lgtm時有兩個意思,一方面表示對PR的承認,另外一方面指示機器人在該PR中打上lgtm標籤。擁有lgtm標籤是該PR最終能被合入的必要條件。

lgtm標籤也是能夠撤銷的,當其餘reviewer或做者發現還有問題須要修改時,能夠以使用/lgtm cancel來撤消標籤。

用法舉例:

  • /lgtm:代碼檢視後使用,給PR增長lgtm標籤;
  • /lgtm cancel:刪除lgtm標籤;

限制條件:

  • 只能被社區成員使用;
  • PR做者可使用lgtm cancel;

命令效果:

  • 給PR增長或刪除lgtm標籤;

圖示以下:

/check-dco

/check-cla

/cc

/assign

/approve

/auto-cc

/bugzilla refresh

/buildif(y|ier)

/meow(vie) [CATegory]

/(woof|bark|this-is-{fine|not-fine|unbearable})

/lint

/remove-

/hold [cancel]

/remove-

/close

/reopen

/[remove-]lifecycle

/milestone or /milestone clear

/status (approved-for-milestone|in-progress|in-review)

/override [context]

/(pony) [pony]

/project , /project , or /project clear

/release-note-none

/[un]shrug

/skip

/[remove-]stage

/ok-to-test

/joke

/joke是個很是有意思的命令,它會指示機器人講個笑話,除此以外沒有任何做用。

用法舉例:

  • /joke;

限制條件:

  • 任何人均可以使用;

命令效果:

  • 機器人回覆一個笑話,並@命令發起人;

圖示以下:

相關文章
相關標籤/搜索