【Argo Workflow】三、給Workflow添加參數(shù)

下面給出了一個Parameters的案例即硼。這里需要解釋一些關(guān)鍵信息:

  • spec.entrypoint 的作用是標記一個主工作流模板,可以理解為main函數(shù)的作用兼贡,是整個workflow的入口。
  • spec.templates 是需要你自定義的一系列workflow中的node模板或者是引用其他創(chuàng)建的模板娃胆,templates本質(zhì)上是一個template數(shù)組遍希,這個后續(xù)我們會討論到,這里不再過多講解里烦。這里我們?nèi)绻枰褂脜?shù)功能凿蒜,就需要使用到template.inputs這個字段。
  • Inputs 對象是在workflow中被指定作為輸入?yún)?shù)或者輸入資源的一種抽象類型胁黑。其中包含inputs.artifactsinputs.parameters兩個字段废封,分別表示輸入的參數(shù)類型數(shù)組和輸入的文件類型數(shù)組。我們本節(jié)只涉及到parameters丧蘸,artifacts會在后面的文章中介紹漂洋。
  • spec.arguments Arguments類型包含和Inputs類型,同樣也包含parameters和artifacts兩個數(shù)組字段力喷。和Inputs不同的是刽漂,這個字段是作為整個Workflow的參數(shù)聲明字段,Inputs是作為Template的參數(shù)聲明字段弟孟。
  • Parameter 是輸入輸出參數(shù)的抽象類型贝咙,其中的name字段聲明的值作為key,value字段聲明的值作為參數(shù)值拂募,其中的其他字段后續(xù)會進行解釋庭猩。

下面是摘抄自官網(wǎng)的案例。同樣的陈症,我們還是使用Web UI的方式提交我們的yaml蔼水,去除掉了apiVersion和kind字段。

metadata:
  generateName: hello-world-parameters-
spec:
  # invoke the whalesay template with
  # "hello world" as the argument
  # to the message parameter
  entrypoint: whalesay
  arguments:
    parameters:
    - name: message
      value: hello parameters

  templates:
  - name: whalesay
    inputs:
      parameters:
      - name: message       # parameter declaration
    container:
      # run cowsay with that message input parameter as args
      image: docker/whalesay
      command: [cowsay]
      args: ["{{inputs.parameters.message}}"]

在template中可以使用{{inputs.parameters.your-paramter-name}}的方式引入我們的參數(shù)爬凑,前提是你必須要聲明你所需要的參數(shù)徙缴。使用雙括號表達式來替換值是Argo Workflow常見的一種方式,后面還有很多使用到此特性的數(shù)值和文件傳遞方式嘁信。

為了避免和之前的hello world案例沖突于样,我們將hello world換成了hello parameters,workflow的輸出如下:

W
time="2022-07-24T05:38:19.056Z" level=info msg="capturing logs" argo=true
 _________________
< hello parameters >
 -----------------
    \
     \
      \
                    ##        .
              ## ## ##       ==
           ## ## ## ##      ===
       /""""""""""""""""___/ ===
  ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
       \______ o          __/
        \    \        __/
          \____\______/
time="2022-07-24T05:38:20.067Z" level=info msg="sub-process exited" argo=true error="<nil>"

小鯨魚已經(jīng)輸出了我們的 hello parameters

這里補充說明一下潘靖,和官方的例子相比穿剖,我這里去掉了一些使用中沒有用到,但是相當重要的知識點卦溢。這個對于學過k8s的不是一件難理解的事情糊余,但是我還是需要解釋一下秀又。

apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: hello-world-parameters-
spec:
  # invoke the whalesay template with
  # "hello world" as the argument
  # to the message parameter
  entrypoint: whalesay
  arguments:
    parameters:
    - name: message
      value: hello world

  templates:
  - name: whalesay
    inputs:
      parameters:
      - name: message       # parameter declaration
    container:
      # run cowsay with that message input parameter as args
      image: docker/whalesay
      command: [cowsay]
      args: ["{{inputs.parameters.message}}"]

我們在使用的是 Argo Workflow 本質(zhì)上是通過k8s拓展出來的功能,上面的yaml文件是由Argo Workflow自定義的一些CRD來進行規(guī)范的贬芥。apiVersionkind是k8s比較重要的知識點吐辙,如果了解的小伙伴可以先學習k8s相關(guān)的知識。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蘸劈,一起剝皮案震驚了整個濱河市昏苏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌威沫,老刑警劉巖贤惯,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異棒掠,居然都是意外死亡孵构,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門烟很,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颈墅,“玉大人,你說我怎么就攤上這事溯职【眩” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵谜酒,是天一觀的道長叹俏。 經(jīng)常有香客問我,道長僻族,這世上最難降的妖魔是什么粘驰? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮述么,結(jié)果婚禮上蝌数,老公的妹妹穿的比我還像新娘。我一直安慰自己度秘,他們只是感情好顶伞,可當我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著剑梳,像睡著了一般唆貌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上垢乙,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天锨咙,我揣著相機與錄音,去河邊找鬼追逮。 笑死酪刀,一個胖子當著我的面吹牛粹舵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播骂倘,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼眼滤,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了稠茂?” 一聲冷哼從身側(cè)響起柠偶,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎睬关,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體毡证,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡电爹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了料睛。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丐箩。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖恤煞,靈堂內(nèi)的尸體忽然破棺而出屎勘,到底是詐尸還是另有隱情,我是刑警寧澤居扒,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布概漱,位于F島的核電站,受9級特大地震影響喜喂,放射性物質(zhì)發(fā)生泄漏瓤摧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一玉吁、第九天 我趴在偏房一處隱蔽的房頂上張望照弥。 院中可真熱鬧,春花似錦进副、人聲如沸这揣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽给赞。三九已至,卻和暖如春鸥昏,著一層夾襖步出監(jiān)牢的瞬間塞俱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工吏垮, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留障涯,地道東北人罐旗。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像唯蝶,于是被迫代替她去往敵國和親九秀。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,527評論 2 349

推薦閱讀更多精彩內(nèi)容