Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gitlab 本地运行程序文件存储在哪里?_Gitlab_Gitlab Ci_Gitlab Ci Runner - Fatal编程技术网

Gitlab 本地运行程序文件存储在哪里?

Gitlab 本地运行程序文件存储在哪里?,gitlab,gitlab-ci,gitlab-ci-runner,Gitlab,Gitlab Ci,Gitlab Ci Runner,我将gitlab.com与我自己的跑步者一起使用,他们在我的服务器上执行 在shell上下文中执行.gitlab-ci.yml中的脚本项时,文件在哪里创建?例如,下面的示例在shell runner上运行 script: - date > hello.txt 我应该在哪里查找hello.txt 这个问题的具体原因是为了清理:我想删除我的跑步者创建的旧目录,并用临时数据填充。这里有很多选项,所以我只添加,这取决于具体情况 如果您有一个标准的Linux shell runner,没有任何

我将gitlab.com与我自己的跑步者一起使用,他们在我的服务器上执行

在shell上下文中执行.gitlab-ci.yml中的脚本项时,文件在哪里创建?例如,下面的示例在shell runner上运行

script:
  - date > hello.txt
我应该在哪里查找hello.txt


这个问题的具体原因是为了清理:我想删除我的跑步者创建的旧目录,并用临时数据填充。

这里有很多选项,所以我只添加,这取决于具体情况

如果您有一个标准的Linux shell runner,没有任何额外的配置,并且按照GitLab建议的方式安装,那么您将有一个大致如下的路径:

/home/gitlab-runner/builds/$RUNNER_TOKEN_KEY/$CONCURRENT_ID/$NAMESPACE/$PROJECT_NAME
可以使用runner config.toml中的选项更改此目录

要添加的另一点是,在脚本中,还可以回显位置文件,并指定在运行程序上保存文件的位置,例如:

script:
  - echo ${CI_PROJECT_DIR}
  - date > ${CI_PROJECT_DIR}/hello.txt
有关更多选项,请参阅

默认情况下,所有作业都在这个${CI_PROJECT_DIR}中,因此当您启动脚本部分时,通常可以安全地假设您在这个目录中,而不必执行cd${CI_PROJECT_DIR}

您也很可能希望所有作业都在这个${CI_PROJECT_DIR}中完成,因为GitLab运行程序在新作业启动时也会处理清理。默认情况下,运行程序在签出存储库后执行git clean-ffdx,因此在本例中,将在继续执行作业之前删除hello.txt文件。有关更多信息,请参阅

如果shell上的运行程序共享同一个构建目录,请小心


这里有相当多的选项,所以我只想补充一下,这要视情况而定

如果您有一个标准的Linux shell runner,没有任何额外的配置,并且按照GitLab建议的方式安装,那么您将有一个大致如下的路径:

/home/gitlab-runner/builds/$RUNNER_TOKEN_KEY/$CONCURRENT_ID/$NAMESPACE/$PROJECT_NAME
可以使用runner config.toml中的选项更改此目录

要添加的另一点是,在脚本中,还可以回显位置文件,并指定在运行程序上保存文件的位置,例如:

script:
  - echo ${CI_PROJECT_DIR}
  - date > ${CI_PROJECT_DIR}/hello.txt
有关更多选项,请参阅

默认情况下,所有作业都在这个${CI_PROJECT_DIR}中,因此当您启动脚本部分时,通常可以安全地假设您在这个目录中,而不必执行cd${CI_PROJECT_DIR}

您也很可能希望所有作业都在这个${CI_PROJECT_DIR}中完成,因为GitLab运行程序在新作业启动时也会处理清理。默认情况下,运行程序在签出存储库后执行git clean-ffdx,因此在本例中,将在继续执行作业之前删除hello.txt文件。有关更多信息,请参阅

如果shell上的运行程序共享同一个构建目录,请小心


检查~gitlab runner/builds目录。应该有一份回购协议的副本,在这份副本中查找.gitlab ci.yml的位置。@DmitriChubarov:谢谢。这很有趣,因为我在那里看到了3个子文件夹,其中2个子文件夹的名称对应于gitlab分配给我的两个跑步者的名称。今天使用了第三个目录,我今天更新了代码。我想知道它是从哪里来的,里面只有我的代码,这不是黑客之类的。如果您不介意将您的评论转换为答案,我很乐意接受。请检查~gitlab runner/builds目录。应该有一份回购协议的副本,在这份副本中查找.gitlab ci.yml的位置。@DmitriChubarov:谢谢。这很有趣,因为我在那里看到了3个子文件夹,其中2个子文件夹的名称对应于gitlab分配给我的两个跑步者的名称。今天使用了第三个目录,我今天更新了代码。我想知道它是从哪里来的,里面只有我的代码,这不是黑客之类的。如果你不介意把你的评论变成一个答案,我很乐意接受。谢谢你的详细回答。我找到了文件。逐字复制前面的注释:这很有趣,因为我在那里看到3个子文件夹,其中2个子文件夹的名称对应于gitlab为我的两个跑步者分配的名称。今天使用了第三个目录,我今天更新了代码。我想知道它是从哪里来的,里面只有我的代码,这不是黑客之类的。谢谢你的详细回答。我找到了文件。逐字复制前面的注释:这很有趣,因为我在那里看到3个子文件夹,其中2个子文件夹的名称对应于gitlab为我的两个跑步者分配的名称。今天使用了第三个目录,我今天更新了代码。我想知道它是从哪里来的,里面只有我的代码,这不是黑客之类的。