acmesh-official / acme.sh

A pure Unix shell script implementing ACME client protocol
https://acme.sh
GNU General Public License v3.0
38.9k stars 4.93k forks source link

Please reconsider about huaweicloud api #2884

Closed eastonman closed 3 years ago

eastonman commented 4 years ago

@Neilpang 华为云有国际版 1.免费,也不需要绑定付款方式 2.无需任何实名认证,仅需验证邮箱 希望能够重新考虑 谢谢!

Neilpang commented 4 years ago

过几天, 我试试.

eastonman commented 3 years ago

@Neilpang 有考虑华为云国际的dnsapi吗。 欢迎Pull Request吗?

Neilpang commented 3 years ago

目前没有考虑, 因为我没有账号. 如果你有PR, 当然欢迎了.

eastonman commented 3 years ago

提交了PR #3262 CI有一个fail是我没法解决的 似乎所有dnsapi都fail

eastonman commented 3 years ago

还没有写Wiki,如果merge以后再写吧

Neilpang commented 3 years ago

你只是没有尝试去解决而已. 仔细阅读出错信息. https://github.com/acmesh-official/acme.sh/runs/1438479543?check_suite_focus=true

Neilpang commented 3 years ago

请先参照这个完成里面的所有步骤 https://github.com/acmesh-official/acme.sh/wiki/DNS-API-Dev-Guide

否则不会merge

eastonman commented 3 years ago

https://github.com/eastonman/acme.sh/actions 已经打开actions,并添加secrets 但在两个repo都无法运行DNS workflow

eastonman commented 3 years ago

抱歉,secrets配置有误。 现在action中调用huaweicloud api 400, 我再看一下什么问题

eastonman commented 3 years ago

几乎通过所有测试了 https://github.com/eastonman/acme.sh/runs/1442023477 最后一项由于华为云的问题fail了 华为云的api不是非常稳定,连续跑这么多测试全部通过的概率不是很高 我不是很想再继续re-run all jobs了

Neilpang commented 3 years ago

你这是在 solaris 上有个错误.

[Monday, November 23, 2020 at 12:40:58 PM UTC] {"links":{"self":"https://dns.myhuaweicloud.com/v2/zones/8aace3ba74d032700175de637fd95237/recordsets?name=_acme-challenge.***"},"recordsets":[],"metadata":{"total_count":0}}
Label too long: :a;N;$!ba;s/\n/ /g
grep: illegal option -- o
Usage: grep [-c|-l|-q] -bhinsvw pattern file . . .
[Monday, November 23, 2020 at 12:40:58 PM UTC] 
[Monday, November 23, 2020 at 12:40:58 PM UTC] GET

你这个 sed 太复杂了. solaris 不支持.

sed ':a;N;$!ba;s/\n/ /g' 

尝试用别的方法替代

Neilpang commented 3 years ago

还有 不要使用 grep -o, 这在solaris 上也不支持.

grep -o '"records":[^]]*'

使用 _egrep_o() 函数代替.

eastonman commented 3 years ago

哦,我还以为是api鉴权问题。 我再修改一下。

eastonman commented 3 years ago

这几个简单工具处理json实在是非常棘手,有什么比较好的方法推荐吗

Neilpang commented 3 years ago

有的系统上就是很简陋, 工具不全. 开发者痛苦一些, 用户就会轻松一些.

Guide 里面有介绍. 也可以参考目前的所有脚本中的写法. 里面有一些技巧.

如果你拿不准, 也可以把 原始的 response 和 你想要 grep 出来的东西贴出来. 或许我可以帮你.

Neilpang commented 3 years ago

如果你想用 一个命令, 现在 repo 中搜一下, 有没有其他人用过.

eastonman commented 3 years ago

此处是用于提取已存在的记录,在grep提取目标字符串之前将换行符全部去掉。 我找到了一个跨平台兼容性较好的写法sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/ /g',应当能解决此问题

eastonman commented 3 years ago

我可以将此问题记录到DNS API Dev Guide中吗? 关于Solaris平台上 sed label的问题。

Neilpang commented 3 years ago

如果能解决问题的话, 当然可以.

eastonman commented 3 years ago

ci正在跑一个小时多的测试,我看一下能否解决这个问题吧。 有人在StackOverFlow提及Solaris 的sed 需要将':a'这样的label与其他的命令分开。

Neilpang commented 3 years ago

如果你需要一个 solaris 的 shell 环境来测试, 可以用这个: https://github.com/vmactions/shell-solaris