44

Windows 10 で Gitlab CI ランナーを実行しています。

before_script:
  - "echo off"
  - 'call "%VS120COMNTOOLS%\vsvars32.bat"'
  - echo.
  - set
  - echo.

stages:
  - build

build:
  stage: build
  script:
  - 'StatusTest.exe'
  #- msbuild...

StatusText.exe でビルドを失敗させようとしています (ステータス コード -1,0,1 を返そうとしました; 例外をスローするなど)。ただし、Runner は例外をログに記録するだけで、次の手順を続行します。

CI シェル ランナーがビルドに失敗し、次のステップに進まないことを決定するものは何ですか?

出力:

...
windows_tracing_logfile=C:\BVTBin\Tests\installpackage\csilogfile.log
$ echo.

$ StatusTest.exe

Unhandled Exception: System.Exception: tralala
   at StatusTest.Program.Main(String[] args)
$ echo "Restoring NuGet Packages..."
...
4

2 に答える 2

68

CI シェル ランナーがビルドに失敗し、次のステップに進まないことを決定するものは何ですか?

1) いつ失敗するか

この行をgitlab-ci.yml

- # ....
- exit 1

ステージの実行結果は失敗し、次のステップに進みません。

ここに画像の説明を入力

そして、ステージ(私の場合は3番目)を見ると、結果は失敗します:

ここに画像の説明を入力

2) いつ成功するか

この行をgitlab-ci.yml

- # ....
- exit 0

ステージの実行結果は次のようになります。

ここに画像の説明を入力

次に、ステージ (私の場合は 3 番目) を見ると、結果は OK で、次のステージに進む準備ができています。

ここに画像の説明を入力

于 2017-02-06T10:55:13.653 に答える