7

有小伙伴用 drone runner 么? 求指教 runner-ssh 和 runner-exec 报错!

 2 years ago
source link: https://www.v2ex.com/t/831373
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

V2EX  ›  DevOps

有小伙伴用 drone runner 么? 求指教 runner-ssh 和 runner-exec 报错!

  stille · 1 小时 54 分钟前 · 127 次点击

根据官方文档,发现最常用的 drone runner 就是 runner-docker,用了几天,也基本上都能满足需求.

在看了下还有 runner-ssh 和 runner-exec 适用于非隔离环境,直接在宿主机执行一些 shell 命令的需求.不过官方也提示风险.于是尝试试了下,发现遇到坑了,Google 上查了很久也没有解决方案.

runner-exec 无法 clone private 仓库

按照官方教程安装到 Linux 上,查看日志正常, .drone.yml 里配置 type: exec 也能正常激活工作流,但是第一步 clone 就提示失败,这个问题只有私有仓库才会出现,但是共有仓库就没问题. 240d8e44baaf36b2f796bfcad5ae8663

runner-ssh

同样按照官方教程起的容器,也配置成功,.drone.yml 里配置 type: ssh 也正常激活工作流,但是直接报错.官方提示需要 openssh 7.9 及以上版本,我在 debian ubuntu 都是 8.4 版本,也不行. 这个错误感觉是整个工作流都无法执行,我尝试在 yml 里 disable clone,这个错误就变成下一步 greet skipped

dca52d6f83eed7b15c21b9fbb8546f62

5 条回复    2022-01-30 12:16:49 +08:00

caotian

caotian      51 分钟前

runner 启动的时候有几个参数控制日志显示的,默认是比较简单的日志,把他们全部打开,可以看到它跟服务端通信,以及运行的报错等详细信息。

joesonw

joesonw      41 分钟前 via iPhone

那么大几个字,could not read username 。盲猜是因为跑在宿主机上的原因,git credentials 没下发。可以在 repo url 里加上用户名密码试试。

stille

stille      31 分钟前

@joesonw 按道理是通过 drone 和 gitea 关联的 token 来拉取私有仓库,毕竟 ruuner-docker 就没这个问题,两者都是容器起的,变量配置都是一样

stille

stille      25 分钟前

@caotian runner-ssh 日志
```
time="2022-01-30T04:07:40Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:07:40Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:07:40Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:07:40Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:08:03Z" level=debug msg="stage received" stage.id=186 stage.name=default stage.number=1 thread=3
time="2022-01-30T04:08:03Z" level=debug msg="stage accepted" stage.id=186 stage.name=default stage.number=1 thread=3
time="2022-01-30T04:08:03Z" level=debug msg="stage details fetched" build.id=186 build.number=39 repo.id=14 repo.name=test repo.namespace=stilleshan stage.id=186 stage.name=default stage.number=1 thread=3
time="2022-01-30T04:08:03Z" level=debug msg="updated stage to running" build.id=186 build.number=39 repo.id=14 repo.name=test repo.namespace=stilleshan stage.id=186 stage.name=default stage.number=1 thread=3
time="2022-01-30T04:08:20Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:08:20Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:08:20Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:08:20Z" level=trace msg="http: no content returned: re-connect and re-try"
time="2022-01-30T04:08:23Z" level=debug msg="updated stage to complete" build.id=186 build.number=39 repo.id=14 repo.name=test repo.namespace=stilleshan stage.id=186 stage.name=default stage.number=1 thread=3
time="2022-01-30T04:08:23Z" level=debug msg="request stage from remote server" thread=3
time="2022-01-30T04:08:23Z" level=trace msg="http: context canceled"
time="2022-01-30T04:08:23Z" level=debug msg="done listening for cancellations" build.id=186 build.number=39 repo.id=14 repo.name=test repo.namespace=stilleshan stage.id=186 stage.name=default stage.number=1 thread=3
```

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK