O GitLab runner executa os dois primeiros comandos e diz “build succeeded”

1

Estou usando o "CI Multi-Runner" do GitLab, que instalei na instância do Windows 2012 R2. As compilações começam corretamente e começam a ser executadas, mas a compilação é marcada como concluída antes mesmo de executar todo o meu script.

.gitlab-ci.yml

build_web:
  script:
    - cd Web
    - npm install
    - jspm install
    - gulp build

Ao ser pressionado, o pipeline executa npm install e, em seguida, gera "Build succeeded" e termina a compilação com êxito (tendo pulado os dois comandos a seguir).

    
por Josh M. 08.08.2016 / 05:20

2 respostas

2

Tenho tido esses problemas de saída antecipada no GitLab CI com o Windows com comandos NodeJs / NPM. Eu resolvi usando o PowerShell para quebrar os comandos no lugar de chamar diretamente o NPM

substituindo:

- npm install

com:

- powershell -Command "Start-Process npm -ArgumentList install -Wait"

No meu caso, eu precisei usar o grunhido também, o que causou o mesmo problema de forma semelhante, como

powershell -Command "Start-Process grunt -ArgumentList autobuild -Wait"

Espero que funcione para você | Toby

    
por 09.09.2016 / 11:45
2

Altere npm install para call npm install . É assim que funciona o shell do Windows, se você não usar call , ele será executado no mesmo contexto e depois sairá após a execução.

    
por 02.01.2017 / 17:41