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

2022-01-30 10:40:57 +08:00
 stille

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

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

runner-exec 无法 clone private 仓库

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

runner-ssh

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

2900 次点击
所在节点    DevOps
8 条回复
caotian
2022-01-30 11:44:47 +08:00
runner 启动的时候有几个参数控制日志显示的,默认是比较简单的日志,把他们全部打开,可以看到它跟服务端通信,以及运行的报错等详细信息。
joesonw
2022-01-30 11:54:40 +08:00
那么大几个字,could not read username 。盲猜是因为跑在宿主机上的原因,git credentials 没下发。可以在 repo url 里加上用户名密码试试。
stille
2022-01-30 12:04:07 +08:00
@joesonw 按道理是通过 drone 和 gitea 关联的 token 来拉取私有仓库,毕竟 ruuner-docker 就没这个问题,两者都是容器起的,变量配置都是一样
stille
2022-01-30 12:10:09 +08:00
@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
```
stille
2022-01-30 12:16:49 +08:00
@caotian runner-exec 日志

被 v2 提示:
请不要在每一个回复中都包括外链,这看起来像是在 spamming

日志截图
https://pic.ioiox.com/images/2022/01/30/8e2a7368671d4554e8a6bd0fc22ca9ea.jpg
jh163888
2022-01-30 15:00:41 +08:00
不懂帮顶🤣
defunct9
2022-01-31 08:00:00 +08:00
开 ssh ,让我上去看看
IvanLi127
2022-01-31 10:13:53 +08:00
用是用 就是没遇到类似问题。clone 仓库的话,你要不试下 ssh 的那种,不要用 http 的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/831373

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX