我为我的项目设置了gitlab-ci,并插入了以下yml脚本:
我为我的项目设置了gitlab-ci,并插入了以下yml脚本:
---
buildJob:
only:
- master
script:
- "sh /var/www/gitTestFolder/scripts/build.sh"
stage: build
tags:
- ipsenh
deployJob:
only:
- master
script:
- "sh /var/www/gitTestFolder/scripts/deploy.sh"
stage: deploy
tags:
- ipsenh
testJob:
only:
- master
script:
- "sh /var/www/gitTestFolder/scripts/test.sh"
stage: test
tags:
- ipsenh
stages:
- build
- test
- deploy
这个脚本在我的GitLab服务器上运行,显示应该执行脚本的终端(/var/www..../script.sh)
。
以下是我其中一份工作的结果:
gitlab-ci-multi-runner 0.6.2 (3227f0a)
Using Shell executor...
Running on ipsenh...
Cloning repository...
Cloning into 'builds/05d0538a/0/root/ipsenh'...
Checking out 4288f64a as master...
$ sh /var/www/gitTestFolder/scripts/deploy.sh
Build succeeded.
脚本从未执行。如果我在本地服务器上执行此脚本,则会创建一个具有简单文本输出的文件。但是,通过这个作业它从未创建文件。
脚本内容:
echo "job executed" >> job.log
我是否设置错误?显然,不是语法问题,权限也没有问题,否则我将收到错误。
这可能是什么原因?谢谢!
job.log
的文件。如果你先使用cd
命令改变了目录,那么当前目录就是你切换后的目录;如果没有使用cd
命令,则默认为当前所在的目录。因此,你可能没有在正确的位置查找该文件。请在输出时使用完整路径。 - Etan Reisner