簡體   English   中英

我可以在kubernetes python客戶端中使用正則表達式作為工作名稱嗎?

[英]Can I use regular expression for job name in kubernetes python client?

我是k8s python客戶端的非常新的用戶。

我正在嘗試找到在python客戶端中使用正則表達式獲得工作的方法。

例如在CLI中,

kubectl describe jobs -n mynamespace partial-name-of-job

給我提供partial-name-of-job “ mynamespace”中的partial-name-of-job數。

我試圖在python客戶端中找到完全相同的代碼。

我進行了幾次搜索,建議使用標簽選擇器,但是python客戶端API函數BatchV1Api().read_namespaced_job()需要作業的確切名稱。

請讓我知道是否有辦法!

不幸的是, read_namespaced_job不允許使用名稱模式過濾作業。

有具有field_selector參數的list_namespaced_job 但是field_selector支持有限的運算符列表:

您可以將=,==和!=運算符與字段選擇器一起使用(=和==表示同一意思)。

因此,如果您想將正則表達式過濾器應用於作業列表,建議您獲取完整列表,然后使用Python regex對其進行過濾

kubectl describe jobs (它描述默認名稱空間中的所有作業),而不是返回作業數。

因此,正如Yasen所述,請使用帶有namespace參數的list_namespaced_job ,它會給api請求,例如kubectl get --raw=/apis/batch/v1/namespaces/{namespace}/jobs

您還可以修改腳本並獲得一些特定的值。 請運行kubectl get or describe --v=8以獲取嚴格的api請求。 請參考Kubectl輸出的詳細程度和調試

希望這個幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM