Я написал файл .gitlab-ci.yml:
image: docker:latest
services:
- docker:dind
stages:
- deploy_front_end
deploy_front_end:
image: <<Some Curl Image >>
stage: deploy_front_end
only:
- master
tags:
- docker
- linux
script:
- echo "deploy_front_end Test"
- curl -o /dev/null -s -w %{time_total}\\n http://MachineName:6543/frontEndDeploy
Я хотел, чтобы это попало на компьютер в указанном порту, где работает код expressJS, который:
const express = require('express')
const child_process = require('child_process');
const app = express()
const port = 6543
app.route('/frontEndDeploy').get( (req, res) => {
child_process.exec('frontend.bat', function(error, stdout, stderr) {
console.log(stderr);
console.log(stdout);
if(stderr || error) res.status(500).send(stderr || error);
else res.send('frontend deployed successfully !!! '+ stdout);
});
})
app.listen(port, () => console.log(`Example app listening on port ${port}!`))
И файл frontend.bat находится здесь:
cd C:\Users\yytcadm\Downloads\Front_End
for /f "tokens=5" %%a in ('netstat -aon ^| find ":3000" ^| find "LISTENING"') do taskkill /f /pid %%a
npm install && npm start
Когда конвейер начинает работать, задание не выполняется и выдает ошибку как:
Код успешно выполняется на компьютере, но конвейерное задание не выполняется и выдает эту ошибку. Что мне делать? Пожалуйста, помогите мне! Спасибо !!!