簡體   English   中英

Gitlab CI:將命令保存在變量中

[英]Gitlab CI: save command in variable

我需要在幾個作業中運行大命令並將結果保存在動態創建的變量中。 我的想法 - 將此類命令保存為變量並在所有作業的腳本部分對其進行評估。 例如:

.grep_command: &grep_command
  GREP_COMMAND: dotnet ef migrations list | grep "VERY_LONG_PATTERN_HERE"

job1:
  variables:
    <<: *grep_command
  script:
    # some job specific code
    - echo $GREP_COMMAND
    - VAR=$(${GREP_COMMAND}) # doesn't work


job2:
  variables:
    <<: *grep_command
  script:
    # some job specific code
    - echo $GREP_COMMAND
    - echo "VAR=$(${GREP_COMMAND})" > build.env # also doesn't work

我找到了正確的方法:將命令定義為腳本命令並在腳本部分使用它,而不是變量:

.grep-command: &grep-command
  - dotnet ef migrations list | grep "VERY_LONG_PATTERN_HERE"

job1:
  script:
    # some job specific code
    - *grep-command

(順便說一句,將命令另存為變量也可以,只是小心使用它,但我想它不是很清楚 - 變量必須保持變量,而命令 - 作為命令。我發現混合它們是不好的做法)

暫無
暫無

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

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