例のブランチを置き換える
pushとmainはデモ値です。merge requestを調べるならパイプラインソースとブランチを先に変更します。
CI/CDツール
.gitlab-ci.ymlと検証したいコンテキストを入力し、ジョブ、変数参照、ローカルincludeを確認します。
解析はブラウザー内だけで行い、GitLabへ送信しません。
まだ分析していません。このYAMLを分析してください。
YAMLの構文が正しくても、stage名の違いやrulesの分岐で想定したジョブが出ないことがあります。GitLab CIエディタはコミット前にローカルで確認できる根拠を並べます。
このGitLab CI YAML検証は対応範囲を明示した静的チェックです。実際のプロジェクトでの判定はGitLabのCI Lintで確かめてください。
スキップと未判定を混同しません。
GitLab CIエディタは指定された変数で各ジョブを対象、スキップ、未判定に分けます。diffのないrules:changesを勝手に偽と扱いません。
正確なパスと内容を入力したinclude:localだけを読みます。未提供のファイルは空の設定として扱わず、解決できないことを表示します。
pushとmainはデモ値です。merge requestを調べるならパイプラインソースとブランチを先に変更します。
include:localのパスとYAML本文をセットで入力します。ブラウザーはリポジトリを自動で読みません。
構文、構造の診断、rulesのプレビューは別の結論です。設定を変えたら結果が古くなるため、Ctrl/Cmd+Enterで再実行します。
.gitlab-ci.yml整形の結果は別欄に出します。コメントを保持できる範囲で維持し、入力は変更しません。
GitLab CI YAML検証はstage、ジョブの実行キー、rulesの形、ローカルのneeds参照を確認します。
GitLab CI rulesテストでは対応するif条件を最初の一致まで評価し、未対応条件は未判定とします。 対応するif構文は変数の有無、==、!=、&&、||、括弧です。正規表現は未判定にします。
GitLab CI変数一覧で定義と$NAME参照を並べます。GitLabのプロジェクト設定にある変数は確認できません。
GitLab CIエディタで対応する構文と構造を先に確認し、push前の最終判定はプロジェクトのCI Lintを使ってください。
対応するif条件は最初に一致したルールで判定します。GitLab側のブランチやneedsまで含む模擬実行とは違います。
include:localの正確なパスと内容を入力してください。未提供なら解決不能と表示され、リポジトリ上のファイルは自動取得しません。
ジョブ変数がパイプライン作成時のrules評価に使えるとは限りません。利用できる変数の種類をGitLabの文書で確認してください。
解析後の変数タブで$NAME参照とローカル定義を確認できます。未定義表示は実行時に値がないという意味ではありません。
このツールが誤判定するworkflowを見つけましたか?