尝试使用 github-actions 创建运行器时不得使用 sudo 运行

尝试使用 github-actions 创建运行器时不得使用 sudo 运行

嗨,我是 github 操作的新手,我正在尝试使用 Github 操作创建 CICD 管道。我正在使用 digital ocean droplet UBUNTU 20.04 作为我的服务器,我正在尝试创建一个运行器,如 ->settings->actions 中所述

当我写下以下命令时 ./config.sh --url https://github.com/basobaasnepal/BasobaasWeb --token DFGFSDF234sf3fg45hd

我收到此信息:不能使用 sudo 运行

我尝试将 root 用户更改为非 root 用户,但没有成功。我也尝试过,export {AGENT_ALLOW_RUNASROOT="1"}但也没有成功。

答案1

要使用的环境变量是RUNNER_ALLOW_RUNASROOT="1" 您可以:

  • 在运行 config.sh 之前使用以下命令导出它export RUNNER_ALLOW_RUNASROOT="1"
  • 像这样启动 config.sh:RUNNER_ALLOW_RUNASROOT="1" ./config.sh --url...

在开始时config.sh您可以看到以下测试:

user_id=`id -u`
if [ $user_id -eq 0 -a -z "$RUNNER_ALLOW_RUNASROOT" ]; then
    echo "Must not run with sudo"
    exit 1
fi

user_id=`id -u`:获取当前用户的uid,保存到user_id中。
$user_id -eq 0:将其与0进行比较(0是root的uid)。
-a -z "$RUNNER_ALLOW_RUNASROOT"-a -z测试变量是否存在且不为空。

所以在我们的例子中,我们可以这样做RUNNER_ALLOW_RUNASROOT="0",甚至RUNNER_ALLOW_RUNASROOT="cool"可以工作但RUNNER_ALLOW_RUNASROOT=""不起作用。

我很好奇当您尝试以非 root 用户身份运行它时遇到了什么问题?

相关内容