[解決済み] gitlabciでif-else条件を使用する方法
2022-02-10 03:25:18
質問
gitlab-CI内でif else条件を使うにはどうしたらよいですか。
以下のようなコードがあります。
deploy-dev:
image: testimage
environment: dev
tags:
- kubectl
script:
- kubectl apply -f demo1 --record=true
- kubectl apply -f demo2 --record=true
次に、次のような条件を追加したいと思います。
script:
- (if [ "$flag" == "true" ]; then kubectl apply -f demo1 --record=true; else kubectl apply -f demo2 --record=true);
どなたか、正しい構文を教えていただけませんか?gitlabciに条件(if-else、forループ)についてのドキュメントはありますか?
どのように解決するのですか?
以下は、そのようなステートメントのための3つのシンタックスオプションです。gitlab-ciより ドキュメント :
シェル変数の使用
deploy-dev:
image: testimage
environment: dev
tags:
- kubectl
script:
- if [ "$flag" == "true" ]; then MODULE="demo1"; else MODULE="demo2"; fi
- kubectl apply -f ${MODULE} --record=true
yaml の複数行ブロックでシェル変数を使用する
deploy-dev:
image: testimage
environment: dev
tags:
- kubectl
script:
- >
if [ "$flag" == "true" ]; then
kubectl apply -f demo1 --record=true
else
kubectl apply -f demo2 --record=true
fi
gitlabのルールを利用する
workflow:
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule"'
when: never
- if: '$CI_PIPELINE_SOURCE == "push"'
when: never
- when: always
gitlabのテンプレートと変数を使う
demo1-deploy-dev:
extends: .deploy-dev
only:
variables: [ $flag == "true" ]
variables:
MODULE: demo1
demo2-deploy-dev:
extends: .deploy-dev
only:
variables: [ $flag == "false" ]
variables:
MODULE: demo2
.deploy-dev:
image: testimage
environment: dev
tags:
- kubectl
script:
- kubectl apply -f ${MODULE} --record=true
関連
-
[解決済み] Makefileの中で条件がある場合、ターゲット内部で
-
[解決済み] バッチファイル:(この時点では想定外でした
-
[解決済み] SwiftのIF LETはどのように評価されるのですか?
-
[解決済み] SwiftのIF LETはどのように評価されるのですか?
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] NGIf else "の使い方を教えてください。
-
[解決済み] AngularJS テンプレートにおける if else ステートメント
-
[解決済み] なぜpythonはforやwhileループの後に'else'を使うのですか?
-
[解決済み] 条件Aを満たした場合、条件Bを満たさないと行動Cができない。
-
[解決済み] ワンライナーでif else文を書くには?重複
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] OCamlにおける複数のif文の実装
-
[解決済み] Makefileの中で条件がある場合、ターゲット内部で
-
[解決済み] 中括弧のないif文を使用するのは悪い習慣ですか?[クローズド]
-
[解決済み] cmake if else with option
-
[解決済み] GoにはPythonのような "if x in "の構成がありますか?
-
[解決済み】「if」文が多すぎる?
-
[解決済み】Swiftでif文に範囲演算子を使うことはできますか?
-
[解決済み] Swiftでif文の中で複数のlet-asを使用する
-
[解決済み] 条件Aを満たした場合、条件Bを満たさないと行動Cができない。
-
[解決済み] IF」は高いのか?