Compare commits

...

1748 Commits

Author SHA1 Message Date
Zexi Li
97b5bd2006 Merge pull request #6741 from swordqiu/automated-cherry-pick-of-#6740-upstream-release-3.2
Automated cherry pick of #6740: fix: xsky recode using endpoint as accesskey key
2020-06-04 21:40:58 +08:00
Zexi Li
9c100c8a92 Merge pull request #6739 from tb365/automated-cherry-pick-of-#6737-upstream-release-3.2
Automated cherry pick of #6737: ctyun sync host wire fix
2020-06-04 21:39:57 +08:00
Zexi Li
8683501e69 Merge pull request #6745 from wanyaoqi/automated-cherry-pick-of-#6744-upstream-release-3.2
Automated cherry pick of #6744: bind mount local image path to container path
2020-06-04 21:24:14 +08:00
Zexi Li
ac47a29a8c Merge pull request #6748 from wanyaoqi/automated-cherry-pick-of-#6173-upstream-release-3.2
Automated cherry pick of #6173: support custom service url
2020-06-04 21:19:53 +08:00
wanyaoqi
b903a2aecb support custom service url 2020-06-04 20:27:44 +08:00
wanyaoqi
4cebf604ab bind mount local image path to container path 2020-06-04 20:21:14 +08:00
Qiu Jian
5da84f7a51 fix: xsky recode using endpoint as accesskey key 2020-06-04 19:22:54 +08:00
tangbin
4ba3437006 ctyun sync host wire fix 2020-06-04 18:53:45 +08:00
Zexi Li
f7dde179d8 Merge pull request #6729 from ioito/automated-cherry-pick-of-#6728-upstream-release-3.2
Automated cherry pick of #6728: fix: 避免openstack session==nil
2020-06-04 15:04:29 +08:00
Qu Xuan
7d505c6dc1 fix: 避免openstack session==nil 2020-06-04 11:24:13 +08:00
Zexi Li
bdbb08c15d Merge pull request #6723 from ioito/automated-cherry-pick-of-#6722-upstream-release-3.2
Automated cherry pick of #6722: fix: 添加region翻译
2020-06-04 10:28:59 +08:00
Zexi Li
b24ec284f7 Merge pull request #6727 from swordqiu/automated-cherry-pick-of-#6726-upstream-release-3.2
Automated cherry pick of #6726: fix: keystone event list fail to find user
2020-06-04 10:26:57 +08:00
Qiu Jian
635827794d fix: keystone event list fail to find user 2020-06-04 08:01:15 +08:00
Qu Xuan
c0ad0c495a fix: 添加region翻译 2020-06-03 20:40:10 +08:00
Zexi Li
728494b9e3 Merge pull request #6721 from ioito/automated-cherry-pick-of-#6720-upstream-release-3.2
Automated cherry pick of #6720: fix: 修复gcp object编码问题
2020-06-03 20:07:46 +08:00
Zexi Li
0585a83a0c Merge pull request #6712 from ioito/automated-cherry-pick-of-#6711-upstream-release-3.2
Automated cherry pick of #6711: fix: 移除默认调度策略
2020-06-03 17:27:30 +08:00
Zexi Li
60b11e8f50 Merge pull request #6719 from tb365/automated-cherry-pick-of-#6696-upstream-release-3.2
Automated cherry pick of #6696: add-enterprise-info-update-climc
2020-06-03 17:26:25 +08:00
Zexi Li
7ec7598037 Merge pull request #6714 from wanyaoqi/automated-cherry-pick-of-#6713-upstream-release-3.2
Automated cherry pick of #6713: isolated device manager:
2020-06-03 17:25:12 +08:00
Qu Xuan
fe8c2c6d51 fix: 修复gcp object编码问题 2020-06-03 16:36:42 +08:00
tangbin
2fb4254d83 add-enterprise-info-update-climc 2020-06-03 16:27:10 +08:00
wanyaoqi
cbbbd29830 isolated device manager:
- fix find boot_vga got No such file or dirtory
2020-06-03 15:50:03 +08:00
Qu Xuan
f70ca13563 fix: 移除默认调度策略 2020-06-03 15:23:08 +08:00
Zexi Li
9f4a4028b8 Merge pull request #6709 from ioito/automated-cherry-pick-of-#6708-upstream-release-3.2
Automated cherry pick of #6708: fix: 转换gcp错误
2020-06-03 13:03:25 +08:00
Qu Xuan
7bbc8afc51 fix: 转换gcp错误 2020-06-03 11:57:28 +08:00
Zexi Li
afdc49d0b5 Merge pull request #6700 from rainzm/automated-cherry-pick-of-#6699-upstream-release-3.2
Automated cherry pick of #6699: feat: Logo and copyright in verify email are same with these in company info
2020-06-03 10:23:57 +08:00
Zexi Li
bea0d7b978 Merge pull request #6703 from ioito/automated-cherry-pick-of-#6702-upstream-release-3.2
Automated cherry pick of #6702: fix: gcp默认创建允许所有地址访问的用户
2020-06-03 10:17:12 +08:00
Zexi Li
562e15c97d Merge pull request #6705 from ioito/automated-cherry-pick-of-#6704-upstream-release-3.2
Automated cherry pick of #6704: fix: 允许gcp创建vpc时不指定cidr
2020-06-03 10:16:50 +08:00
Zexi Li
7211580cfe Merge pull request #6707 from ioito/automated-cherry-pick-of-#6706-upstream-release-3.2
Automated cherry pick of #6706: fix: 避免越过tenantcache过期检查
2020-06-03 10:16:08 +08:00
Qu Xuan
7451ae9f90 fix: 避免越过tenantcache过期检查 2020-06-02 22:18:43 +08:00
Qu Xuan
766d5cf803 fix: 允许gcp创建vpc时不指定cidr 2020-06-02 22:03:17 +08:00
Qu Xuan
040a90587b fix: gcp默认创建允许所有地址访问的用户 2020-06-02 21:47:02 +08:00
Zexi Li
d3f8c71050 Merge pull request #6698 from swordqiu/automated-cherry-pick-of-#6697-upstream-release-3.2
Automated cherry pick of #6697: fix: apigateway expose esxiagent service avaiability
2020-06-02 21:20:24 +08:00
rainzm
3630164960 feat: Logo and copyright in verify email are same with these in company info 2020-06-02 20:55:56 +08:00
Qiu Jian
38b8e24eb0 fix: apigateway expose esxiagent service avaiability 2020-06-02 20:32:30 +08:00
yunion-ci-robot
847c296b64 Merge pull request #6687 from ioito/automated-cherry-pick-of-#6686-upstream-release-3.2
Automated cherry pick of #6686: fix: 避免锁超时
2020-06-02 13:59:44 +08:00
Qu Xuan
2521ec8f91 fix: 避免锁超时 2020-06-02 11:14:33 +08:00
Zexi Li
15f0e8c72c Merge pull request #6681 from ioito/automated-cherry-pick-of-#6680-upstream-release-3.2
Automated cherry pick of #6680: fix: sync s3 bucket status
2020-06-02 10:05:04 +08:00
Zexi Li
6013c0e0d8 Merge pull request #6685 from ioito/automated-cherry-pick-of-#6684-upstream-release-3.2
Automated cherry pick of #6684: fix: gcp path escape for object
2020-06-02 10:04:40 +08:00
Zexi Li
f072ef65fd Merge pull request #6667 from ioito/automated-cherry-pick-of-#6666-upstream-release-3.2
Automated cherry pick of #6666: fix: 安全组规则返回项目id信息
2020-06-02 10:03:24 +08:00
Zexi Li
b3b6a0cf59 Merge pull request #6665 from zhaoxiangchun/automated-cherry-pick-of-#6664-upstream-release-3.2
Automated cherry pick of #6664: 在优化建议资源列表中增加费用信息
2020-06-02 10:02:37 +08:00
Zexi Li
c47f6a77b9 Merge pull request #6676 from ioito/automated-cherry-pick-of-#6675-upstream-release-3.2
Automated cherry pick of #6675: fix: add us-west4 for google region
2020-06-02 09:59:50 +08:00
Zexi Li
b1704b0039 Merge pull request #6671 from wanyaoqi/automated-cherry-pick-of-#6670-upstream-release-3.2
Automated cherry pick of #6670: get snapshots order by created at asc
2020-06-02 09:58:31 +08:00
Qu Xuan
a98ce67684 fix: gcp path escape for object 2020-06-01 19:58:44 +08:00
Qu Xuan
fcc8db69a8 fix: sync s3 bucket status 2020-06-01 18:56:04 +08:00
Qu Xuan
43748db2e2 fix: add us-west4 for google region 2020-06-01 18:26:51 +08:00
wanyaoqi
41673a54c0 get snapshots order by created at asc 2020-06-01 15:09:15 +08:00
Qu Xuan
bd63447bae fix: 安全组规则返回项目id信息 2020-05-29 20:49:52 +08:00
zhaoxiangchun
5ca2c6fcdf 在优化建议资源列表中增加费用信息
另外,在资源进行处理时记录对应的status信息
2020-05-29 19:45:47 +08:00
Zexi Li
f330d01791 Merge pull request #6662 from rainzm/automated-cherry-pick-of-#6661-upstream-release-3.2
Automated cherry pick of #6661: fix(notify): Remove default mobile template
2020-05-29 19:32:24 +08:00
Zexi Li
8fb744be58 Merge pull request #6659 from ioito/automated-cherry-pick-of-#6658-upstream-release-3.2
Automated cherry pick of #6658: fix: byte size fix
2020-05-29 19:14:33 +08:00
rainzm
ec2087f3f0 fix(notify): Remove default mobile template 2020-05-29 18:50:11 +08:00
Qu Xuan
f67011b143 fix: byte size fix 2020-05-29 17:00:01 +08:00
Zexi Li
bb0b831b72 Merge pull request #6649 from swordqiu/automated-cherry-pick-of-#6636-upstream-release-3.2
Automated cherry pick of #6636: fix: ignore match weights when searching matched policysets
2020-05-29 14:20:29 +08:00
Zexi Li
74a1ccec9d Merge pull request #6651 from wanyaoqi/automated-cherry-pick-of-#6650-upstream-release-3.2
Automated cherry pick of #6650: fix migrate with multi local storage
2020-05-29 14:18:54 +08:00
wanyaoqi
c74b41ef1f fix migrate with multi local storage 2020-05-29 11:52:28 +08:00
Qiu Jian
54d3173c15 fix: ignore match weights when searching matched policysets 2020-05-29 11:20:17 +08:00
yunion-ci-robot
dbee0d0eef Merge pull request #6644 from rainzm/automated-cherry-pick-of-#6643-upstream-release-3.2
Automated cherry pick of #6643: feat(notify): Support 'socpe:domain' when list contacts
2020-05-28 19:11:01 +08:00
yunion-ci-robot
6e22bea1cc Merge pull request #6634 from swordqiu/automated-cherry-pick-of-#6631-upstream-release-3.2
Automated cherry pick of #6631: fix: sysadmin cannot convert host in non-default domain
2020-05-28 19:04:01 +08:00
yunion-ci-robot
6fa35f9c7c Merge pull request #6617 from ioito/automated-cherry-pick-of-#6592-upstream-release-3.2
Automated cherry pick of #6592: fix: 通用指定项目到云上创建资源
2020-05-28 19:02:01 +08:00
yunion-ci-robot
62b4fd8240 Merge pull request #6556 from zhaoxiangchun/automated-cherry-pick-of-#6544-upstream-release-3.2
Automated cherry pick of #6544: 类型是onecloud的notifier增加webconsole的alert
2020-05-28 18:59:00 +08:00
rainzm
c3d0ff9e6f feat(notify): Support 'socpe:domain' when list contacts
This is a temporary solution.
2020-05-28 18:57:10 +08:00
Zexi Li
f727fb6d6d Merge pull request #6633 from zhaoxiangchun/automated-cherry-pick-of-#6632-upstream-release-3.2
Automated cherry pick of #6632: 修复优化建议资源列表cloudenv过滤失效的问题
2020-05-28 18:07:08 +08:00
Zexi Li
3198cccd6d Merge pull request #6638 from ioito/automated-cherry-pick-of-#6637-upstream-release-3.2
Automated cherry pick of #6637: fix: 避免因磁盘数量导致创建机器失败
2020-05-28 17:13:55 +08:00
Qu Xuan
62607fb9d2 fix: tmp update 2020-05-28 14:39:42 +08:00
Qu Xuan
11cae0b675 fix: 避免因磁盘数量导致创建机器失败 2020-05-28 12:08:32 +08:00
Qiu Jian
f32538d92d fix: sysadmin cannot convert host in non-default domain 2020-05-27 22:34:08 +08:00
zhaoxiangchun
0afe110088 修复优化建议资源列表cloudenv过滤失效的问题 2020-05-27 22:14:30 +08:00
Zexi Li
158f70613d Merge pull request #6623 from wanyaoqi/automated-cherry-pick-of-#6621-upstream-release-3.2
Automated cherry pick of #6621: host storage misc fix:
2020-05-27 18:04:14 +08:00
Zexi Li
04ee98c6dc Merge pull request #6627 from swordqiu/automated-cherry-pick-of-#6618-upstream-release-3.2
Automated cherry pick of #6618: fix: domain user no previleges to convert host
2020-05-27 18:03:54 +08:00
Zexi Li
913879c95f Merge pull request #6612 from wanyaoqi/automated-cherry-pick-of-#6609-upstream-release-3.2
Automated cherry pick of #6609: fix host name validator
2020-05-27 18:01:21 +08:00
Zexi Li
baa575953b Merge pull request #6581 from yousong/automated-cherry-pick-of-#6580-upstream-release-3.2
Automated cherry pick of #6580: hostman: deprecate k8s_cluster_cidr
2020-05-27 18:00:51 +08:00
Zexi Li
2b62f8d8e2 Merge pull request #6606 from ioito/automated-cherry-pick-of-#6605-upstream-release-3.2
Automated cherry pick of #6605: fix: 移除azure policy sync部分
2020-05-27 17:56:31 +08:00
Zexi Li
f1683f3d03 Merge pull request #6614 from swordqiu/automated-cherry-pick-of-#6613-upstream-release-3.2
Automated cherry pick of #6613: fix: scheduler test ignore quota limit
2020-05-27 17:54:54 +08:00
Zexi Li
eb4780fd78 Merge pull request #6620 from ioito/automated-cherry-pick-of-#6619-upstream-release-3.2
Automated cherry pick of #6619: fix: 避免azure卸载磁盘失败
2020-05-27 17:51:57 +08:00
wanyaoqi
03592086a4 host storage misc fix:
- add accessible timeout
- add force detach host storage
2020-05-27 15:57:07 +08:00
Qu Xuan
abd5c9a03a fix: 避免azure卸载磁盘失败 2020-05-27 15:55:21 +08:00
Qiu Jian
96ea180573 fix: domain user no previleges to convert host 2020-05-27 15:49:34 +08:00
Qu Xuan
9208a70518 fix: 通用指定项目到云上创建资源 2020-05-27 15:31:54 +08:00
Qiu Jian
8feafc1bf4 fix: scheduler test ignore quota limit 2020-05-27 14:48:08 +08:00
Zexi Li
7f7ce94c57 Merge pull request #6608 from yousong/automated-cherry-pick-of-#6607-upstream-release-3.2
Automated cherry pick of #6607: vpcagent: apihelper: use its own options
2020-05-27 14:36:10 +08:00
Zexi Li
0b18d55068 Merge pull request #6590 from swordqiu/automated-cherry-pick-of-#6589-upstream-release-3.2
Automated cherry pick of #6589: fix: retry ipmi probe if redfish-api-probe fails
2020-05-27 14:35:11 +08:00
wanyaoqi
6a5f97f626 fix host name validator 2020-05-26 23:17:52 +08:00
Zexi Li
2e8749eb97 Merge pull request #6604 from ioito/automated-cherry-pick-of-#6603-upstream-release-3.2
Automated cherry pick of #6603: fix: sku status filter
2020-05-26 18:23:51 +08:00
Yousong Zhou
7298c4bf67 hostman: options: remove k8s_cluster_cidr
Remove instead of deprecation.  No user of this option anymore
2020-05-26 17:56:53 +08:00
Qu Xuan
920db3bb60 fix: 移除azure policy sync部分 2020-05-26 17:55:56 +08:00
Yousong Zhou
a91bef28c4 hostman: options: fix default value spec 2020-05-26 17:54:22 +08:00
Yousong Zhou
94d14b1863 vpcagent: models: separate Copy() and CopyJoined() 2020-05-26 17:54:21 +08:00
Yousong Zhou
dd288441b1 vpcagent: apihelper: use CopyJoined() 2020-05-26 17:54:21 +08:00
Yousong Zhou
f86cdbbdad vpcagent: models: add CopyJoined() 2020-05-26 17:54:21 +08:00
Yousong Zhou
c7468440f0 vpcagent: remove unused code 2020-05-26 17:54:21 +08:00
Yousong Zhou
16c4663e7b vpcagent: apihelper: use its own options 2020-05-26 17:54:21 +08:00
Zexi Li
7b5053e77f Merge pull request #6599 from wanyaoqi/automated-cherry-pick-of-#6598-upstream-release-3.2
Automated cherry pick of #6598: fix remotefile fetch image propertites
2020-05-26 17:15:20 +08:00
Zexi Li
13b43caf91 Merge pull request #6595 from ioito/automated-cherry-pick-of-#6594-upstream-release-3.2
Automated cherry pick of #6594: fix: bucket信息修正
2020-05-26 17:14:06 +08:00
Qu Xuan
8201433166 fix: sku status filter 2020-05-26 17:10:02 +08:00
wanyaoqi
fd4830859e fix remotefile fetch image propertites 2020-05-26 15:54:09 +08:00
Qu Xuan
e775515b59 fix: bucket信息修正 2020-05-26 15:09:58 +08:00
Zexi Li
752f9763c1 Merge pull request #6588 from swordqiu/automated-cherry-pick-of-#6587-upstream-release-3.2
Automated cherry pick of #6587: fix: identity_provider details missing fields
2020-05-25 18:34:20 +08:00
Zexi Li
015d7a213d Merge pull request #6583 from zexi/hotfix/k8s-repo-privilege
fix k8s repo privilege
2020-05-25 18:28:53 +08:00
Qiu Jian
216d6cbc89 fix: retry ipmi probe if redfish-api-probe fails 2020-05-25 17:55:08 +08:00
Qiu Jian
01d7c16f84 fix: identity_provider details missing fields 2020-05-25 17:45:22 +08:00
Zexi Li
95db384c6c fix k8s repo privilege 2020-05-25 16:51:57 +08:00
yunion-ci-robot
383ead3988 Merge pull request #6579 from zexi/automated-cherry-pick-of-#6578-upstream-release-3.2
Automated cherry pick of #6578: baremetal: fix forget init lockman pkg
2020-05-25 12:49:55 +08:00
Zexi Li
99cf71401c Merge pull request #6577 from zhaoxiangchun/automated-cherry-pick-of-#6573-upstream-release-3.2
Automated cherry pick of #6573: zstack宿主机监控中增加参数信息进行Unmarshal
2020-05-25 12:18:15 +08:00
Zexi Li
bffdf0cd64 baremetal: fix forget init lockman pkg 2020-05-25 12:17:26 +08:00
zhaoxiangchun
21888984b9 zstack宿主机监控中增加参数信息进行Unmarshal 2020-05-24 17:20:08 +08:00
Zexi Li
a85171ddf1 Merge pull request #6568 from swordqiu/automated-cherry-pick-of-#6567-upstream-release-3.2
Automated cherry pick of #6567: fix: default policy not effective
2020-05-22 22:48:21 +08:00
Zexi Li
3bd9c756db Merge pull request #6566 from rainzm/automated-cherry-pick-of-#6565-upstream-release-3.2
Automated cherry pick of #6565: fix: Support filtering notification with contactType
2020-05-22 22:47:08 +08:00
Zexi Li
e117dd46ed Merge pull request #6559 from ioito/automated-cherry-pick-of-#6558-upstream-release-3.2
Automated cherry pick of #6558: fix: 避免openstack以镜像做系统盘创建失败
2020-05-22 22:45:20 +08:00
Qiu Jian
8d6911a8cb fix: default policy not effective 2020-05-22 22:36:33 +08:00
rainzm
c303d8eafd feat: Supports disabling of feishu and dingtalk notification 2020-05-22 20:54:04 +08:00
rainzm
841224b402 fix: Support filtering notification with contactType 2020-05-22 20:54:04 +08:00
Qu Xuan
e1238af669 fix: 避免openstack以镜像做系统盘创建失败 2020-05-22 20:16:54 +08:00
zhaoxiangchun
909e92040c 类型是onecloud的notifier增加webconsole的alert 2020-05-22 20:04:22 +08:00
Zexi Li
3908877d3b Merge pull request #6547 from ioito/automated-cherry-pick-of-#6534-upstream-release-3.2
Automated cherry pick of #6534: fix: 避免azure uefi重装系统失败
2020-05-22 19:39:09 +08:00
Zexi Li
b8c287b1ad Merge pull request #6546 from rainzm/automated-cherry-pick-of-#6545-upstream-release-3.2
Automated cherry pick of #6545: Fix the problem of field duplication when exporting fields
2020-05-22 19:34:58 +08:00
Zexi Li
8b67811739 Merge pull request #6550 from ioito/automated-cherry-pick-of-#6549-upstream-release-3.2
Automated cherry pick of #6549: fix: 返回项目信息
2020-05-22 19:33:56 +08:00
Zexi Li
cc9e94dbbe Merge pull request #6552 from swordqiu/automated-cherry-pick-of-#6551-upstream-release-3.2
Automated cherry pick of #6551: fix: empty matched policies list for roles
2020-05-22 19:32:18 +08:00
Qiu Jian
1afbe0e44d fix: empty matched policies list for roles 2020-05-22 18:50:18 +08:00
Qu Xuan
6ba2ddf0d7 fix: 返回项目信息 2020-05-22 17:32:24 +08:00
Qu Xuan
d52062137c fix: 加入Azure套餐和镜像的检查 2020-05-22 16:12:52 +08:00
Qu Xuan
cc1e19b025 fix: 避免azure uefi重装系统失败 2020-05-22 16:12:52 +08:00
rainzm
71a7922ca0 Fix the problem of field duplication when exporting fields 2020-05-22 15:54:11 +08:00
Zexi Li
699fa4c458 Merge pull request #6541 from ioito/automated-cherry-pick-of-#6540-upstream-release-3.2
Automated cherry pick of #6540: fix: 避免因io问题导致同步镜像列表为空
2020-05-22 14:43:44 +08:00
Qu Xuan
c8652e7997 fix: 避免因io问题导致同步镜像列表为空 2020-05-22 13:47:09 +08:00
Zexi Li
37f30aca20 Merge pull request #6537 from ioito/automated-cherry-pick-of-#6530-upstream-release-3.2
Automated cherry pick of #6530: fix: aliyun rds backup create fix
2020-05-22 12:36:43 +08:00
Qu Xuan
793a02598a fix: aliyun rds backup create fix 2020-05-22 10:31:15 +08:00
Zexi Li
ff4c3616cf Merge pull request #6512 from ioito/automated-cherry-pick-of-#6511-upstream-release-3.2
Automated cherry pick of #6511: fix: 避免忽略本地allow any云上deny any安全组规则同步
2020-05-22 10:26:59 +08:00
Zexi Li
d282ea5480 Merge pull request #6532 from ioito/automated-cherry-pick-of-#6531-upstream-release-3.2
Automated cherry pick of #6531: fix: gcp bucket文件夹默认设为private
2020-05-22 10:26:06 +08:00
Zexi Li
1d516505e3 Merge pull request #6526 from tb365/automated-cherry-pick-of-#6525-upstream-release-3.2
Automated cherry pick of #6525: aws lbbg cache bugfix
2020-05-22 10:24:45 +08:00
Zexi Li
f3158a09c9 Merge pull request #6510 from wanyaoqi/automated-cherry-pick-of-#6509-upstream-release-3.2
Automated cherry pick of #6509: fix list disk attachable servers
2020-05-22 10:20:31 +08:00
Zexi Li
db4e94d455 Merge pull request #6536 from swordqiu/automated-cherry-pick-of-#6535-upstream-release-3.2
Automated cherry pick of #6535: fix: usage for schetag not accurate
2020-05-22 10:19:27 +08:00
Zexi Li
4d547c5d84 Merge pull request #6529 from ioito/automated-cherry-pick-of-#6528-upstream-release-3.2
Automated cherry pick of #6528: fix: 避免regional network-list --zone导致返回结果为空
2020-05-22 10:18:06 +08:00
Zexi Li
07359651d5 Merge pull request #6519 from swordqiu/automated-cherry-pick-of-#6516-upstream-release-3.2
Automated cherry pick of #6516: fix: system privileges user cannot access system console
2020-05-22 10:15:15 +08:00
yunion-ci-robot
ebf2e84de6 Merge pull request #6506 from ioito/automated-cherry-pick-of-#6505-upstream-release-3.2
Automated cherry pick of #6505: fix: 上传镜像为转换列表之外时,subformat状态异常
2020-05-21 23:09:53 +08:00
Qiu Jian
c9998c2176 fix: usage for schetag not accurate 2020-05-21 22:37:57 +08:00
Qu Xuan
95ded99428 fix: gcp bucket文件夹默认设为private 2020-05-21 20:54:03 +08:00
Qu Xuan
9cdd63299d fix: 避免regional network-list --zone导致返回结果为空 2020-05-21 20:15:47 +08:00
tangbin
e2db897856 aws lbbg cache bugfix 2020-05-21 19:08:23 +08:00
Qiu Jian
41db54737e fix: system privileges user cannot access system console 2020-05-21 18:44:03 +08:00
Qu Xuan
d567916e06 fix: 避免忽略本地allow any云上deny any安全组规则同步 2020-05-21 18:29:54 +08:00
wanyaoqi
60107e5dd1 fix list disk attachable servers 2020-05-21 18:02:39 +08:00
Qu Xuan
ab72632ece fix: 上传镜像为转换列表之外时,subformat状态异常 2020-05-21 17:41:33 +08:00
Zexi Li
df8a942d38 Merge pull request #6502 from zhaoxiangchun/automated-cherry-pick-of-#6500-upstream-release-3.2
Automated cherry pick of #6500: 修复当prestate=alerting,newstate=alerting的情况无法触发notify的问题
2020-05-21 16:38:04 +08:00
Zexi Li
e638c7dfca Merge pull request #6496 from zhaoxiangchun/automated-cherry-pick-of-#6472-upstream-release-3.2
Automated cherry pick of #6472: suggestions  increase time screening range
2020-05-21 16:34:26 +08:00
yunion-ci-robot
e030d683f0 Merge pull request #6498 from wanyaoqi/automated-cherry-pick-of-#6497-upstream-release-3.2
Automated cherry pick of #6497: image cache use lockman
2020-05-21 16:33:45 +08:00
Zexi Li
8e28f9f72d Merge pull request #6490 from rainzm/automated-cherry-pick-of-#6487-upstream-release-3.2
Automated cherry pick of #6487: Fix/esxi
2020-05-21 16:33:27 +08:00
zhaoxiangchun
041a1b2cdc bugfix-优化建议
在删除资源列表的信息时,增加对应的状态值。如果删除失败记录相关日志
2020-05-21 15:18:52 +08:00
zhaoxiangchun
094a3115df 优化建议增加时间筛选范围
1.在时间范围内查询未使用的资源,对于存在解绑的操作,通过查询对应的日志来确定最近的使用时间
2.基于监控的优化建议,增加新的reducer,当有足够多的points时,再进行其他逻辑
2020-05-21 15:18:52 +08:00
zhaoxiangchun
0fb24d91e3 修复当prestate=alerting,newstate=alerting的情况无法触发notify的问题 2020-05-21 13:58:37 +08:00
wanyaoqi
5131057cd8 image cache use lockman 2020-05-21 11:47:32 +08:00
rainzm
9735881e55 fix(esxi): Modify the disk size correctly when creating vm 2020-05-21 10:51:10 +08:00
rainzm
a465548e5e fix(esxi): Detach all disk first when deleting vm 2020-05-21 10:51:10 +08:00
rainzm
5b0b346f12 Kill processes in time & Add debug info 2020-05-21 10:51:10 +08:00
rainzm
caffe7f96f fix(esxi): Remove 'Destory' operation that is unnecessary for VirtualDiskManager 2020-05-21 10:51:10 +08:00
rainzm
1ea7937cdd fix(esxi): Separate detach disk and delete disk when rebuilding.
In previous versions, set
`removeSpec.FileOperation = types.VirtualDeviceConfigSpecFileOperationDestroy'
to delete disk indirectly.

But, when its parent has only one child, the parent will be deleted along with it.
And the consequence is failure to reinstall the system.

Now, detach disk without deleteing backing file and then remove backing
2020-05-21 10:51:10 +08:00
Zexi Li
a3c48265fe Merge pull request #6486 from wanyaoqi/automated-cherry-pick-of-#6485-upstream-release-3.2
Automated cherry pick of #6485: add sys usage
2020-05-21 10:02:33 +08:00
Zexi Li
6caa3be510 Merge pull request #6495 from yousong/automated-cherry-pick-of-#6494-upstream-release-3.2
Automated cherry pick of #6494: guests: include vpc, network info in guest nics list
2020-05-21 10:00:33 +08:00
Yousong Zhou
b9543dd565 guests: include vpc, network info in guest nics list 2020-05-20 22:49:28 +08:00
Zexi Li
1efba08bf2 Merge pull request #6492 from zexi/automated-cherry-pick-of-#6491-upstream-release-3.2
Automated cherry pick of #6491: keystone: fix db not sync
2020-05-20 17:32:20 +08:00
Zexi Li
b19c7cfdcf keystone: fix db not sync 2020-05-20 17:22:13 +08:00
wanyaoqi
4e1acfc028 add sys usage 2020-05-20 15:03:24 +08:00
Zexi Li
d81d99394f Merge pull request #6483 from zexi/automated-cherry-pick-of-#6481-upstream-release-3.2
Automated cherry pick of #6481: region: fix get resource details panic
2020-05-20 14:00:17 +08:00
Zexi Li
6dbd344c10 region: fix get resource details panic 2020-05-20 13:30:56 +08:00
Zexi Li
3b99ebfd03 Merge pull request #6475 from yousong/automated-cherry-pick-of-#6474-upstream-release-3.2
Automated cherry pick of #6474: cloudcommon: rbac: fix typo
2020-05-20 12:54:38 +08:00
Zexi Li
e1f43e29a3 Merge pull request #6470 from zexi/automated-cherry-pick-of-#6463-upstream-release-3.2
Automated cherry pick of #6463: add fuzzy ip matching
2020-05-20 11:09:44 +08:00
Zexi Li
f428ad2abe Merge pull request #6457 from swordqiu/automated-cherry-pick-of-#6456-upstream-release-3.2
Automated cherry pick of #6456: fix: cloudprovider list support filter by zone and cloudregion
2020-05-20 11:09:11 +08:00
Zexi Li
3e9fab0ca0 Merge pull request #6454 from ioito/automated-cherry-pick-of-#6453-upstream-release-3.2
Automated cherry pick of #6453: fix: 优化azure image同步逻辑
2020-05-20 11:08:23 +08:00
Zexi Li
11463ce683 Merge pull request #6435 from ioito/automated-cherry-pick-of-#6434-upstream-release-3.2
Automated cherry pick of #6434: fix: 加入azure镜像vhd检查
2020-05-20 11:07:46 +08:00
Zexi Li
7d1b6a98eb Merge pull request #6448 from ioito/automated-cherry-pick-of-#6427-upstream-release-3.2
Automated cherry pick of #6427: fix: 避免大范围安全组共享
2020-05-20 11:07:23 +08:00
Yousong Zhou
2180e2e361 networks: return HTTP 404 for sql.ErrNoRows 2020-05-20 11:04:50 +08:00
Yousong Zhou
94433b590d wires: default to "default" vpc on creation
Wire creation request right now only makes sense in context of classic
network ("default" vpc)
2020-05-20 11:04:50 +08:00
Yousong Zhou
e5eed9ef2a networks: eliminate a variable 2020-05-20 11:04:50 +08:00
Yousong Zhou
7cd01cf535 guestdrivers: managed: use const api.EIP_STATUS_ASSOCIATE 2020-05-20 11:04:50 +08:00
Yousong Zhou
5d284b392b cloudprovider: fix typo 2020-05-20 11:04:50 +08:00
Yousong Zhou
306f8eabf2 cloudcommon: rbac: fix typo 2020-05-20 11:04:50 +08:00
Zexi Li
b5604f4767 Merge pull request #6469 from zexi/automated-cherry-pick-of-#6468-upstream-release-3.2
Automated cherry pick of #6468: host convert inject dockerd config
2020-05-20 10:44:31 +08:00
tangbin
fd13237ff3 add fuzzy ip matching 2020-05-19 19:15:55 +08:00
Zexi Li
36bef6db5a Merge pull request #6459 from ioito/automated-cherry-pick-of-#6458-upstream-release-3.2
Automated cherry pick of #6458: fix: 修复zstack使用win镜像时userdata base64加密问题
2020-05-19 19:13:49 +08:00
Zexi Li
926ab1e41a Merge pull request #6464 from zexi/automated-cherry-pick-of-#6462-upstream-release-3.2
Automated cherry pick of #6462: region: fix server create params not include specified resource
2020-05-19 19:08:45 +08:00
Zexi Li
ccef3b6aba host convert inject dockerd config 2020-05-19 19:08:11 +08:00
Zexi Li
c95f397ecf region: fix server create params not include specified resource 2020-05-19 17:38:23 +08:00
Qu Xuan
9455c75098 fix: 修复zstack使用win镜像时userdata base64加密问题 2020-05-19 16:46:31 +08:00
Qiu Jian
498aea4d18 fix: cloudprovider list support filter by zone and cloudregion 2020-05-19 16:44:44 +08:00
Qu Xuan
78be10c0a4 fix: 优化azure image同步逻辑 2020-05-19 16:24:23 +08:00
Zexi Li
fdbecf5365 Merge pull request #6452 from swordqiu/automated-cherry-pick-of-#6451-upstream-release-3.2
Automated cherry pick of #6451: fix: policy create fail on initialization phrase
2020-05-19 15:49:13 +08:00
Qiu Jian
d23b1fb08a fix: policy create fail on initialization phrase 2020-05-19 15:25:37 +08:00
Qu Xuan
fa287db5d6 fix: 避免大范围安全组共享 2020-05-19 14:03:24 +08:00
Zexi Li
379877189a Merge pull request #6422 from ioito/automated-cherry-pick-of-#6421-upstream-release-3.2
Automated cherry pick of #6421: fix: 优化标签列表过滤参数
2020-05-19 10:21:44 +08:00
Zexi Li
93179d30a7 Merge pull request #6442 from swordqiu/automated-cherry-pick-of-#6441-upstream-release-3.2
Automated cherry pick of #6441: update lisDescendent scope params
2020-05-19 10:20:24 +08:00
Zexi Li
a5436f2ba0 Merge pull request #6444 from swordqiu/automated-cherry-pick-of-#6443-upstream-release-3.2
Automated cherry pick of #6443: fix: anonymous user may list resources
2020-05-19 10:17:53 +08:00
Zexi Li
4576bb1728 Merge pull request #6440 from zexi/automated-cherry-pick-of-#6436-upstream-release-3.2
Automated cherry pick of #6436: baremetal: fix ssh put empty content file not created
2020-05-19 10:16:16 +08:00
Qiu Jian
f964b93bf8 fix: anonymous user may list resources 2020-05-19 01:13:52 +08:00
Qiu Jian
3cdf2da320 sync storage shared info when syncing local storage 2020-05-18 23:19:58 +08:00
Qiu Jian
7123de13ed update lisDescendent scope params 2020-05-18 23:19:58 +08:00
Zexi Li
9b0dc429c6 Merge pull request #6419 from ioito/automated-cherry-pick-of-#6418-upstream-release-3.2
Automated cherry pick of #6418: 可根据代理过滤云账号
2020-05-18 21:51:20 +08:00
Zexi Li
45f88c907d Merge pull request #6424 from ioito/automated-cherry-pick-of-#6423-upstream-release-3.2
Automated cherry pick of #6423: fix: 避免仅同步一个region时,其余region状态变为准备中
2020-05-18 21:49:10 +08:00
Zexi Li
534e7b4eda Merge pull request #6429 from ioito/automated-cherry-pick-of-#6428-upstream-release-3.2
Automated cherry pick of #6428: fix: 避免设置自动释放后磁盘的expired_at失效
2020-05-18 21:47:53 +08:00
Zexi Li
97cb68397b Merge pull request #6433 from swordqiu/automated-cherry-pick-of-#6432-upstream-release-3.2
Automated cherry pick of #6432: fix: update fields permission tags
2020-05-18 21:47:22 +08:00
Zexi Li
e8b90a9617 baremetal: fix ssh put empty content file not created 2020-05-18 21:46:26 +08:00
Qu Xuan
6281c56333 fix: image-list --sub-format support 2020-05-18 21:22:19 +08:00
Qu Xuan
1fa6b53a34 fix: 加入azure镜像vhd检查 2020-05-18 21:22:18 +08:00
Qiu Jian
5471bd9acf fix: update fields permission tags 2020-05-18 21:01:10 +08:00
Qu Xuan
2f84801b18 fix: 避免设置自动释放后磁盘的expired_at失效 2020-05-18 20:07:03 +08:00
Qu Xuan
963aaf0c33 fix: 避免仅同步一个region时,其余region状态变为准备中 2020-05-18 19:37:14 +08:00
Qu Xuan
168a4c7e9a fix: 优化标签列表过滤参数 2020-05-18 15:31:15 +08:00
Qu Xuan
be7adbea40 根据调度标签过滤网络和存储资源 2020-05-18 12:05:47 +08:00
Qu Xuan
2cdccfcf65 可根据代理过滤云账号 2020-05-18 12:05:46 +08:00
Zexi Li
eb56db7b00 Merge pull request #6404 from swordqiu/automated-cherry-pick-of-#6401-upstream-release-3.2
Automated cherry pick of #6401: fix: fail to explain permission for disabled policy
2020-05-17 14:22:45 +08:00
Zexi Li
8277ae48a6 Merge pull request #6415 from zhaoxiangchun/automated-cherry-pick-of-#6410-upstream-release-3.2
Automated cherry pick of #6410: 修复无法获取vmware宿主机监控数据的问题
2020-05-17 14:17:17 +08:00
Zexi Li
b91f4a2fde Merge pull request #6403 from swordqiu/automated-cherry-pick-of-#6402-upstream-release-3.2
Automated cherry pick of #6402: fix: disable delete standard image
2020-05-17 14:15:27 +08:00
yunion-ci-robot
121f538690 Merge pull request #6409 from rainzm/release/3.2
update vendor for release/3.2
2020-05-17 09:43:37 +08:00
zhaoxiangchun
f8fb9eddc8 修复无法获取vmware宿主机监控数据的问题 2020-05-16 21:23:51 +08:00
rainzm
66e42f2dba update vendor 2020-05-16 21:14:52 +08:00
Zexi Li
411c264890 Merge pull request #6400 from swordqiu/automated-cherry-pick-of-#6394-upstream-release-3.2
Automated cherry pick of #6394: fix: xxx-agent should generally use scope=system to list resources
2020-05-16 17:46:26 +08:00
Zexi Li
4696a51e92 Merge pull request #6396 from swordqiu/automated-cherry-pick-of-#6395-upstream-release-3.2
Automated cherry pick of #6395: fix: server-sync-fix-nics should return errors if vnics ip is not reachable on host
2020-05-16 17:45:25 +08:00
Zexi Li
928ceff800 Merge pull request #6376 from rainzm/automated-cherry-pick-of-#6375-upstream-release-3.2
Automated cherry pick of #6375: Fix/esxi
2020-05-16 17:42:42 +08:00
yunion-ci-robot
f5f83d3b3f Merge pull request #6389 from zexi/automated-cherry-pick-of-#6388-upstream-release-3.2
Automated cherry pick of #6388: region: fix baremetal can't enable public baremetal type network
2020-05-16 17:31:07 +08:00
Qiu Jian
74e784a84d fix: bugfixes 2020-05-16 01:05:40 +08:00
Qiu Jian
6ad68788e5 fix: fail to explain permission for disabled policy 2020-05-16 01:05:40 +08:00
Qiu Jian
4b6723d8fe fix: disable delete standard image 2020-05-16 00:37:04 +08:00
Qiu Jian
b12c644494 fix: xxx-agent should generally use scope=system to list resources 2020-05-15 22:33:03 +08:00
Qiu Jian
16b6186cab fix: server-sync-fix-nics should return errors if vnics ip is not reachable on host 2020-05-15 22:16:54 +08:00
rainzm
e9d0764be9 fix(esxi): Allow the creation of duplicate vcenter machines.
Create vm with name whose vlaue is localVM.Uuid and try to rename again.
2020-05-15 21:36:19 +08:00
rainzm
3e8b854dbe fix(esxi): Add usb to support mouse in vnc viewer 2020-05-15 21:36:19 +08:00
rainzm
cdabc68a71 fix(esxi): Fix GetDriver and add driver log for vdisk.
In GetDriver, return 'name' directly if driverMap is empty.
2020-05-15 21:36:19 +08:00
rainzm
4873635dd8 fix(esxi): Set 'WindowsDefaultAdminUser' as true when deploy vm.
'WindowsDefaultAdminUser' means that the default admin account is
'Administrator' when deploy windows vm.
2020-05-15 21:36:19 +08:00
rainzm
7d1270c968 fix(region): Set default value if rootdisk's driver is empty. 2020-05-15 21:36:19 +08:00
rainzm
4b9f1a409b fix(esxi): Disable automatically add host to the dvs 2020-05-15 21:36:19 +08:00
rainzm
23a03bb24c fix(esxi): Set 'IsInit' as true when rebuildroot
IsInit is true will cause cloudinit enable. When rebuilding root, if there is cloudinit service in the image, it will cover the initialization work we did on the rebuilding.
2020-05-15 21:36:19 +08:00
Zexi Li
62fe9cee88 region: fix baremetal can't enable public baremetal type network 2020-05-15 20:00:09 +08:00
Zexi Li
61a707bd57 Merge pull request #6387 from yousong/automated-cherry-pick-of-#6386-upstream-release-3.2
Automated cherry pick of #6386: vpcagent: ovn: cmp: generate clean args in a single batch
2020-05-15 19:59:27 +08:00
Yousong Zhou
188a0ea9e3 vpcagent: ovnutil: destroy non root obj first
To avoid the following error

	/* Can't happen because of the database schema. */
	ctl_fatal("logical port %s is not part of any logical router",
		  ctx->argv[1]);
2020-05-15 16:34:51 +08:00
Yousong Zhou
fea1e2166e vpcagent: ovn: cmp: generate clean args in a single batch 2020-05-15 16:31:18 +08:00
Zexi Li
3864156c5f Merge pull request #6380 from ioito/automated-cherry-pick-of-#6379-upstream-release-3.2
Automated cherry pick of #6379: fix: 避免backup list未能正常显示rds信息
2020-05-15 15:29:43 +08:00
Zexi Li
6301776f72 Merge pull request #6385 from zexi/automated-cherry-pick-of-#6381-upstream-release-3.2
Automated cherry pick of #6381: scheduler: fix min counter get count not correct
2020-05-15 15:28:34 +08:00
Zexi Li
0f6297aea8 scheduler: fix min counter get count not correct 2020-05-15 15:12:02 +08:00
Qu Xuan
c29528ac54 fix: 避免backup list未能正常显示rds信息 2020-05-15 14:30:19 +08:00
Zexi Li
0a3f041bf7 Merge pull request #6374 from zhaoxiangchun/automated-cherry-pick-of-#6358-upstream-release-3.2
Automated cherry pick of #6358: modify the logic of queryCondition save the  evalMatch
2020-05-15 11:11:15 +08:00
Zexi Li
4b8e100916 Merge pull request #6361 from ioito/automated-cherry-pick-of-#6346-upstream-release-3.2
Automated cherry pick of #6346: fix: 优化windows powershell userdata
2020-05-15 11:09:51 +08:00
Zexi Li
5ad8cb051f Merge pull request #6373 from swordqiu/automated-cherry-pick-of-#6363-upstream-release-3.2
Automated cherry pick of #6363: fix: set public_scope to system for image with is_public=true
2020-05-15 11:08:22 +08:00
zhaoxiangchun
23380f2a00 modify the logic of queryCondition save the evalMatch 2020-05-15 11:07:23 +08:00
Zexi Li
e45ef0a8e1 Merge pull request #6359 from ioito/automated-cherry-pick-of-#6352-upstream-release-3.2
Automated cherry pick of #6352: fix: 优化rds zone同步逻辑
2020-05-15 11:05:46 +08:00
Qiu Jian
e6d240ac79 fix: set public_scope to system for image with is_public=true 2020-05-15 00:34:29 +08:00
Qu Xuan
1cc5eee870 fix: 优化windows powershell userdata 2020-05-14 20:42:47 +08:00
Qu Xuan
9f99f1466b fix: 优化rds zone同步逻辑 2020-05-14 20:24:15 +08:00
Zexi Li
519cbec486 Merge pull request #6357 from zexi/automated-cherry-pick-of-#6353-upstream-release-3.2
Automated cherry pick of #6353: scheduler: filter disabled cloudprovider
2020-05-14 18:59:34 +08:00
Zexi Li
5ed76cd0cf Merge pull request #6345 from tb365/automated-cherry-pick-of-#6344-upstream-release-3.2
Automated cherry pick of #6344: allow delete paramter config
2020-05-14 18:20:50 +08:00
Zexi Li
408a4e33c4 Merge pull request #6339 from swordqiu/automated-cherry-pick-of-#6338-upstream-release-3.2
Automated cherry pick of #6338: fix: avoid using background context
2020-05-14 18:18:58 +08:00
Zexi Li
9104f101eb Merge pull request #6337 from zhaoxiangchun/automated-cherry-pick-of-#6336-upstream-release-3.2
Automated cherry pick of #6336: Modify the logic of rule change execution time
2020-05-14 18:17:53 +08:00
Zexi Li
019d72a694 scheduler: filter disabled cloudprovider 2020-05-14 18:15:53 +08:00
Zexi Li
c23ee27c9f Merge pull request #6348 from zexi/automated-cherry-pick-of-#6347-upstream-release-3.2
Automated cherry pick of #6347: scheduler: set schedtag default strategy if input empty
2020-05-14 17:49:20 +08:00
Zexi Li
fa5f9351d2 scheduler: set schedtag default strategy if input empty 2020-05-14 17:25:50 +08:00
Qiu Jian
db111a8da4 fix: avoid using background context 2020-05-14 16:51:26 +08:00
tangbin
de4c354c7d allow delete paramter config 2020-05-14 15:20:37 +08:00
zhaoxiangchun
acd7fceb91 修改规则执行时间
在将资源数据取到后更新执行时间
2020-05-14 15:00:36 +08:00
Zexi Li
8a7f37dcd1 Merge pull request #6330 from zhaoxiangchun/automated-cherry-pick-of-#6164-upstream-release-3.2
Automated cherry pick of #6164: bugfix mem paginate
2020-05-14 13:02:45 +08:00
Zexi Li
1f8c1f4d13 Merge pull request #6332 from tb365/automated-cherry-pick-of-#6331-upstream-release-3.2
Automated cherry pick of #6331: clear yunionauth cookie
2020-05-14 13:02:20 +08:00
Zexi Li
fd3fb7ba89 Merge pull request #6335 from wanyaoqi/automated-cherry-pick-of-#6333-upstream-release-3.2
Automated cherry pick of #6333: remove statefile in start script
2020-05-14 13:01:45 +08:00
wanyaoqi
6b63ac0af5 fix esxi disk disconnect 2020-05-14 12:28:27 +08:00
wanyaoqi
f50dfaef4c remove statefile in start script 2020-05-14 12:28:27 +08:00
tangbin
346a325e7e clear yunionauth cookie 2020-05-14 11:46:03 +08:00
zhaoxiangchun
9b1aa45a15 修复规则无法禁用的问题 2020-05-14 10:38:39 +08:00
Zexi Li
9e2874caaa Merge pull request #6329 from swordqiu/automated-cherry-pick-of-#6328-upstream-release-3.2
Automated cherry pick of #6328: fix: status-base resource's action log missing owner project/domain
2020-05-14 09:52:32 +08:00
Zexi Li
e0a8fe38d0 Merge pull request #6327 from zexi/automated-cherry-pick-of-#6326-upstream-release-3.2
Automated cherry pick of #6326: region: server create prefer resource fetch by name or id
2020-05-14 09:51:46 +08:00
Qiu Jian
6453e7fa82 fix: status-base resource's action log missing owner project/domain 2020-05-14 01:17:09 +08:00
Zexi Li
ad4d25e0cd Merge pull request #6197 from zhaoxiangchun/automated-cherry-pick-of-#6164-upstream-release-3.2
Automated cherry pick of #6164 bugfix-suggestrule cannot disable
2020-05-14 01:02:08 +08:00
Zexi Li
a3d962894c region: server create prefer resource fetch by name or id 2020-05-14 01:00:18 +08:00
zhaoxiangchun
c1384f29cf merge 2020-05-14 00:29:11 +08:00
zhaoxiangchun
829c6c65fc 修复规则无法禁用的问题 2020-05-14 00:27:34 +08:00
Zexi Li
c106bdc24c Merge pull request #6088 from zhaoxiangchun/automated-cherry-pick-of-#6087-upstream-release-3.2
Automated cherry pick of #6087: 在monitor的package中新增influxdb相关的功能
2020-05-13 23:00:04 +08:00
zhaoxiangchun
d9509a0cf5 基于监控数据的优化建议 2020-05-13 22:45:41 +08:00
zhaoxiangchun
22dccbbb20 在monitor的package中新增influxdb相关的功能
1.可以获取influxdb实例中的databases
2.可以获取指定database中的measurements
3.通过指定measurement获取其中的tags和fileds
2020-05-13 22:45:41 +08:00
Zexi Li
442e95a2c1 Merge pull request #6325 from swordqiu/automated-cherry-pick-of-#6324-upstream-release-3.2
Automated cherry pick of #6324: fix: host agent list use baremetalagents model
2020-05-13 21:20:56 +08:00
Qiu Jian
2089c055f3 fix: host agent list use baremetalagents model 2020-05-13 21:15:38 +08:00
yunion-ci-robot
c52946c5ed Merge pull request #6320 from wanyaoqi/automated-cherry-pick-of-#6319-upstream-release-3.2
Automated cherry pick of #6319: do not close worker chan
2020-05-13 20:18:01 +08:00
wanyaoqi
3e2f5c7af1 do not close worker chan
don't close worker chan after put work, will cause dead loop
2020-05-13 18:58:18 +08:00
Zexi Li
061d31ae0d Merge pull request #6314 from swordqiu/automated-cherry-pick-of-#6305-upstream-release-3.2
Automated cherry pick of #6305: fix: change-owner-candidate-domains not implemented for some resources
2020-05-13 12:46:17 +08:00
Zexi Li
055d01d24e Merge pull request #6303 from yousong/automated-cherry-pick-of-#6302-upstream-release-3.2
Automated cherry pick of #6302: vpcagent: ignore possible external subnets
2020-05-13 12:45:30 +08:00
Zexi Li
b48647abbd Merge pull request #6301 from ioito/automated-cherry-pick-of-#6300-upstream-release-3.2
Automated cherry pick of #6300: fix: 避免provider错乱返回
2020-05-13 12:44:28 +08:00
Zexi Li
34f7a4e6d0 Merge pull request #6298 from ioito/automated-cherry-pick-of-#6297-upstream-release-3.2
Automated cherry pick of #6297: fix: cloud-provider-list support filter by cloudregion
2020-05-13 12:44:02 +08:00
Zexi Li
cb0810c7c2 Merge pull request #6279 from swordqiu/automated-cherry-pick-of-#6241-upstream-release-3.2
Automated cherry pick of #6241: feature: user login into project with highest privilege automatically
2020-05-13 12:43:33 +08:00
Zexi Li
ec9dcb05ee Merge pull request #6310 from ioito/automated-cherry-pick-of-#6306-upstream-release-3.2
Automated cherry pick of #6306: fix: openstack 安全组规则同步
2020-05-13 12:41:55 +08:00
Zexi Li
cfb3c4c184 Merge pull request #6316 from ioito/automated-cherry-pick-of-#6315-upstream-release-3.2
Automated cherry pick of #6315: fix: i-ps -> ips
2020-05-13 10:46:16 +08:00
Zexi Li
cd5d452e86 Merge pull request #6318 from swordqiu/automated-cherry-pick-of-#6317-upstream-release-3.2
Automated cherry pick of #6317: fix: reserved ip owner filter
2020-05-13 10:44:16 +08:00
Zexi Li
e725bdf0ca Merge pull request #6293 from ioito/automated-cherry-pick-of-#6292-upstream-release-3.2
Automated cherry pick of #6292: fix: 优化openstack错误处理
2020-05-13 10:42:45 +08:00
Qiu Jian
04ba1e8300 fix: reserved ip owner filter 2020-05-12 21:13:14 +08:00
Qu Xuan
93222c5827 fix: i-ps -> ips 2020-05-12 20:27:36 +08:00
Qiu Jian
014e159339 fix: change-owner-candidate-domains not implemented for some resources 2020-05-12 18:47:30 +08:00
Yousong Zhou
f7e1676a17 vpcagent: ignore possible external subnets 2020-05-12 18:06:27 +08:00
Qu Xuan
535e9a1861 fix: openstack 安全组规则同步 2020-05-12 17:57:25 +08:00
Qu Xuan
48e35019b3 fix: 避免provider错乱返回 2020-05-12 17:03:12 +08:00
Zexi Li
79f9d69125 Merge pull request #6281 from yousong/automated-cherry-pick-of-#6280-upstream-release-3.2
Automated cherry pick of #6280: cloudcommon: elect: notifyOne on subscribe
2020-05-12 14:22:37 +08:00
Zexi Li
7bec5cbdb8 Merge pull request #6278 from ioito/automated-cherry-pick-of-#6277-upstream-release-3.2
Automated cherry pick of #6277: fix: 支持访问其他服务的标签列表
2020-05-12 14:21:47 +08:00
Qu Xuan
b8104481ee fix: 优化openstack错误处理 2020-05-12 14:09:10 +08:00
Qu Xuan
ebe775338c fix: cloud-provider-list support filter by cloudregion 2020-05-12 14:06:53 +08:00
Zexi Li
fa54acf2c7 Merge pull request #6288 from yousong/automated-cherry-pick-of-#6287-upstream-release-3.2
Automated cherry pick of #6287: region: lbagent: undeploy: make it idempotent
2020-05-12 11:50:05 +08:00
Zexi Li
f01d45d7ed Merge pull request #6283 from yousong/automated-cherry-pick-of-#6282-upstream-release-3.2
Automated cherry pick of #6282: region: lbagents: fix deleting pending_deleted objects
2020-05-12 11:43:42 +08:00
Yousong Zhou
d2197aec70 region: lbagent: undeploy: make it idempotent
Both the following three can result in the same error message "Could not
find the requested service yunion-xx: host"

  -m systemd -a 'name=yunion-xx enabled=no state=stopped daemon_reload=yes'
  -m systemd -a 'name=yunion-xx enabled=no state=stopped daemon_reload=yes force=yes'
  -m service -a 'name=yunion-xx enabled=no state=stopped'

Use of ansibleplaybookv2 is overkill and can break console expectation.
Just turn to shell module for now
2020-05-12 10:38:56 +08:00
Yousong Zhou
51f50c1087 region: lbagents: fix deleting pending_deleted objects
This was broken since the introduction of virtual object
2020-05-12 10:11:01 +08:00
Yousong Zhou
a77aa72d47 cloudcommon: elect: notifyOne on subscribe 2020-05-11 23:27:19 +08:00
Qu Xuan
88af7f7f2f fix: 支持访问其他服务的标签列表 2020-05-11 21:39:59 +08:00
Qiu Jian
e95ea4a0fa detect bmagent and hostagent service 2020-05-11 21:21:15 +08:00
Qiu Jian
6e24efd176 feature: user login into project with highest privilege automatically 2020-05-11 21:21:15 +08:00
Zexi Li
9034bff3cb Merge pull request #6264 from ioito/automated-cherry-pick-of-#6263-upstream-release-3.2
Automated cherry pick of #6263: fix: globalvpc count vpc
2020-05-11 21:09:39 +08:00
Zexi Li
002ac64e8b Merge pull request #6266 from ioito/automated-cherry-pick-of-#6265-upstream-release-3.2
Automated cherry pick of #6265: fix: 避免卸载完已删除的磁盘后,磁盘状态为ready
2020-05-11 21:09:09 +08:00
Zexi Li
4e67c95561 Merge pull request #6271 from zexi/automated-cherry-pick-of-#6270-upstream-release-3.2
Automated cherry pick of #6270: scheduler: get region nil panic
2020-05-11 21:07:38 +08:00
Zexi Li
2d9cc6d99e Merge pull request #6276 from swordqiu/automated-cherry-pick-of-#6275-upstream-release-3.2
Automated cherry pick of #6275: fix: isolated_devices domain filter not working
2020-05-11 21:07:14 +08:00
Qiu Jian
05c206497a fix: isolated_devices domain filter not working 2020-05-11 20:47:58 +08:00
Zexi Li
a3955a36b9 Merge pull request #6269 from ioito/automated-cherry-pick-of-#6268-upstream-release-3.2
Automated cherry pick of #6268: fix: gcp rds 默认不使用vpc网络
2020-05-11 18:17:51 +08:00
Zexi Li
2e13690b5c Merge pull request #6259 from ioito/automated-cherry-pick-of-#6258-upstream-release-3.2
Automated cherry pick of #6258: fix: 避免aliyun磁盘计费类型多次转换
2020-05-11 18:17:04 +08:00
Zexi Li
e22bac2597 scheduler: get region nil panic 2020-05-11 14:58:09 +08:00
Qu Xuan
7840528040 fix: gcp rds 默认不使用vpc网络 2020-05-11 14:52:58 +08:00
Qu Xuan
e8070c171a fix: 避免卸载完已删除的磁盘后,磁盘状态为ready 2020-05-11 14:37:13 +08:00
Qu Xuan
73890e5adb fix: globalvpc count vpc 2020-05-11 14:18:22 +08:00
Qu Xuan
1868ab31eb fix: 避免aliyun磁盘计费类型多次转换 2020-05-11 14:06:03 +08:00
Zexi Li
52200db57b Merge pull request #6220 from swordqiu/automated-cherry-pick-of-#6219-upstream-release-3.2
Automated cherry pick of #6219: fix: 1. vpc, cloudprovider should not violate the sharing limit of cloud account 2. sharing mode of host and attached local storage should be consistent. 3. cannot change owner of shared resource
2020-05-11 12:37:21 +08:00
Zexi Li
4da9c3b427 Merge pull request #6256 from swordqiu/automated-cherry-pick-of-#6252-upstream-release-3.2
Automated cherry pick of #6252: fix: panic when disk has no valid storage_id
2020-05-11 10:01:20 +08:00
yunion-ci-robot
5ae4a4b2de Merge pull request #6231 from tb365/automated-cherry-pick-of-#6230-upstream-release-3.2
Automated cherry pick of #6230: lb acl cache add acl filter
2020-05-11 09:42:56 +08:00
Qiu Jian
dbd88e3288 fix: panic when disk has no valid storage_id 2020-05-11 02:58:43 +08:00
Zexi Li
83c186b616 Merge pull request #6248 from wanyaoqi/automated-cherry-pick-of-#6247-upstream-release-3.2
Automated cherry pick of #6247: fix import from libvirt
2020-05-10 21:35:04 +08:00
Zexi Li
77ac919edb Merge pull request #6236 from tb365/automated-cherry-pick-of-#6232-upstream-release-3.2
Automated cherry pick of #6232: huawei network id fix
2020-05-10 21:33:53 +08:00
wanyaoqi
e8a8416b77 fix import from libvirt 2020-05-10 20:43:24 +08:00
Zexi Li
558c477de1 Merge pull request #6218 from swordqiu/automated-cherry-pick-of-#6200-upstream-release-3.2
Automated cherry pick of #6200: fix: recode sync public_src of cloud resources
2020-05-10 19:50:21 +08:00
Zexi Li
d768fc33f1 Merge pull request #6243 from yousong/automated-cherry-pick-of-#6242-upstream-release-3.2
Automated cherry pick of #6242: disks: reword error message on bad DiskConfig struct
2020-05-10 11:29:03 +08:00
Yousong Zhou
ee13acba43 disks: reword error message on bad DiskConfig struct 2020-05-10 00:18:21 +08:00
yunion-ci-robot
c65a25fa80 Merge pull request #6240 from swordqiu/automated-cherry-pick-of-#6237-upstream-release-3.2
Automated cherry pick of #6237: fix: guestsecgroup-list panic
2020-05-10 00:17:50 +08:00
Qiu Jian
4599988771 fix: guestsecgroup-list panic 2020-05-09 23:06:06 +08:00
Qiu Jian
d85e9be656 fix: init sharing status of default vpc and default secgroup 2020-05-09 22:36:16 +08:00
Qiu Jian
9e06c3a52f fix: allow delete shared resource 2020-05-09 22:36:15 +08:00
Qiu Jian
a51f928af9 fix: 1. vpc, cloudprovider should not violate the sharing limit of cloud account 2. sharing mode of host and attached local storage should be consistent. 3. cannot change owner of shared resource 2020-05-09 22:36:15 +08:00
Qiu Jian
117122c363 fix: recode sync public_src of cloud resources 2020-05-09 21:26:42 +08:00
tangbin
2d61f927a4 huawei network id fix 2020-05-09 20:12:17 +08:00
tangbin
b4b815a30f new local lb backend fix 2020-05-09 19:23:57 +08:00
tangbin
9c50414a0e lb acl cache add acl filter 2020-05-09 19:23:57 +08:00
Zexi Li
2714b6ceb0 Merge pull request #6222 from yousong/automated-cherry-pick-of-#6221-upstream-release-3.2
Automated cherry pick of #6221: cloudprovider: add methods for getting http client
2020-05-09 19:02:14 +08:00
Zexi Li
472c5b2622 Merge pull request #6210 from swordqiu/automated-cherry-pick-of-#6209-upstream-release-3.2
Automated cherry pick of #6209: fix: missing methods for SDomainRegionalCloudResourceKeys
2020-05-09 19:00:06 +08:00
Zexi Li
4ee4a9d872 Merge pull request #6217 from swordqiu/automated-cherry-pick-of-#6216-upstream-release-3.2
Automated cherry pick of #6216: fix: export missing keys && export panic
2020-05-09 18:58:58 +08:00
Zexi Li
89af0eeba1 Merge pull request #6214 from yousong/automated-cherry-pick-of-#6213-upstream-release-3.2
Automated cherry pick of #6213: vpcagent: ovn: explicitly include gateway route in classless routes
2020-05-09 18:57:13 +08:00
Zexi Li
ea7cd16ab3 Merge pull request #6212 from yousong/automated-cherry-pick-of-#6211-upstream-release-3.2
Automated cherry pick of #6211: vpcagent: models: ignore possible external guests
2020-05-09 18:55:39 +08:00
Zexi Li
f89276dd6a Merge pull request #6207 from wanyaoqi/automated-cherry-pick-of-#6206-upstream-release-3.2
Automated cherry pick of #6206: bm register use domain token
2020-05-09 18:54:38 +08:00
Zexi Li
a9bb0087b2 Merge pull request #6226 from yousong/automated-cherry-pick-of-#6225-upstream-release-3.2
Automated cherry pick of #6225: apigateway: handlers: register cloudnet modules
2020-05-09 18:47:42 +08:00
Zexi Li
00ca11f63c Merge pull request #6208 from zexi/automated-cherry-pick-of-#6193-upstream-release-3.2
Automated cherry pick of #6193: baremetal: find baremetal add scope system
2020-05-09 17:48:49 +08:00
Yousong Zhou
3e135e70ae apigateway: handlers: register cloudnet modules 2020-05-09 16:41:08 +08:00
Yousong Zhou
caf6726b12 multicloud: loader: guard against changing proxyFunc of default client 2020-05-09 12:56:29 +08:00
Yousong Zhou
f080a4ca9b multicloud: avoid changing transport of global default http client 2020-05-09 12:56:29 +08:00
Yousong Zhou
b187ca471f cloudprovider: add methods for getting http client
Prepare for following changes to avoid using and changing default
client settings
2020-05-09 12:56:29 +08:00
Qiu Jian
83f2defb24 fix: export missing keys && export panic 2020-05-08 17:44:30 +08:00
Yousong Zhou
daa591e99d vpcagent: ovn: explicitly include gateway route in classless routes 2020-05-08 16:35:52 +08:00
Yousong Zhou
88ac93510b vpcagent: models: ignore possible external guests 2020-05-08 15:46:46 +08:00
Qiu Jian
bf5d38d510 fix: missing methods for SDomainRegionalCloudResourceKeys 2020-05-08 14:16:34 +08:00
Zexi Li
79cecc5c7e baremetal: find baremetal add scope system 2020-05-08 13:46:38 +08:00
wanyaoqi
5fdd93fa2e bm register use domain token 2020-05-08 12:00:19 +08:00
Zexi Li
af9bf353f4 Merge pull request #6205 from tb365/automated-cherry-pick-of-#6204-upstream-release-3.2
Automated cherry pick of #6204: set cookie domain
2020-05-08 11:57:25 +08:00
tangbin
50146557ba set cookie domain 2020-05-08 11:56:17 +08:00
Zexi Li
cc52279ba2 Merge pull request #6201 from tb365/automated-cherry-pick-of-#6190-upstream-release-3.2
Automated cherry pick of #6190: apigateway-yunionauth-domain-setting
2020-05-08 10:29:21 +08:00
tangbin
6320fe1594 apigateway-yunionauth-domain-setting 2020-05-08 10:19:04 +08:00
Zexi Li
aa4cba8e6f Merge pull request #6199 from swordqiu/automated-cherry-pick-of-#6198-upstream-release-3.2
Automated cherry pick of #6198: fix: fail to sync share state for on-premise storages
2020-05-08 10:18:31 +08:00
Zexi Li
8d17139484 Merge pull request #6195 from wanyaoqi/automated-cherry-pick-of-#6194-upstream-release-3.2
Automated cherry pick of #6194: set host list scope system
2020-05-08 10:16:28 +08:00
Qiu Jian
7291e620a3 fix: fail to sync share state for on-premise storages 2020-05-07 20:47:12 +08:00
wanyaoqi
e8dc98ca8d set host list scope system 2020-05-07 20:04:31 +08:00
Zexi Li
012ee72fcb Merge pull request #6189 from zhaoxiangchun/automated-cherry-pick-of-#6185-upstream-release-3.2
Automated cherry pick of #6185: 修复谷歌监控无法获取的问题
2020-05-07 17:21:38 +08:00
yunion-ci-robot
84ea12f86d Merge pull request #6165 from zhaoxiangchun/automated-cherry-pick-of-#6164-upstream-release-3.2
Automated cherry pick of #6164: bugfix mem paginate
2020-05-07 16:51:45 +08:00
Zexi Li
67baa9be6e Merge pull request #6184 from swordqiu/automated-cherry-pick-of-#6183-upstream-release-3.2
Automated cherry pick of #6183: fix: missing perform public/private actionlog
2020-05-07 11:38:40 +08:00
zhaoxiangchun
1a800c99c7 修复谷歌监控无法获取的问题
直接返回调用RestAPI的json格式数据
2020-05-07 11:28:34 +08:00
Zexi Li
e9a4c0fe86 Merge pull request #6182 from swordqiu/automated-cherry-pick-of-#6181-upstream-release-3.2
Automated cherry pick of #6181: fix: shared cloudprovider not accessible
2020-05-07 11:28:26 +08:00
Zexi Li
8d9bddf6da Merge pull request #6180 from swordqiu/automated-cherry-pick-of-#6179-upstream-release-3.2
Automated cherry pick of #6179: fix: shared resource should not be deletable
2020-05-07 11:23:59 +08:00
Zexi Li
5eb616a30c Merge pull request #6169 from yousong/automated-cherry-pick-of-#6168-upstream-release-3.2
Automated cherry pick of #6168: dnsrecords: note that DnsRecordManager is a IAdminSharableVirtualModelManager
2020-05-07 11:23:14 +08:00
Zexi Li
8a9aef390d Merge pull request #6175 from swordqiu/automated-cherry-pick-of-#6174-upstream-release-3.2
Automated cherry pick of #6174: fix: fail to fetch real client ip from httprequest
2020-05-07 11:16:23 +08:00
Qiu Jian
c269437f36 fix: missing perform public/private actionlog 2020-05-07 02:14:49 +08:00
Qiu Jian
92232a5c45 fix: shared cloudprovider not accessible 2020-05-07 01:54:10 +08:00
Qiu Jian
fea14ed51e fix: shared resource should not be deletable 2020-05-07 01:40:23 +08:00
Qiu Jian
5c74ad427f fix: fail to fetch real client ip from httprequest 2020-05-06 22:27:08 +08:00
Yousong Zhou
40282fa5e6 dnsrecords: allow updating only description
This commit includes the following changes

 - Eliminate unused arguments from validateModelData()
 - Remove "records" member of input data unconditionally
 - Allow updates to not include records related parameters, to allow
   updating only "description" without emitting "Empty record" error
2020-05-06 18:42:29 +08:00
Yousong Zhou
356bea1915 dnsrecords: note that DnsRecordManager is a IAdminSharableVirtualModelManager 2020-05-06 18:42:29 +08:00
yunion-ci-robot
e3d062290a Merge pull request #6159 from zhaoxiangchun/automated-cherry-pick-of-#6158-upstream-release-3.2
Automated cherry pick of #6158: bugfix mem paginate
2020-05-06 15:45:44 +08:00
Zexi Li
1817cb1423 Merge pull request #6166 from wanyaoqi/automated-cherry-pick-of-#6150-upstream-release-3.2
Automated cherry pick of #6150: fix update input
2020-05-06 12:35:52 +08:00
wanyaoqi
eda2a39e5a fix update input 2020-05-06 11:55:22 +08:00
zhaoxiangchun
ee55aed03f bugfix mem paginate
通过totoal和offset 与limit比较确定最后返回数据
2020-05-06 11:06:27 +08:00
Zexi Li
70534106e6 Merge pull request #6154 from ioito/automated-cherry-pick-of-#6153-upstream-release-3.2
Automated cherry pick of #6153: fix: secgroupcache权限问题修复
2020-04-30 20:14:01 +08:00
zhaoxiangchun
b20d1ab7bd 修复规则无法禁用的问题 2020-04-30 20:13:30 +08:00
zhaoxiangchun
2ef877bd4d bugfix mem paginate
通过totoal和offset 与limit比较确定最后返回数据
2020-04-30 20:13:30 +08:00
Zexi Li
9103700f33 Merge pull request #6163 from wanyaoqi/automated-cherry-pick-of-#6151-upstream-release-3.2
Automated cherry pick of #6151: fix host details output
2020-04-30 19:08:24 +08:00
wanyaoqi
17676568d8 fix host init without etcd 2020-04-30 18:46:15 +08:00
wanyaoqi
341dda54ca fix host details output 2020-04-30 18:34:42 +08:00
Qu Xuan
0812fc2efe fix: secgroupcache权限问题修复 2020-04-30 15:42:32 +08:00
Zexi Li
7a97d5690b Merge pull request #6148 from rainzm/automated-cherry-pick-of-#6147-upstream-release-3.2
Automated cherry pick of #6147: fix/monitor: AutoScalingNotifier.ShouldNotify should call NotifierBase.ShouldNotify
2020-04-30 14:41:38 +08:00
Zexi Li
70db8a462e Merge pull request #6149 from wanyaoqi/automated-cherry-pick-of-#6145-upstream-release-3.2
Automated cherry pick of #6145: fix host health
2020-04-30 14:41:05 +08:00
wanyaoqi
9b22f51f25 fix host health 2020-04-30 11:32:53 +08:00
Rain
3a09de47b7 fix/monitor: AutoScalingNotifier.ShouldNotify should call NotifierBase.ShouldNotify 2020-04-30 11:31:28 +08:00
Zexi Li
b2c20dac86 Merge pull request #6138 from ioito/automated-cherry-pick-of-#6137-upstream-release-3.2
Automated cherry pick of #6137: fix: 云账号创建可以指定项目
2020-04-30 10:36:36 +08:00
Zexi Li
71be44a29b Merge pull request #6126 from ioito/automated-cherry-pick-of-#6123-upstream-release-3.2
Automated cherry pick of #6123: fix: usage-handler 不统计虚拟的vpc wire
2020-04-30 10:36:14 +08:00
Zexi Li
bab5b137ae Merge pull request #6142 from swordqiu/automated-cherry-pick-of-#6141-upstream-release-3.2
Automated cherry pick of #6141: fix: remove cloudaccount autosync randomness
2020-04-30 10:35:40 +08:00
Zexi Li
0fc6e1a29b Merge pull request #6144 from swordqiu/automated-cherry-pick-of-#6143-upstream-release-3.2
Automated cherry pick of #6143: fix: list lbbg panic
2020-04-30 10:35:07 +08:00
Qiu Jian
4b8ddca41b fix: list lbbg panic 2020-04-29 22:42:53 +08:00
Qiu Jian
2181019270 fix: remove cloudaccount autosync randomness 2020-04-29 22:34:37 +08:00
Zexi Li
fb3ae328c8 Merge pull request #6136 from wanyaoqi/automated-cherry-pick-of-#6034-upstream-release-3.2
Automated cherry pick of #6034: host health check
2020-04-29 21:17:12 +08:00
Zexi Li
60f3b1e6a2 Merge pull request #6128 from swordqiu/automated-cherry-pick-of-#6120-upstream-release-3.2
Automated cherry pick of #6120: fix: sysadmin can override policy violation check
2020-04-29 21:15:44 +08:00
Zexi Li
368a45069e Merge pull request #6125 from tb365/automated-cherry-pick-of-#6124-upstream-release-3.2
Automated cherry pick of #6124: add cookie domain setting option
2020-04-29 21:13:34 +08:00
Qu Xuan
a126f56bfb fix: 云账号创建可以指定项目 2020-04-29 20:06:26 +08:00
wanyaoqi
70fa719942 enable etcd lock 2020-04-29 20:03:06 +08:00
wanyaoqi
e024bdef1b host health check 2020-04-29 19:58:03 +08:00
Zexi Li
b18df612be Merge pull request #6122 from zhaoxiangchun/automated-cherry-pick-of-#6121-upstream-release-3.2
Automated cherry pick of #6121: monitor,对于监控数据nodata,默认不发送邮件
2020-04-29 19:36:05 +08:00
Qiu Jian
ae9838a38b fix: sysadmin can override policy violation check 2020-04-29 17:59:03 +08:00
Qu Xuan
599facb154 fix: usage-handler 不统计虚拟的vpc wire 2020-04-29 17:56:46 +08:00
tangbin
793412b813 add cookie domain setting option 2020-04-29 17:54:42 +08:00
zhaoxiangchun
27e075bfae monitor,对于监控数据nodata,默认不发送邮件 2020-04-29 15:18:23 +08:00
Zexi Li
ba6e8a1656 Merge pull request #6119 from swordqiu/automated-cherry-pick-of-#6118-upstream-release-3.2
Automated cherry pick of #6118: fix: cloud-account-usage vpc/storage not accurate
2020-04-29 13:11:41 +08:00
Zexi Li
e1840785c4 Merge pull request #6112 from swordqiu/automated-cherry-pick-of-#6111-upstream-release-3.2
Automated cherry pick of #6111: fix: prevent policy violation
2020-04-29 13:10:22 +08:00
Zexi Li
8767b92bc2 Merge pull request #6102 from rainzm/automated-cherry-pick-of-#6101-upstream-release-3.2
Automated cherry pick of #6101: fix/autoscaling: Chang the format of CoolingTime
2020-04-29 13:09:35 +08:00
Zexi Li
1fc3614d7c Merge pull request #6096 from ioito/automated-cherry-pick-of-#6095-upstream-release-3.2
Automated cherry pick of #6095: fix: 普通用户可获取rds账号密码
2020-04-29 13:08:07 +08:00
Zexi Li
3b94a82dc4 Merge pull request #6110 from ioito/automated-cherry-pick-of-#6109-upstream-release-3.2
Automated cherry pick of #6109: fix: 避免gcp创建创建文件夹失败
2020-04-29 13:07:32 +08:00
Zexi Li
7a4096c733 Merge pull request #6117 from swordqiu/automated-cherry-pick-of-#6116-upstream-release-3.2
Automated cherry pick of #6116: fix: export files complain duplicate field name error
2020-04-29 13:06:38 +08:00
Qiu Jian
eb67eb6346 fix: cloud-account-usage vpc/storage not accurate 2020-04-29 01:16:18 +08:00
Qiu Jian
ac4832ebf2 fix: export files complain duplicate field name error 2020-04-29 00:56:07 +08:00
yunion-ci-robot
4cdb7513a0 Merge pull request #6104 from ioito/automated-cherry-pick-of-#6103-upstream-release-3.2
Automated cherry pick of #6103: fix: 修复openstack存储同步问题
2020-04-28 23:41:35 +08:00
Qiu Jian
3713cfd967 fix: prevent policy violation 2020-04-28 23:37:26 +08:00
Qu Xuan
ff0e90a593 fix: 避免gcp创建创建文件夹失败 2020-04-28 20:50:31 +08:00
Zexi Li
e4f57eebe0 Merge pull request #6093 from wanyaoqi/automated-cherry-pick-of-#6092-upstream-release-3.2
Automated cherry pick of #6092: gpu host enable huge page
2020-04-28 16:05:23 +08:00
Qu Xuan
d6ae5042b0 fix: 修复openstack存储同步问题 2020-04-28 14:47:34 +08:00
Rain
76788bfa9d fix/as: Set ScalingPolicy's project as its ScalingGroup's project 2020-04-28 11:18:23 +08:00
Rain
f9fcb5e73f fix/autoscaling: Chang the format of CoolingTime 2020-04-28 11:18:23 +08:00
Qu Xuan
c3f13225cd fix: 普通用户可获取rds账号密码 2020-04-28 10:41:08 +08:00
Zexi Li
deac1a9ea4 Merge pull request #6086 from yousong/automated-cherry-pick-of-#6085-upstream-release-3.2
Automated cherry pick of #6085: region: cloudaccounts: re-validate only when proxysetting changed
2020-04-27 20:59:28 +08:00
Zexi Li
396f099098 Merge pull request #6091 from yousong/automated-cherry-pick-of-#6090-upstream-release-3.2
Automated cherry pick of #6090: vpcagent: tmp replacement for db.FindByIndex()
2020-04-27 20:52:19 +08:00
Yousong Zhou
6d9a5c2a70 vpcagent: ad-hoc replacement for db.FindByIndex() 2020-04-27 20:07:34 +08:00
wanyaoqi
41aceac04d gpu host enable huge page 2020-04-27 20:04:03 +08:00
Yousong Zhou
29dcd54f4a region: cloudaccounts: re-validate only when proxysetting changed 2020-04-27 17:36:29 +08:00
Zexi Li
f8a2f31373 Merge pull request #6076 from yousong/automated-cherry-pick-of-#6075-upstream-release-3.2
Automated cherry pick of #6075: vpcagent: work around nics of pending deleted guest
2020-04-27 17:19:02 +08:00
Zexi Li
95aa4a91fe Merge pull request #6080 from ioito/automated-cherry-pick-of-#6079-upstream-release-3.2
Automated cherry pick of #6079: fix: gcp fake region status
2020-04-27 17:17:46 +08:00
Zexi Li
1212dad5b3 Merge pull request #6078 from swordqiu/automated-cherry-pick-of-#6077-upstream-release-3.2
Automated cherry pick of #6077: fix: cloudaccount usage region/zone count not accurate
2020-04-27 17:17:06 +08:00
Zexi Li
36c64afcec Merge pull request #6026 from zhaoxiangchun/automated-cherry-pick-of-#6024-upstream-release-3.2
Automated cherry pick of #6024: lb 负载均衡优化建议
2020-04-27 17:16:18 +08:00
Zexi Li
f90bd32c61 Merge pull request #6082 from wanyaoqi/automated-cherry-pick-of-#6081-upstream-release-3.2
Automated cherry pick of #6081: fix exsi convert disk path
2020-04-27 17:14:34 +08:00
Yousong Zhou
12e9bcca0e vpcagent: models: allow guest to have multiple vpc nics 2020-04-27 17:13:44 +08:00
Yousong Zhou
95ada0fe55 vpcagent: work around nics of pending deleted guest 2020-04-27 17:13:44 +08:00
Zexi Li
933368b4b2 Merge pull request #6069 from ioito/automated-cherry-pick-of-#6068-upstream-release-3.2
Automated cherry pick of #6068: fix: gcp use project name for cloudprovider
2020-04-27 16:03:18 +08:00
wanyaoqi
16af1a4dc0 fix exsi convert disk path 2020-04-27 15:58:09 +08:00
Qu Xuan
06d47bba43 fix: gcp fake region status 2020-04-27 15:56:39 +08:00
Qiu Jian
eb401bd1f8 fix: cloudaccount usage region/zone count not accurate 2020-04-27 15:53:27 +08:00
yunion-ci-robot
81ea86885e Merge pull request #6074 from rainzm/automated-cherry-pick-of-#6073-upstream-release-3.2
Automated cherry pick of #6073: fix/notify: remove 'v2' from email verify url
2020-04-27 14:38:32 +08:00
Qu Xuan
fcb817033c fix: gcp use project name for cloudprovider 2020-04-27 14:16:25 +08:00
Zexi Li
dc43158b59 Merge pull request #6061 from wanyaoqi/automated-cherry-pick-of-#5853-upstream-release-3.2
Automated cherry pick of #5853: host health check
2020-04-27 12:55:14 +08:00
Zexi Li
ce1eef35bd Merge pull request #6063 from rainzm/automated-cherry-pick-of-#6062-upstream-release-3.2
Automated cherry pick of #6062: fix/notify: Add deadline for rpc client
2020-04-27 12:48:02 +08:00
yunion-ci-robot
a6e7042a09 Merge pull request #6045 from tb365/automated-cherry-pick-of-#6041-upstream-release-3.2
Automated cherry pick of #6041: yunionapi reset password fix
2020-04-27 12:12:32 +08:00
Rain
77d4a0ee77 fix/notify: remove 'v2' from email verify url 2020-04-27 11:33:41 +08:00
Zexi Li
5b00f25dc8 Merge pull request #6060 from swordqiu/automated-cherry-pick-of-#6059-upstream-release-3.2
Automated cherry pick of #6059: fix: cloud-account/provider usage not accurate
2020-04-27 10:55:16 +08:00
Zexi Li
587eade0a4 Merge pull request #6053 from wanyaoqi/automated-cherry-pick-of-#6052-upstream-release-3.2
Automated cherry pick of #6052: host fix cmt bound, minor fix
2020-04-27 10:54:55 +08:00
Zexi Li
dc8d122394 Merge pull request #6051 from swordqiu/automated-cherry-pick-of-#6050-upstream-release-3.2
Automated cherry pick of #6050: feature: make baremetal options managed by service config
2020-04-27 10:53:42 +08:00
Zexi Li
9bef06b319 Merge pull request #6055 from rainzm/automated-cherry-pick-of-#6054-upstream-release-3.2
Automated cherry pick of #6054: Fix/auto scaling & guest template
2020-04-27 10:52:12 +08:00
Rain
778b619a59 fix/notify: Add deadline for rpc client 2020-04-27 10:43:54 +08:00
wanyaoqi
342f963e6e host health check 2020-04-27 10:32:34 +08:00
Qiu Jian
1a61a8445f fix: cloud-account/provider usage not accurate 2020-04-27 02:13:18 +08:00
tangbin
3e722dd487 yunionapi reset password fix 2020-04-26 21:50:18 +08:00
Qiu Jian
6d263c3bd1 feature: make baremetal options managed by service config 2020-04-26 21:28:48 +08:00
Zexi Li
3d0e842825 Merge pull request #6046 from tb365/automated-cherry-pick-of-#6042-upstream-release-3.2
Automated cherry pick of #6042: huawei elb cookie timeout fix
2020-04-26 21:06:22 +08:00
Rain
5ed62e22d8 fix/autoscaling: Change Sunday as 7 from 0 2020-04-26 21:05:25 +08:00
Rain
a31c64e726 fix/guesttemplate: Change ResetPassword as true default 2020-04-26 21:05:25 +08:00
Rain
e6c9d50bf3 fix/autoscaling: fix some problem
1. ScalingGroupGuestManger.Query 默认添加 NotEqual(...)
2. ScalingGroup.Scale 扩大锁的粒度,更新冷却时间也挪到这里面
3. climc 中增加 scaling-group-show
2020-04-26 21:05:25 +08:00
Zexi Li
2116475c9f Merge pull request #6021 from swordqiu/automated-cherry-pick-of-#6020-upstream-release-3.2
Automated cherry pick of #6020: fix: opslog FetchOwnerId fail
2020-04-26 21:04:55 +08:00
Zexi Li
5f3009c157 Merge pull request #6023 from yousong/automated-cherry-pick-of-#6022-upstream-release-3.2
Automated cherry pick of #6022: vpcagent: fend off non-onecloud-vpc guest nics
2020-04-26 21:04:42 +08:00
wanyaoqi
6b4c215d66 host fix cmt bound, minor fix 2020-04-26 20:57:07 +08:00
Zexi Li
aab70ad1b8 Merge pull request #6044 from tb365/automated-cherry-pick-of-#6040-upstream-release-3.2
Automated cherry pick of #6040: ctyun subnet create bugfix
2020-04-26 20:31:29 +08:00
tangbin
d3d46e81b3 aws elb health check type fix 2020-04-26 20:09:51 +08:00
tangbin
3f7b410bc2 huawei elb cookie timeout fix 2020-04-26 20:09:51 +08:00
tangbin
ce25fc43d6 ctyun subnet create bugfix 2020-04-26 20:08:42 +08:00
Zexi Li
0b138da714 Merge pull request #6019 from swordqiu/automated-cherry-pick-of-#6013-upstream-release-3.2
Automated cherry pick of #6013: fix: network allocation according to sharing status
2020-04-26 19:59:18 +08:00
Zexi Li
bc44cce0e1 Merge pull request #6039 from wanyaoqi/automated-cherry-pick-of-#6038-upstream-release-3.2
Automated cherry pick of #6038: misc bugfix:
2020-04-26 19:57:46 +08:00
yunion-ci-robot
479665c3fe Merge pull request #6012 from swordqiu/automated-cherry-pick-of-#6008-upstream-release-3.2
Automated cherry pick of #6008: fix: GetOnPremiseNetworkOfIP should return underlay networks
2020-04-26 19:50:31 +08:00
yunion-ci-robot
cd25cc9b33 Merge pull request #6037 from swordqiu/automated-cherry-pick-of-#6036-upstream-release-3.2
Automated cherry pick of #6036: fix: proxysetting attributes should be domain-settable
2020-04-26 19:47:32 +08:00
Yousong Zhou
16815d078d guestnetworks: try allocation of mapped addr on sync 2020-04-26 19:03:24 +08:00
Yousong Zhou
78d39efde7 region: vpcs_mapped_address: fix locking 2020-04-26 19:03:24 +08:00
Yousong Zhou
f2a777c977 region: vpcs_mapped_address: alloc guestnic mapped addr backwards 2020-04-26 19:03:24 +08:00
Yousong Zhou
b8fcf37883 guests: simplify code 2020-04-26 19:03:24 +08:00
Yousong Zhou
47ad14ea4c hostman: options: pack up a Parse() func 2020-04-26 19:03:24 +08:00
Yousong Zhou
1234fb46c5 vpcagent: fend off non-onecloud-vpc guest nics 2020-04-26 19:03:24 +08:00
wanyaoqi
127ce54503 misc bugfix:
- fix get details hosts
- save image enable generate_name
- network auto set dns
- fix servers filter by disk
2020-04-26 18:35:33 +08:00
Zexi Li
82f4f070ab Merge pull request #6029 from ioito/automated-cherry-pick-of-#6028-upstream-release-3.2
Automated cherry pick of #6028: fix: json unmarshal
2020-04-26 18:19:18 +08:00
Qiu Jian
5c42d6eb88 make DIRECT proxysettting default share to system 2020-04-26 17:34:41 +08:00
Qiu Jian
fe213d8bf7 fix: proxysetting attributes should be domain-settable 2020-04-26 17:34:41 +08:00
Zexi Li
8e57a5af9c Merge pull request #6025 from swordqiu/automated-cherry-pick-of-#6006-upstream-release-3.2
Automated cherry pick of #6006: fix: resolve parameter name conflict in google cloud account create input
2020-04-26 16:36:16 +08:00
Qu Xuan
bbeda23bf9 fix: json unmarshal 2020-04-26 15:51:51 +08:00
zhaoxiangchun
383517c0df lb 负载均衡优化建议
通过判断是否包含后端服务器组和后端服务实例进行判断
2020-04-26 11:43:27 +08:00
Qiu Jian
f835b55e4f fix: resolve parameter name conflict in google cloud account create input 2020-04-26 11:43:01 +08:00
Qiu Jian
87b0e7f48a fix: opslog FetchOwnerId fail 2020-04-26 11:37:04 +08:00
Qiu Jian
ca13731a58 fix: network allocation according to sharing status 2020-04-26 00:37:38 +08:00
yunion-ci-robot
d9ec66362e Merge pull request #6015 from zexi/automated-cherry-pick-of-#6014-upstream-release-3.2
Automated cherry pick of #6014: scheduler: fix network predicate get wrong free port
2020-04-26 00:32:31 +08:00
Zexi Li
02ec462b5d scheduler: fix network predicate get wrong free port 2020-04-25 23:24:15 +08:00
Qiu Jian
92d1d1f3a8 fix: GetOnPremiseNetworkOfIP should return underlay networks 2020-04-25 16:31:29 +08:00
Zexi Li
822838035b Merge pull request #6005 from swordqiu/automated-cherry-pick-of-#6004-upstream-release-3.2
Automated cherry pick of #6004: fix: dns name pattern revisited
2020-04-25 10:44:45 +08:00
Qiu Jian
fa820b8740 fix: dns name pattern revisited 2020-04-24 21:55:43 +08:00
yunion-ci-robot
c573880cc7 Merge pull request #5912 from yousong/automated-cherry-pick-of-#5911-upstream-release-3.2
Automated cherry pick of #5911: apis: add ovn distgw const definitions
2020-04-24 21:08:30 +08:00
Zexi Li
6c0f61becd Merge pull request #6003 from swordqiu/automated-cherry-pick-of-#6002-upstream-release-3.2
Automated cherry pick of #6002: fix: code autogen issues
2020-04-24 20:33:22 +08:00
Zexi Li
44e8a0843a Merge pull request #6000 from rainzm/automated-cherry-pick-of-#5978-upstream-release-3.2
Automated cherry pick of #5978: fix/autoscaling: Use UserCred's session but AdminSession to request monitor
2020-04-24 20:30:26 +08:00
Qiu Jian
cbf1818e5c fix: code autogen issues 2020-04-24 20:20:48 +08:00
Rain
87506a8140 fix/autoscaling: Add 'scaling_group_id' for server-list result 2020-04-24 19:39:11 +08:00
Rain
e01292274d fix/autoscaling: Add status 'pending_remove' for ScalingGroup_Guest
The status 'pending_remove' means that the guest described by
ScalingGroup_Guest has been pendingdeleted or deleted.
2020-04-24 19:39:11 +08:00
Rain
e6e95f31a7 fix/autoscaling: Change ScalingPolicy as VirtualResource 2020-04-24 19:39:11 +08:00
Rain
b28c1a0b63 fix/autoscaling: Use UserCred's session but AdminSession to request monitor 2020-04-24 19:39:11 +08:00
Yousong Zhou
96dcd83996 hostman: let sdnagent do port cleanup
ovsutils.CleanHiddenPorts() is buggy in that it has no regards for
patch ports
2020-04-24 18:32:40 +08:00
Yousong Zhou
8eb6c01ecd hostman: options: add ovn_mapped_bridge 2020-04-24 18:32:40 +08:00
Yousong Zhou
2588613598 hostman: options: add allow_xx_vms 2020-04-24 18:32:40 +08:00
Yousong Zhou
417cc017d9 vpcagent: ovn: use network.GuestDns when available 2020-04-24 18:32:40 +08:00
Yousong Zhou
96b58d0455 vpcagent: ovn: manage static routes 2020-04-24 18:32:40 +08:00
Yousong Zhou
5185e93413 vpcagent: ovn: guestnetwork: guard against empty dhcpopt 2020-04-24 18:32:40 +08:00
Yousong Zhou
8cad301846 vpcagent: ovn: rename subnet, guestnetwork ovn obj names 2020-04-24 18:32:40 +08:00
Yousong Zhou
4cb1fbbd8f vpcagent: ovn: use cmp() when claimVpc 2020-04-24 18:32:40 +08:00
Yousong Zhou
08ef2c5cf6 vpcagent: ovn: use cmp() 2020-04-24 18:32:40 +08:00
Yousong Zhou
09d6446d05 vpcagent: add cmp() for search and pre-cleanup 2020-04-24 18:32:40 +08:00
Yousong Zhou
12a79243e0 vpcagent: ovn: make host ls when claimVpc 2020-04-24 18:32:40 +08:00
Yousong Zhou
f9a4085a8f vpcagent: models: include guest, host 2020-04-24 18:32:40 +08:00
Yousong Zhou
6fcfd5a755 guests: always include host_id in desc 2020-04-24 18:32:40 +08:00
Yousong Zhou
012bdbce48 guestnetworks: add vpc id and mapped ip addr info to nic desc 2020-04-24 18:32:40 +08:00
Yousong Zhou
b772f95dbf guestnetworks,hosts: add alloc mapped ip addr for use in onecloud vpc 2020-04-24 18:32:40 +08:00
Yousong Zhou
38ccf7e056 apis: add ovn distgw const definitions 2020-04-24 18:32:40 +08:00
Zexi Li
da5e1e3bfe Merge pull request #5991 from ioito/automated-cherry-pick-of-#5918-upstream-release-3.2
Automated cherry pick of #5918: fix: 修复华为云eneterprise-project-list异常问题
2020-04-24 18:18:08 +08:00
Zexi Li
faf92ef201 Merge pull request #5996 from yousong/automated-cherry-pick-of-#5995-upstream-release-3.2
Automated cherry pick of #5995: lblistener: fix updating lblistener without backend_group field
2020-04-24 18:17:18 +08:00
Zexi Li
91fbb50060 Merge pull request #5994 from yousong/automated-cherry-pick-of-#5993-upstream-release-3.2
Automated cherry pick of #5993: cloudcommon: allow create:"domain" tag
2020-04-24 14:45:51 +08:00
Yousong Zhou
ba1a51c771 lblistener: fix updating lblistener without backend_group field
Fixes dd01610931 ("lblistener: allow setting http/https listener
backendgroup to empty")
2020-04-24 14:22:43 +08:00
Yousong Zhou
26b74b0873 cloudcommon: allow create:"domain" tag
Fixes panic: model manager hosts: column manager_uri has invalid tag
create:"domain", expecting [required optional domain_required
domain_optional admin_required admin_optional]
2020-04-24 14:20:13 +08:00
Qu Xuan
cbd3480309 fix: 修复华为云eneterprise-project-list异常问题 2020-04-24 14:11:25 +08:00
Zexi Li
9176aa3169 Merge pull request #5986 from ioito/automated-cherry-pick-of-#5985-upstream-release-3.2
Automated cherry pick of #5985: fix: 避免rds任务交叉运行
2020-04-24 14:11:02 +08:00
Zexi Li
bb571f40f6 Merge pull request #5987 from ioito/automated-cherry-pick-of-#5881-upstream-release-3.2
Automated cherry pick of #5881: fix: 阿里云资源组同步
2020-04-24 14:10:09 +08:00
Zexi Li
89507e2576 Merge pull request #5989 from ioito/automated-cherry-pick-of-#5903-upstream-release-3.2
Automated cherry pick of #5903: fix: esxi disk project sync
2020-04-24 14:09:47 +08:00
Qu Xuan
5411324d3b fix: esxi disk project sync 2020-04-24 11:34:46 +08:00
Qu Xuan
9e22edbc08 VMware resource pool同步 2020-04-24 11:32:05 +08:00
Qu Xuan
99353d2676 fix: 华为企业项目映射同步 2020-04-24 11:32:05 +08:00
Qu Xuan
8735d4c737 fix: 阿里云资源组同步 2020-04-24 11:32:05 +08:00
Qu Xuan
8c01ba2165 fix: 避免rds任务交叉运行 2020-04-24 11:29:13 +08:00
Zexi Li
afbd1359f2 Merge pull request #5983 from swordqiu/automated-cherry-pick-of-#5982-upstream-release-3.2
Automated cherry pick of #5982: fix: domain resources' field tags should changed to domain tags
2020-04-24 11:15:16 +08:00
Zexi Li
de3e335774 Merge pull request #5972 from swordqiu/automated-cherry-pick-of-#5960-upstream-release-3.2
Automated cherry pick of #5960: fix: opslog create fail
2020-04-24 01:37:38 +08:00
Zexi Li
6ad425e395 Merge pull request #5976 from ioito/automated-cherry-pick-of-#5975-upstream-release-3.2
Automated cherry pick of #5975: fix: 添加cloudevent过滤参数
2020-04-24 01:36:19 +08:00
Zexi Li
b46bf918be Merge pull request #5980 from ioito/automated-cherry-pick-of-#5979-upstream-release-3.2
Automated cherry pick of #5979: fix: cloudevent使用代理优化
2020-04-24 01:35:24 +08:00
Qiu Jian
01a2195c20 fix: domain resources' field tags should changed to domain tags 2020-04-23 22:13:47 +08:00
yunion-ci-robot
87995e2533 Merge pull request #5974 from tb365/automated-cherry-pick-of-#5973-upstream-release-3.2
Automated cherry pick of #5973: aliyun create elb listener fix
2020-04-23 20:24:52 +08:00
Qu Xuan
3363f091b0 fix: cloudevent使用代理优化 2020-04-23 17:53:44 +08:00
Qu Xuan
d071aa1408 fix: 添加cloudevent过滤参数 2020-04-23 17:13:02 +08:00
tangbin
ee392ac8f3 aliyun create elb listener fix 2020-04-23 16:35:08 +08:00
yunion-ci-robot
ab151f0f29 Merge pull request #5938 from ioito/automated-cherry-pick-of-#5915-upstream-release-3.2
Automated cherry pick of #5915: fix: 自动创建项目
2020-04-23 13:40:53 +08:00
Qiu Jian
96ac8267ab fix: opslog create fail 2020-04-23 11:17:51 +08:00
Zexi Li
b65dc463bc Merge pull request #5970 from swordqiu/automated-cherry-pick-of-#5966-upstream-release-3.2
Automated cherry pick of #5966: supermicro redfish support
2020-04-23 09:56:43 +08:00
Qiu Jian
6059e14fe1 supermicro redfish support 2020-04-23 09:32:37 +08:00
Zexi Li
1abed1f794 Merge pull request #5929 from yousong/automated-cherry-pick-of-#5928-upstream-release-3.2
Automated cherry pick of #5928: lbagent: fend off unexpected resources just in case
2020-04-23 00:07:05 +08:00
Zexi Li
3775608d93 Merge pull request #5959 from wanyaoqi/automated-cherry-pick-of-#5958-upstream-release-3.2
Automated cherry pick of #5958: fix check ca cert
2020-04-23 00:05:50 +08:00
Zexi Li
dfa1f7c0bc Merge pull request #5946 from rainzm/automated-cherry-pick-of-#5944-upstream-release-3.2
Automated cherry pick of #5944: fix(region): Add implements about owner for ScalingPolicy and ScalingActivity
2020-04-23 00:04:23 +08:00
Zexi Li
05e88b971a Merge pull request #5962 from swordqiu/automated-cherry-pick-of-#5961-upstream-release-3.2
Automated cherry pick of #5961: fix: clean pending usage caused by pre-validate-create-data
2020-04-23 00:03:06 +08:00
Zexi Li
e2499d23b8 Merge pull request #5925 from swordqiu/automated-cherry-pick-of-#5921-upstream-release-3.2
Automated cherry pick of #5921: fix: FindAnonymousStructPoint needs input as a pointer to struct
2020-04-23 00:02:33 +08:00
Zexi Li
f867795011 Merge pull request #5920 from ioito/automated-cherry-pick-of-#5919-upstream-release-3.2
Automated cherry pick of #5919: fix: 非私有云同步region name
2020-04-22 23:59:36 +08:00
Zexi Li
1e0594c3d5 Merge pull request #5957 from wanyaoqi/automated-cherry-pick-of-#5956-upstream-release-3.2
Automated cherry pick of #5956: support sync disk snapshot status
2020-04-22 23:58:35 +08:00
Zexi Li
6426b8a031 Merge pull request #5933 from ioito/automated-cherry-pick-of-#5931-upstream-release-3.2
Automated cherry pick of #5931: fix: 转换非标准存储类型到lrs
2020-04-22 23:57:25 +08:00
Zexi Li
28937f42e8 Merge pull request #5947 from tb365/automated-cherry-pick-of-#5945-upstream-release-3.2
Automated cherry pick of #5945: huawei elb sync vpc
2020-04-22 23:55:33 +08:00
Zexi Li
124edf9790 Merge pull request #5955 from zexi/automated-cherry-pick-of-#5951-upstream-release-3.2
Automated cherry pick of #5951: baremetal: ensure power up add retries
2020-04-22 23:51:28 +08:00
Qiu Jian
f145b360d6 fix: clean pending usage caused by pre-validate-create-data 2020-04-22 23:40:28 +08:00
yunion-ci-robot
ca7be6fa79 Merge pull request #5942 from tb365/automated-cherry-pick-of-#5927-upstream-release-3.2
Automated cherry pick of #5927: remove aws invalid backendgroup
2020-04-22 23:05:06 +08:00
wanyaoqi
4cf299b0fd fix check ca cert 2020-04-22 22:07:32 +08:00
yunion-ci-robot
6af24165fe Merge pull request #5883 from wanyaoqi/automated-cherry-pick-of-#5879-upstream-release-3.2
Automated cherry pick of #5879: keystone store service cert
2020-04-22 22:06:51 +08:00
wanyaoqi
034b546b16 support sync disk snapshot status 2020-04-22 20:53:47 +08:00
Zexi Li
3b01b23f79 baremetal: ensure power up add retries 2020-04-22 20:41:47 +08:00
tangbin
9f83fefc11 huawei elb sync vpc 2020-04-22 20:30:17 +08:00
Rain
fb1a399f09 fix(region): Add implements about owner for ScalingPolicy and ScalingActivity 2020-04-22 20:28:31 +08:00
Qiu Jian
7bc617fdcd fix: lb FetchCustomizedColumes fixes 2020-04-22 20:20:50 +08:00
Qiu Jian
dc69693c3d fix: is_managed filter is not accurate 2020-04-22 20:20:50 +08:00
Qiu Jian
70804c5cde fix: FindAnonymousStructPoint needs input as a pointer to struct 2020-04-22 20:20:50 +08:00
tangbin
5a2e7ef414 remove aws invalid backendgroup 2020-04-22 19:01:59 +08:00
Qu Xuan
e908f8114d fix: 自动创建项目 2020-04-22 18:56:36 +08:00
Qu Xuan
7dee2a1569 fix: 转换非标准存储类型到lrs 2020-04-22 18:54:05 +08:00
Yousong Zhou
b5183ca9ab lbagent: fend off unexpected resources just in case
As resource we do not know whether they are bad, but surely we know
they are not what we expect
2020-04-22 18:50:30 +08:00
Qu Xuan
12df8c099f fix: 非私有云同步region name 2020-04-22 17:59:40 +08:00
Zexi Li
af2abeec78 Merge pull request #5917 from rainzm/automated-cherry-pick-of-#5916-upstream-release-3.2
Automated cherry pick of #5916: fix(host): No tag when tag's value is empty
2020-04-22 17:41:12 +08:00
Zexi Li
7ad3c66a84 Merge pull request #5914 from rainzm/automated-cherry-pick-of-#5913-upstream-release-3.2
Automated cherry pick of #5913: fix(region): Fix problems for Auto Scaling
2020-04-22 17:38:22 +08:00
Rain
05c42c1081 fix(host): No tag when tag's value is empty 2020-04-22 16:48:53 +08:00
wanyaoqi
bffb8eec65 keystone store service cert 2020-04-22 16:37:02 +08:00
Rain
0bf450a384 fix(region): Fix problems for Auto Scaling
1. ScalingPolicyManager and ScalingActivityManager override ResourceScope.
2. Change 'tenant' as 'project_id' before requesting to forcast.
2020-04-22 16:32:01 +08:00
Zexi Li
20d36f97ef Merge pull request #5901 from ioito/automated-cherry-pick-of-#5900-upstream-release-3.2
Automated cherry pick of #5900: fix: 尽量避免因代理问题导致google request异常
2020-04-22 15:12:14 +08:00
Zexi Li
cf158ea2db Merge pull request #5905 from swordqiu/automated-cherry-pick-of-#5904-upstream-release-3.2
Automated cherry pick of #5904: fix: do not share porject resource by default
2020-04-22 15:10:06 +08:00
Zexi Li
f7a4164243 Merge pull request #5907 from swordqiu/automated-cherry-pick-of-#5906-upstream-release-3.2
Automated cherry pick of #5906: fix: blacklist keystone reset admin password
2020-04-22 15:06:53 +08:00
Qiu Jian
41eb37d64e fix: blacklist keystone reset admin password 2020-04-22 15:02:21 +08:00
Qiu Jian
9ee568b7b8 fix: do not share porject resource by default 2020-04-22 11:52:27 +08:00
Qu Xuan
b0b58648a6 fix: 尽量避免因代理问题导致google request异常 2020-04-22 10:48:26 +08:00
Zexi Li
04879cbc2f Merge pull request #5894 from swordqiu/automated-cherry-pick-of-#5890-upstream-release-3.2
Automated cherry pick of #5890: fix: policy details should carry updated_at and created_at fields
2020-04-22 10:39:32 +08:00
Zexi Li
058dd98a6c Merge pull request #5899 from swordqiu/automated-cherry-pick-of-#5895-upstream-release-3.2
Automated cherry pick of #5895: fix: delete idp also delete users/groups in target domain
2020-04-22 10:34:13 +08:00
Zexi Li
d3caf76dd1 Merge pull request #5885 from ioito/automated-cherry-pick-of-#5884-upstream-release-3.2
Automated cherry pick of #5884: fix: 仅当变更domainId时才需要更新projectId
2020-04-22 10:32:33 +08:00
Qiu Jian
895f161417 fix: delete idp also delete users/groups in target domain 2020-04-22 10:17:58 +08:00
Qiu Jian
f0ab47058f fix: policy details should carry updated_at and created_at fields 2020-04-21 22:44:07 +08:00
Qu Xuan
db8783a51b fix: 仅当变更domainId时才需要更新projectId 2020-04-21 21:14:12 +08:00
Zexi Li
fd67654377 Merge pull request #5876 from swordqiu/automated-cherry-pick-of-#5875-upstream-release-3.2
Automated cherry pick of #5875: fix: list item export recode
2020-04-21 13:03:57 +08:00
Qiu Jian
0edfe50985 fix: list item export recode 2020-04-21 11:46:47 +08:00
Zexi Li
ec78017902 Merge pull request #5874 from swordqiu/automated-cherry-pick-of-#5873-upstream-release-3.2
Automated cherry pick of #5873: fix: cloudaccount is created as system shared by default
2020-04-21 10:27:51 +08:00
Zexi Li
aa01f99ec2 Merge pull request #5878 from swordqiu/automated-cherry-pick-of-#5877-upstream-release-3.2
Automated cherry pick of #5877: fix: adjust scope of isolated_device and reservedips
2020-04-21 10:25:00 +08:00
Qiu Jian
0427445167 fix: adjust scope of isolated_device and reservedips 2020-04-21 00:37:27 +08:00
Qiu Jian
2f6798036f fix: cloudaccount is created as system shared by default 2020-04-20 22:48:50 +08:00
Zexi Li
59b209bec3 Merge pull request #5857 from ioito/automated-cherry-pick-of-#5856-upstream-release-3.2
Automated cherry pick of #5856: fix: show sql connection error
2020-04-20 20:55:32 +08:00
Zexi Li
972cbb15c7 Merge pull request #5855 from rainzm/automated-cherry-pick-of-#5854-upstream-release-3.2
Automated cherry pick of #5854: fix(region): Add CustomizeListFilter for snapshotpolicy
2020-04-20 20:54:41 +08:00
Zexi Li
fae2a304d5 Merge pull request #5871 from rainzm/automated-cherry-pick-of-#5870-upstream-release-3.2
Automated cherry pick of #5870: fix(region): Fix problems for Auto Scaling
2020-04-20 20:53:39 +08:00
Zexi Li
0c2dfa3027 Merge pull request #5864 from zhaoxiangchun/automated-cherry-pick-of-#5863-upstream-release-3.2
Automated cherry pick of #5863: 优化邮件格式
2020-04-20 20:53:07 +08:00
Zexi Li
5272cd132f Merge pull request #5869 from tb365/automated-cherry-pick-of-#5865-upstream-release-3.2
Automated cherry pick of #5865: lblis & lbbg & lbr & lbb create add fetch owner id
2020-04-20 20:51:28 +08:00
zhaoxiangchun
bcce808981 优化邮件格式
1.邮件主题中的报警级别和web页面进行对应
2.向onecloud发送邮件时,通过html/template进行格式化
2020-04-20 20:35:30 +08:00
Rain
bccb6d10eb fix(region): Fix problems for Auto Scaling
1. 支持 scaling group 根据 enable 过滤
2. 周期策略返回开始时间
3. scaling controller 在创建机器之前先调用 scheduler 的 forcast 接口
4. 修复健康状态检查的一个问题
2020-04-20 19:42:51 +08:00
tangbin
c59c4e314a lblis & lbbg & lbr & lbb create add fetch owner id 2020-04-20 19:31:42 +08:00
Rain
6506002703 fix(region): Add CustomizeListFilter for snapshotpolicy 2020-04-20 17:34:25 +08:00
Qu Xuan
58e2d71f15 fix: show sql connection error 2020-04-20 16:49:32 +08:00
Zexi Li
76ee769eaf Merge pull request #5852 from rainzm/fix/auto_scaling4
fix(region): Fix some problem for Auto Scaling
2020-04-18 16:28:22 +08:00
Zexi Li
b48ee44462 Merge pull request #5850 from swordqiu/hotfix/qj-project-domain-name-revisit
fix: allow any character in project/domain name, giveup displayname
2020-04-18 16:27:35 +08:00
Qiu Jian
eef113b927 fix: allow any character in project/domain name, giveup displayname 2020-04-18 15:33:53 +08:00
Rain
03868d28b5 fix(region): Fix some problem for Auto Scaling
1. 主机组的 vpc 和 backendgroup 可以为空,修复了使用 brand
过滤出现的问题
2. ScalingPolicy 的执行,区分手动和非手动
3. 拒绝执行或者执行失败的 ScalingAvtivity 不刷新冷却时间
4. 告警策略增加 Cycle 的检查和默认值
5. 修复 monitor 的一个数组越界问题
2020-04-18 14:13:43 +08:00
Zexi Li
d4f2639eff Merge pull request #5845 from swordqiu/hotfix/qj-cloud-provider-sync-region-nopanic
fix: cloudproviderregion sync ignore panic
2020-04-18 12:01:36 +08:00
Zexi Li
bcb6ff032f Merge pull request #5844 from rainzm/fix/vmware_template
feat(esxi): Set MinRawSize as 0 for vmware template
2020-04-18 12:00:58 +08:00
Zexi Li
4830476680 Merge pull request #5840 from tb365/bugfix/tb-bugfix-0417
Bugfix/tb bugfix 0417
2020-04-18 11:59:24 +08:00
yunion-ci-robot
579ae25a38 Merge pull request #5839 from swordqiu/hotfix/qj-proxy-seting-minor-fix
fix: proxy setting input minor bugfix
2020-04-17 22:25:03 +08:00
Qiu Jian
242d59d7f5 fix: cloudproviderregion sync ignore panic 2020-04-17 21:59:43 +08:00
Rain
d73654aec3 feat(esxi): Set MinRawSize as 0 for vmware template 2020-04-17 20:47:55 +08:00
TangBin
3314b22390 huawei oss client bugfix 2020-04-17 20:33:21 +08:00
TangBin
b17fb2c94c huawei oss client fix & huawei client init fix 2020-04-17 19:50:46 +08:00
tangbin
ab59e425df aws elb create bugfix 2020-04-17 18:05:10 +08:00
Qiu Jian
2e45711ce2 fix: proxy setting input minor bugfix 2020-04-17 11:15:53 +08:00
Zexi Li
729f8f175f Merge pull request #5838 from swordqiu/hotfix/qj-decouple-climc-webconsole
fix: decouple climc and webconsole, make climc windows buildable
2020-04-17 10:28:35 +08:00
Qiu Jian
7eae94d0c1 fix: decouple climc and webconsole, make climc windows buildable 2020-04-17 01:15:29 +08:00
Zexi Li
470f7a3750 Merge pull request #5815 from ioito/hotfix/qx-cloudprovider-quota-details
fix: 订阅配额详情返回
2020-04-17 00:07:40 +08:00
Zexi Li
8f97c68063 Merge pull request #5832 from yousong/bugfix/yousong-vpcagent
cloudcommon: resourcebase: allow list fields "deleted"
2020-04-17 00:07:08 +08:00
Zexi Li
5212241fa3 Merge pull request #5817 from swordqiu/hotfix/qj-remove-notify-verify-email-url-path
fix: remove notify option VerifyEmailUrlPath
2020-04-17 00:06:43 +08:00
Zexi Li
adae2b8fe0 Merge pull request #5823 from ioito/hotfix/qx-rds-zone
fix: 添加rds zone name详情
2020-04-17 00:06:26 +08:00
Zexi Li
5a658a9bb8 Merge pull request #5818 from swordqiu/hotfix/qj-non-redfish-jnlp-console
fix: non-redfish baremetal might support jnlp console
2020-04-17 00:04:31 +08:00
Zexi Li
ce0e4ce0c6 Merge pull request #5825 from ioito/hotfix/qx-secgroup-dup-name
fix: 尽量避免secgroup重名问题
2020-04-17 00:02:25 +08:00
Zexi Li
743529edf9 Merge pull request #5831 from zhaoxiangchun/bugfix/zxc-mon-azure
修复azure获取不到监控数据的问题
2020-04-17 00:00:45 +08:00
Zexi Li
a533f0c1f9 Merge pull request #5836 from swordqiu/hotfix/qj-cas-project-name-regexp-issue
fix: cas auto create project fetch failure
2020-04-16 23:59:33 +08:00
Zexi Li
bafda507dd Merge pull request #5791 from swordqiu/hotfix/qj-server-list-provider-filter
Hotfix/qj server list provider filter
2020-04-16 23:58:53 +08:00
Qiu Jian
98fcd1df0f fix: deprecated-by => yunion:deprecated-by 2020-04-16 23:24:56 +08:00
Qiu Jian
5651805eb0 update vendor 2020-04-16 23:23:55 +08:00
Qiu Jian
cdd239eab5 fix: server-list filter by provider VMware returns no results and update
vendor
2020-04-16 23:23:24 +08:00
yunion-ci-robot
d0bf11a345 Merge pull request #5811 from yousong/bugfix/yousong-lbagent
region: lbagents: default to using public type endpoint of influxdb
2020-04-16 23:21:04 +08:00
Qiu Jian
d5b3ae9f98 fix: cas auto create project fetch failure 2020-04-16 22:19:10 +08:00
Yousong Zhou
fed8b386b8 cloudcommon: resourcebase: allow list fields "deleted"
Required for deriving deleted event

Fixes 3c9b368c43 ("feature: fix region list filters round 3")
2020-04-16 19:50:57 +08:00
zhaoxiangchun
8fe0865719 修复azure获取不到监控数据的问题 2020-04-16 18:47:48 +08:00
Zexi Li
b62f6feb74 Merge pull request #5805 from ioito/hotfix/qx-rds-sku-list-optimized
fix: 优化rds sku list查询速度
2020-04-16 18:01:05 +08:00
Zexi Li
8628c4113c Merge pull request #5711 from zhaoxiangchun/feature/zxc-suggest-mon
优化建议
2020-04-16 17:58:09 +08:00
Zexi Li
b16d545e84 Merge pull request #5824 from zexi/feature/add-swagger-site
makefile: add swagger-site
2020-04-16 16:41:30 +08:00
Qu Xuan
466e8ff8d7 fix: 尽量避免secgroup重名问题 2020-04-16 16:39:20 +08:00
Zexi Li
a7b7a97aac makefile: add swagger-site 2020-04-16 16:38:11 +08:00
zhaoxiangchun
89640938f0 新加diskunused的监控
1.suggestsys_const.go 中定义规则和资源列表中涉及到一些常量
2.suggestsysalart.go 1)新增一些列来匹配重用过滤;2)
进行删除相关操作时,通过task处理;
3.driverconfig.go 中包含目前driver中可以共用的函数
4.suggestsysruledrivers.go 调整driver interface 涉及的函数
2020-04-16 16:37:46 +08:00
Qu Xuan
db12cd0c3e fix: 添加rds zone name详情 2020-04-16 16:12:27 +08:00
Qiu Jian
309addc00a fix: non-redfish baremetal might support jnlp console 2020-04-15 23:35:12 +08:00
Qiu Jian
068ea26c8d fix: remove notify option VerifyEmailUrlPath 2020-04-15 23:02:59 +08:00
yunion-ci-robot
1284538005 Merge pull request #5804 from ioito/bugfix/qx-capability-storage-vcapability
fix: 修复vcapability计算错误
2020-04-15 20:33:01 +08:00
yunion-ci-robot
f7235c3316 Merge pull request #5810 from ioito/hotfix/qx-doc-joint-filter
fix: api文档描述更正
2020-04-15 20:26:02 +08:00
yunion-ci-robot
886b903407 Merge pull request #5816 from ioito/bugfix/qx-guest-auto-renew
fix: 设置自动续费任务异常
2020-04-15 20:21:57 +08:00
Qu Xuan
4cb3381c04 fix: 设置自动续费任务异常 2020-04-15 20:04:00 +08:00
Qu Xuan
bb87ac5771 fix: 订阅配额详情返回 2020-04-15 19:45:57 +08:00
yunion-ci-robot
16d179240d Merge pull request #5814 from tb365/feature/tb-add-host-node-sum-api
hosts add node count api
2020-04-15 19:24:54 +08:00
tangbin
673364ae48 hosts add node count api 2020-04-15 18:19:00 +08:00
Qu Xuan
cf533816b9 fix: 优化rds sku list查询速度 2020-04-15 18:01:18 +08:00
Yousong Zhou
6b0a97c6fb region: buckets: use identity_apis.EndpointInterfacePublic 2020-04-15 17:59:11 +08:00
Yousong Zhou
59b143f905 image: use identity_apis.EndpointInterfacePublic 2020-04-15 17:59:11 +08:00
Yousong Zhou
babb7ae742 region: lbagents: default to using public type endpoint of influxdb 2020-04-15 17:59:11 +08:00
Qu Xuan
345b8f3f9d fix: api文档描述更正 2020-04-15 17:35:08 +08:00
Qu Xuan
f0960b4b35 fix: 修复vcapability计算错误 2020-04-15 17:05:31 +08:00
yunion-ci-robot
78e24ccd25 Merge pull request #5799 from rainzm/fix/auto_scaling3
Fix & Feature: Auto Scaling
2020-04-15 11:02:54 +08:00
Zexi Li
54fb6fabc0 Merge pull request #5800 from swordqiu/hotfix/qj-share-misc-bugfixes-20200414
fix: misc bugs about resource sharing
2020-04-15 10:34:59 +08:00
Zexi Li
dee12f94be Merge pull request #5794 from rainzm/fix/disk_snapshotpolicies
fix(region): Fix the snapshotpolicy info in DiskDetails
2020-04-14 22:41:21 +08:00
Zexi Li
6ec5d96d8b Merge pull request #5798 from zexi/feature/k8s-3.2-cli
climc: support k8s service v3.2
2020-04-14 22:40:42 +08:00
Qiu Jian
021ef662bb fix: misc bugs about resource sharing 2020-04-14 22:23:23 +08:00
Rain
b75b636901 feat: Add tag 'vm_scaling_group_id' for vm's monitor record 2020-04-14 20:51:03 +08:00
Rain
fbfff507dd fix(region): Fix problems of AutoScaling
1. Add List dispaly Params 'brand' and List filter Params 'brand' for
GuestTemplate and ScalingGroup.
2. ScalingActivity's list elem should be sorted in order by StartTime and EndTime
3. HealthCheckCycle and HealthCheckGov in ScalingGroup work now
4. Detach all ScalingGroup when pending delete Guest
5. If the scaling behavior of the scaling group fails n(n is 3 for now) times consecutively,
the controller will automatically disablet this group
6. Timer will trigger ScalingPolicy throught request but func call
2020-04-14 20:50:07 +08:00
Zexi Li
0b62292cd4 climc: support k8s service v3.2 2020-04-14 17:26:29 +08:00
Rain
de329f4a80 fix(region): Fix the snapshotpolicy info in DiskDetails 2020-04-14 15:38:08 +08:00
zhaoxiangchun
a42e9c9462 优化建议功能-未使用的eip
1.通过cronman 调用eipUnused相关的driver,查询未使用的eip
2.依据对步骤1中的中的数据,对资源列表就行create、update、delete进行三种类型的操作

deal with comments

gencopyright

climc for SuggestSysRule and SuggestSysAlert

monitor: fix sysrule related models not generated

eip未使用的监控参数结构调整
2020-04-14 15:37:01 +08:00
Zexi Li
9ff7f481b7 Merge pull request #5793 from swordqiu/feature/qj-cas-user-join-project-revisited
feature: cas user auto join designated project
2020-04-14 15:14:19 +08:00
Qiu Jian
57898da085 fixes: idp driver validate config support 2020-04-14 14:51:28 +08:00
Qiu Jian
9c498b2924 feature: cas user auto join designated project 2020-04-14 11:04:47 +08:00
Zexi Li
dd1149ded3 Merge pull request #5789 from yousong/bugfix/yousong-proxysetting
proxysetting: fix validating delete condition
2020-04-14 10:45:38 +08:00
Zexi Li
65553b03d3 Merge pull request #5785 from ioito/hotfix/qx-aliyun-err-optimized
fix: 避免aliyun access key不可用时返回NotFoundError错误
2020-04-14 10:44:50 +08:00
Zexi Li
a93b52d86f Merge pull request #5792 from swordqiu/feature/qj-cas-user-join-project
feature: cas user auto join designated project
2020-04-14 10:44:07 +08:00
Qiu Jian
8300ac3c08 feature: cas user auto join designated project 2020-04-14 08:27:00 +08:00
Qu Xuan
18106dce3a fix: 避免aliyun access key不可用时返回NotFoundError错误 2020-04-13 18:47:30 +08:00
Yousong Zhou
51d633c956 proxysetting: fix validating delete condition 2020-04-13 16:29:12 +08:00
Zexi Li
266a3bd043 Merge pull request #5757 from swordqiu/hotfix/qj-sync-resource-share-state
fix: sync resource's share state
2020-04-13 15:44:57 +08:00
yunion-ci-robot
991dc11a56 Merge pull request #5756 from swordqiu/hotfix/qj-proxy-setting-fixes
fix: 1. allow share proxysetting 2. claim proxsetting as domain resource
2020-04-13 15:33:52 +08:00
Qiu Jian
0a9eb7bdbe fix: 1. allow share proxysetting 2. claim proxsetting as domain resources 2020-04-13 15:13:15 +08:00
Zexi Li
ed3a51084d Merge pull request #5769 from wanyaoqi/bugfix/wyq/fix-generate-network-config
fix host init generate network config
2020-04-13 11:28:43 +08:00
Zexi Li
a3f3a43a81 Merge pull request #5759 from tb365/bugfix/tb-bugfix-0409
aws elb bugfix
2020-04-13 11:27:18 +08:00
Zexi Li
7523c7445c Merge pull request #5784 from rainzm/fix/auto_scaling2
fix: Fix problems about health check in auto scaling
2020-04-13 11:18:40 +08:00
Zexi Li
7a4da75323 Merge pull request #5773 from rainzm/feat/send_feishu
feat(notify): Add TNotifyChannel 'feishu'
2020-04-13 11:18:16 +08:00
Rain
1266fb5a16 fix: Fix problems about health check in auto scaling
1. Detach Guest with ScalingGroup
2. Health Check
2020-04-13 10:35:56 +08:00
tangbin
5faf0b53ac aws elb bugfix 2020-04-13 10:25:14 +08:00
Zexi Li
3da821172e Merge pull request #5749 from ioito/feautre/qx-policy
fix: support azure policy
2020-04-13 09:50:13 +08:00
Zexi Li
961ce14436 Merge pull request #5758 from ioito/hotfix/qx-network-delete-optimized
fix: 允许删除有预留ip的network
2020-04-13 09:49:59 +08:00
Zexi Li
5c77d047a2 Merge pull request #5780 from swordqiu/hotfix/qj-host-jnlp-request
fix: host jnlp request fail for idrac9
2020-04-13 09:49:01 +08:00
Qiu Jian
c8ff16471d fix: host jnlp request fail for idrac9 2020-04-12 23:17:59 +08:00
yunion-ci-robot
e0b9daa51a Merge pull request #5774 from ioito/hotfix/qx-azure-rebuild-root
fix: azure重装系统删除不必要的参数
2020-04-12 00:32:45 +08:00
Qu Xuan
3ebcee07eb fix: 允许删除有预留ip的network 2020-04-11 15:49:27 +08:00
Qu Xuan
c6a474e036 fix: support azure policy 2020-04-11 15:43:06 +08:00
Qu Xuan
9aec3a2769 fix: azure重装系统删除不必要的参数 2020-04-11 15:08:45 +08:00
Zexi Li
ae05100dd9 Merge pull request #5745 from swordqiu/feature/qj-idrac9-support
feature: redfish support IDRAC9 baremetal
2020-04-11 13:12:01 +08:00
Zexi Li
379cf65e89 Merge pull request #5746 from yousong/bugfix/yousong-proxysetting
proxysetting: add class level test action
2020-04-11 13:07:02 +08:00
Zexi Li
4945867f6c Merge pull request #5765 from yousong/bugfix/yousong-lbagent
region: lbagent: vrrp.advert_int must be the same inside cluster
2020-04-11 13:04:25 +08:00
Qiu Jian
f6f1917e1f feature: redfish support IDRAC9 baremetal 2020-04-11 12:59:55 +08:00
Qiu Jian
b9a239bd65 fix: sync sharing state 2020-04-11 06:50:48 +08:00
Qiu Jian
7bfdc0dce4 fix: cascading sharing problems 2020-04-11 06:49:55 +08:00
Qiu Jian
8e0bfac771 Makefile do not complain describe no tags 2020-04-11 06:49:13 +08:00
Qiu Jian
60a3de9d73 feature: make bucket sharable virtual resource 2020-04-11 06:49:13 +08:00
Qiu Jian
7a6cdc6e02 fix: sync resource's share state 2020-04-11 06:49:13 +08:00
Rain
2a72f35138 feat(notify): Add TNotifyChannel 'feishu' 2020-04-10 20:14:48 +08:00
Zexi Li
524ccc5c5f Merge pull request #5772 from swordqiu/hotfix/qj-conflict-username-error
fix: keystone username duplicate error should return 409
2020-04-10 17:46:13 +08:00
Zexi Li
22a8e3065c Merge pull request #5722 from ioito/hotfix/qx-metadata-deleted-count
fix: 不再统计已删除资源的标签数量
2020-04-10 17:45:43 +08:00
Yousong Zhou
74ceaa70e4 region: lbagent: vrrp.advert_int must be the same inside cluster 2020-04-10 15:53:19 +08:00
Qiu Jian
2eb748fb02 fix: keystone username duplicate error should return 409 2020-04-10 15:51:24 +08:00
wanyaoqi
df7c2ae84e fix host init generate network config 2020-04-10 15:48:26 +08:00
Zexi Li
14accd7731 Merge pull request #5764 from zexi/hotfix/swagger-for-monitor
codegen: add monitor
2020-04-10 15:48:00 +08:00
Zexi Li
b4ebd80d4c codegen: add monitor 2020-04-10 15:45:30 +08:00
Zexi Li
4c85b2e77e Merge pull request #5748 from ioito/hotfix/qx-storage-list
fix: storage-list 返回关联的host信息
2020-04-10 14:10:29 +08:00
Zexi Li
a850d070d5 Merge pull request #5750 from ioito/hotfix/qx-region-capability-optimized
fix: 优化region-capability速度
2020-04-10 14:09:53 +08:00
Zexi Li
204dbcad10 Merge pull request #5752 from rainzm/fix/auto_scaling1
fix(region): Fix some problem about auto scaling
2020-04-10 14:05:49 +08:00
yunion-ci-robot
2f993f664f Merge pull request #5760 from wanyaoqi/bugfix/wyq/is-public-add-create-optional-tah
is public add create optional tag
2020-04-10 14:01:42 +08:00
wanyaoqi
3c588b8be5 is public add create optional tag 2020-04-10 13:45:07 +08:00
yunion-ci-robot
e05e167e9d Merge pull request #5751 from rainzm/fix/guest_image
fix(glance): Fix the return value after creating guest image
2020-04-10 11:44:41 +08:00
Qu Xuan
9c5b27ce45 fix: 优化region-capability速度 2020-04-10 11:05:08 +08:00
yunion-ci-robot
bdb2705ea6 Merge pull request #5740 from yousong/bugfix/yousong-misc
region: lbagents: fix returning error when glob has no match
2020-04-10 09:51:41 +08:00
Rain
45865571c9 fix(region): Fix some problem about auto scaling
1. Add status 'creating' for ScalingPolicy.
2. Do nothing when call ScalingGroup.Scale when ScalingGroup is disable.
3. Change the obj about GuestDetachScalingGroupTask from Guest to
ScalingGroup.
4. Fix some problem about ScalingTimer and add test for its Update func.
5. Fix problem when ScalingTimer work in controller.
2020-04-09 21:43:21 +08:00
Rain
99bb00948b fix(glance): Fix the return value after creating guest image 2020-04-09 21:10:59 +08:00
Yousong Zhou
80f2fb3f99 proxysetting: add class level test action 2020-04-09 17:33:24 +08:00
Qu Xuan
de48dfd6c1 fix: storage-list 返回关联的host信息 2020-04-09 16:23:01 +08:00
yunion-ci-robot
de4ef97fd6 Merge pull request #5744 from ioito/hotfix/qx-capabilit-optimized
fix: 简化公有云存储信息返回
2020-04-09 14:51:43 +08:00
Qu Xuan
e7ef75bb5d fix: 简化公有云存储信息返回 2020-04-09 11:30:52 +08:00
Yousong Zhou
20e9b050bf region: lbagents: fix returning error when glob has no match 2020-04-09 11:06:11 +08:00
yunion-ci-robot
81fcf57570 Merge pull request #5720 from rainzm/fix/display_server_template
fix(region): Fix some display params about guest template
2020-04-09 10:56:41 +08:00
Zexi Li
a232321c18 Merge pull request #5729 from ioito/hotfix/qx-typo
fix: typo
2020-04-09 10:21:20 +08:00
Zexi Li
1b89dc07a4 Merge pull request #5739 from wanyaoqi/bugfix/wyq/fix-deployer-sigtrap-function
deployer: os.exit replace return on sigtrap
2020-04-09 10:21:02 +08:00
Zexi Li
fbdafd4ae2 Merge pull request #5737 from rainzm/fix/auto_scaling
fix(region): Fix problems about Auto Scaling
2020-04-09 10:20:20 +08:00
wanyaoqi
92940dae11 os.exit replace return on sigtrap 2020-04-08 23:01:54 +08:00
yunion-ci-robot
b3eb5fdb5c Merge pull request #5738 from wanyaoqi/bugfix/wyq/fix-deployer-sigtrap-function
fix deployer sigtrap funciton
2020-04-08 22:16:40 +08:00
Rain
e0cc7bf04f fix(region): Check and update ScalingActivities when controller init 2020-04-08 22:11:34 +08:00
wanyaoqi
a20daa1c11 fix deployer sigtrap funciton 2020-04-08 22:05:57 +08:00
Zexi Li
5c156297c7 Merge pull request #5726 from tb365/bugfix/tb-bugfix-0408
huawei&qcloud&huawei elb bugfix
2020-04-08 21:53:39 +08:00
Zexi Li
19c72ec786 Merge pull request #5731 from wanyaoqi/feature/wyq/optimize-capabilities
optimize capabilities
2020-04-08 21:52:34 +08:00
Zexi Li
b274871f7c Merge pull request #5733 from swordqiu/hotfix/qj-idp-log-event
fix: idp log connected/disconnected event
2020-04-08 21:51:36 +08:00
Zexi Li
62d1c0729b Merge pull request #5732 from swordqiu/hotfix/qj-service-config-show-self-config
fix: service-config-show shows service's own config
2020-04-08 21:49:06 +08:00
Rain
09797e3abe fix(region): Fix problems about Auto Scaling
1. Alarm 的创建统一使用 AdminSession
2. ScalingTimer 的更新有些问题
3. 创建的主机名称不应该包含大写字母
4. ScalingTimer 的描述有些问题
5. 绑定LB的时候少传递了一个参数
2020-04-08 21:47:56 +08:00
Qiu Jian
528decfa90 fix: idp log connected/disconnected event 2020-04-08 21:23:55 +08:00
Qiu Jian
1a9c0efc2d fix: service-config-show shows service's own config 2020-04-08 20:39:25 +08:00
wanyaoqi
d80f0baf04 optimize capabilities 2020-04-08 20:30:03 +08:00
Qu Xuan
fe5f3a0ed5 fix: typo 2020-04-08 20:12:21 +08:00
Zexi Li
3860e635e6 Merge pull request #5723 from swordqiu/hotfix/qj-list-details-missing-shared-attributes
fix: shared resource list details missing shared projects/domains attributes
2020-04-08 19:46:19 +08:00
Zexi Li
0b6eda9bb1 Merge pull request #5724 from yousong/bugfix/yousong-misc
db_dispatcher: default action log for create & update
2020-04-08 19:45:21 +08:00
Zexi Li
e012f21d00 Merge pull request #5721 from swordqiu/hotfix/qj-update-model-api-gen-20200408
model api gen
2020-04-08 19:44:14 +08:00
tangbin
0c0980d3f9 huawei&qcloud&huawei elb bugfix 2020-04-08 19:32:51 +08:00
Yousong Zhou
2bc16d6f05 climc: networks: remove stale dns related commands 2020-04-08 18:04:57 +08:00
Qiu Jian
fbf9d635c7 fix: shared resource list details missing shared projects/domains
attributes
2020-04-08 18:02:27 +08:00
Yousong Zhou
a10443975a climc: fix router-route-xx command description 2020-04-08 18:02:00 +08:00
Yousong Zhou
cd17d74933 climc: add command proxysetting-test 2020-04-08 18:00:39 +08:00
Yousong Zhou
805b1e189f proxysetting: add test api 2020-04-08 18:00:37 +08:00
Yousong Zhou
d2aae60bd1 apis: proxy: fix sanitizing empty proxy string 2020-04-08 17:08:27 +08:00
Yousong Zhou
2afb0f1854 climc: proxysetting-update: fix update option 2020-04-08 17:05:10 +08:00
Yousong Zhou
884a052070 db_dispatcher: default action log for create & update 2020-04-08 17:00:28 +08:00
Qiu Jian
88e3bb6e87 model api gen 2020-04-08 16:44:02 +08:00
Yousong Zhou
7366815163 lbagents: deploy: deploy public type auth_url 2020-04-08 16:36:02 +08:00
Qu Xuan
86383b5a5d fix: 不再统计已删除资源的标签数量 2020-04-08 16:28:16 +08:00
Rain
cbe9f84b6b fix(region): Fix some display params about guest template
1. GuestTemplate's brand is from its hypervisor.
2. GuestTemplate's secgroups is a array which from input.secgroups.
2020-04-08 14:54:07 +08:00
Zexi Li
8b9688a711 Merge pull request #5718 from swordqiu/hotfix/qj-role-policy-filter-by-owner-missing
fix: role/policy missing FilterByOwner implementation
2020-04-08 12:12:13 +08:00
Qiu Jian
4a3749d3f9 fix: role/policy missing FilterByOwner implementation 2020-04-08 02:32:05 +08:00
Zexi Li
b4aa398cf6 Merge pull request #5714 from swordqiu/hotfix/qj-decouple-apigateway-userinfo-from-capabilities
fix: decouple getUserInfo at apigateway from capabilities call
2020-04-08 02:25:49 +08:00
Qiu Jian
f11a978209 fix: decouple getUserInfo at apigateway from capabilities call 2020-04-08 00:02:14 +08:00
Zexi Li
ec21477786 Merge pull request #5710 from yousong/bugfix/yousong-build
build: fix "mod" target on darwin
2020-04-07 21:47:28 +08:00
Zexi Li
e6b9eaea79 Merge pull request #5709 from swordqiu/feature/qj-change-owner-candiate-domains
feature: add API to retrieve resource's change owner candidate domains
2020-04-07 21:46:50 +08:00
Zexi Li
7df56bade8 Merge pull request #5713 from swordqiu/hotfix/qj-parameter-duplicate-error
fix: 1. parameter duplicate error due to missing name filter 2.infras_quota setKeys error
2020-04-07 21:46:23 +08:00
Qiu Jian
8fad5086f0 fix: 1. parameter duplicate error due to missing name filter 2.
infras_quota setKeys error
2020-04-07 20:54:18 +08:00
Yousong Zhou
81334744e8 build: fix "mod" target on darwin
We do not need to build and install binaries when updating modules

	go get: cannot install cross-compiled binaries when GOBIN is set
2020-04-07 18:29:50 +08:00
Qiu Jian
d99c4776e9 feature: add API to retrieve resource's change owner candidate domains 2020-04-07 16:22:51 +08:00
Zexi Li
9472050e20 Merge pull request #5708 from swordqiu/hotfix/qj-is-domain-field-default-value-not-consistent
fix: default value of is_domain field is not consistent between projects and domains
2020-04-07 14:34:04 +08:00
Qiu Jian
c758167e86 fix: default value of is_domain field is not consistent between
projects and domains
2020-04-07 14:14:54 +08:00
Zexi Li
dd0a52a696 Merge pull request #5698 from swordqiu/hotfix/qj-service-config-change-not-effective
fix: service config changes not effective
2020-04-07 10:38:04 +08:00
Zexi Li
ea629a53ae Merge pull request #5702 from swordqiu/hotfix/qj-remove-obsolete-policy-definitons
fix: remove obsolete policy definitions
2020-04-07 10:37:58 +08:00
Zexi Li
6b32911980 Merge pull request #5703 from swordqiu/hotfix/qj-domain-resource-usage
fix: add domain-level compute resource usage
2020-04-07 10:37:52 +08:00
Zexi Li
879e0229e9 Merge pull request #5704 from wanyaoqi/bugfix/wyq/fix-migrate-cache-cdrom
fix migrate cache cdrom
2020-04-07 10:37:04 +08:00
wanyaoqi
d44fa08ac3 fix migrate cache cdrom 2020-04-06 23:15:12 +08:00
Qiu Jian
5536dda530 fix: add domain-level compute resource usage 2020-04-06 18:07:14 +08:00
Qiu Jian
cada2d607c fix: remove obsolete policy definitions 2020-04-06 16:37:38 +08:00
Qiu Jian
adeda57082 fix: service config changes not effective 2020-04-06 15:43:29 +08:00
Zexi Li
1f1e6240f9 Merge pull request #5666 from rainzm/feature/auto_scaling
Feature/auto scaling
2020-04-05 13:54:11 +08:00
Zexi Li
c3ecbe04b6 Merge pull request #5694 from swordqiu/hotfix/qj-usage-misc-bugfix-20200404
fix: misc bugs in usage data
2020-04-05 13:51:45 +08:00
Qiu Jian
9b0e464c1f fix: misc bugs in usage data 2020-04-04 23:11:09 +08:00
Rain
d595a6a61f fix: fix based on reviewer's and tester's suggestions
1. ScalingPolicy's CoolingTime will limit ScalingPolicy with 'alarm' TriggerType
2. Health Check will remove instance that has been shut down for 3 minutes.
3. If TargetNumer > SG.MaxInstanceNumber or TargetNumber < SG.MinInstanceNumber,
ScalingActivity's status will be set to 'part_success'.
4. When you want to increase the DesireInstanceNumber that has reached the maximum value,
or decrease the this that has reached the minimum value, the ScalingActivity is rejected.
5. ScalingPolicy.PostCreate and PostDelete asynchronous execution.
2020-04-04 21:45:12 +08:00
Rain
d1c92c689a fix: fmt's format string 2020-04-04 21:10:57 +08:00
Rain
7eb38704d1 feature: Add instance health check 2020-04-04 21:10:57 +08:00
Rain
6d77bb11f6 update generated model 2020-04-04 21:10:57 +08:00
Rain
690fb0c95d Add copyright and format code 2020-04-04 21:10:57 +08:00
Rain
b9ed3c1bc2 feature: scaling_group support alert 2020-04-04 21:10:51 +08:00
Rain
01999fafa0 update generated model for compute 2020-04-04 21:03:36 +08:00
Rain
f0a8d60dbd feature: autoscaling controller finished 2020-04-04 21:03:28 +08:00
Zexi Li
c776ec6907 Merge pull request #5691 from rainzm/fix/esxi-cache-image
fix(region): Fix some question of CheckAndSetCacheImage.
2020-04-03 19:45:36 +08:00
Zexi Li
9e9dcac496 Merge pull request #5684 from swordqiu/feature/qj-domain-level-quotas
feature: domain resource quota
2020-04-03 19:44:56 +08:00
Zexi Li
4777636133 Merge pull request #5686 from ioito/hotfix/qx-rebuild-root-fix
fix: 修复重装系统时未能更换指定image问题
2020-04-03 19:43:11 +08:00
Zexi Li
b838aafef5 Merge pull request #5671 from ioito/hotfix/qx-huawei-rds-fix
fix: 华为云rds使用自身的存储类型
2020-04-03 19:41:33 +08:00
Zexi Li
4c381c2130 Merge pull request #5586 from wanyaoqi/feature/wyq/esxi2kvm-migration
feature: copy esxi guest to kvm
2020-04-03 19:41:03 +08:00
Rain
3e10786e0c fix(esxi): Fix some question of CheckAndSetCacheImage.
1. If there is storagecachedimage in this host's storagecache, use is
instead of another host's one.
2. SrcStorage should be found from srcHost instead host.
2020-04-03 14:30:31 +08:00
Zexi Li
86addd6e59 Merge pull request #5685 from swordqiu/feature/qj-idp-config-update
feature: identity provider improvements
2020-04-03 11:38:52 +08:00
Zexi Li
b6ae386c2f Merge pull request #5682 from ioito/hotfix/qx-zone-info
fix: typo
2020-04-03 11:36:05 +08:00
Qu Xuan
93ffbd47d9 fix: 修复重装系统时未能更换指定image问题 2020-04-03 11:31:06 +08:00
Qiu Jian
d1346771aa feature: domain resource quota 2020-04-03 02:03:55 +08:00
Qiu Jian
c1c9aa300d feature: identity provider improvements 2020-04-03 01:54:07 +08:00
Rain
e8eadc24ce feature: Controller and some api 2020-04-02 20:42:47 +08:00
Qu Xuan
cc28924fb5 fix: typo 2020-04-02 20:21:23 +08:00
Zexi Li
193d014034 Merge pull request #5676 from wanyaoqi/feature/wyq/host-set-hostname
host do not set hostname
2020-04-02 19:06:53 +08:00
yunion-ci-robot
1b333cd3e2 Merge pull request #5679 from ioito/hotfix/qx-typo
fix: typo
2020-04-02 18:54:51 +08:00
yunion-ci-robot
796ca2db8e Merge pull request #5667 from ioito/hotfix/qx-qcloud-sdk
fix: 修复更新qcloud sdk引出的不兼容问题
2020-04-02 18:51:50 +08:00
Qu Xuan
92604fca04 fix: typo 2020-04-02 18:25:23 +08:00
wanyaoqi
cf58fefea1 host do not set hostname 2020-04-02 18:09:55 +08:00
yunion-ci-robot
66de34794a Merge pull request #5669 from zexi/hotfix/k8s-remove-registrysecret
climc: k8s remove registrysecret create command
2020-04-02 18:07:50 +08:00
wanyaoqi
cc3a2da1a8 fix host-deployer base 2020-04-02 18:02:32 +08:00
wanyaoqi
92e88f2a97 - copy esxi guest to kvm 2020-04-02 17:56:50 +08:00
Qu Xuan
9e1693e443 fix: 华为云rds使用自身的存储类型 2020-04-02 17:28:22 +08:00
Zexi Li
5c55c98021 climc: k8s remove registrysecret create command 2020-04-02 16:29:29 +08:00
Qu Xuan
16b4ed0bda fix: 修复更新qcloud sdk引出的不兼容问题 2020-04-02 15:56:16 +08:00
Rain
a776f21762 feat(scaling): Auto scaling group 2020-04-02 14:57:37 +08:00
Zexi Li
8adc5ed0d9 Merge pull request #5631 from tb365/bugfix/tb-bugfix-0331
elb bugfix
2020-04-02 12:47:11 +08:00
Zexi Li
1a6d5975f8 Merge pull request #5662 from swordqiu/hotfix/qj-disk-nics-usage-exclude-pending-delete
fix: disk/nics usage should exclude those pending_deleted
2020-04-02 12:45:27 +08:00
Zexi Li
0fc5cd5a84 Merge pull request #5658 from swordqiu/feature/qj-keystone-too-many-failed-attempts
feature: keystone lock user returns ErrTooManyAttempts
2020-04-02 12:44:46 +08:00
Zexi Li
b68feeb8af Merge pull request #5652 from yousong/bugfix/yousong-multicloud-proxyfunc
Bugfix/yousong multicloud proxyfunc
2020-04-02 12:43:53 +08:00
Zexi Li
b32ddfa504 Merge pull request #5659 from wanyaoqi/bugfix/wyq/host-use-internal-endpoint
host session use internal endpoint
2020-04-02 12:43:06 +08:00
Qiu Jian
02671840b5 fix: disk/nics usage should exclude those pending_deleted 2020-04-02 01:40:38 +08:00
tangbin
0fa0e9b7f4 elb bugfix 2020-04-01 20:16:52 +08:00
wanyaoqi
f9490b5c56 host session use internal endpoint 2020-04-01 19:59:58 +08:00
Qiu Jian
faa507b3ad feature: keystone lock user returns ErrTooManyAttempts 2020-04-01 19:50:25 +08:00
Zexi Li
ff73856573 Merge pull request #5653 from swordqiu/hotfix/qj-allow-list-cloudprovider-by-default
fix: allow list cloudprovider by default
2020-04-01 18:13:30 +08:00
Yousong Zhou
e27638f8c2 proxysetting: validate create/update data 2020-04-01 18:11:54 +08:00
Yousong Zhou
54e2aee119 apis: proxy: add input validation 2020-04-01 18:11:54 +08:00
Yousong Zhou
43acd28952 cloudproviders: provide proxysetting id, name 2020-04-01 18:11:54 +08:00
Yousong Zhou
73fca07287 cloudaccount: provide proxysetting details 2020-04-01 18:11:53 +08:00
Yousong Zhou
aa36903031 proxysetting: forbid deletion of DIRECT setting 2020-04-01 18:11:53 +08:00
Zexi Li
ffdaa413f3 Merge pull request #5648 from swordqiu/hotfix/qj-cancel-quota-no-save-usage
fix: cancel pending usage might not need to update usage
2020-04-01 18:05:41 +08:00
Qiu Jian
ae7cf00283 fix: allow list cloudprovider by default 2020-04-01 17:28:07 +08:00
Qiu Jian
fbb5b9f07f fix: cancel pending usage might not need to update usage 2020-04-01 16:42:32 +08:00
Zexi Li
b074f4f121 Merge pull request #5646 from ioito/hotfix/qx-bucket-status
修复: 默认存在的bucket状态为ready
2020-04-01 16:41:19 +08:00
Qu Xuan
8a6c8b9d5f 修复: 默认存在的bucket状态为ready 2020-04-01 15:17:06 +08:00
Zexi Li
96615f6eaa Merge pull request #5644 from zexi/feature/alert-pause
monitor: add paused api
2020-04-01 13:45:39 +08:00
Zexi Li
395f2af41d monitor: add paused api 2020-04-01 13:18:37 +08:00
Zexi Li
edd328d4ac Merge pull request #5634 from yousong/bugfix/yousong-multicloud-proxyfunc
cloudcommon: proxysetting: make it infra resource
2020-04-01 10:24:13 +08:00
Zexi Li
a7a18b74e5 Merge pull request #5640 from swordqiu/hotfix/qj-apigateway-upgrade-cause-restart
fix: changes to request_work_count cause apigateway restart
2020-04-01 10:23:18 +08:00
Qiu Jian
81242c1025 fix: changes to request_work_count cause apigateway restart 2020-04-01 10:16:03 +08:00
Zexi Li
d877e4d09b Merge pull request #5632 from zexi/feature/monitor-alert-params
monitor: support support extra params in alertnotification joint object
2020-03-31 18:36:01 +08:00
Yousong Zhou
b22e77b1f4 cloudcommon: proxysetting: make it infra resource 2020-03-31 18:22:18 +08:00
Zexi Li
1db65092ef monitor: support support extra params in alertnotification joint object 2020-03-31 17:54:44 +08:00
Zexi Li
4a796f066a Merge pull request #5629 from zexi/feature/monitor-config-helper
monitor: add alert config helper
2020-03-31 16:45:38 +08:00
Zexi Li
6016eee0c6 Merge pull request #5624 from wanyaoqi/feature/wyq/guest-detach-networks
misc bugfix
2020-03-31 16:24:36 +08:00
Zexi Li
56976a8b0d monitor: add alert config helper 2020-03-31 16:17:12 +08:00
yunion-ci-robot
967203d7cb Merge pull request #5623 from swordqiu/hotfix/qj-worker-channel-blocking
fix: worker may block by worker_chan
2020-03-31 10:01:14 +08:00
wanyaoqi
4c63739221 vm online detach network 2020-03-30 21:26:10 +08:00
wanyaoqi
5f3b4e6198 - add check disk is enable delete
- vm enable detach network on running state
- add menu on boot from iso
- misc fix
2020-03-30 21:17:18 +08:00
Zexi Li
1f5bf13ba1 Merge pull request #5590 from ioito/feature/qx-public-cloud-quota
fix: 支持同步云平台配额信息
2020-03-30 20:02:54 +08:00
Zexi Li
88ffe53ce8 Merge pull request #5615 from swordqiu/hotfix/qj-service-config-change-detection
fix: refine service-config change detection
2020-03-30 20:02:26 +08:00
Zexi Li
7f54e1f04b Merge pull request #5614 from swordqiu/feature/qj-reorgnize-cloudcommon-policy
feature: recode cloudcommon policy default/resource codes
2020-03-30 20:00:59 +08:00
Qiu Jian
09bc348c66 feature: recode cloudcommon policy default/resource codes 2020-03-30 19:35:55 +08:00
Qiu Jian
c29f4011e6 fix: worker may block by worker_chan 2020-03-30 19:25:00 +08:00
Zexi Li
6d31c95b71 Merge pull request #5616 from swordqiu/hotfix/qj-increase-apigateway-default-worker-count
fix: increase apigateway default worker count to 32
2020-03-30 19:22:33 +08:00
yunion-ci-robot
39e9bec655 Merge pull request #5619 from swordqiu/hotfix/qj-webconsole-api-server-option-common
feature: make webconsole's api_server option common
2020-03-30 17:08:44 +08:00
Qiu Jian
3b5d34ccd8 fix: refine service-config change detection 2020-03-30 16:03:21 +08:00
Qiu Jian
5e6070d809 feature: make webconsole's api_server option common 2020-03-30 15:29:58 +08:00
yunion-ci-robot
d8ca68b35e Merge pull request #5617 from zexi/feature/docker-image-region-dns
action: add region dns image
2020-03-30 15:09:42 +08:00
Zexi Li
14c1f1e5bd action: add region dns image 2020-03-30 14:49:03 +08:00
Qu Xuan
8723164a1d fix: 支持同步云平台配额信息 2020-03-30 10:24:05 +08:00
Qiu Jian
26bd5a2487 fix: increase apigateway default worker count to 32 2020-03-30 09:39:29 +08:00
Zexi Li
b5455ece19 Merge pull request #5613 from swordqiu/hotfix/qj-capability-domain-filter-update
fix: capability domain filter should be updated for domainized system resources
2020-03-29 12:35:21 +08:00
Qiu Jian
904ce90586 fix: capability domain filter should be updated for domainized system
resources
2020-03-28 11:05:51 +08:00
yunion-ci-robot
d239f99282 Merge pull request #5600 from ioito/hotfix/qx-guest-enhance
fix: 支持publicip to eip转换
2020-03-28 10:35:38 +08:00
Zexi Li
f5a2f5458b Merge pull request #5606 from yousong/bugfix/yousong-lbagent-systemd
region: lbagent: move systemd service unit file to system dir
2020-03-28 10:29:10 +08:00
yunion-ci-robot
ab9b32e734 Merge pull request #5605 from ioito/hotfix/qx-capability-optimized
fix: 简化capability 接口中storage数据
2020-03-28 09:49:39 +08:00
yunion-ci-robot
acaa70c7e8 Merge pull request #5608 from swordqiu/hotfix/qj-add-loadbalancer-cluster-default-list
fix: allow list loadbalancer cluster by default
2020-03-28 09:09:38 +08:00
Qiu Jian
944c90fcff fix: allow list loadbalancer cluster by default 2020-03-28 08:53:59 +08:00
Qu Xuan
7f47e88267 fix: 实现设置自动续费功能 2020-03-27 19:30:06 +08:00
Yousong Zhou
5c2b91b9fa region: lbagent: move systemd service unit file to system dir 2020-03-27 15:30:42 +08:00
Qu Xuan
c7c52041a5 fix: 支持publicip to eip转换 2020-03-27 15:22:40 +08:00
yunion-ci-robot
39b5dadab4 Merge pull request #5587 from swordqiu/feature/qj-system-resource-domainize
Feature/qj system resource domainize
2020-03-27 14:50:36 +08:00
Qu Xuan
d742b25de9 fix: 简化capability 接口中storage数据 2020-03-27 11:20:00 +08:00
Qiu Jian
d663fcea78 fix: auto gen api error 2020-03-27 01:20:31 +08:00
Qiu Jian
2536686a95 fix: update generated model api 2020-03-27 01:20:31 +08:00
Qiu Jian
859177c85e fix: replace deprecated fields 2020-03-27 01:20:30 +08:00
Qiu Jian
329edbae22 minor fixes 2020-03-27 01:20:30 +08:00
Qiu Jian
d0e4cec332 update vendor 2020-03-27 01:20:30 +08:00
Qiu Jian
8b1b6b94f9 fix: update cloudaccount update proxy setting 2020-03-27 01:20:30 +08:00
Qiu Jian
a687d49181 fix: add scheduler support 2020-03-27 01:20:30 +08:00
Qiu Jian
193ca8e4ac fix: hide host prepare fail reason 2020-03-27 01:20:30 +08:00
Qiu Jian
258db2cb48 fix updates 2020-03-27 01:20:29 +08:00
Qiu Jian
7072f80442 fix: account share_mode bugs 2020-03-27 01:20:29 +08:00
Qiu Jian
732dcdcb61 feature: system resource domainize 2020-03-27 01:20:29 +08:00
yunion-ci-robot
50ea3b8eda Merge pull request #5599 from ioito/hotfix/qx-account-detail
fix: 避免cloud-provider-show brand返回异常
2020-03-26 22:46:36 +08:00
Zexi Li
545d021ce7 Merge pull request #5601 from ioito/hotfix/qx-gcp-prepaid-not-support
fix: 修正gcp不支持预付费资源
2020-03-26 20:32:59 +08:00
Qu Xuan
8a87f86199 fix: 修正gcp不支持预付费资源 2020-03-26 20:00:02 +08:00
Zexi Li
77280b0810 Merge pull request #5575 from ioito/hotfix/qx-rds-sku-filter
fix: rds sku 支持zone过滤
2020-03-26 17:37:25 +08:00
Qu Xuan
f96605f7a9 fix: 避免cloud-provider-show brand返回异常 2020-03-26 16:34:18 +08:00
Zexi Li
29238189a1 Merge pull request #5589 from bistuzx/feature/bill_tasks
add bill tasks
2020-03-26 10:40:49 +08:00
Zexi Li
8188200aec Merge pull request #5588 from yousong/bugfix/yousong-multicloud-proxyfunc
Bugfix/yousong multicloud proxyfunc
2020-03-26 10:34:26 +08:00
张旭
476144f346 add bill task example 2020-03-25 17:15:32 +08:00
张旭
8663387be5 add bill tasks 2020-03-25 15:54:16 +08:00
Yousong Zhou
df25370799 climc: add cloud-account-update-google 2020-03-25 12:30:11 +08:00
Yousong Zhou
a378c94b27 cloudaccounts: fix checking update data 2020-03-25 12:01:04 +08:00
Yousong Zhou
a39bc093ba mcclient: cloudaccounts: allow updating proxysetting 2020-03-25 11:59:05 +08:00
Zexi Li
84083c300b Merge pull request #5554 from yousong/feature/yousong-multicloud-proxyfunc
Feature/yousong multicloud proxyfunc
2020-03-25 11:12:05 +08:00
yunion-ci-robot
af929fe349 Merge pull request #5585 from ioito/hotfix/qx-lb-manager-id
fxi: 修复lb 有些有vpc_id为空的问题
2020-03-24 22:59:33 +08:00
yunion-ci-robot
e0b1b19d6b Merge pull request #5560 from ioito/hotfix/qx-metdata-update
fix: 避免update标签失效问题
2020-03-24 21:14:33 +08:00
Qu Xuan
b0537773cd fxi: 修复lb 有些有vpc_id为空的问题 2020-03-24 20:53:52 +08:00
Qu Xuan
391018c8b4 fix: 避免update标签失效问题 2020-03-24 10:28:45 +08:00
Zexi Li
20810d4fab Merge pull request #5581 from yousong/bugfix/yousong-httperrors
httperrors: fix passing "params" argument
2020-03-23 21:13:59 +08:00
Yousong Zhou
a6b8477785 httperrors: fix passing "params" argument 2020-03-23 16:40:31 +08:00
Yousong Zhou
1d5d2276d6 webconsole: typo fix accessable -> accessible 2020-03-23 16:35:04 +08:00
Zexi Li
f7a5dd2032 Merge pull request #5561 from ioito/hotfix/qx-sync-status
fix: 统一后端同步状态字段-> sync_status
2020-03-23 11:26:57 +08:00
Qu Xuan
8f3d0cee00 fix: 统一后端同步状态字段-> sync_status 2020-03-23 10:59:54 +08:00
Zexi Li
2b6dc9d4ff Merge pull request #5569 from yousong/bugfix/yousong-build
build: cache-aware docker-xxx-build
2020-03-23 10:52:22 +08:00
Zexi Li
979407decd Merge pull request #5577 from zexi/feature/k8s-csi-storageclass
climc: k8s storageclass support
2020-03-23 10:48:10 +08:00
Zexi Li
77b11af608 climc: k8s storageclass support 2020-03-23 10:36:31 +08:00
Zexi Li
d3746bb6ca Merge pull request #5576 from yousong/bugfix/yousong-pr-template
.github: 添加pr检查点checklist
2020-03-23 10:24:28 +08:00
Yousong Zhou
7cf7960b4a .github: 添加pr检查点checklist 2020-03-23 10:23:00 +08:00
Zexi Li
3c81f6749a Merge pull request #5564 from ioito/hotfix/qx-metadata-list-optimized
fix: 优化标签列表查询速度
2020-03-23 09:42:51 +08:00
Zexi Li
031b3caa7e Merge pull request #5553 from ioito/hotfix/qx-storage-capability
fix: capability接口返回storage详情
2020-03-23 09:42:13 +08:00
Yousong Zhou
64001045c3 mcclient: add proxysettings manager 2020-03-22 19:36:46 +08:00
Yousong Zhou
d7d16a1f37 cloudevent: use cloudprovider proxysetting 2020-03-22 19:36:46 +08:00
Yousong Zhou
67fc22fc13 cloudproviders: show proxysettings in details 2020-03-22 19:36:46 +08:00
Yousong Zhou
342dfdcfba region: refer to proxySetting 2020-03-22 19:36:46 +08:00
Yousong Zhou
19b46891f0 cloudcommon: proxysetting: referrerMen 2020-03-22 19:36:45 +08:00
Yousong Zhou
881f0fb6dd cloudevent: add proxy.ProxySettingManager 2020-03-22 19:36:45 +08:00
Yousong Zhou
a310005f16 s3gateway: use cpcfg.ProxyFunc 2020-03-22 19:36:45 +08:00
Yousong Zhou
7d9cc08f40 region: add cloudaccount.ProxySettingId 2020-03-22 19:36:45 +08:00
Yousong Zhou
6ac9e64ebb cloudprovider: add TestProxyFunc 2020-03-22 19:36:45 +08:00
Yousong Zhou
e30840dd42 objectstore: use cpcfg.ProxyFunc 2020-03-22 19:36:45 +08:00
Yousong Zhou
03987e8f78 objectstore: use ObjectStoreClientConfig 2020-03-22 19:36:45 +08:00
Yousong Zhou
4dca8bf4c9 esxi: use cpcfg.ProxyFunc 2020-03-22 19:36:45 +08:00
Yousong Zhou
10e08c1c46 esxi: use ESXiClientConfig 2020-03-22 19:36:45 +08:00
Yousong Zhou
ac5847a992 openstack: use cpcfg.ProxyFunc 2020-03-22 19:36:45 +08:00
Yousong Zhou
583f770fcd mcclient: add SetHttpTransportProxyFunc() 2020-03-22 19:36:45 +08:00
Yousong Zhou
0ff96ace44 openstack: use OpenstackClientConfig 2020-03-22 19:36:45 +08:00
Yousong Zhou
a3f9e185ac zstack: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
fb54124eff zstack: use ZstackClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
c496092faa zstack: remove sessionID field 2020-03-22 19:36:44 +08:00
Yousong Zhou
ce34f4b370 ucloud: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
bd228b2e5b ucloud: use UcloudClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
e277ed65ad qcloud: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
cd24b380ae qcloud: use QcloudClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
c6e90f32ff vendor: update github.com/tencentcloud/tencentcloud-sdk-go 2020-03-22 19:36:44 +08:00
Yousong Zhou
d5e664edf5 huawei: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
b59208b24e huawei: client: add SBaseManager.SetHttpClient() 2020-03-22 19:36:44 +08:00
Yousong Zhou
604b58204e huawei: use HuaweiClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
41deb33849 azure: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
56b707b669 azure: use AzureClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
da0b043317 aws: use cpcfg.ProxyFunc 2020-03-22 19:36:44 +08:00
Yousong Zhou
e96cebbd71 aws: use AwsClientConfig 2020-03-22 19:36:44 +08:00
Yousong Zhou
97cce7ca04 ctyun: use cpcfg.ProxyFunc 2020-03-22 19:36:43 +08:00
Yousong Zhou
9ab4043088 ctyun: use CtyunClientConfig 2020-03-22 19:36:43 +08:00
Yousong Zhou
b3bd866239 google: use cpcfg.ProxyFunc 2020-03-22 19:36:43 +08:00
Yousong Zhou
554e2e88dc google: use GoogleClientConfig 2020-03-22 19:36:43 +08:00
Yousong Zhou
ce0e9dd689 aliyun: use cpcfg.ProxyFunc 2020-03-22 19:36:43 +08:00
Yousong Zhou
361cbd7454 aliyun clientcfg 2020-03-22 19:36:43 +08:00
Yousong Zhou
55eb57fd60 httputils: add SetClientProxyFunc(client, proxyFunc) 2020-03-22 19:36:43 +08:00
Yousong Zhou
944e57e572 cloudprovider: use ProviderConfig 2020-03-22 19:36:43 +08:00
Yousong Zhou
1e08ef5441 cloudcommon: add ProxySetting 2020-03-22 19:36:43 +08:00
Yousong Zhou
b425cd7194 cloudproviders: fix getting account details 2020-03-22 18:12:24 +08:00
Qu Xuan
21f7e66bb9 fix: rds sku 支持zone过滤 2020-03-20 20:56:18 +08:00
Zexi Li
6ef40ae0b1 Merge pull request #5567 from tb365/bugfix/tb-ctyun-bugfix-0318
ctyun bugfix
2020-03-20 19:39:45 +08:00
Zexi Li
f24f4864f1 Merge pull request #5571 from wanyaoqi/hotfix/wyq/guest-add-metadata-cpu-mode
guest add metadata cpu mode
2020-03-20 19:38:24 +08:00
yunion-ci-robot
4ccc2d5564 Merge pull request #5478 from ioito/feature/qx-gcp-rds
feature: gcp rds sync
2020-03-20 18:31:21 +08:00
Qu Xuan
3b0a437a12 feature: gcp rds sync 2020-03-20 18:05:57 +08:00
wanyaoqi
f4d86b4fb2 guest add metadata cpu mode
- live migrate if guest cpu mode is qemu, do not check host cpu mode
- disk name generation replace '_' to '-'
2020-03-20 15:04:46 +08:00
Zexi Li
2bb601f3ce Merge pull request #5563 from rainzm/fix/list_notification
fix & feat(notify): Notification and template
2020-03-20 14:44:44 +08:00
Yousong Zhou
68861d9711 scripts: remove host_find_libraries.sh
Not needed after we switch to using native alpine image
2020-03-20 14:40:59 +08:00
Yousong Zhou
8a4c20c088 build: cache-aware docker-xxx-build 2020-03-20 14:40:59 +08:00
tangbin
afcfdce7dc ctyun bugfix 2020-03-20 10:26:26 +08:00
yunion-ci-robot
64698288ec Merge pull request #5565 from ioito/bugfix/qx-secgroup-rule-list
fix: 修复secgrouprule-list 500错误
2020-03-19 20:04:19 +08:00
Qu Xuan
28b838e00f fix: 优化标签列表查询速度 2020-03-19 19:50:44 +08:00
Qu Xuan
4ea96848cb fix: 修复secgrouprule-list 500错误 2020-03-19 19:11:52 +08:00
Rain
5fdf9846f7 feat: Unified template 2020-03-19 15:57:48 +08:00
Rain
006ac48d6e fix(notify): Compatible with changes about list in schema 2020-03-19 14:23:58 +08:00
Zexi Li
78688a8ba2 Merge pull request #5550 from tb365/feature/tb-policy-AppendDefaultPolicies
auth policy append default policies
2020-03-19 10:08:49 +08:00
Zexi Li
bb3f66065a Merge pull request #5555 from rainzm/feat/notify_v1.0.0
feat(notify): Compatibility and repair
2020-03-19 10:03:34 +08:00
yunion-ci-robot
d982b2d2f5 Merge pull request #5490 from ioito/hotfix/qx-check-create-data
fix: class action 统一使用keywords包裹
2020-03-19 08:44:20 +08:00
Rain
0cb0ba6f1b feat(notify): Compatibility and repair 2020-03-18 20:51:20 +08:00
Zexi Li
0c995ce925 Merge pull request #5535 from ioito/hotfix/qx-unified-syncstatus
unified syncstatus action
2020-03-18 20:12:50 +08:00
Qu Xuan
4fbb12b527 fix: capability接口返回storage详情 2020-03-18 20:01:51 +08:00
Qu Xuan
691ecc3a9a unified syncstatus action 2020-03-18 16:30:20 +08:00
TangBin
a93358a932 get spec return jsonclient err 2020-03-18 15:46:58 +08:00
Zexi Li
f03993286c Merge pull request #5552 from swordqiu/hotfix/qj-order-by-not-effective
fix: list order by not effective
2020-03-18 13:48:44 +08:00
TangBin
a1e3ea9095 auth policy append default policies 2020-03-18 12:02:31 +08:00
Qiu Jian
300f399f43 fix: list order by not effective 2020-03-18 11:21:44 +08:00
Zexi Li
98af93bea3 Merge pull request #5545 from swordqiu/hotfix/qj-policy-fetch-not-retry
fix: policy fetcher not retry after initial failure
2020-03-18 10:52:44 +08:00
Qu Xuan
8b468e3ad3 fix: class action 统一使用keywords包裹 2020-03-17 18:43:11 +08:00
yunion-ci-robot
0d7ad9e175 Merge pull request #5540 from ioito/hotfix/qx-account-delete
fix: 修复删除账号失败问题
2020-03-17 18:39:15 +08:00
Qiu Jian
e915d7d55b fix: policy fetcher not retry after initial failure 2020-03-17 18:27:17 +08:00
yunion-ci-robot
f82a4d20c1 Merge pull request #5543 from ioito/hotfix/qx-extra-detail
fix: 避免dbinstance_sku.get 异常
2020-03-17 17:20:20 +08:00
Qu Xuan
4f5d78b392 fix: 避免dbinstance_sku.get 异常 2020-03-17 16:22:59 +08:00
Zexi Li
783c3cd09f Merge pull request #5541 from zexi/hotfix/monitor-alert-disable
monitor: fix meteralert update status
2020-03-17 14:59:11 +08:00
Zexi Li
1db89913cf monitor: fix meteralert update status 2020-03-17 14:43:59 +08:00
Qu Xuan
aad83ec565 fix: 修复删除账号失败问题 2020-03-17 11:58:05 +08:00
yunion-ci-robot
ae1557626d Merge pull request #5529 from ioito/hotfix/qx-guest-rebuild-root
fix: 避免重装系统失败后imageId依然发生改变
2020-03-17 08:19:14 +08:00
yunion-ci-robot
4dd4a0391d Merge pull request #5536 from ioito/hotfix/qx-gcp-storage-info
fix: 修复谷歌云 cloud-provider-clirc 显示错误问题
2020-03-17 08:11:14 +08:00
Qu Xuan
824d50d1b0 fix: 修复谷歌云 cloud-provider-clirc 显示错误问题 2020-03-16 20:08:27 +08:00
yunion-ci-robot
12a29acb7b Merge pull request #5452 from ioito/hotfix/qx-rds-sku-sync-optimized
fix: 优化rds sku同步逻辑
2020-03-16 15:18:14 +08:00
yunion-ci-robot
99cbd18b81 Merge pull request #5534 from swordqiu/hotfix/qj-list-get-field-filter-not-working
fix: list/get field filter not working properly
2020-03-16 13:46:14 +08:00
Qiu Jian
284f68b48f fix: list/get field filter not working properly 2020-03-16 13:29:34 +08:00
Zexi Li
eff67b5e27 Merge pull request #5517 from swordqiu/hotfix/qj-storage-details-missing-capacity
fix: storage details missing capacity fields since 3.1
2020-03-16 13:00:47 +08:00
Zexi Li
4d06232da1 Merge pull request #5506 from swordqiu/hotfix/qj-cloud-provider-usable-filter-recode
fix: recode cloudprovider usable filter
2020-03-16 12:59:50 +08:00
Zexi Li
a31d4fc266 Merge pull request #5483 from yousong/feature/yousong-multi-instances
cloudcommon: elect support
2020-03-16 12:59:20 +08:00
Zexi Li
8488f50e65 Merge pull request #5496 from zhaoxiangchun/feature/zxc-all
vmware 宿主机监控信息获取
2020-03-16 12:57:21 +08:00
Zexi Li
b9fea28dad Merge pull request #5505 from swordqiu/feature/qj-cloud-provider-region-capability
feature: capability of a cloudprovider in a region
2020-03-16 12:57:09 +08:00
Qu Xuan
36b2c2267b fix: 避免重装系统失败后imageId依然发生改变 2020-03-16 11:26:37 +08:00
yunion-ci-robot
e032ebfe52 Merge pull request #5528 from yousong/bugfix/yousong-log-go1.14
gomod: update yunion.io/x/log and refresh vendor
2020-03-16 11:11:12 +08:00
Yousong Zhou
f5f3f4f916 gomod: update yunion.io/x/log and refresh vendor
The code change for yunion.io/x/{pkg.sqlchemy} is a remedy for
yunionio/onecloud#5402
2020-03-16 10:49:44 +08:00
yunion-ci-robot
70c0bdd044 Merge pull request #5519 from ioito/bugfix/qx-secgroup-rule-update
fix: 避免未传递prority参数导致校验未通过
2020-03-16 01:10:08 +08:00
Qu Xuan
effa0ac4e7 fix: 避免未传递prority参数导致校验未通过 2020-03-15 13:11:11 +08:00
Qiu Jian
e1ad22ec3a fix: storage details missing capacity fields since 3.1 2020-03-14 22:24:37 +08:00
Zexi Li
bce6ad8e9a Merge pull request #5516 from rainzm/feat/feishu_webhook
feat: Add SendWebhookRobotMessage for feishu driver
2020-03-14 20:45:27 +08:00
Rain
8918664f2e feat: Add SendWebhookRobotMessage for feishu driver 2020-03-14 19:21:42 +08:00
yunion-ci-robot
fc55cfb96f Merge pull request #5511 from zexi/bugfix/scheduler-disk-assign
scheduler: fix disk allocated not balanced
2020-03-14 17:50:05 +08:00
Zexi Li
ae557d217d Merge pull request #5498 from swordqiu/hotfix/qj-keystone-file-list-support-array
fix: keystone resources list filter should support array
2020-03-14 16:52:59 +08:00
Zexi Li
4f3d7c2c32 scheduler: fix disk allocated not balanced 2020-03-14 16:39:26 +08:00
Qiu Jian
866f5ef4ae fix: recode cloudprovider usable filter 2020-03-14 09:00:56 +08:00
Qiu Jian
ea73f5a9a4 feature: capability of a cloudprovider in a region 2020-03-14 01:35:27 +08:00
Zexi Li
9a3edfc6bf Merge pull request #5501 from zexi/hotfix/check-is-authed
auth: check isAuthed if nil
2020-03-13 19:18:05 +08:00
Zexi Li
c6be259900 auth: check isAuthed if nil 2020-03-13 19:03:53 +08:00
Qiu Jian
569f1b204d fix: keystone resources list filter should support array 2020-03-13 17:19:16 +08:00
yunion-ci-robot
e5ed2aaf10 Merge pull request #5454 from rainzm/fix/subimage_createdat
fix(glance): Structured subimage info and add 'created_at' field
2020-03-13 15:33:01 +08:00
Yousong Zhou
be5322d530 region: start cronman with electObj 2020-03-13 15:15:36 +08:00
Yousong Zhou
0f7ff65a46 cronman: add Start2() for working with electObj 2020-03-13 15:15:36 +08:00
Yousong Zhou
1d8fa1a1f2 cronman: use context for start, stop 2020-03-13 15:15:36 +08:00
zhaoxiangchun
b0981354de vmware 宿主机监控信息获取 2020-03-13 15:02:13 +08:00
Zexi Li
35f750705f Merge pull request #5402 from swordqiu/feature/qj-metadata-cleanup
Feature/qj metadata cleanup
2020-03-13 13:41:21 +08:00
yunion-ci-robot
0d1e41a99d Merge pull request #5484 from wanyaoqi/bugfix/wyq/downloadhandler-not-set-timeout
bugfix:download handler set no timeout
2020-03-13 13:22:17 +08:00
Qiu Jian
e11ceb4c4b feature: allow list/export/sort/distict metadata 2020-03-13 13:12:45 +08:00
Zexi Li
4fa1001792 Merge pull request #5479 from rainzm/fix/scheduler_provider
fix(scheduler): Candidater's CloudProvider maybe nil
2020-03-13 11:28:25 +08:00
Zexi Li
6fb6a1faa4 Merge pull request #5480 from rainzm/fix/vmware_vlan_range
fix(esxi): VlanID '1' is default value
2020-03-13 11:11:05 +08:00
wanyaoqi
8ca4ecada3 download handler set no timeout 2020-03-13 11:01:30 +08:00
Zexi Li
fc94e90e58 Merge pull request #5472 from zhaoxiangchun/bugfix/zxc-meteralart
修复meteralartbug
2020-03-13 00:43:57 +08:00
Yousong Zhou
48a0bb420b cloudcommon: elect support 2020-03-13 00:20:16 +08:00
yunion-ci-robot
05d7efa5b6 Merge pull request #5463 from swordqiu/hotfix/qj-fix-region-list-filters3
feature: fix region list filters
2020-03-12 21:11:17 +08:00
Qiu Jian
3c9b368c43 feature: fix region list filters round 3 2020-03-12 20:55:22 +08:00
Rain
258a03e138 fix(esxi): VlanID '1' is default value 2020-03-12 20:55:12 +08:00
Rain
84f3798322 fix(scheduler): Candidater's CloudProvider maybe nil
Candidater(Host) in Provider Onecloud doesn't have CloudProvider.
2020-03-12 20:17:46 +08:00
yunion-ci-robot
b8df371c17 Merge pull request #5458 from zexi/feature/k8s-baremetal-host-convert
region: baremetal convert host join as k8s node
2020-03-12 19:47:15 +08:00
Rain
e185bf9d7e fix(glance): Structured subimage info and add 'created_at' field 2020-03-12 19:25:28 +08:00
Yousong Zhou
20f3c775d7 cloudcommon: reword help text for IsSlaveNode 2020-03-12 18:55:58 +08:00
Yousong Zhou
411bff8301 cloudcommon: remove default value for etcd lock prefix 2020-03-12 18:55:58 +08:00
Yousong Zhou
487b7e189b cloudcommon: options: add constants for lock method 2020-03-12 18:55:58 +08:00
yunion-ci-robot
79cf558a13 Merge pull request #5457 from ioito/hotfix/qx-cloudaccount-test-connectivity
hotfix: 支持更新云账号密码时测试账号连通性
2020-03-12 18:08:16 +08:00
yunion-ci-robot
12c6576ef6 Merge pull request #5470 from wanyaoqi/wyq/bugfix/region-misc-fix200311
region misc fix
2020-03-12 17:31:18 +08:00
zhaoxiangchun
10d0066a61 修复meteralartbug
1.设置消费日提醒时,提示名称重复。
2.查询信息时MeterAlertDetails的一些字段没有回显。
2020-03-12 16:50:29 +08:00
wanyaoqi
72f165985d region misc fix 2020-03-12 16:46:37 +08:00
Zexi Li
643a3c7e4b Merge pull request #5459 from bistuzx/master
add bucket connection test
2020-03-12 16:17:54 +08:00
Zexi Li
cf61b1eb41 region: baremetal convert host join as k8s node 2020-03-12 16:14:43 +08:00
Zexi Li
e88a520aa5 Merge pull request #5464 from rainzm/feat/vendor_update
feat: Update Vendor
2020-03-12 11:49:49 +08:00
Rain
dfdfe1e872 feat: Update Vendor 2020-03-12 11:38:25 +08:00
张旭
8f69e245b2 change climc bucket options import 2020-03-12 10:44:23 +08:00
yunion-ci-robot
eed8441013 Merge pull request #5444 from rainzm/fix/esxi_disk
fix(esxi): UnitNumber 7 is unavailable for scsi controller
2020-03-12 02:51:03 +08:00
yunion-ci-robot
f2b312e83a Merge pull request #5439 from rainzm/fix/esxi_network_vlan
fix(esxi): Fix bugs when using network with vlanID
2020-03-12 02:46:02 +08:00
yunion-ci-robot
5a0769f83d Merge pull request #5455 from wanyaoqi/bugfix/wyq/fix-host-storage-outpu
bugfix :fix structure host storage output: storagecache_id
2020-03-12 02:44:00 +08:00
张旭
677737215e add bucket connection test 2020-03-11 21:04:20 +08:00
Qu Xuan
b47ee82112 hotfix: 支持更新云账号密码时测试账号连通性 2020-03-11 18:38:16 +08:00
wanyaoqi
41ddd6c452 fix structure host storage output: storagecache_id 2020-03-11 18:03:36 +08:00
Rain
31f623dd30 fix(esxi): UnitNumber 7 is unavailable for scsi controller
By default, the virtual SCSI controller is assigned to virtual device node (z:7),
so that device node is unavailable for hard disks or other devices.
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.vm_admin.doc/GUID-5872D173-A076-42FE-8D0B-9DB0EB0E7362.html
2020-03-11 17:33:35 +08:00
yunion-ci-robot
0a4171bd6a Merge pull request #5453 from rainzm/fix/format_5433
fix: Resolve format issues caused by pr#5443
2020-03-11 17:26:01 +08:00
Rain
6dda9d8a3f fix: Resolve format issues caused by pr#5433 2020-03-11 17:09:26 +08:00
Qu Xuan
d5a691ffe3 fix: 优化rds sku同步逻辑 2020-03-11 16:49:18 +08:00
Zexi Li
f7be83aa23 Merge pull request #5447 from zexi/hotfix/host-storage-update-enabled
region: host update storage set enabled
2020-03-11 15:58:58 +08:00
Zexi Li
fd6ea93cb0 region: host update storage set enabled 2020-03-11 15:56:38 +08:00
Zexi Li
4ba4e636f6 Merge pull request #5442 from zexi/hotfix/baremetal-zone-not-updated
baremetal: zone_id not been updated
2020-03-11 14:37:23 +08:00
Zexi Li
eb8ccf66f7 Merge pull request #5443 from swordqiu/hotfix/qj-fix-region-list-filters2
fix region list filters round 2
2020-03-11 14:37:03 +08:00
Zexi Li
854dd25aaa baremetal: zone_id not been updated 2020-03-11 14:28:47 +08:00
Rain
7db5ae4d16 fix(esxi): Fix bugs when using network with vlanID 2020-03-11 10:56:50 +08:00
Zexi Li
2a2c0a558f Merge pull request #5435 from yousong/bugfix/yousong-build
build: github: build region, host, host-deployer images first
2020-03-10 18:51:43 +08:00
yunion-ci-robot
c1ef2fdc4d Merge pull request #5437 from zexi/feature/climc-ssh-terminal
climc: add server and host ssh terminal util
2020-03-10 18:50:58 +08:00
yunion-ci-robot
0b742b9b11 Merge pull request #5436 from swordqiu/hotfix/qj-remove-manager-cloudregion-id
fix: sql query errors for missing manager_id and cloudregion_id
2020-03-10 18:25:58 +08:00
Qiu Jian
1169dfe24c fix region list filters round 2 2020-03-10 18:23:45 +08:00
Zexi Li
49725a3af2 climc: add server and host ssh terminal util 2020-03-10 18:19:09 +08:00
Qiu Jian
79b6def3c3 fix: sql query errors for missing manager_id and cloudregion_id 2020-03-10 18:01:58 +08:00
Yousong Zhou
3e8e20dc5f build: github: build region, host, host-deployer images first 2020-03-10 16:38:52 +08:00
yunion-ci-robot
a9e9666989 Merge pull request #5434 from swordqiu/hotfix/qj-get-details-zero-numbers
fix: resource details contains zero numbers
2020-03-10 16:00:58 +08:00
Qiu Jian
550a1674ca fix: resource details contains zero numbers 2020-03-10 15:40:56 +08:00
yunion-ci-robot
3d37f3e5d9 Merge pull request #5433 from swordqiu/hotfix/qj-fix-region-list-filters
fix: fix region list fitlers, round 1
2020-03-10 14:45:59 +08:00
Zexi Li
1786c02e82 Merge pull request #5419 from swordqiu/hotfix/qj-fail-to-find-esxi-host-access-ip
fix: fail to find esxi admin vnic, use vnic with default IPv4 route
2020-03-10 14:44:53 +08:00
yunion-ci-robot
d777f510f6 Merge pull request #5429 from ioito/bugfix/qx-cloud-sku-sync
fix: typo for sku sync
2020-03-10 11:13:59 +08:00
yunion-ci-robot
df8200a400 Merge pull request #5424 from rainzm/fix/esxi_account
fix(esxi): Add two account with same account name
2020-03-10 11:02:00 +08:00
yunion-ci-robot
0868741842 Merge pull request #5413 from ioito/hotfix/qx-rds-sku-detail
fix: rds sku 返回region name
2020-03-10 10:42:57 +08:00
yunion-ci-robot
d5e1c6ff3a Merge pull request #5281 from ioito/hotfix/qx-gcp-os-sync
Hotfix/qx gcp os sync
2020-03-10 10:31:57 +08:00
Qiu Jian
da4dd2333a fix format 2020-03-10 09:44:43 +08:00
Qiu Jian
f127e258b4 fix: fix region list fitlers, round 1 2020-03-10 03:26:01 +08:00
Qu Xuan
0a47c90d89 fix: typo for sku sync 2020-03-09 19:57:37 +08:00
Rain
396f997cf4 fix(esxi): Add two account with same account name 2020-03-09 17:51:24 +08:00
Qiu Jian
fe93b90745 fix: fail to find esxi admin vnic, use vnic with default IPv4 route 2020-03-09 15:44:19 +08:00
Zexi Li
f0481b747c Merge pull request #5414 from zexi/feature/opslog-notes-text
opslog: notes use text column
2020-03-09 12:36:10 +08:00
Zexi Li
947fb13acc Merge pull request #5403 from swordqiu/hotfix/qj-cloud-provider-perform-enable-should-enable-account
fix: cloudprovider performEnable should also enable its cloudaccount
2020-03-09 12:30:15 +08:00
Zexi Li
e5106a9db1 opslog: notes use text column 2020-03-09 12:29:47 +08:00
Qu Xuan
ddbaba6f1a fix: rds sku 返回region name 2020-03-09 12:07:43 +08:00
Zexi Li
284c777db4 Merge pull request #5412 from swordqiu/hotfix/qj-adjust-two-options-default
fix: two default option changes: 1. do not convert vhd by default 2.sync purge server by default
2020-03-09 09:30:58 +08:00
Zexi Li
6ec5304436 Merge pull request #5398 from swordqiu/hotfix/qj-not-check-domain-quota-if-non-default-domain-project-off
fix: not check domain quota if non_default_domain_project is off
2020-03-09 09:29:55 +08:00
Zexi Li
af6d44aead Merge pull request #5411 from swordqiu/hotfix/qj-missing-keystone-glance-list-filter
fix: complete keystone/glance list filter
2020-03-09 09:29:20 +08:00
Zexi Li
ab4947d687 Merge pull request #5408 from swordqiu/feature/qj-climc-image-add-vim
feature: climc docker image add vim
2020-03-09 09:27:41 +08:00
Qiu Jian
fa9349c191 fix import group format error 2020-03-09 01:38:25 +08:00
Qiu Jian
63f5d40208 fix: two default option changes: 1. do not convert vhd by default 2.
sync purge server by default
2020-03-09 01:32:27 +08:00
Qiu Jian
57933d2497 fix: complete keystone/glance list filter 2020-03-09 01:20:25 +08:00
Qiu Jian
e0aae90d58 feature: climc docker image add vim 2020-03-08 22:44:25 +08:00
Qiu Jian
9bfca626b7 fix: cloudprovider performEnable should also enable its cloudaccount 2020-03-08 15:50:06 +08:00
Qiu Jian
3a34543e4f fix: not check domain quota if non_default_domain_project is off 2020-03-07 18:08:38 +08:00
Zexi Li
ecc0679eb1 Merge pull request #5365 from swordqiu/hotfix/qj-monitor-details
fix: implements details and list for monitor service
2020-03-07 15:52:09 +08:00
Zexi Li
ff4d99012d Merge pull request #5392 from swordqiu/hotfix/qj-scoped-resource-miss-fetch-owner
fix: scoped resource should override FetchOwnerId
2020-03-07 15:50:55 +08:00
Qiu Jian
6b183bac94 fix: scoped resource should override FetchOwnerId 2020-03-07 15:35:35 +08:00
Zexi Li
27027b498d Merge pull request #5388 from swordqiu/hotfix/qj-keystone-prefer-internal-endpoint-type
fix: keystone prefers internal endpoint type
2020-03-06 22:22:41 +08:00
Zexi Li
af9bcd23ac Merge pull request #5387 from swordqiu/hotfix/qj-service-filter-by-type
fix: add keystone service type filter
2020-03-06 22:22:10 +08:00
Qiu Jian
1b5456944b fix: keystone prefers internal endpoint type 2020-03-06 21:41:52 +08:00
Qiu Jian
e68bbf6fb9 fix: add keystone service type filter 2020-03-06 21:37:03 +08:00
Zexi Li
cf4d2e3374 Merge pull request #5335 from swordqiu/hotfix/qj-fix-details-list-recode-bugs
fix: 1. image header details should skip "properties" field 2.cloudprovider details nil pointer panic
2020-03-06 19:57:36 +08:00
Zexi Li
4917f11bfd Merge pull request #5358 from swordqiu/hotfix/qj-update-status-eventlog
fix: corrent update status logclient event type
2020-03-06 19:57:16 +08:00
yunion-ci-robot
60b74247a3 Merge pull request #5378 from rainzm/fix/usercache
fix: Add 'scope=system' and 'system' for Caches when querying from Keystone.
2020-03-06 18:42:50 +08:00
Zexi Li
fad6cbcb30 Merge pull request #5372 from swordqiu/hotfix/qj-no-scope-schedtag-visible-to-all
fix: no scope shcedtag should be visible to all
2020-03-06 18:32:14 +08:00
yunion-ci-robot
f387c6c37b Merge pull request #5379 from tb365/bugfix/tb-bugfix-0306
Bugfix/tb bugfix 0306
2020-03-06 18:10:50 +08:00
Rain
f8642421de fix: Add 'scope=system' and 'system' for Caches when querying from Keystone.
1. Query 'scope=system' and 'system=true' is neccessary when fetching all users
   or groups from Keystone.
   Without these, users and groups in other domains (non-caller domains),
   as well as system-level users, cannot be detected.
2. Query 'scope=system' is neccessary when fetching all project from Keystone.
2020-03-06 17:10:58 +08:00
TangBin
b7b2807fbd ctyun region name fix 2020-03-06 16:46:03 +08:00
TangBin
1096edad61 huawei reset password bugfix 2020-03-06 16:20:22 +08:00
Zexi Li
6fe428832a Merge pull request #5361 from swordqiu/hotfix/qj-adjust-user-list-privilege-level
fix: allow project do user-list, group-list, returns current project user and group
2020-03-06 13:03:18 +08:00
Zexi Li
ab83c71cdb Merge pull request #5366 from rainzm/fix/notify_resend
fix/notify: Fix the resend mechanism
2020-03-06 12:45:55 +08:00
yunion-ci-robot
061e974503 Merge pull request #5363 from wanyaoqi/bugfix/wyq/fix-postpaid-disk
bugfix: fix disk billing type on guest is postpaid
2020-03-06 12:29:50 +08:00
Rain
22bf66642d fix/notify: Fix the resend mechanism 2020-03-06 11:09:41 +08:00
Qiu Jian
4b311a8264 fix: implements details and list for monitor service 2020-03-06 00:53:20 +08:00
wanyaoqi
0631ad51f8 fix disk billing type on guest is postpaid 2020-03-05 20:32:03 +08:00
Qiu Jian
a9ed2da099 fix: allow project do user-list, group-list, returns current
project user and group
2020-03-05 20:06:38 +08:00
yunion-ci-robot
b2975c8bb4 Merge pull request #5359 from wanyaoqi/bugfix/wyq/network-list-filter-by-host
bugfix: enable network list filter by host show vpc networks
2020-03-05 20:00:49 +08:00
wanyaoqi
dfe1dc4324 enable network list filter by host show vpc networks 2020-03-05 19:31:26 +08:00
yunion-ci-robot
5eab1ce5ef Merge pull request #5353 from rainzm/feature/notify_feishu
feature(notify): Add query and return value for contact UPDATE interface
2020-03-05 19:03:51 +08:00
Qiu Jian
e344b1cc52 fix: corrent update status logclient event type 2020-03-05 17:53:15 +08:00
Qiu Jian
2fcf30109d fix: no scope shcedtag should be visible to all 2020-03-05 17:43:26 +08:00
Rain
f876aed69f feature(notify): Add query and return value for contact UPDATE interface
1. Add same return value with contact GET interface when updating
2. Add pull params for query to pull subcontact by mobile number.
   For example, pull user_id from dingtalk throught user's mobile
   number.
3. Add corresponding feature based on above for climc.
4. UserCache will try FetchByName if there is no id matched user when
   fetching users from KeyStone.
2020-03-05 17:01:29 +08:00
Zexi Li
9ed9de4f91 Merge pull request #5330 from rainzm/feature/feishu_single_user
feat: Add useridByMobile and accessToken cache for feishu
2020-03-05 14:17:41 +08:00
yunion-ci-robot
29658849d3 Merge pull request #5351 from swordqiu/hotfix/qj-turn-on-default-column-filter
fix: turn on default column filter ONLY if query variable starts with @
2020-03-05 14:11:16 +08:00
Rain
3dd84620c3 feat: Add useridByMobile and accessToken cache for feishu 2020-03-05 14:10:22 +08:00
Zexi Li
f283ad3d02 Merge pull request #5342 from swordqiu/hotfix/qj-update-auto-gen-api-struct
fix: update auto-gent struct field json name
2020-03-05 14:07:33 +08:00
Qiu Jian
a32afca7df fix: turn on default column filter ONLY if query variable starts with @ 2020-03-05 12:18:55 +08:00
yunion-ci-robot
1b407cc0c0 Merge pull request #5349 from zexi/feature/monitor-service
monitor: fix alert update not work
2020-03-04 22:49:14 +08:00
Zexi Li
9d7b47aca1 monitor: fix alert update not work 2020-03-04 21:16:19 +08:00
Qiu Jian
748641ec83 autogen structs add commentlines 2020-03-04 21:15:12 +08:00
yunion-ci-robot
af85309c80 Merge pull request #5343 from ioito/hotfix/qx-aws-rds-sync
fix: 支持aws rds sync
2020-03-04 20:49:13 +08:00
Qiu Jian
9b5f0b02e9 fix: update auto-gent struct field json name 2020-03-04 20:47:00 +08:00
yunion-ci-robot
0e50ec7bb2 Merge pull request #5333 from yousong/bugfix/yousong-host
hostman: default ovn options from environment
2020-03-04 20:17:08 +08:00
Qu Xuan
aac2b83945 fix: 支持aws rds sync 2020-03-04 20:09:19 +08:00
yunion-ci-robot
ece5524fb0 Merge pull request #5340 from zexi/feature/monitor-service
alert notification use joint model
2020-03-04 19:58:08 +08:00
Zexi Li
36e1f387dc Merge pull request #5331 from yousong/bugfix/yousong-build
build: docker-centos-build: run as root
2020-03-04 19:16:50 +08:00
Zexi Li
e9b0d828d7 Merge pull request #5336 from swordqiu/hotfix/qj-keystone-history-check-skip-system-account
fix: keystone user password history check should skip system account
2020-03-04 19:16:11 +08:00
Zexi Li
1b54766c9c alert notification use joint model 2020-03-04 19:12:48 +08:00
Qiu Jian
75a8981bf1 fix: 1. image header details should skip "properties" field 2.
cloudprovider details nil pointer panic
2020-03-04 18:58:07 +08:00
Qiu Jian
0ca6b0175a fix: keystone user password history check should skip system account 2020-03-04 18:34:46 +08:00
Yousong Zhou
1b5672fde7 hostman: default ovn options from environment 2020-03-04 16:42:06 +08:00
Yousong Zhou
67f0da7534 build: docker-centos-build: run as root
so that output file ownership can be properly changed

The Dockerfile was moved to a separate repo for maintenance
2020-03-04 15:04:12 +08:00
yunion-ci-robot
1401cfd032 Merge pull request #5289 from swordqiu/feature/qj-recode-details-list-struct
Feature/qj recode details list struct
2020-03-04 14:52:04 +08:00
Qiu Jian
cf5498ac24 feature: recode structuralized GetExtraDetails and ListItemFilter 2020-03-04 14:01:25 +08:00
Zexi Li
c81a004878 Merge pull request #5328 from zexi/hotfix/uncomment-docker-push
fix: docker_push uncomment build bin
2020-03-03 16:15:37 +08:00
Zexi Li
37691e616d fix: docker_push uncomment build bin 2020-03-03 16:14:57 +08:00
Qu Xuan
c2a65ba1f5 add uploadpart for google 2020-03-03 14:36:11 +08:00
Qu Xuan
9287468153 fix: 谷歌云对象存储支持 2020-03-03 14:36:11 +08:00
Zexi Li
76059e8d51 Merge pull request #5324 from swordqiu/hotfix/qj-clean-upload-object-region-quota
fix: clean up pending usage no matter whether object upload is success
2020-03-03 13:14:08 +08:00
yunion-ci-robot
4668ce625a Merge pull request #5315 from ioito/hotfix/qx-rds-sync
fix: 避免旧套餐下架zone信息未知,导致同步rds异常
2020-03-03 02:18:43 +08:00
Qiu Jian
90620503da fix: clean up pending usage no matter whether object upload is success 2020-03-03 02:08:55 +08:00
yunion-ci-robot
e42b4588a6 Merge pull request #5322 from zexi/feature/monitor-service
add monitor service
2020-03-02 20:50:43 +08:00
Zexi Li
5645e4e15a add monitor service 2020-03-02 20:00:08 +08:00
yunion-ci-robot
bbf23e2a55 Merge pull request #5320 from yousong/bugfix/yousong-build
build: docker: chown _output dir to current user:group
2020-03-02 17:47:38 +08:00
Yousong Zhou
7ef61f0b93 build: docker: chown _output dir to current user:group 2020-03-02 17:33:57 +08:00
Qu Xuan
0ee6febfe8 fix: 避免旧套餐下架zone信息未知,导致同步rds异常 2020-03-02 17:07:46 +08:00
Zexi Li
37d991be4b Merge pull request #5297 from swordqiu/hotfix/qj-fix-approve-all-linux
fix: approve_all fail to pull all cherry-pick PRs
2020-03-02 09:37:46 +08:00
Zexi Li
9fe96537ed Merge pull request #5312 from wanyaoqi/bugfix/wyq/fix-bm-register
fix bm register get remote address
2020-02-28 23:57:10 +08:00
wanyaoqi
aea493c29a fix get remote address because of request is proxyed by k8s 2020-02-28 22:16:52 +08:00
yunion-ci-robot
fcda35dc71 Merge pull request #5268 from zhaoxiangchun/feature/zxc-gcpMon
谷歌云multicloud监控
2020-02-28 22:10:30 +08:00
yunion-ci-robot
7b63c63722 Merge pull request #5307 from ioito/hotfix/qx-aliyun-permission
修复aliyun没有权限获取余额问题
2020-02-28 21:57:22 +08:00
yunion-ci-robot
150ecff786 Merge pull request #5305 from yousong/feature/yousong-vpcagent
build: github: build vpcagent image
2020-02-28 21:47:20 +08:00
yunion-ci-robot
c6d6a725eb Merge pull request #5286 from wanyaoqi/bugfix/wyq/host-register-use-default-vpc
host register use default vpc
2020-02-28 21:32:20 +08:00
yunion-ci-robot
c2fba0a8b3 Merge pull request #5255 from wanyaoqi/bugfix/wyq/fix-nic-get-addr
fix nic get addr on attach multi isolated device
2020-02-28 21:03:19 +08:00
Qu Xuan
1eac67abce 修复aliyun没有权限获取余额问题 2020-02-28 19:54:33 +08:00
wanyaoqi
87f7ca81d7 host register use default vpc 2020-02-28 18:36:21 +08:00
Yousong Zhou
c41cd012ff hostman: disable services on host system when running in container 2020-02-28 18:17:45 +08:00
Yousong Zhou
472e4a1602 build: github: build vpcagent image 2020-02-28 17:28:44 +08:00
Zexi Li
0ab02b6446 Merge pull request #5303 from yousong/feature/yousong-vpcagent
build: github: add back ceph devel deps for baremetal-agent
2020-02-28 16:13:10 +08:00
Yousong Zhou
0b06e970b1 build: github: add back ceph devel deps for baremetal-agent 2020-02-28 16:09:01 +08:00
yunion-ci-robot
3fefcea828 Merge pull request #5301 from yousong/feature/yousong-vpcagent
build: github: build host with docker-alpine-build
2020-02-28 15:51:20 +08:00
Yousong Zhou
5670e2401b build: github: build host with docker-alpine-build 2020-02-28 15:26:30 +08:00
Yousong Zhou
6ef4eb9954 build: add docker-alpine-build 2020-02-28 15:26:30 +08:00
Yousong Zhou
f6d172da46 build: rename docker-build to docker-centos-build 2020-02-28 15:23:27 +08:00
zhaoxiangchun
d25a6443c2 谷歌云multicloud监控
monitor.go文件中GetMonitorData函数:
 1)首先组装参数信息
 2)通过external_id获取相关id信息,根据restAPI文档中的resource格式拼装完成monitoring相关的resource信息
 3)然后通过monitorList函数获取相关的监控信息

更新go.mod google.golang.org所依赖的google.golang.org/api版本
2020-02-28 15:01:06 +08:00
yunion-ci-robot
a5dc5b0e90 Merge pull request #5295 from tb365/bugfix/tb-bugfix-0228
vpc list add param vpc_usable
2020-02-28 14:17:21 +08:00
yunion-ci-robot
eac4dcdba4 Merge pull request #5290 from ioito/hotfix/qx-azure-region-city
添加azure region city信息
2020-02-28 13:11:19 +08:00
Zexi Li
d734da1988 Merge pull request #5266 from yousong/feature/yousong-vpcagent
vpcagent: as k8s container
2020-02-28 11:57:34 +08:00
Qu Xuan
f9def6c196 添加azure region city信息 2020-02-28 11:35:46 +08:00
TangBin
48a28a6adb vpc list add param vpc_usable 2020-02-28 11:34:49 +08:00
yunion-ci-robot
b2317f07d0 Merge pull request #5275 from ioito/hotfix/qx-gcp-change-config
fix: 谷歌云建议关机下调整配置,部分linux开机也调整不了配置
2020-02-28 09:33:19 +08:00
Qiu Jian
bb8107c129 fix: approve_all fail to pull all cherry-pick PRs 2020-02-27 22:30:20 +08:00
wanyaoqi
ae84c339d9 fix nic get pci address 2020-02-27 22:19:42 +08:00
yunion-ci-robot
0a25dfef7a Merge pull request #5277 from ioito/hotfix/qx-gcp-region-trans
fix: 新加gcp region 翻译
2020-02-27 22:05:17 +08:00
yunion-ci-robot
98854ed37b Merge pull request #5269 from tb365/bugfix/tb-bugfix-0227
huawei secgroup default vpc id fix
2020-02-27 20:52:16 +08:00
yunion-ci-robot
dcf3709b42 Merge pull request #5282 from yousong/bugfix/yousong-winbuild
vendor: bump pkg, executor module version
2020-02-27 20:08:17 +08:00
Yousong Zhou
c4397e572d build: host: adjust build method
- new host-base for native alpine utilities
 - build host with native alpine toolchain
2020-02-27 20:00:00 +08:00
Yousong Zhou
a9c4a10ac2 build: build vpcagent container 2020-02-27 20:00:00 +08:00
Yousong Zhou
bc89e8ab67 hostman: use "uname -m" for for fetch processor type
"uname -p" command from native busybox, coreutils may return "unknown".
CentOS coreutils has a patch fallback to using uts.machine if sysinfo
syscall is not available

Use "uname -m" for maximum compatibility
2020-02-27 20:00:00 +08:00
Yousong Zhou
694dab1e75 hostman: work with ovn-controller already in container 2020-02-27 20:00:00 +08:00
Yousong Zhou
7b41ac0fb2 sysutils: use remote executor for hostnamectl as far as possible
So that hostnamectl can be omitted in host-base container image
2020-02-27 20:00:00 +08:00
Yousong Zhou
7506f3f1ed vpcagent: resolve ovn db address at args validation time
Until we find a reliable way to get k8s svc dns name
2020-02-27 20:00:00 +08:00
Yousong Zhou
d6dca0d846 hostman: resolve ovn db address before setting it into ovsdb 2020-02-27 19:59:43 +08:00
Yousong Zhou
095a6b3f8b ovsutils: add NormalizeDbHost 2020-02-27 19:59:43 +08:00
Yousong Zhou
4d1e1ed6a4 vendor: bump pkg, executor module version 2020-02-27 19:39:38 +08:00
Qu Xuan
25ebd367d4 fix: 新加gcp region 翻译 2020-02-27 18:53:32 +08:00
TangBin
439d2a316e huawei secgroup default vpc id fix 2020-02-27 17:49:21 +08:00
Qu Xuan
e46609bebc fix: 谷歌云建议关机下调整配置,部分linux开机也调整不了配置 2020-02-27 16:51:35 +08:00
yunion-ci-robot
d4417f8027 Merge pull request #5261 from tb365/bugfix/tb-bugfix-0226
ctyun get vm by id fix
2020-02-27 07:18:13 +08:00
yunion-ci-robot
a2aa1c84f5 Merge pull request #5263 from rainzm/bugfix/esxi_publickey
fix(esxiagent): SSHKey was not unmarshalled correctly
2020-02-27 07:11:14 +08:00
yunion-ci-robot
d9b0f2b1e9 Merge pull request #5260 from yousong/bugfix/yousong-winbuild
[RFC] Bugfix/yousong winbuild
2020-02-27 01:13:16 +08:00
yunion-ci-robot
562f6b6e8a Merge pull request #5238 from wanyaoqi/bugfix/wyq/fix-host-init-set-reserve-memory
miscfix : host init set reserve memory
2020-02-26 23:00:15 +08:00
yunion-ci-robot
86fd8959ca Merge pull request #5236 from tb365/bugfix/tb-bugfix-0224
huawei & ctyun security group sync fix
2020-02-26 21:03:18 +08:00
wanyaoqi
4eceefdb04 makesure /etc/ceph created before connect 2020-02-26 20:42:04 +08:00
Rain
769143ca26 fix(esxiagent): SSHKey was not unmarshalled correctly 2020-02-26 20:09:38 +08:00
TangBin
bce284a4c4 ctyun vpc create fix 2020-02-26 17:36:52 +08:00
TangBin
5140a0f7a6 ctyun eip charge type fix 2020-02-26 16:31:29 +08:00
yunion-ci-robot
50b846ef5a Merge pull request #5231 from ioito/hotfix/qx-disk-reset-log
fix: 添加磁盘回滚snapshot日志
2020-02-26 15:55:14 +08:00
TangBin
5c3ba45f4d ctyun attach disk fix 2020-02-26 14:41:03 +08:00
Yousong Zhou
1fd6db15d6 build: set GOOS=linux by default 2020-02-26 11:36:48 +08:00
Yousong Zhou
f3558f7b91 appsrv: use signalutils.SetDumpStackSignal() 2020-02-26 11:36:48 +08:00
Yousong Zhou
1e283efa78 fileutils: platform specific Writable() 2020-02-26 11:36:48 +08:00
Yousong Zhou
0127b3872e procutils: exec.Cmd setsid only for linux 2020-02-26 11:36:48 +08:00
Yousong Zhou
02de12ae5b vendor: executor: add platform specific constructor for WaitStatus 2020-02-26 11:36:48 +08:00
Yousong Zhou
c41bf6f104 vendor: pkg: signalutils: add platform specific SetDumpStackSignal() 2020-02-26 11:36:48 +08:00
TangBin
c08f35b9f8 ctyun get vm by id fix 2020-02-26 11:16:42 +08:00
Zexi Li
7d2e410503 Merge pull request #5252 from swordqiu/hotfix/qj-global-endpoint-type
fix: use globalEndpointType as default endpoint type
2020-02-26 10:37:25 +08:00
yunion-ci-robot
c779ca3fd9 Merge pull request #5242 from ioito/bugfix/qx-openstack-flavor-sync
fix: 避免根磁盘小于镜像大小导致创建失败
2020-02-25 21:12:10 +08:00
yunion-ci-robot
e13a47ade7 Merge pull request #5247 from ioito/hotfix/qx-azure-change-config-error
fix: 返回azure api 错误信息
2020-02-25 20:57:12 +08:00
Qiu Jian
abfac074c3 fix: use globalEndpointType as default endpoint type 2020-02-25 20:27:59 +08:00
Qu Xuan
6e1b5ceae7 fix: 返回azure api 错误信息 2020-02-25 19:30:37 +08:00
Qu Xuan
336819c802 fix: 避免根磁盘小于镜像大小导致创建失败 2020-02-25 15:36:19 +08:00
TangBin
667a9985de huawei & ctyun security group sync fix 2020-02-24 20:07:03 +08:00
wanyaoqi
7863fc7f8a fix host register get network filter: add server_type baremetal 2020-02-24 16:36:44 +08:00
wanyaoqi
f5a0aaa8f0 fix guest network get desc 2020-02-24 16:00:55 +08:00
Qu Xuan
6b1e929a49 fix: 添加磁盘回滚snapshot日志 2020-02-24 15:58:07 +08:00
yunion-ci-robot
28249f615c Merge pull request #5186 from rainzm/feature/notify_validate
feature(notify): Validate config
2020-02-24 14:37:07 +08:00
yunion-ci-robot
8824457ab8 Merge pull request #5226 from yousong/bugfix/yousong-lbbackend-details
lbbackend: fix nil ref when getting details
2020-02-24 14:33:08 +08:00
Rain
a81004254f feature(notify): Validate config 2020-02-24 14:09:18 +08:00
wanyaoqi
914062d765 fix host init set reserve memory 2020-02-24 13:02:50 +08:00
Yousong Zhou
aad7dddabb lbbackend: fix nil ref when getting details
Return arguments of lbbackend.getVpc() can be both nil

	[E 200224 10:13:18 httperrors.HTTPError(httperrors.go:53)] Send error {"fields":["runtime error: invalid memory address or nil pointer dereference"],"id":"Internal server error: {0}"}
	...
	panic(0x27da0c0, 0x57f4ff0)
		/usr/local/go/src/runtime/panic.go:522 +0x1b5
	yunion.io/x/onecloud/pkg/compute/models.(*SLoadbalancerBackend).GetExtraDetails(0xc0002af680, 0x33cde20, 0xc0010e61e0, 0x34246c0, 0xc008893de0, 0x341d940, 0xc012fe69d0, 0x1, 0x0, 0x0, ...)
		/data/git/yunion-build/work/go/src/yunion.io/x/onecloud/pkg/compute/models/loadbalancerbackends.go:314 +0x37c
	reflect.Value.call(0x2d87a00, 0xc0002af680, 0x8a13, 0x2db0aa8, 0x4, 0xc0044ad680, 0x4, 0x4, 0x2bd5d60, 0xc002a29cf0, ...)
		/usr/local/go/src/reflect/value.go:447 +0x461
	reflect.Value.Call(0x2d87a00, 0xc0002af680, 0x8a13, 0xc0044ad680, 0x4, 0x4, 0x2d87a00, 0xc0002af680, 0x16)
		/usr/local/go/src/reflect/value.go:308 +0xa4
	yunion.io/x/onecloud/pkg/cloudcommon/db.callFunc(0x2d87a00, 0xc0002af680, 0x8a13, 0xc000951688, 0x4, 0x4, 0xc0002af680, 0x8a13, 0x2dc0527, 0xb, ...)
		/data/git/yunion-build/work/go/src/yunion.io/x/onecloud/pkg/cloudcommon/db/caller.go:78 +0x397
	...
	[I 200224 10:13:18 appsrv.(*Application).ServeHTTP(appsrv.go:237)] MfQCvNyik-obRBzFjFZy5ARfXcE= 500 5c1d82 GET /loadbalancerbackends?backend_group=Yunion-Tools&details=true&limit=20&offset=0 (10.40.156.64:57606) 57.90ms

Fixes 76d974f6d ("feature: api -> response struct")
2020-02-24 10:22:56 +08:00
yunion-ci-robot
c056778290 Merge pull request #5224 from tb365/bugfix/tb-bugfix-0221
network query by ip fix
2020-02-23 18:51:02 +08:00
yunion-ci-robot
f769129780 Merge pull request #5222 from wanyaoqi/bugfix/wyq/misc-20200220
region misc fix:
2020-02-21 23:36:59 +08:00
TangBin
1b72c387d1 network query by ip fix 2020-02-21 18:53:20 +08:00
wanyaoqi
981222867f region misc fix:
- guest postpaid expire support set expire time
- list instance snapshot sub snapshot return size
2020-02-21 17:17:30 +08:00
Zexi Li
dac8452cc9 Merge pull request #5217 from rainzm/bugfix/host_storage_size
fix: Storage filter not work for Esxi
2020-02-21 16:44:13 +08:00
yunion-ci-robot
0f6ccc126c Merge pull request #5199 from tb365/bugfix/tb-bugfix-0220
Bugfix/tb bugfix 0220
2020-02-21 15:52:35 +08:00
yunion-ci-robot
6a5bc9fbdf Merge pull request #5196 from ioito/hotfix/qx-gcp-win-change-config
fix: gcp win os not support change config when vm running
2020-02-21 15:44:33 +08:00
Rain
2262cb0123 fix: Storage filter not work for Esxi
1. SESXiGuestDriver.DoScheduleStorageFilter should return true.
2. ESXi's SHost.GetStorageSizeMB should return the capacity of all the
storage belonging to it.
2020-02-21 15:03:08 +08:00
yunion-ci-robot
9a623e2d93 Merge pull request #5213 from ioito/hotfix/qx-gcp-trans
fix: 添加gcp region中文翻译
2020-02-20 21:13:32 +08:00
yunion-ci-robot
909bc80d37 Merge pull request #5198 from ioito/hotfix/qx-azure-longitude-fix
fix: 修复azure坐标问题,添加新的azure region城市信息
2020-02-20 20:57:32 +08:00
yunion-ci-robot
26d1b8a9f1 Merge pull request #5208 from swordqiu/hotfix/qj-reset-limit-default-2048
fix: reset paging limit to 2048 from 20
2020-02-20 20:01:28 +08:00
Qu Xuan
1829b87c33 fix: 添加gcp region中文翻译 2020-02-20 17:37:00 +08:00
yunion-ci-robot
7c16abcc8b Merge pull request #5191 from ioito/hotfix/qx-aliyun-new-region
fix: add aliyun new region info
2020-02-20 16:14:29 +08:00
yunion-ci-robot
d66469a4ca Merge pull request #5187 from ioito/hotfix/qx-gcp-disk-format
fix: 填充gcp disk_format字段
2020-02-20 15:26:28 +08:00
Qiu Jian
b8b1740366 fix: reset paging limit to 2048 from 20 2020-02-20 15:16:01 +08:00
Qu Xuan
53c976ae11 fix: 修复azure坐标问题,添加新的azure region城市信息 2020-02-20 14:54:05 +08:00
TangBin
e022bf52c1 huawei cloud create bugfix 2020-02-20 14:47:15 +08:00
TangBin
b2a0fba5ac cloud region city list add default limit 2048 2020-02-20 14:14:32 +08:00
Qu Xuan
2015dc4764 fix: gcp win os not support change config when vm running 2020-02-20 11:57:03 +08:00
Qu Xuan
d8460a321f fix: add aliyun new region info 2020-02-20 11:04:22 +08:00
Qu Xuan
f026980f96 fix: 填充gcp disk_format字段 2020-02-20 10:44:26 +08:00
yunion-ci-robot
d64a36c96a Merge pull request #5181 from tb365/bugfix/tb-bugfix-0219
Bugfix/tb bugfix 0219
2020-02-19 19:17:26 +08:00
tangbin
b24c48a8c2 huawei http listener sync fix 2020-02-19 18:45:03 +08:00
tangbin
619cc17dd4 aws rebuild root fix 2020-02-19 18:18:19 +08:00
yunion-ci-robot
eefe71add4 Merge pull request #5178 from rainzm/bugfix/create_disk_for_vmware
fix(esxi): No distinction between ordinary scsi and pvscsi when creating disks
2020-02-19 17:49:26 +08:00
tangbin
1b86d6300a aws listener sync fix 2020-02-19 17:09:53 +08:00
Rain
df3b77b764 fix(esxi): No distinction between ordinary scsi and pvscsi when creating disks
parascsi 是 vmware 中一种高性能的 scsi 控制器。

在此之前,scsi 只包括 "lsilogic", "lsilogicsas", "buslogic"; 而别名为 pvscsi
的 parascsi 没有被包含进来;并且,一个 pci controller只能挂一个 scsi controller,
这会导致如果在一个拥有 pvscsi 的机器上添加普通scsi驱动类型的磁盘,就会替换驱动;
反之亦然。这会导致驱动的 key 不是我们指定的key,并且在添加磁盘的时候替换驱动的
类型有些随意。再者,我们的驱动类型的选择其实并没有暴露给前端。

所以,在寻找相应的controller时,将 parascsi 也纳入 scsi 类型。
尽量避免在创建磁盘的时候做硬件的改动,所以在创建磁盘的时候不区分 scsi
还是 pvscsi,如果两种 controller 均没有,就按照请求的类型创建一个。

此外,在 CloneVM 的时候,如果支持,优先使用 parascsi。
2020-02-19 16:35:15 +08:00
yunion-ci-robot
c0eb4d1e29 Merge pull request #5145 from tb365/bugfix/tb-elb-bugfix-0114
qcloud elb sync
2020-02-19 16:03:27 +08:00
Yousong Zhou
893f336a55 Merge pull request #5173 from swordqiu/hotfix/qj-sync-provider-with-account-status-change
fix: sync cloud provider should change its cloud account's sync_status
2020-02-19 16:02:30 +08:00
yunion-ci-robot
231c124caf Merge pull request #5097 from rainzm/feature/create_vm_by_provider
feature: Specify cloud provider when creating vm
2020-02-19 14:49:26 +08:00
yunion-ci-robot
17f8e2a69a Merge pull request #5162 from tb365/bugfix/tb-bugfix-0218
huawei elb backend vpc validate fix
2020-02-19 13:34:26 +08:00
yunion-ci-robot
d82bd40601 Merge pull request #5167 from ioito/hotfix/qx-openstack-port-sync
fix: 避免将虚拟机ip同步到弹性网卡
2020-02-19 12:34:28 +08:00
yunion-ci-robot
692a4481e1 Merge pull request #5159 from yousong/bugfix/yousong-lbagent
region: lbagent: deploy: use 'public' endpoint type
2020-02-19 12:03:26 +08:00
Qiu Jian
aafec107fb fix: sync cloud provider should change its cloud account's sync_status 2020-02-19 11:44:24 +08:00
yunion-ci-robot
1e328ab028 Merge pull request #5156 from swordqiu/hotfix/qj-add-climc-helper-scripts
fix: add climc helper scripts into docker images
2020-02-19 02:40:26 +08:00
Zexi Li
8b17168154 Merge pull request #5151 from swordqiu/hotfix/qj-adjust-some-default
fix: 1. adjust default response header timer to 30 seconds 2. set default paging limit to 20
2020-02-19 02:29:30 +08:00
Yousong Zhou
65a99551c2 lbagent: fix config for sticky session cookie
- account for user specific cookie name for insert mode
 - dont tamper cache instructions from backend server for server mode
2020-02-18 20:54:12 +08:00
Yousong Zhou
8090a3fab4 region: lbagent: deploy: use 'public' endpoint type 2020-02-18 20:54:12 +08:00
Qu Xuan
082fe1e764 fix: 避免将虚拟机ip同步到弹性网卡 2020-02-18 15:36:20 +08:00
yunion-ci-robot
b621135c35 Merge pull request #5138 from ioito/hotfix/qx-guest-filter
fix: 避免未过滤掉同一个network底下的guest
2020-02-18 14:38:40 +08:00
tangbin
4d79b9612e huawei elb backend vpc validate fix 2020-02-18 14:11:37 +08:00
yunion-ci-robot
86cc07162c Merge pull request #5132 from zhaoxiangchun/feature/zxc-zstackMon
zstack监控功能
2020-02-18 12:05:40 +08:00
Rain
5170778767 feature: Specify cloud provider when creating vm
Specifying the eip is equivalent to specifying the cloudprovider when
creating vm.
2020-02-18 11:33:13 +08:00
zhaoxiangchun
6a54c88d29 gencopyright信息 2020-02-18 11:32:21 +08:00
zhaoxiangchun
288670c1b7 zstack监控功能
monitor.go中GetMonitorData函数通过传入的参数拼装请求参数,然后调用zstack.go中的getMonitor(),通过GET请求,获取相应的指标监控数据
2020-02-18 11:32:21 +08:00
Qiu Jian
d4c557b64d fix: add climc helper scripts into docker images 2020-02-18 10:14:51 +08:00
yunion-ci-robot
ee65ebd77d Merge pull request #5136 from yousong/bugfix/yousong-ocvpc-del
regiondrivers: kvm: dummy impl for RequestDeleteVpc
2020-02-18 09:44:39 +08:00
yunion-ci-robot
7eafebd63b Merge pull request #5143 from wanyaoqi/bugfix/wyq/misc-fix-200217
misc bugfix: check scsi driver on add disk
2020-02-18 09:39:38 +08:00
Qiu Jian
e9ce04699b fix: 1. adjust default response header timer to 30 seconds 2. set
default paging limit to 20
2020-02-18 08:52:23 +08:00
yunion-ci-robot
5035ff7338 Merge pull request #5130 from tb365/bugfix/tb-bugfix-021501
Bugfix/tb bugfix 021501
2020-02-18 08:14:38 +08:00
TangBin
18cad47a00 qcloud elb sync 2020-02-17 22:15:08 +08:00
wanyaoqi
9daf86778d check scsi driver on add disk 2020-02-17 21:57:15 +08:00
yunion-ci-robot
dfaadc0999 Merge pull request #5128 from tb365/bugfix/tb-bugfix-0215
huawei userdata fix
2020-02-17 21:52:37 +08:00
Qu Xuan
cb0ff34740 fix: 避免未过滤掉同一个network底下的guest 2020-02-17 20:50:02 +08:00
Yousong Zhou
4dbea204a8 regiondrivers: kvm: dummy impl for RequestDeleteVpc
Regression since 4a6a4c594a ("feature:
google云操作支持")

	Feb 17 15:53:12 titan-10-168-222-196 region[20940]: [I 200217 15:53:12 appsrv.(*Application).ServeHTTP(appsrv.go:237)] Ao9tyX8XY4DXa3tBiUyXgPm_ipc= 200 f7a73c DELETE /vpcs/vpc1 (10.168.222.196:46354) 723.91ms
	Feb 17 15:53:13 titan-10-168-222-196 region[20940]: [E 200217 15:53:13 tasks.(*VpcDeleteTask).taskFailed(vpc_delete_task.go:41)] vpc delete task fail: RequestDeleteVpc: Not implement RequestDeleteVpc
	Feb 17 15:53:13 titan-10-168-222-196 region[20940]: [I 200217 15:53:13 taskman.(*STask).SetStageFailed(tasks.go:636)] XXX TASK VpcDeleteTask failed: RequestDeleteVpc: Not implement RequestDeleteVpc on stage OnDeleteVpcComplete
	Feb 17 15:53:13 titan-10-168-222-196 region[20940]: [I 200217 15:53:13 taskman.(*STask).NotifyParentTaskComplete(tasks.go:648)] notify_parent_task_complete: VpcDeleteTask params {"__failed_reason":"RequestDeleteVpc: Not implement RequestDeleteVpc","__request_context":{"request_id":"f7a73c","service_name":"compute_v2","trace":{"debug":true,"duration":0,"id":"0","kind":"SERVER","local_endpoint":{"port":0,"service_name":"compute_v2"},"name":"delete","remote_endpoint":{"addr":"10.168.222.196","port":46354,"service_name":"(unknown_service)"},"shared":false,"tags":{"resource":"vpcs"},"timestamp":"2020-02-17T07:53:12.052219Z","trace_id":"5cf3e014"}},"__stages":[{"complete_at":"2020-02-17T15:53:12Z","name":"on_init"},{"complete_at":"2020-02-17T15:53:13Z","name":"OnDeleteVpcComplete"}]}
2020-02-17 16:18:59 +08:00
tangbin
137712ffa3 ctyun custom image create bugfix 2020-02-15 17:29:48 +08:00
tangbin
5f2beae099 ctyun sync fix 2020-02-15 16:55:30 +08:00
tangbin
8174145cd2 huawei sync fix 2020-02-15 15:51:08 +08:00
tangbin
b7737c41d1 huawei userdata fix 2020-02-15 12:55:53 +08:00
yunion-ci-robot
22745cfbf5 Merge pull request #5126 from ioito/hotfix/qx-metdata-detail
fix: 添加host标签返回值
2020-02-15 07:57:05 +08:00
yunion-ci-robot
28a5c76611 Merge pull request #5115 from tb365/bugfix/tb-bugfix-0213
aws userdata bugfix
2020-02-15 00:01:07 +08:00
Qu Xuan
f8694ea0c0 fix: 添加host标签返回值 2020-02-14 20:45:30 +08:00
tangbin
9b489c260f aws userdata bugfix 2020-02-14 19:34:55 +08:00
yunion-ci-robot
a117f1d748 Merge pull request #5124 from ioito/bugfix/qx-guest-detail
fix: disks_info typo
2020-02-14 18:21:06 +08:00
Qu Xuan
6bd97ef144 fix: disks_info typo 2020-02-14 17:50:25 +08:00
yunion-ci-robot
b3628c78fd Merge pull request #5121 from rainzm/bugfix/vmware_save_image
fix(esxiagent): Delete image backup file after saving to glance instead of before
2020-02-14 17:41:07 +08:00
Rain
df737c5559 fix(esxiagent): Delete image backup file after saving to glance instead of before 2020-02-14 17:15:32 +08:00
yunion-ci-robot
e862f1fb6a Merge pull request #5117 from ioito/hotfix/qx-gcp-region
fix: 谷歌新加region翻译
2020-02-14 15:39:04 +08:00
Qu Xuan
e1e21608b1 fix: 谷歌新加region翻译 2020-02-14 14:42:54 +08:00
yunion-ci-robot
e8c445f567 Merge pull request #5106 from rainzm/bugfix/template_init
fix(notify): Set some default template
2020-02-14 12:19:03 +08:00
yunion-ci-robot
27f65c37ab Merge pull request #5111 from zexi/feature/server-list-by-sn
region: server list by host sn
2020-02-14 12:06:04 +08:00
Zexi Li
53184acbce region: server list by host sn 2020-02-13 21:06:49 +08:00
Rain
0fe4f5ca1c fix(notify): Set some default template 2020-02-13 16:50:10 +08:00
yunion-ci-robot
1ee2038cc5 Merge pull request #5087 from rainzm/bugfix/esxi_storage_cache
fix(esxi): Create one if no suitable driver exists when creating disk
2020-02-13 14:36:04 +08:00
yunion-ci-robot
059c535c04 Merge pull request #5083 from tb365/bugfix/tb-bugfix-0211
Bugfix/tb bugfix 0211
2020-02-13 12:16:03 +08:00
tangbin
3642f9360d ctyun vm create fix 2020-02-13 11:43:28 +08:00
yunion-ci-robot
746c43e8d7 Merge pull request #5092 from bistuzx/master
update account bucket options
2020-02-13 03:47:01 +08:00
yunion-ci-robot
080b44229a Merge pull request #5085 from zexi/feature/webconsole-b64-encode
webconsole: use base64 encode connect_params
2020-02-12 22:13:01 +08:00
张旭
71f87ba109 update account bucket options 2020-02-12 18:03:23 +08:00
Rain
57f9dd38e6 fix(esxi): Create one if no suitable driver when creating disk 2020-02-12 15:23:03 +08:00
yunion-ci-robot
141bcc4d91 Merge pull request #5061 from zhaoxiangchun/feature/zxc-esxiMon
multicloud的vmware监控功能
2020-02-12 15:21:01 +08:00
Zexi Li
0b3ef91083 webconsole: use base64 encode connect_params 2020-02-12 11:42:52 +08:00
tangbin
e2ca8e4188 add more log 2020-02-11 20:09:36 +08:00
tangbin
cdba3af5e8 eip dissociate bugfixC 2020-02-11 19:23:19 +08:00
tangbin
73b4f028e0 fix create sys disk snapshot 2020-02-11 19:22:25 +08:00
yunion-ci-robot
c83becd67b Merge pull request #5081 from rainzm/bugfix/for_pr_4921
fix: Fix the bug introduced by pr #4921
2020-02-11 19:14:58 +08:00
yunion-ci-robot
0714781338 Merge pull request #5077 from ioito/bugfix/qx-gcp-rule-sync
fix: 修复gcp出方向规则同步问题
2020-02-11 17:38:02 +08:00
yunion-ci-robot
c848bae7c5 Merge pull request #5072 from ioito/hotfix/qx-metadata-rbac-check
fix: 忽略无权限的资源标签
2020-02-11 17:19:58 +08:00
Rain
762fcd90cf fix: Fix the bug introduced by pr #4921
1. The display problem of contact and notification in notify.
2. The display problem of snat's network info.
2020-02-11 16:49:36 +08:00
tangbin
bbc855c85e fix ctyun os version 2020-02-11 16:40:48 +08:00
zhaoxiangchun
07adad86ca multicloud的vmware监控功能
monitor.go中GetMonitorData()函数获取监控数据
2020-02-11 00:38:42 +08:00
Qu Xuan
1fb8a20a61 fix: 修复gcp出方向规则同步问题 2020-02-10 18:43:47 +08:00
Qu Xuan
685b27c020 fix: 忽略无权限的资源标签 2020-02-10 16:43:43 +08:00
Zexi Li
b463203902 Merge pull request #5050 from ioito/hotfix/qx-model-detail
统一 details -> isList
2020-02-10 11:12:21 +08:00
yunion-ci-robot
dcb89df2f8 Merge pull request #5052 from swordqiu/hotfix/qj-progressive-update-image-size
fix: progressively update image size while uploading
2020-02-10 10:33:59 +08:00
yunion-ci-robot
8974d4a742 Merge pull request #5065 from swordqiu/hotfix/qj-host-deployer-windows-empty-domain
fix: allow empty domain for windows deployment
2020-02-10 10:31:56 +08:00
Qiu Jian
4e474e9482 fix: progressively update image size while uploading 2020-02-10 09:28:45 +08:00
Qiu Jian
4cfc2da970 fix: allow empty domain for windows deployment 2020-02-10 09:19:10 +08:00
yunion-ci-robot
bc099768c9 Merge pull request #5054 from swordqiu/hotfix/qj-no-sync-created-at-for-servers
fix: createdAt should not be synced when update
2020-02-09 22:08:58 +08:00
Qiu Jian
558d4c2019 fix: createdAt should not be synced when update 2020-02-08 21:04:38 +08:00
Qu Xuan
366cbd4e36 统一 details -> isList 2020-02-07 17:54:48 +08:00
yunion-ci-robot
1aa17be179 Merge pull request #5048 from ioito/hotfix/qx-google-validate-create
fix: google e2不支持本地盘
2020-02-07 16:42:51 +08:00
Qu Xuan
9bd5f3a424 fix: google e2不支持本地盘 2020-02-07 16:05:40 +08:00
yunion-ci-robot
1d8990f7fa Merge pull request #5044 from ioito/hotfix/qx-guest-keypair
fix: guest创建兼容keypair参数
2020-02-07 15:59:52 +08:00
Qu Xuan
c93d16db59 fix: guest创建兼容keypair参数 2020-02-07 15:08:20 +08:00
Zexi Li
091e116c53 Merge pull request #5007 from swordqiu/feature/qj-customize-api-docs-auth-quota
feature: fix customized API documents for authenticate and quota
2020-02-07 13:11:09 +08:00
Zexi Li
3bba4a11e8 Merge pull request #5042 from wanyaoqi/feature/wyq/baremetal-register-add-update
bm register support update baremetal
2020-02-07 13:04:07 +08:00
Zexi Li
805d0bf18d Merge pull request #5026 from swordqiu/hotfix/qj-api-rpc-redundant-response
fix: api gateway rpc handler redundant response
2020-02-07 13:03:11 +08:00
yunion-ci-robot
978e1439d9 Merge pull request #5038 from ioito/hotfix/qx-cloud-account-create-check
fix: 避免因tenantcache未缓存tenant导致创建云账号失败
2020-02-07 04:53:51 +08:00
yunion-ci-robot
d064882903 Merge pull request #5032 from tb365/bugfix/tb-bugfix-0206
aws create with eip fix
2020-02-07 04:49:50 +08:00
wanyaoqi
49b9557d23 bm register support update baremetal 2020-02-06 22:22:38 +08:00
Qu Xuan
3d68e95a9f fix: 避免因tenantcache未缓存tenant导致创建云账号失败 2020-02-06 18:27:14 +08:00
yunion-ci-robot
fe49fcb016 Merge pull request #5029 from ioito/bugfix/qx-gcp-secgrp-sync
fix: 修复gcp安全组同步问题
2020-02-06 17:51:50 +08:00
tangbin
4dfeb6cb30 aws create with eip fix 2020-02-06 17:47:01 +08:00
Qu Xuan
5ec366f5fd fix: 修复gcp安全组同步问题 2020-02-06 17:01:45 +08:00
Qiu Jian
03f1d3cf33 fix: api gateway rpc handler redudant response 2020-02-06 16:57:47 +08:00
yunion-ci-robot
3bb24c8173 Merge pull request #5021 from ioito/upstream/qx-linux-userdata
fix: 避免因大小写导致linux未注入默认用户
2020-02-06 13:48:51 +08:00
Qu Xuan
8937347bc9 fix: 避免因大小写导致linux未注入默认用户 2020-02-06 12:00:14 +08:00
yunion-ci-robot
95cf064d44 Merge pull request #5014 from swordqiu/hotfix/qj-support-empty-dns-domain
fix: support empty dns domain
2020-02-06 09:38:48 +08:00
yunion-ci-robot
53c2fab0c1 Merge pull request #5012 from swordqiu/hotfix/qj-network-update-fix
fix: network update error caused by vpc feature
2020-02-06 09:33:48 +08:00
Qiu Jian
a30e0d4586 fix: support empty dns domain 2020-02-06 03:23:28 +08:00
Qiu Jian
679845080b fix: network update error caused by vpc feature 2020-02-06 03:07:52 +08:00
yunion-ci-robot
a79b0d81df Merge pull request #5010 from yousong/bugfix/yousong-vpc
vpcagent: ignore external stub guestnetworks
2020-02-06 01:49:53 +08:00
Qiu Jian
91711a1321 feature: fix customized API documents for authenticate and quota 2020-02-06 01:45:15 +08:00
Yousong Zhou
a18e246363 vpcagent: ignore external stub guestnetworks 2020-02-05 11:27:41 +08:00
yunion-ci-robot
98df377b4d Merge pull request #5008 from yousong/bugfix/yousong-vpc
hostman: fix hostinfo init interrupted by ovn chassis setup
2020-02-05 10:22:47 +08:00
Yousong Zhou
b40e0d9de7 hostman: fix hostinfo init interrupted by ovn chassis setup
Causing sysinfo.SSystemInfo not initialized

[E 200205 09:45:49 timeutils2.AddTimeout.func1.1(timeutils.go:31)] runtime error: invalid memory address or nil pointer dereference
goroutine 405 [running]:
runtime/debug.Stack(0x551210, 0xc0000de1c0, 0x0)
        /opt/hostedtoolcache/go/1.12.16/x64/src/runtime/debug/stack.go:24 +0x9d
runtime/debug.PrintStack()
        /opt/hostedtoolcache/go/1.12.16/x64/src/runtime/debug/stack.go:16 +0x22
yunion.io/x/onecloud/pkg/util/timeutils2.AddTimeout.func1.1()
        /home/runner/work/onecloud/onecloud/pkg/util/timeutils2/timeutils.go:32 +0x96
panic(0x1b208e0, 0x3bd1880)
        /opt/hostedtoolcache/go/1.12.16/x64/src/runtime/panic.go:522 +0x1b5
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).updateHostRecord(0xc0009a8a80, 0xc000aff3b0, 0x24)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:866 +0xbba
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).getHostInfo(0xc0009a8a80, 0xc00099a510, 0x24)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:782 +0x37d
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).getZoneInfo(0xc0009a8a80, 0xc00099a4b0, 0x24, 0x0)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:760 +0x55c
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).onGetWireId(0xc0009a8a80, 0xc000aff2f0, 0x24)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:734 +0x16a
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).fetchAccessNetworkInfo(0xc0009a8a80)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:719 +0x3ee
yunion.io/x/onecloud/pkg/hostman/hostinfo.(*SHostInfo).register(...)
        /home/runner/work/onecloud/onecloud/pkg/hostman/hostinfo/hostinfo.go:662
yunion.io/x/onecloud/pkg/util/timeutils2.AddTimeout.func1(0x77359400, 0xc000925520)
        /home/runner/work/onecloud/onecloud/pkg/util/timeutils2/timeutils.go:37 +0x6b
created by yunion.io/x/onecloud/pkg/util/timeutils2.AddTimeout
        /home/runner/work/onecloud/onecloud/pkg/util/timeutils2/timeutils.go:28 +0x49
2020-02-05 10:06:33 +08:00
yunion-ci-robot
d6f6ce5251 Merge pull request #5005 from yousong/bugfix/yousong-vpc
hostman: skip setting up ovn chassis when env support is not ready
2020-02-05 02:14:45 +08:00
yunion-ci-robot
26fe4abe85 Merge pull request #4996 from zhaoxiangchun/feature/zxc-azureMon
azure的主机监控信息的获取
2020-02-05 01:50:49 +08:00
Yousong Zhou
0c258408e1 hostman: skip setting up ovn chassis when env support is not ready 2020-02-04 17:12:25 +08:00
Yousong Zhou
985326a7ad hostman: fix detection of ovn controller version 2020-02-04 17:12:25 +08:00
Zexi Li
7a0ea299b8 Merge pull request #4921 from ioito/feature/qx-extra-detail
Feature/qx extra detail
2020-02-04 15:55:44 +08:00
zhaoxiangchun
b474ee30de modify files by github comments 2020-02-04 10:23:09 +08:00
zhaoxiangchun
7adcab4c63 azure的主机监控信息的获取
monitor.go中的GetMonitorData函数完成参数的组装,查询获取监控信息
2020-02-03 21:18:03 +08:00
yunion-ci-robot
a5221d2b23 Merge pull request #4999 from ioito/hotfix/qx-private-cloud-change-config
fix: 避免私有云调整配置匹配不到sku
2020-02-03 16:15:43 +08:00
Qu Xuan
d2b6c4e90f fix: 避免私有云调整配置匹配不到sku 2020-02-03 12:18:28 +08:00
Qu Xuan
76d974f6d8 feature: api -> response struct 2020-02-03 10:22:44 +08:00
yunion-ci-robot
c16dc54112 Merge pull request #4994 from rainzm/bugfix/esxi_delete_disk
fix(esxiagent): Lead to vCenter server '503' when deleting vm's disk
2020-01-19 23:48:13 +08:00
Rain
bf717adcd5 fix(esxiagent): Lead to vCenter server '503' when deleting vm'disk 2020-01-19 17:55:08 +08:00
yunion-ci-robot
2f56b98778 Merge pull request #4893 from rainzm/feature/esxi_template
feature(esxiagent): Add Template VM as CachedImage
2020-01-19 17:45:12 +08:00
Zexi Li
d4593f1ac2 Merge pull request #4991 from swordqiu/hotfix/qj-fix-cloud-event-id-event-id
Hotfix/qj fix cloud event id event
2020-01-19 17:35:19 +08:00
Qiu Jian
ee9573c786 fix: increment paging list order by multiple columns 2020-01-19 17:03:42 +08:00
Qiu Jian
d6a708fc55 update vendor 2020-01-19 15:54:17 +08:00
yunion-ci-robot
a1526d07de Merge pull request #4901 from wanyaoqi/feature/wyq/sync-on-slave-start
backup guest fix
2020-01-19 15:43:12 +08:00
yunion-ci-robot
1073f9edd3 Merge pull request #4988 from swordqiu/hotfix/qj-cloud-event-new-primary-column
fix: cloudevent_tbl use new primary column event_id
2020-01-19 14:24:15 +08:00
Qiu Jian
9fc698b1c6 fix: cloudevent_tbl use new primary column event_id 2020-01-19 12:51:13 +08:00
yunion-ci-robot
682361acb8 Merge pull request #4256 from yousong/feature/yousong-vpc
Feature/yousong vpc
2020-01-19 11:47:11 +08:00
yunion-ci-robot
4a34ab9552 Merge pull request #4977 from tb365/bugfix/tb-bugfix-0118
get login-info add 404 return & elasticcache account reset password api
2020-01-19 11:42:11 +08:00
yunion-ci-robot
3b6142d874 Merge pull request #4972 from wanyaoqi/feature/wyq/guest-network-fix
hotplug network device
2020-01-19 11:40:11 +08:00
Rain
b301bb01b7 fix(esxiagent): Cancel devKeys's cache of vm 2020-01-19 11:03:13 +08:00
wanyaoqi
c0e2019acd backup guest fix 2020-01-19 10:46:24 +08:00
wanyaoqi
de34764cad support attach multi network 2020-01-19 10:39:12 +08:00
Zexi Li
c8eb7ee127 Merge pull request #4983 from swordqiu/hotfix/qj-allocate-host-access-ip-from-reserved-pool
fix: try allocate host access ip from reserved pool
2020-01-19 10:37:15 +08:00
yunion-ci-robot
14ea4c8d39 Merge pull request #4899 from yousong/bugfix/yousong-lb-updatebg
Bugfix/yousong lb updatebg
2020-01-19 10:28:11 +08:00
yunion-ci-robot
86d22fea9d Merge pull request #4885 from yousong/bugfix/yousong-lb
lb: support accessing backend with tls
2020-01-19 10:24:12 +08:00
yunion-ci-robot
25c0e8cefd Merge pull request #4938 from ioito/hotfix/qx-azure-image-update
fix: 避免/opt/yunion/tmp目录不存在导致自定义镜像创建azure服务器失败
2020-01-19 09:09:12 +08:00
Qiu Jian
bb8d93b371 fix: try allocate host access ip from reserved pool 2020-01-19 00:20:42 +08:00
Zexi Li
0d52727cab Merge pull request #4980 from wanyaoqi/bugfix/wyq/is-standard-domain-optional
bugfix: is standard domain optional
2020-01-18 19:16:24 +08:00
wanyaoqi
2e65633c4c is standard domain optional 2020-01-18 19:10:11 +08:00
TangBin
b97ef4a95a get login-info add 404 return & elasticcache account reset password api
add input params
2020-01-18 18:35:54 +08:00
Zexi Li
187d8e72fe Merge pull request #4976 from rainzm/fix/notify_message
feature(notify): Display id of notification from its ClusterID
2020-01-18 17:08:56 +08:00
Rain
7212ce84d1 feature(notify): Display id of notification from its ClusterID 2020-01-18 17:03:52 +08:00
yunion-ci-robot
f39301adc9 Merge pull request #4954 from ioito/hotfix/qx-keypair-schema
fix: 修复未赋予keypair scheme值问题
2020-01-18 16:28:10 +08:00
yunion-ci-robot
b6af0076c7 Merge pull request #4965 from ioito/hotfix/qx-cloudevent-brand
fix: 公有云日志添加brand字段
2020-01-18 16:25:14 +08:00
Zexi Li
9f6d971681 Merge pull request #4973 from swordqiu/hotfix/qj-bucket-missing-cloud-provider-info
fix: bucket get details missing cloudprovider info
2020-01-18 16:03:43 +08:00
Qu Xuan
83336a36d4 fix: 公有云日志添加brand字段 2020-01-18 16:03:19 +08:00
Qiu Jian
a2358f6aaf fix: bucket get details missing cloudprovider info 2020-01-18 15:26:31 +08:00
wanyaoqi
c74d8ca0c7 hotplug network device 2020-01-18 15:01:08 +08:00
Zexi Li
9b14311965 Merge pull request #4968 from swordqiu/hotfix/qj-ignore-expired-reserved-ip
fix: network-reserve-ip ignores expired reserved ips
2020-01-18 14:24:32 +08:00
Qiu Jian
c114ef9411 fix: network-reserve-ip ignores expired reserved ips 2020-01-18 11:05:45 +08:00
Zexi Li
fd94dc7839 Merge pull request #4962 from wanyaoqi/bugfix/wyq/fix-renew
bugfix: fix models renew
2020-01-17 21:55:12 +08:00
yunion-ci-robot
9fcb011c77 Merge pull request #4960 from yousong/bugfix/yousong-iproute2
hostman: linux_bridge: flush addr on member iface down
2020-01-17 21:49:11 +08:00
wanyaoqi
f0a606a687 fix models renew 2020-01-17 21:47:09 +08:00
yunion-ci-robot
ade64ab485 Merge pull request #4946 from ioito/hotfix/qx-qcloud-eip-bandwidth
fix: 腾讯云主机带宽跟随eip带宽变化而变化
2020-01-17 19:42:09 +08:00
yunion-ci-robot
cafc0d2476 Merge pull request #4775 from zhaoxiangchun/feature/zxc-awsMon
Feature/zxc aws mon
2020-01-17 19:24:09 +08:00
yunion-ci-robot
c91a7818b8 Merge pull request #4957 from wanyaoqi/bugfix/wyq/postpaid-expire
fix postpaid expire
2020-01-17 18:57:09 +08:00
Yousong Zhou
6eeeb27378 hostman: linux_bridge: flush addr on member iface down
Previously it was done by "ifconfig xx 0.0.0.0 down"

Fixes 4d8d20f ("hostman: use package iproute2")
2020-01-17 18:11:08 +08:00
yunion-ci-robot
44dcbb6061 Merge pull request #4955 from yousong/bugfix/yousong-iproute2
esxi: dont import hostman pkgs
2020-01-17 18:03:08 +08:00
wanyaoqi
96862a2560 fix postpaid expire 2020-01-17 17:51:29 +08:00
Yousong Zhou
bc999888a2 vpcagent: a vpc agent with ovn driver 2020-01-17 17:48:04 +08:00
Yousong Zhou
7c29b06669 scheduler: network_predicate: allow onecloud vpc networks 2020-01-17 17:48:04 +08:00
Yousong Zhou
d17452240b scheduler: simplify MinCounters 2020-01-17 17:48:04 +08:00
Yousong Zhou
da68e7fccf scheduler: simplify findCandidatesThatFit() 2020-01-17 17:48:03 +08:00
Yousong Zhou
99e2a1a948 hostman: add OvnHelper 2020-01-17 17:48:03 +08:00
Yousong Zhou
2a6f76539c hostman: drop flow mods in ifup/ifdown script
For classic network iface, these are to be handled by sdnagent.  However
these can cause problem for ovn-controller
2020-01-17 17:48:01 +08:00
Yousong Zhou
496bbbf5c0 hostman: hostbridge: const values for driver types 2020-01-17 17:47:00 +08:00
Yousong Zhou
9173e8aa0b hostman: fix wording: detective -> detect 2020-01-17 17:46:58 +08:00
Yousong Zhou
5226deb366 mcclient: options: list all including deleted resource with --delete-all 2020-01-17 17:46:08 +08:00
Yousong Zhou
3cd8049222 cloudcommon: db: allow sysadmin to list deleted resources
The query arg name cannot be "deleted" to avoid collide with resource
field name.
2020-01-17 17:46:08 +08:00
Yousong Zhou
770a6d194d cloudcommon: extend interface for fetching metadata 2020-01-17 17:46:07 +08:00
Yousong Zhou
4221e214f0 guestnetworks: nic desc for onecloud vpc 2020-01-17 17:45:07 +08:00
Yousong Zhou
54783f601a hosts: Add OvnVersion field 2020-01-17 17:44:31 +08:00
Yousong Zhou
2fbe4a30b7 hosts: GetNetworkWithId: take into account onecloud vpc subnet 2020-01-17 17:44:31 +08:00
Yousong Zhou
5f623cb892 hosts: simplify GetNetworkWithIdAndCredential
By removing unused arg
2020-01-17 17:44:31 +08:00
Yousong Zhou
282da02f9f networks: forbid updating onecloud vpc network 2020-01-17 17:44:31 +08:00
Yousong Zhou
d9d343822f networks: validate onecloud vpc subnet
Also rewrite for more readability, especially the part on finding wire,
vpc, region, etc.
2020-01-17 17:44:31 +08:00
Yousong Zhou
f194ad7183 vpcs: add method containsIPV4Range() 2020-01-17 17:44:31 +08:00
Yousong Zhou
93c2192b77 vpcs: 自动删除wire 2020-01-17 17:44:29 +08:00
Yousong Zhou
81dc7fd91e networks: auto-create zone wire 2020-01-17 17:41:06 +08:00
Yousong Zhou
0a3c8acbd4 vpcs: 允许为私有云创建vpc 2020-01-17 17:41:06 +08:00
Yousong Zhou
e9e8cd1519 models: guard against nil memory access 2020-01-17 17:41:06 +08:00
Yousong Zhou
fb682c8e2b mcclient: rename BaseManagerInterface to IBaseManager 2020-01-17 17:41:06 +08:00
Yousong Zhou
5b0f36dbcb mcclient: models: map to db models 2020-01-17 17:41:06 +08:00
Yousong Zhou
b5a9625575 esxi: dont import hostman pkgs
Fix building region on darwin
2020-01-17 16:52:11 +08:00
Zexi Li
fca1a6d795 Merge pull request #4950 from wanyaoqi/bugfix/wyq/host-deployer-version-up
host deployer base version up
2020-01-17 14:45:34 +08:00
wanyaoqi
72a4c8244d host deployer base version up 2020-01-17 14:42:52 +08:00
Rain
7524141e49 feature(esxiagent): Add Template VM as CachedImage 2020-01-17 14:16:08 +08:00
Qu Xuan
75c22ea603 fix: 修复未赋予keypair scheme值问题 2020-01-17 14:11:08 +08:00
yunion-ci-robot
b896ae5ca7 Merge pull request #4935 from yousong/bugfix/yousong-iproute2
netutils2: guard against possible nil members
2020-01-17 13:48:10 +08:00
Qu Xuan
24591ecfab fix: 腾讯云主机带宽跟随eip带宽变化而变化 2020-01-17 13:32:23 +08:00
yunion-ci-robot
a4495dd731 Merge pull request #4943 from wanyaoqi/bugfix/wyq/fix-snapshot-filter-by-disk-type
region: fix snapshot list filter by disk type
2020-01-17 12:58:08 +08:00
wanyaoqi
fd698314be fix snapshot list filter by disk type 2020-01-17 11:57:04 +08:00
yunion-ci-robot
1c44b51913 Merge pull request #4880 from tb365/bugfix/tb-elb-bugfix-0108
Bugfix/tb elb bugfix 0108
2020-01-17 11:00:09 +08:00
yunion-ci-robot
050c4173a0 Merge pull request #4922 from wanyaoqi/bugfix/wyq/host-misc-fix-0116
host: fix detect host info
2020-01-17 10:55:08 +08:00
yunion-ci-robot
ea27a3c029 Merge pull request #4931 from rainzm/bugfix/esxi_copy_image
bugfix(esxiagent): PrefetchImageCacheByCopy & SHost.FileUrlPathToDsPath
2020-01-17 10:54:09 +08:00
Qu Xuan
c4f9e47a1b fix: 避免/opt/yunion/tmp目录不存在导致自定义镜像创建azure服务器失败 2020-01-17 10:50:03 +08:00
Rain
5b1c97af58 bugfix(esxiagent): PrefetchImageCacheByCopy & SHost.FileUrlPathToDsPath
1. Fix the bug when preparing remote image by copy
2. SHost.FileUrlPathToDsPath will not work when shost has multiple storage.
2020-01-17 10:39:41 +08:00
zhaoxiangchun
139d2cacee add License Head 2020-01-17 10:28:00 +08:00
yunion-ci-robot
e7a3905669 Merge pull request #4926 from ioito/hotfix/qx-cloudevent-list-filter
cloudevent 支持since until参数过滤
2020-01-17 09:20:08 +08:00
yunion-ci-robot
0fa2e68627 Merge pull request #4924 from tb365/bugfix/tb-bugfix-011601
server sku filter by city bugfix
2020-01-17 08:46:07 +08:00
yunion-ci-robot
4aee13b813 Merge pull request #4925 from ioito/feature/qx-batch-perform-uncache-image
fix: 支持批量释放镜像缓存
2020-01-17 08:45:07 +08:00
yunion-ci-robot
cd3899eb15 Merge pull request #4428 from tb365/feature/tb-ctyun-operations
ctyun operations
2020-01-16 22:54:08 +08:00
Yousong Zhou
975728bb31 netutils2: guard against possible nil members 2020-01-16 22:48:26 +08:00
Yousong Zhou
bd1efb1716 netutils: DefaultSrcIpDev: use iproute2.RouteGetByDst 2020-01-16 22:48:26 +08:00
Yousong Zhou
6f49ceade3 iproute2: add RouteGetByDst() 2020-01-16 22:48:26 +08:00
Yousong Zhou
5d1905aa3c iproute2: test against non-nil dst of routes returned by List4() 2020-01-16 22:48:26 +08:00
Rain
bc83e2940a bugfix(esxiagent): PrefetchImageCacheByCopy & SHost.FileUrlPathToDsPath
1. Fix the bug when preparing remote image by copy
2. SHost.FileUrlPathToDsPath will not work when shost has multiple storage.
2020-01-16 22:00:07 +08:00
yunion-ci-robot
5a698a76bd Merge pull request #4933 from rainzm/bugfix/host-deployer_vddk
fix(hostdeployer): Umount VDDKDisk when IRootFsDriver is nil
2020-01-16 21:48:11 +08:00
yunion-ci-robot
cab9960d6c Merge pull request #4929 from yousong/bugfix/yousong-iproute2
hostman: replace route command dep with netlink call
2020-01-16 21:24:11 +08:00
Rain
ea1e9c75fa fix(hostdeployer): Umount VDDKDisk when IRootFsDriver is nil 2020-01-16 21:19:16 +08:00
Yousong Zhou
167bca1931 hostman: replace route command dep with netlink call 2020-01-16 20:47:50 +08:00
Yousong Zhou
5cd60db1b4 netutils2: replace GetRoutes with netlink call 2020-01-16 20:47:50 +08:00
Yousong Zhou
1a5f6ee0f6 iproute2: route operations 2020-01-16 20:27:55 +08:00
Yousong Zhou
8b5b6bc591 hostman: add secondary addresses with one iproute2 call 2020-01-16 20:27:39 +08:00
Yousong Zhou
697c441acf hostman: up bridge interface in SetupAddresses
Previously it was done implicitly by ifconfig addr config command
2020-01-16 20:27:39 +08:00
Qu Xuan
495214e4c2 cloudevent 支持since until参数过滤 2020-01-16 19:37:55 +08:00
Qu Xuan
ad57f66781 fix: 支持批量释放镜像缓存 2020-01-16 19:09:32 +08:00
Yousong Zhou
c952693b82 hostman: fix removing addresses on slave ifaces
Previously it was done with "ifconfig xxx 0 up"

Fixes 4d8d20f ("hostman: use package iproute2")
2020-01-16 18:33:03 +08:00
TangBin
9956a04e22 server sku filter by city bugfix 2020-01-16 17:35:19 +08:00
TangBin
8b0f4b6576 ctyun operations 2020-01-16 17:05:20 +08:00
yunion-ci-robot
3e9915523f Merge pull request #4919 from yousong/bugfix/yousong-iproute2
netutils: isolate linux dependent parts
2020-01-16 16:52:08 +08:00
wanyaoqi
ea123270b3 fix detect host info 2020-01-16 16:48:15 +08:00
Yousong Zhou
5efeb6fe50 netutils: isolate linux dependent parts 2020-01-16 16:34:49 +08:00
Yousong Zhou
c3191c9c83 iproute2: skip setting addrs on parse error 2020-01-16 16:34:49 +08:00
Yousong Zhou
33010e2d93 hostman: fix setting address
Fixes 4d8d20f ("hostman: use package iproute2")
2020-01-16 16:34:49 +08:00
Zexi Li
25c2165b81 Merge pull request #4914 from wanyaoqi/bugfix/wyq/fix-deploy-iso-failed
bugfix: fix deploy iso failed
2020-01-16 15:32:44 +08:00
yunion-ci-robot
eb670de2b4 Merge pull request #4916 from tb365/bugfix/tb-bugfix-0116
ctyun bugfix
2020-01-16 14:42:07 +08:00
TangBin
276bfe40ab comment fix 2020-01-16 14:05:13 +08:00
TangBin
14b58d8c6d ctyun bugfix 2020-01-16 11:36:40 +08:00
yunion-ci-robot
f6cb85592d Merge pull request #4253 from ioito/feature/qx-google-operation
Feature/qx google operation
2020-01-16 11:02:05 +08:00
yunion-ci-robot
c71b20c748 Merge pull request #4836 from yousong/bugfix/yousong-iproute2
Bugfix/yousong iproute2
2020-01-16 09:58:06 +08:00
yunion-ci-robot
abbc8cbc63 Merge pull request #4911 from tb365/bugfix/tb-bugfix-011501
server get login info 404 not found
2020-01-16 09:52:06 +08:00
yunion-ci-robot
eef972ea05 Merge pull request #4904 from ioito/bugfix/qx-azure-vm-create-sys-storage
fix: 避免创建azure时指定高级ssd失效
2020-01-16 09:48:06 +08:00
wanyaoqi
52ad575184 fix deploy iso failed 2020-01-15 20:56:07 +08:00
yunion-ci-robot
edc6711d96 Merge pull request #4887 from wanyaoqi/feature/wyq/glance-fix
glance: validate image share on delete, update pulibc scope on mark standard
2020-01-15 20:31:10 +08:00
Qu Xuan
4a6a4c594a feature: google云操作支持 2020-01-15 20:23:31 +08:00
TangBin
4d6921285e server get login info 404 not found 2020-01-15 19:16:24 +08:00
Qu Xuan
129ed08a5c fix: 避免创建azure时指定高级ssd失效 2020-01-15 17:56:57 +08:00
Zexi Li
5e4155061f Merge pull request #4902 from wanyaoqi/bugfix/wyq/probe-mod-use-executor
host: use executor probe kernel mods
2020-01-15 17:30:09 +08:00
wanyaoqi
fec7ecbee7 use executor probe kernel mods 2020-01-15 16:59:25 +08:00
Yousong Zhou
c1dacdda12 lbagent: tunable tune.http.maxhdr 2020-01-15 12:14:27 +08:00
Yousong Zhou
5f16a5fae8 lbagent: fix not logging https listener 2020-01-15 12:14:27 +08:00
Yousong Zhou
a468ffedbf lbagent: support accessing backend with tls 2020-01-15 12:14:27 +08:00
Yousong Zhou
12c4664d85 climc: lbbackend: support ssl related options 2020-01-15 12:14:27 +08:00
Yousong Zhou
a363221e68 lb: support accessing backend with tls 2020-01-15 12:14:27 +08:00
Yousong Zhou
96f972877a lb: regiondrivers: remove unneeded Optional(true) call 2020-01-15 12:14:27 +08:00
Yousong Zhou
2f7f26e640 climc: lblistener: allow setting backendgroup to empty 2020-01-14 21:36:50 +08:00
Yousong Zhou
3f684ef94c mcclient: options: test marshal string ptr 2020-01-14 21:36:50 +08:00
Yousong Zhou
dd01610931 lblistener: allow setting http/https listener backendgroup to empty 2020-01-14 21:36:50 +08:00
Yousong Zhou
dcb4366e6d validators: ValidatorModelIdOrName: allow empty 2020-01-14 21:36:50 +08:00
Yousong Zhou
4d8d20fe95 hostman: use package iproute2 2020-01-14 18:41:04 +08:00
Yousong Zhou
480ed8ebc6 hostman: fix setting mtu for tunnel padding 2020-01-14 18:41:04 +08:00
Yousong Zhou
212af8b864 hostman: hostinfo: use netutils2.DefaultSrcIpDev() 2020-01-14 18:41:04 +08:00
Yousong Zhou
0987655e03 vendor: add github.com/vishvananda/netlink 2020-01-14 18:41:04 +08:00
Yousong Zhou
1f21fafb65 netutils2: use netlink to GetAddresses() 2020-01-14 18:41:04 +08:00
Yousong Zhou
58b03973a5 netutils2: add DefaultSrcIpDev() 2020-01-14 18:41:04 +08:00
Yousong Zhou
fc4189694b iproute2: initial version 2020-01-14 18:41:04 +08:00
Zexi Li
358ce8e6e6 Merge pull request #4895 from rainzm/bugfix/notify_template_fetch
fix(notify): Update template
2020-01-14 18:23:39 +08:00
Rain
da3797275f fix(notify): Update template 2020-01-14 17:52:42 +08:00
Zexi Li
5b907fc3e9 Merge pull request #4888 from wanyaoqi/bugfix/wyq/host-misc0114
host fix env path
2020-01-14 17:26:56 +08:00
wanyaoqi
b113c0599f host fix env path 2020-01-14 17:19:18 +08:00
wanyaoqi
bb82d30331 validate share on delete, update pulibc scope on mark standard 2020-01-14 17:08:29 +08:00
TangBin
5e599b180e aliyun backendgroup bugfix 2020-01-14 15:40:05 +08:00
TangBin
90a541b9bf aws backendgroup delete bugfix 2020-01-14 15:25:54 +08:00
TangBin
aa55b51106 aws sync routetable 2020-01-14 15:25:54 +08:00
TangBin
f51ca4201d huawei remove backend group bugfix 2020-01-14 15:25:54 +08:00
Zexi Li
7d7fd841b4 Merge pull request #4874 from yousong/bugfix/yousong-vendor
vendor: update sqlchemy
2020-01-14 13:57:46 +08:00
Zexi Li
82184636a2 Merge pull request #4878 from yousong/bugfix/yousong-lb
lb: fix setting default redirect type
2020-01-14 13:57:11 +08:00
Yousong Zhou
2c57279e83 lb: fix setting default redirect type 2020-01-14 13:28:06 +08:00
Yousong Zhou
a520e04aa8 vendor: update sqlchemy 2020-01-14 13:24:16 +08:00
Zexi Li
bbc2770045 Merge pull request #4873 from swordqiu/hotfix/qj-list-doc-improvements
fix: list documentation improvements
2020-01-14 12:02:24 +08:00
Zexi Li
4a07f1984c Merge pull request #4869 from swordqiu/hotfix/qj-service-config-first-change-not-effective
fix: first load of service config not effective
2020-01-14 10:23:32 +08:00
Qiu Jian
45849355e6 fix: list documentation improvements 2020-01-14 04:17:15 +08:00
Qiu Jian
2cf9785881 fix: first load of service config not effective 2020-01-14 03:02:27 +08:00
yunion-ci-robot
6cd9e9670c Merge pull request #4862 from ioito/hotfix/qx-openstack-change-config
fix: 仅kvm需要去判断是否需要关机调整配置,公有云私有云默认不需要
2020-01-14 02:59:01 +08:00
yunion-ci-robot
0320134cea Merge pull request #4837 from ioito/hotfix/qx-disk-log
fix: 添加磁盘创建失败日志
2020-01-14 02:56:03 +08:00
yunion-ci-robot
a28e914782 Merge pull request #4858 from ioito/hotfix/qx-cloudevent-fix
fix: 恢复公有云日志name
2020-01-14 02:50:02 +08:00
yunion-ci-robot
b32f534b50 Merge pull request #4829 from ioito/hotfix/qx-cloudevent-systemc-resource
fix: 公有云日志权限列表
2020-01-14 02:29:02 +08:00
yunion-ci-robot
3659899881 Merge pull request #4849 from ioito/hotfix/qx-aliyun-secgrouprule-sync
fix: aliyun rule fix
2020-01-14 02:19:02 +08:00
yunion-ci-robot
eb32cf7cac Merge pull request #4799 from yousong/bugfix/yousong-lb
lb: support redirect type listener & rule
2020-01-14 02:03:01 +08:00
Zexi Li
953cd5f143 Merge pull request #4842 from ioito/hotfix/qx-secgroup-log
fix: 添加安全组操作日志
2020-01-13 20:50:25 +08:00
Zexi Li
6d407e7fbd Merge pull request #4856 from rainzm/bugfix/esxi-agent_build
fix(esxi-agent): Export CGO_ENABLED=0 when building esxi-agent
2020-01-13 20:49:18 +08:00
Rain
a1627c4e24 fix(esxi-agent): Export CGO_ENABLED=0 when building esxi-agent 2020-01-13 20:42:37 +08:00
zhaoxiangchun
f2dbd426cb vendor: update 2020-01-13 19:18:30 +08:00
zhaoxiangchun
e81c5e03c9 新增aws监控代码,GetMonitorData函数,获取监控信息
首先通过monitor.go文件中的GetMonitorData函数组装查询参数,然后通过SRegion中cloudWatchRequest函数组装request信息,
进行查询返回
2020-01-13 19:17:00 +08:00
Qu Xuan
26d2913a95 fix: 仅kvm需要去判断是否需要关机调整配置,公有云私有云默认不需要 2020-01-13 18:07:19 +08:00
Qu Xuan
86e0d5f68f fix: 恢复公有云日志name 2020-01-13 17:54:33 +08:00
Qu Xuan
8d96105c8f fix: aliyun rule fix 2020-01-13 17:30:48 +08:00
Zexi Li
76ed60d6c0 Merge pull request #4713 from swordqiu/feature/qj-cloud-provider-capability-and-list-input-struct
feature: cloudprovider capability filter and listinput recode
2020-01-13 17:03:28 +08:00
Qiu Jian
7cf59a1fc1 update vendor 2020-01-13 15:57:43 +08:00
Qiu Jian
8154999c05 update server listinput comments 2020-01-13 15:42:10 +08:00
Qu Xuan
63eeafea27 fix: 添加安全组操作日志 2020-01-13 15:25:48 +08:00
Qu Xuan
ee67c84af1 fix: 添加磁盘创建失败日志 2020-01-13 14:53:30 +08:00
yunion-ci-robot
136423fdf8 Merge pull request #4834 from zexi/docker/add-esxi-agent
action: add esxi agent
2020-01-13 13:28:02 +08:00
Zexi Li
86db85bddf action: add esxi agent 2020-01-13 13:23:43 +08:00
Qiu Jian
7fba2df0f2 fix: skus filters 2020-01-13 13:19:48 +08:00
Qiu Jian
750cd9d4dc fix: ServerCreateInput add deprecated sku field for backward
compatibility
2020-01-13 13:19:48 +08:00
Qiu Jian
877fdf90d9 fix: resolve compilation errors after merge 2020-01-13 13:19:48 +08:00
Qiu Jian
f526acc5bf update vendor 2020-01-13 13:19:48 +08:00
Qiu Jian
b9be567ebf use deprecated-by tag to describe deprecated fields 2020-01-13 13:19:47 +08:00
Qiu Jian
29c9d05b5f refine auto-gen swagger documentation 2020-01-13 13:19:47 +08:00
Qiu Jian
14c1ddaccb feature: cloudprovider capability filter and listinput recode 2020-01-13 13:19:47 +08:00
Zexi Li
49b8d52634 Merge pull request #4833 from zexi/docs/swagger-serve-fix-port
swagger serve use fixed port
2020-01-13 13:13:39 +08:00
Zexi Li
3f265d8b8b swagger serve use fixed port 2020-01-13 13:12:35 +08:00
Qu Xuan
12fe979952 fix: 公有云日志权限列表 2020-01-13 11:20:00 +08:00
Zexi Li
2db8cca6cd Merge pull request #4817 from swordqiu/hotfix/qj-service-config-change-non-default-domain-projects
fix: non-default-domain-projects changes not take effects after changing
2020-01-13 10:56:29 +08:00
Zexi Li
d8ff92b39c Merge pull request #4813 from swordqiu/hotfix/qj-default-read-policy-for-quotas
fix: set default read privileges for reading all quotas
2020-01-13 10:54:53 +08:00
Zexi Li
d828d1a43f Merge pull request #4828 from wanyaoqi/bugfix/wyq/baremetal-setup
fix baremetal base dockerfile
2020-01-13 10:53:24 +08:00
wanyaoqi
cda5608d2f fix baremetal base dockerfile 2020-01-13 10:43:09 +08:00
yunion-ci-robot
4592928398 Merge pull request #4821 from ioito/bugfix/qx-dbinstance-create-input
fix: 修复rds struct input 错误
2020-01-13 09:29:01 +08:00
yunion-ci-robot
8a936fc339 Merge pull request #4823 from tb365/bugfix/tb-bugfix-0111
sku domain filter bugfix
2020-01-13 09:24:00 +08:00
TangBin
9700dbcc49 sku domain filter bugfix 2020-01-12 12:01:58 +08:00
Qu Xuan
dc45c21e4a fix: 修复rds struct input 错误 2020-01-12 00:23:43 +08:00
Qiu Jian
6104dd28bb fix: non-default-domain-projects changes not take effects after changing
through service-config
2020-01-12 00:01:19 +08:00
yunion-ci-robot
64252402a3 Merge pull request #4809 from tb365/bugfix/tb-bugfix-0111
sku domain filter bugfix
2020-01-11 23:22:00 +08:00
TangBin
53eed495c1 sku domain filter bugfix 2020-01-11 21:23:24 +08:00
yunion-ci-robot
9d37deddcb Merge pull request #4773 from wanyaoqi/feature/wyq/structure-isolated-device-info-on-guest-query
region: structure isolated device info on guest query
2020-01-11 18:26:58 +08:00
Qiu Jian
5fb17ce3f2 fix: set default read privileges for reading all quotas 2020-01-11 17:57:28 +08:00
Jian Qiu
df81d7a9fe fix: mising sku in server creat (#4807) 2020-01-11 09:35:33 +08:00
Yousong Zhou
1e285a0043 climc: lb: allow setting redirect parameters 2020-01-10 21:33:12 +08:00
Yousong Zhou
de0983a6f7 climc: lblistenerrule: allow setting request rate 2020-01-10 21:33:12 +08:00
Yousong Zhou
dfee0713e9 lbagent: support http redirect 2020-01-10 21:33:12 +08:00
Yousong Zhou
d41805f513 lb: support redirect type listener & rule 2020-01-10 21:33:12 +08:00
Yousong Zhou
87d2a5da13 lblistenerrule: validate domain and path on creation 2020-01-10 21:33:12 +08:00
Yousong Zhou
b41d2f7248 validators: add ValidatorHostPort 2020-01-10 21:33:12 +08:00
Yousong Zhou
0c00b3ac98 validators: add ValidatorIntChoices 2020-01-10 21:33:12 +08:00
Yousong Zhou
60eb3bcbb2 validators: remove unused defaultVal member 2020-01-10 21:33:12 +08:00
yunion-ci-robot
f90b4cd9e1 Merge pull request #4795 from tb365/bugfix/tb-bugfix-0110
Bugfix/tb bugfix 0110
2020-01-10 20:20:01 +08:00
yunion-ci-robot
0eec98d1f8 Merge pull request #4712 from tb365/feature/tb-support-update-skus-manually
cloud account support manually sync skus
2020-01-10 20:05:58 +08:00
yunion-ci-robot
6f093f0473 Merge pull request #4801 from tb365/bugfix/tb-bugfix-011001
kvm elb listener update bugfix
2020-01-10 19:49:58 +08:00
yunion-ci-robot
8a2641c8ea Merge pull request #4766 from tb365/bugfix/tb-apigateway-getmodule-fix
_getModule fix
2020-01-10 19:21:58 +08:00
TangBin
5ac63fceb0 kvm elb listener update bugfix 2020-01-10 18:24:08 +08:00
TangBin
a3c7d765c8 spelling mistakes fix 2020-01-10 17:15:57 +08:00
TangBin
77ca9f5fe1 user register ingore blank row 2020-01-10 17:10:49 +08:00
TangBin
3174adde04 add filter skus by domain id 2020-01-10 17:07:11 +08:00
Zexi Li
8cb5bcce15 Merge pull request #4779 from rainzm/bugfix/esxi_workspace
fix(esxi-agent): Avoid redundant agent & Adjust workspace path
2020-01-10 11:51:45 +08:00
yunion-ci-robot
4703567fe1 Merge pull request #4754 from rainzm/bugfix/storage_sync
fix(region): Sync HostStorage in syncOnPremiseCloudProviderInfo
2020-01-10 10:33:57 +08:00
yunion-ci-robot
3b36f67c53 Merge pull request #4761 from wanyaoqi/bugfix/wyq/fix-image-disable-delete
image: image-properties-add-disable-delete
2020-01-10 10:27:58 +08:00
wanyaoqi
51f9ef4ee6 structure isolated device info on guest query 2020-01-10 10:27:41 +08:00
yunion-ci-robot
7ac8fc8026 Merge pull request #4768 from wanyaoqi/bugfix/wyq/fix-guest-start-no-task-complete
bugfix: fix guest start no task complete
2020-01-10 10:22:58 +08:00
yunion-ci-robot
2adc3e03fc Merge pull request #4780 from swordqiu/hotfix/qj-initialize-service-config
fix: initialize service config on keystone when service boot
2020-01-10 10:17:59 +08:00
yunion-ci-robot
0d738d06d3 Merge pull request #4784 from yousong/bugfix/yousong-cname
Bugfix/yousong cname
2020-01-10 10:13:58 +08:00
Yousong Zhou
fb9e3c9522 dns: chain load records for cname 2020-01-09 23:19:59 +08:00
Yousong Zhou
1c84754373 dns: prepare for responding with A record of cname value 2020-01-09 23:19:59 +08:00
Yousong Zhou
b904b58de0 dnsrecords: add helper methods 2020-01-09 23:19:59 +08:00
Qiu Jian
74af253254 fix: initialize service config on keystone when service boot 2020-01-09 22:04:27 +08:00
Rain
891a018bef fix(esxi-agent): Avoid redundant agent & Adjust workspace path
1. There is only one esxi agent needed in OneCloud.
2. Workspace path shoule be EsxiAgentPath not the parent directory of this.
3. The VM name is too long for vcenter when importing VM so that shrink
it.
2020-01-09 21:07:41 +08:00
Rain
5dc98f2645 fix(region): Sync HostStorage in syncOnPremiseCloudProviderInfo
情景:绕过OneCloud,删除 storage 上的所有 vm 并且删除 storage 然后新建 storage。

问题:因为存在 vm 在使用此 storage ,所以在同步的时候,对应的 storage
会删除失败,并且阻止了 storagecache 的同步。这样在创建机器的时候,如果
使用旧的 storage 就会导致创建失败(因为此 Host 已经不再使用对应的
remote storage); 如果使用新的 storage 就会因为找不到对应的 storage cache 而失败。

修改:如果因为以上原因删除失败的 storage 的 storage_type 为 local
那么就把这个 storage 置为 offline,并且不再阻止 storage cache 的同步。
2020-01-09 21:00:08 +08:00
wanyaoqi
ddb4d72527 fix guest start no task complete 2020-01-09 17:11:41 +08:00
TangBin
1b7acb4eee _getModule fix 2020-01-09 16:34:14 +08:00
wanyaoqi
ab8f96ee67 image-properties-add-disable-delete 2020-01-09 15:40:33 +08:00
TangBin
5fd512cf11 cloud account support manually sync skus 2020-01-09 11:07:33 +08:00
yunion-ci-robot
7c31d1a7da Merge pull request #4755 from rainzm/bugfix/esxi_vm_path
fix(esxi-agent): Adjust the VM Path in Datastore
2020-01-09 10:27:57 +08:00
Zexi Li
adcfaaa555 Merge pull request #4757 from swordqiu/hotfix/qj-fix-quota-brand-key
fix: brand of compute quota key should be fixed
2020-01-09 09:58:33 +08:00
yunion-ci-robot
7c51a354e7 Merge pull request #4709 from wanyaoqi/bugfix/wyq/host-misc-20200108
host misc fix
2020-01-09 00:03:58 +08:00
yunion-ci-robot
8cbf8caf79 Merge pull request #4724 from yousong/bugfix/yousong-wire-name
wires: lift name length, charset constraint
2020-01-08 23:39:57 +08:00
yunion-ci-robot
112dd56081 Merge pull request #4750 from ioito/bugfix/qx-qcloud-cloudevent-success
fix: cloudevent 成功条件补充
2020-01-08 23:31:01 +08:00
Qiu Jian
90c301ca01 fix: brand of compute quota key should be fixed 2020-01-08 23:16:44 +08:00
Rain
883871d551 fix(esxi-agent): Adjust the VM Path in Datastore 2020-01-08 21:05:22 +08:00
Qu Xuan
a0d48290af fix: cloudevent 成功条件补充 2020-01-08 20:43:07 +08:00
Zexi Li
2021c2095a Merge pull request #4735 from swordqiu/hotfix/qj-quota-misc-bugfix-20200108
fix: misc quota bugs
2020-01-08 19:17:24 +08:00
yunion-ci-robot
4baa85932c Merge pull request #4728 from ioito/hotfix/qx-eip-generate-name
Hotfix/qx eip generate name
2020-01-08 18:59:01 +08:00
Qiu Jian
3f148f78e7 fix: misc quota bugs
1. snapshot pending usage not cleaned after created
2. server-attach-network error
3. loadbalancer fail to set cloudregion_id
2020-01-08 18:44:07 +08:00
Qu Xuan
3c9d6b929a fix: eip duplicate name 2020-01-08 17:41:22 +08:00
Yousong Zhou
8d3434cdab wires: lift name length, charset constraint 2020-01-08 17:21:30 +08:00
yunion-ci-robot
6c7b477956 Merge pull request #4695 from rainzm/bugfix/guest_image_quota
fix(glance): Cancel pending usage of image quota correctly
2020-01-08 16:10:58 +08:00
yunion-ci-robot
4a9a72d530 Merge pull request #4657 from ioito/hotfix/qx-api-docs
Hotfix/qx api docs
2020-01-08 15:54:57 +08:00
yunion-ci-robot
9e62b4dace Merge pull request #4701 from tb365/bugfix/tb-bugfix-0107
Bugfix/tb bugfix 0107
2020-01-08 15:51:57 +08:00
Zexi Li
899f90f60b Merge pull request #4714 from wanyaoqi/bugfix/wyq/subimage-field-nullable
bugfix: glance set subimage some field nullable
2020-01-08 15:42:33 +08:00
wanyaoqi
00237495b9 set subimage some field nullable 2020-01-08 15:35:26 +08:00
yunion-ci-robot
77ca8b147b Merge pull request #4655 from ioito/hotfix/qx-cloudevent-query-optimized
optimized: 优化公有云日志查询
2020-01-08 14:53:57 +08:00
wanyaoqi
eb16796db1 host misc fix 2020-01-08 14:19:26 +08:00
yunion-ci-robot
0c0e414b7b Merge pull request #4683 from yousong/bugfix/yousong-owrt
Bugfix/yousong owrt
2020-01-08 12:53:57 +08:00
Qu Xuan
1d6cf71cfc fix: add api docs 2020-01-08 11:54:57 +08:00
Qu Xuan
92e4dc7cd6 optimized: 优化公有云日志查询 2020-01-08 11:44:07 +08:00
yunion-ci-robot
356b021cd3 Merge pull request #4650 from ioito/hotfix/qx-rds-account-fix
fix: 避免创建rds account, database后未设置exteranl_id
2020-01-08 11:39:57 +08:00
yunion-ci-robot
d1db323c77 Merge pull request #4636 from ioito/hotfix/qx-huawei-rds-password-check
fix: 加强密码校验
2020-01-08 11:36:58 +08:00
Rain
1560fb53a9 fix(glance): Cancel pending usage of image quota correctly
ImageNumber always be zero because the 'image_number' in data was
removed so that canceling pending usage not work.
2020-01-08 11:27:02 +08:00
yunion-ci-robot
0b84c1f97e Merge pull request #4634 from tb365/bugfix/tb-bugfix-0106
huawei image delete bugfix
2020-01-08 11:25:57 +08:00
TangBin
3e9c68abad huawei redis sync fix 2020-01-08 11:04:58 +08:00
TangBin
7b8d617b5b ctyun default gateway fix 2020-01-08 10:57:31 +08:00
TangBin
61f72fbbfd huawei network default gateway fix 2020-01-08 10:56:32 +08:00
TangBin
8607d25035 network create GuestIpPrefix fix 2020-01-08 10:46:34 +08:00
yunion-ci-robot
2d2384df19 Merge pull request #4685 from ioito/hotfix/qx-next-marker
fix: next marker format
2020-01-08 10:07:57 +08:00
TangBin
3982f7fb19 azure skus sync fix 2020-01-07 20:03:27 +08:00
Zexi Li
49603570ec Merge pull request #4676 from swordqiu/hotfix/qj-guest-network-default-share-scope
fix: guest network default share scope should be system if non-default-domain-projects is off
2020-01-07 19:30:03 +08:00
Zexi Li
0a0386f76f Merge pull request #4666 from swordqiu/hotfix/qj-guest-brand-on-guest-create
fix: guess brand on guest create
2020-01-07 19:28:15 +08:00
yunion-ci-robot
8d7808b3fb Merge pull request #4656 from ioito/hotfix/qx-qcloud-bandwidth-user
fix: 避免拥有带宽包的腾讯云创建机器失败
2020-01-07 18:02:57 +08:00
Qu Xuan
1514c4ace7 fix: next marker format 2020-01-07 17:55:47 +08:00
Yousong Zhou
b90a1e8013 hostman: openwrt: deploy public key for root 2020-01-07 17:17:00 +08:00
yunion-ci-robot
96c48ca30b Merge pull request #4658 from ioito/hotfix/qx-guest-sync-log
fix: 避免同步安全组失败后,没有任何日志记录
2020-01-07 17:05:56 +08:00
Yousong Zhou
8964b9a406 hostman: split DeployAuthorizedKeys() 2020-01-07 17:01:52 +08:00
Yousong Zhou
79f1d1d85e hostman: openwrt: support deploy networking scripts 2020-01-07 16:40:10 +08:00
Yousong Zhou
50a5cc2570 hostman: openwrt: deploy hostname with board config 2020-01-07 16:40:10 +08:00
Qiu Jian
b93cde73b5 fix: guest network default share scope should be system if
non-default-domain-projects is off
2020-01-07 16:30:29 +08:00
Qiu Jian
a6ecd32f35 fix: guess brand on guest create 2020-01-07 15:05:10 +08:00
Yousong Zhou
2066adbd81 hostman: distro name OpenWrt instead of OpenWRT 2020-01-07 14:54:57 +08:00
Qu Xuan
fd479d8f77 fix: 避免同步安全组失败后,没有任何日志记录 2020-01-07 11:47:19 +08:00
Qu Xuan
3359254efa fix: 避免拥有带宽包的腾讯云创建机器失败 2020-01-07 11:09:00 +08:00
yunion-ci-robot
bcf3407110 Merge pull request #4645 from swordqiu/hotfix/qj-comment-test-dial-timeout-test
fix: comment out TestDialTimeout
2020-01-06 15:12:59 +08:00
yunion-ci-robot
6c6da5ff2c Merge pull request #4635 from rainzm/bugfix/delaytaskwithoutreqctx
fix: Workmanager delayTaskWithoutReqctx
2020-01-06 14:50:57 +08:00
Qu Xuan
8dd88ecae1 fix: 避免创建rds account, database后未设置exteranl_id 2020-01-06 13:36:11 +08:00
Qiu Jian
5be08d9cdd fix: comment out TestDialTimeout 2020-01-06 12:51:27 +08:00
Qu Xuan
2c4d3f5215 fix: 加强密码校验 2020-01-06 11:44:32 +08:00
Rain
02d2c69d39 fix: Workmanager delayTaskWithoutReqctx
The context of delayTaskWithoutReqctx should have 'taskid' value.
2020-01-06 11:40:50 +08:00
TangBin
715ac1adf5 huawei image delete bugfix 2020-01-06 10:45:16 +08:00
yunion-ci-robot
ef1ad52bae Merge pull request #4632 from wanyaoqi/bugfix/wyq/host-image-fix
host image support container deploy
2020-01-05 19:10:42 +08:00
yunion-ci-robot
e3d51bacb3 Merge pull request #4631 from zexi/feature/add-host-image-service
host-image: add build systemd unit
2020-01-05 19:09:37 +08:00
wanyaoqi
b386e98ddd host image support container deploy: 2020-01-05 18:25:43 +08:00
Zexi Li
06ddb4d069 host-image: add build systemd unit 2020-01-05 15:24:10 +08:00
Zexi Li
656a9c74b9 Merge pull request #4627 from swordqiu/hotfix/qj-increase-default-sync-worker-count
fix: increase default sync worker count from 2 to 5
2020-01-05 12:22:50 +08:00
Qiu Jian
a2f71e936a fix: increase default sync worker count from 2 to 5 2020-01-05 12:17:55 +08:00
Zexi Li
ae1d7b8184 Merge pull request #4601 from swordqiu/hotfix/qj-remove-bw-quota-limit
fix: remove bw/ebw quota limit
2020-01-04 23:59:16 +08:00
Qiu Jian
d048c3ac69 remove bw/ebw quota from scheduler 2020-01-04 23:30:52 +08:00
Qiu Jian
008ac4c2ab fix: remove bw/ebw quota limit 2020-01-04 23:30:52 +08:00
Zexi Li
6810401fe1 Merge pull request #4621 from zexi/hotfix/fmt-error
fix: fmt error
2020-01-04 23:20:49 +08:00
Zexi Li
1459f1420c Merge pull request #4616 from swordqiu/hotfix/qj-huawei-uncache-image-not-found
fix: huawei uncache image fail
2020-01-04 23:20:04 +08:00
Zexi Li
a54e5d2a80 Merge pull request #4609 from ioito/hotfix/qx-metadata-opslog
fix: 避免仅删除value时,行为演变为删除标签
2020-01-04 23:17:43 +08:00
Zexi Li
5d29e1ca6d fix: fmt error 2020-01-04 23:11:21 +08:00
Qiu Jian
f1afe696e2 fix: huawei uncache image fail 2020-01-04 22:40:51 +08:00
Zexi Li
6e5b560192 Merge pull request #4602 from rainzm/bugfix/notify_filter_contact
fix(notify): Fix the error of filter about contact
2020-01-04 22:28:40 +08:00
Rain
8498343481 fix(notify): Fix the error of filter about contacts 2020-01-04 22:21:05 +08:00
Qu Xuan
2b6c95d690 fix: 避免仅删除value时,行为演变为删除标签 2020-01-04 22:14:15 +08:00
Zexi Li
165e2f5693 Merge pull request #4597 from rainzm/bugfix/guest_template_password
Bugfix/guest template password
2020-01-04 22:03:12 +08:00
Rain
b17d299a47 fix(region): Cancel the check about project when creating service catlog 2020-01-04 21:34:17 +08:00
Rain
d9f4134f7f fix(region): Add reset_password in guest template's ConfigInfo 2020-01-04 21:33:33 +08:00
Zexi Li
9d8933b030 Merge pull request #4592 from rainzm/bugfix/guest_group_delete
fix(region): Fix that 'Can_delete' disappears due to parameter structuring
2020-01-04 21:09:48 +08:00
Zexi Li
e660135d85 Merge pull request #4588 from rainzm/bugfix/snapshotpolicys
Bugfix & Feature: SnapshotPolicy
2020-01-04 21:09:26 +08:00
yunion-ci-robot
359ed35e7d Merge pull request #4419 from rainzm/feature/esxi_agent_bb
Feature(esxi-agent): Esxi Agent Go Version
2020-01-04 21:07:37 +08:00
Rain
babc05b772 feature(esxi-agent): Esxi Agent Golang
1. 修改了host-deployer 使其支持 vmware vddk 的 deploy guest fs 操作。
2. esxi agent python ==> Go

fix(esxi-agent): Fix some bugs and irregular contents

fix(esxi-agent): Partial parameter structure

fix(esxi-agent): Add ovf template and remove some binary file

fix(esxi-agent): Format Code

fix(esxi-agent): fix based on reviewers' comments

fix(esxi-agent): fix host-deployer because of occasional unknown panic

fix: DelayTask should have a new Context

fix(esxi-agent): call hostutils.DelayTask

change '_interface' package to 'iagent' package

fix(esxi-agent): Fix some irregular code
2020-01-04 20:57:13 +08:00
Rain
e36cea3b05 fix(region): Fix that 'Can_delete' disappears due to parameter structuring 2020-01-04 20:52:23 +08:00
Jian Qiu
325ff3af61 fix: httpclient timeout value cleanup, use notimeout client for oss (#4527)
* fix: httpclient timeout value cleanup, use notimeout client for oss

* Adaptive timeout client

* more test cases

* remove resolve timeout test case

* use adptive timeout only if timeout = 0
2020-01-04 20:51:21 +08:00
Rain
8df61823e4 feature(region): Add bind/unbind-snapshotpolicy api for disk 2020-01-04 20:31:02 +08:00
Rain
7b794390cb fix(region): Set normal's snapshotpolicy's status as ready 2020-01-04 20:30:49 +08:00
yunion-ci-robot
75f9b82dba Merge pull request #4574 from ioito/hotfix/qx-network-delete-optimized
fix: 子网删除忽略弹性网卡
2020-01-04 20:30:37 +08:00
yunion-ci-robot
d459d64fc4 Merge pull request #4557 from bistuzx/bugfix/account-billing-bucket
add cloud account create&update options
2020-01-04 20:27:37 +08:00
yunion-ci-robot
8f400aec6b Merge pull request #4581 from ioito/bugfix/qx-zstack-secgroup
fix: 修复zstack安全组创建失败问题
2020-01-04 20:11:35 +08:00
Qu Xuan
e9d11e8d7d fix: 修复zstack安全组创建失败问题 2020-01-04 20:00:17 +08:00
Zexi Li
3289bf835c Merge pull request #4564 from swordqiu/hotfix/qj-minio-fail-set-object-metadata
Hotfix/qj minio fail set object metadata
2020-01-04 19:52:08 +08:00
Zexi Li
fd741406a6 Merge pull request #4549 from swordqiu/hotfix/qj-domain-quota-list-include-domain-quota
fix: domain quota-list include domain's own quota
2020-01-04 19:46:10 +08:00
yunion-ci-robot
53cbbb920b Merge pull request #4558 from ioito/hotfix/qx-openstack-eip
fix: openstack eip dissociate optimized
2020-01-04 19:35:35 +08:00
Zexi Li
79037ee1f3 Merge pull request #4579 from zexi/feature/dockerfile-use-base-img
dockerfile: component use base image
2020-01-04 19:27:54 +08:00
Zexi Li
39752b2f02 dockerfile: component use base image 2020-01-04 19:26:47 +08:00
Qu Xuan
67230158c8 fix: 子网删除忽略弹性网卡 2020-01-04 19:21:42 +08:00
yunion-ci-robot
2d20843d08 Merge pull request #4553 from tb365/bugfix/tb-bugfix-0104
Bugfix/tb bugfix 0104
2020-01-04 19:03:36 +08:00
Qu Xuan
41820a8d4d fix: openstack eip dissociate optimized 2020-01-04 18:42:45 +08:00
Qiu Jian
2c1974c544 fix: minio fail to set object metadata 2020-01-04 18:35:45 +08:00
TangBin
4f3498959e get eip bugfix 2020-01-04 18:22:08 +08:00
yunion-ci-robot
499e585377 Merge pull request #4535 from wanyaoqi/bugfix/wyq/misc-fix-20200104
bugfix: disk list filter guest,  add recover on guest shotdown
2020-01-04 18:19:36 +08:00
张旭
58d2ef7f15 add cloud account create&update options 2020-01-04 18:05:34 +08:00
TangBin
a75fc6b37d get eip bugfix 2020-01-04 17:28:26 +08:00
TangBin
c777817c7a host batch register bugfix 2020-01-04 17:19:57 +08:00
TangBin
35735f1d0a elastic cache account add login info api 2020-01-04 17:19:57 +08:00
TangBin
20860c369d elastic account add random password 2020-01-04 17:19:57 +08:00
Qiu Jian
307689b3e7 fix: domain quota-list include domain's own quota 2020-01-04 17:07:19 +08:00
Zexi Li
8b546df667 Merge pull request #4539 from swordqiu/hotfix/qj-add-cloud-provider-capabilities
fix: add cloudprovider capabilities
2020-01-04 17:03:18 +08:00
wanyaoqi
ce961db085 add recover on guest suddenly shotdown 2020-01-04 16:48:08 +08:00
Qiu Jian
5d3e2131b2 minor fixes 2020-01-04 16:19:07 +08:00
Qiu Jian
cddcfd24ba minor fixes 2020-01-04 16:14:06 +08:00
Qiu Jian
77ebb80277 minor fixes 2020-01-04 16:01:52 +08:00
Qiu Jian
131861e0b4 add cloudevent capabilities 2020-01-04 15:54:12 +08:00
Qiu Jian
1d002cb9ec fix: add cloudprovider capabilities 2020-01-04 15:40:24 +08:00
Zexi Li
769305e74c Merge pull request #4533 from zexi/hotfix/devtool-use-public-influxdb-url
devtool: use public influxdb endpoint
2020-01-04 14:50:29 +08:00
Zexi Li
fa2e0e344c devtool: use public influxdb endpoint 2020-01-04 14:34:05 +08:00
wanyaoqi
8c201e7602 fix disk filter by guest 2020-01-04 14:33:57 +08:00
yunion-ci-robot
cd52997804 Merge pull request #4509 from tb365/bugfix/tb-bugfix-0102
Bugfix/tb bugfix 0102
2020-01-04 12:55:37 +08:00
TangBin
bdb943c552 InitPendingUsagesInContext fix 2020-01-04 12:40:17 +08:00
TangBin
ab3c68ba69 account&provider health status check 2020-01-04 12:14:57 +08:00
yunion-ci-robot
f22b5b4275 Merge pull request #4520 from zexi/bugfix/baremetal-megaraid-jbod-check
baremetal: fix megaraid check jbod always disabled
2020-01-03 21:43:36 +08:00
Zexi Li
4bb432afd4 Merge pull request #4513 from ioito/bugfix/qx-qcloud-instance-create
fix: 腾讯云不支持描述字段参数
2020-01-03 21:26:49 +08:00
Zexi Li
7dadb333ca baremetal: fix megaraid check jbod always disabled 2020-01-03 21:18:56 +08:00
Qu Xuan
9adf705476 fix: 腾讯云不支持描述字段参数 2020-01-03 20:39:57 +08:00
TangBin
e23742be52 elastic skus add region_ext_id & zone_ext_id 2020-01-03 20:01:34 +08:00
TangBin
155cb7ee93 disk delete condition validator 2020-01-03 20:01:33 +08:00
TangBin
94fccb0f53 huawei oss client read http ProxyFromEnvironment 2020-01-03 19:06:15 +08:00
TangBin
502df4114a network operations add action log 2020-01-03 19:06:15 +08:00
TangBin
3ca229327e account create bugfix 2020-01-03 19:06:15 +08:00
Zexi Li
77435fcac9 Merge pull request #4498 from swordqiu/hotfix/qj-allow-delete-auto-sync-enabled-cloud-account
fix: allow delete cloudaccount with auto-sync enabled
2020-01-03 19:05:03 +08:00
yunion-ci-robot
3499ab7644 Merge pull request #4497 from rainzm/bugfix/nat_huawei
fix(huawei): Add 'X-Project-Id' header for huawei nat reuqest
2020-01-03 19:02:34 +08:00
yunion-ci-robot
5ae9d513a7 Merge pull request #4492 from ioito/hotfix/qx-sku-provider-fix
fix: 修复provider为空的套餐
2020-01-03 18:35:35 +08:00
Zexi Li
4b4d9cf773 Merge pull request #4488 from swordqiu/hotfix/qj-scheduler-quota-support
Hotfix/qj scheduler quota support
2020-01-03 17:13:22 +08:00
Qiu Jian
3bd4c65e6a fix: allow delete cloudaccount with auto-sync enabled 2020-01-03 16:30:30 +08:00
Rain
efd4fc1ef2 fix(huawei): Add 'X-Project-ID' header for huawei nat reuqest 2020-01-03 16:00:22 +08:00
Qiu Jian
99bb6af52c fix: OutOfQuota error code 500 2020-01-03 16:00:11 +08:00
Qu Xuan
9ecaba7ebc fix: 修复provider为空的套餐 2020-01-03 15:52:37 +08:00
Qiu Jian
940f6c84de automatically save pendingUsage in context 2020-01-03 15:18:19 +08:00
Qiu Jian
f62cea0e1d remove obsolete codes 2020-01-03 13:58:05 +08:00
Qiu Jian
4a8a79a786 bug fixes 2020-01-03 13:58:05 +08:00
Qiu Jian
82f4885b3b move lb from zonequota to regionquota 2020-01-03 13:58:04 +08:00
Qiu Jian
bc7f62a2ad scheduler schedule according to quota limit 2020-01-03 13:58:04 +08:00
Zexi Li
61f04ff338 Merge pull request #4483 from rainzm/bugfix/notify_websocket_config_init
fix(notify): Always update websocket config
2020-01-03 11:22:15 +08:00
Zexi Li
c381a47398 Merge pull request #4478 from swordqiu/hotfix/qj-bucket-search-prefix-skip-first-object
fix: bucket list object may skip first matched object
2020-01-03 11:01:15 +08:00
Rain
0cb2abe8a4 fix(notify): Always update websocket config 2020-01-02 18:13:29 +08:00
Qiu Jian
9a207261c3 fix: sort objects and directories 2020-01-02 17:36:37 +08:00
Qiu Jian
15b5a78896 fix: bucket list object may skip first matched object 2020-01-02 17:21:20 +08:00
rainzm
ba6882099c fix(region): Add support for suspend when syncing status of guest (#4474) 2020-01-02 16:33:29 +08:00
Zexi Li
220cc6883c Merge pull request #4411 from wanyaoqi/bugfix/wyq/host-misc-1230
host misc fix
2020-01-02 12:31:58 +08:00
wanyaoqi
df233595b4 host misc fix
- host check not require ntpd
- create host record use generate name
2019-12-30 17:02:55 +08:00
3387 changed files with 542481 additions and 168257 deletions

View File

@@ -1,38 +0,0 @@
FROM centos:7
MAINTAINER Yousong Zhou <zhouyousong@yunion.cn>
RUN true \
&& yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \
&& yum install -y git wget \
&& yum groupinstall -y "Development Tools" \
&& : ceph for cmd/host \
&& rpm --import 'https://download.ceph.com/keys/release.asc' \
&& yum install -y https://download.ceph.com/rpm-luminous/el7/noarch/ceph-release-1-1.el7.noarch.rpm \
&& yum install -y libcephfs-devel librbd-devel librados-devel \
&& yum clean all
WORKDIR /opt
RUN true \
&& wget https://dl.google.com/go/go1.13.3.linux-amd64.tar.gz \
&& tar xzf go1.13.3.linux-amd64.tar.gz \
&& rm -vf go1.13.3.linux-amd64.tar.gz \
&& true
ENV GOROOT="/opt/go"
ENV PATH="/opt/go/bin:${PATH}"
RUN useradd -c "OneCloud Builder" --create-home --home-dir /home/build --shell /bin/bash build
ENV HOME /home/build
WORKDIR /home/build
USER build
ENV GOPATH="/home/build/go"
ENV PATH="${GOPATH}/bin:${PATH}"
RUN true \
&& mkdir -p "$GOPATH" \
&& d="$GOPATH/src/golang.org/x/tools" \
&& mkdir -p "$d" \
&& git clone --branch yun --depth 8 https://github.com/yousong/tools "$d" \
&& cd "$d" \
&& go install ./cmd/goimports \
&& true

View File

@@ -5,10 +5,10 @@ version: 2
jobs:
check:
docker:
- image: yunionio/onecloud-ci:v1.0.3
- image: yunionio/centos-build:1.0-1
environment:
ONECLOUD_CI_BUILD: "1"
working_directory: /home/build/go/src/yunion.io/x/onecloud
working_directory: /root/go/onecloud
steps:
- checkout
- run:
@@ -18,7 +18,7 @@ jobs:
requires:
- check
docker:
- image: yunionio/onecloud-ci:v1.0.2
- image: yunionio/centos-build:1.0-1
environment:
ONECLOUD_CI_BUILD: "1"
@@ -26,14 +26,14 @@ jobs:
#### expecting it in the form of
#### /go/src/github.com/circleci/go-tool
#### /go/src/bitbucket.org/circleci/go-tool
working_directory: /home/build/go/src/yunion.io/x/onecloud
working_directory: /root/go/onecloud
parallelism: 4
steps:
- checkout
- restore_cache:
key: onecloud-build-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /home/build/.cache/go-build
- /root/.cache/go-build
- run:
command: |
targets="$(circleci tests glob "cmd/*" | grep -v cmd/host-image | circleci tests split)"
@@ -43,7 +43,7 @@ jobs:
- save_cache:
key: onecloud-build-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /home/build/.cache/go-build
- /root/.cache/go-build
- store_artifacts:
path: _output/
@@ -51,16 +51,16 @@ jobs:
requires:
- check
docker:
- image: yunionio/onecloud-ci:v1.0.2
- image: yunionio/centos-build:1.0-1
environment:
GO111MODULE: "on"
working_directory: /home/build/go/src/yunion.io/x/onecloud
working_directory: /root/go/onecloud
steps:
- checkout
- restore_cache:
key: onecloud-test-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /home/build/.cache/go-build
- /root/.cache/go-build
- run:
name: unit_test
command: |
@@ -68,7 +68,7 @@ jobs:
- save_cache:
key: onecloud-test-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /home/build/.cache/go-build
- /root/.cache/go-build
workflows:
version: 2

View File

@@ -1,9 +1,15 @@
**这个 PR 实现什么功能/修复什么问题**:
<!--
- [ ] 功能、bugfix描述
- [ ] 冒烟测试
- [ ] 单元测试编写
-->
**是否需要 backport 到之前的 release 分支**:
<!--
如果不需要,填写 "NONE".
如果需要,就以下面 item 的格式写 release 分支名,并提交对应的 cherry-pick PR:
- release/2.8.0
- release/2.6.0
- release/3.1
-->

View File

@@ -29,16 +29,47 @@ jobs:
- name: Build
run: |
sudo apt-get update
sudo apt-get install librados-dev librbd-dev
sudo apt-get install librados-dev librbd-dev # baremetal-agent needs this
make cmd/apigateway cmd/climc cmd/keystone
make cmd/logger cmd/region cmd/scheduler cmd/webconsole
make cmd/yunionconf cmd/glance cmd/torrent cmd/s3gateway
make cmd/ansibleserver cmd/cloudnet cmd/notify
make cmd/host && ./scripts/bundle_libraries.sh _output/bin/bundles/host _output/bin/host && ./scripts/host_find_libraries.sh _output/bin/bundles/host
make cmd/host-deployer && ./scripts/bundle_libraries.sh _output/bin/bundles/host-deployer _output/bin/host-deployer
make cmd/baremetal-agent && ./scripts/bundle_libraries.sh _output/bin/bundles/baremetal-agent _output/bin/baremetal-agent
make cmd/cloudevent cmd/devtool
make cmd/*cli
make cmd/esxi-agent
make docker-alpine-build F='-j4 cmd/host cmd/vpcagent cmd/region-dns'
- name: Image region
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/region
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.region
- name: Image host
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host
- name: Image host-deployer
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host-deployer
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host-deployer
- name: Image baremetal-agent
uses: elgohr/Publish-Docker-Github-Action@master
@@ -50,6 +81,26 @@ jobs:
snapshot: true
dockerfile: build/docker/Dockerfile.baremetal-agent
- name: Image esxi-agent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/esxi-agent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.esxi-agent
- name: Image vpcagent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/vpcagent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.vpcagent
- name: Image climc
uses: elgohr/Publish-Docker-Github-Action@master
with:
@@ -80,16 +131,6 @@ jobs:
snapshot: true
dockerfile: build/docker/Dockerfile.logger
- name: Image region
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/region
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.region
- name: Image scheduler
uses: elgohr/Publish-Docker-Github-Action@master
with:
@@ -160,27 +201,7 @@ jobs:
snapshot: true
dockerfile: build/docker/Dockerfile.notify
- name: Image host
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host
- name: Image host-deployer
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host-deployer
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host-deployer
- name: Image cloudevent
- name: Image cloudevent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/cloudevent
@@ -199,3 +220,13 @@ jobs:
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.devtool
- name: Image region DNS
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/region-dns
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.region-dns

1
.gitignore vendored
View File

@@ -30,6 +30,7 @@ _output
/relay
/structargtest
.idea
.vscode
GPATH
GRTAGS
GTAGS

View File

@@ -10,7 +10,7 @@ BUILD_SCRIPT := $(ROOT_DIR)/build/build.sh
ifeq ($(ONECLOUD_CI_BUILD),)
GIT_COMMIT := $(shell git rev-parse --short HEAD)
GIT_BRANCH := $(shell git name-rev --name-only HEAD)
GIT_VERSION := $(shell git describe --tags --abbrev=14 $(GIT_COMMIT)^{commit})
GIT_VERSION := $(shell git describe --always --tags --abbrev=14 $(GIT_COMMIT)^{commit})
GIT_TREE_STATE := $(shell s=`git status --porcelain 2>/dev/null`; if [ -z "$$s" ]; then echo "clean"; else echo "dirty"; fi)
BUILD_DATE := $(shell date -u +'%Y-%m-%dT%H:%M:%SZ')
else
@@ -51,6 +51,7 @@ ifdef LIBQEMUIO_PATH
X_CGO_LDFLAGS := ${CGO_LDFLAGS_ENV} -laio -lqemuio -lpthread -L ${LIBQEMUIO_PATH}/src
endif
export GOOS ?= linux
export GO111MODULE:=on
export CGO_CFLAGS = ${X_CGO_CFLAGS}
export CGO_LDFLAGS = ${X_CGO_LDFLAGS}
@@ -75,7 +76,7 @@ install: prepare_dir
gencopyright:
@sh scripts/gencopyright.sh pkg cmd
@bash scripts/gencopyright.sh pkg cmd
test:
@go test $(GO_BUILD_FLAGS) $(shell go list ./... | egrep -v 'host-image|hostimage')
@@ -83,6 +84,9 @@ test:
vet:
go vet ./...
cmd/esxi-agent: prepare_dir
CGO_ENABLED=0 $(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
cmd/%: prepare_dir
$(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
@@ -184,48 +188,82 @@ dep:
@$(MAKE) mod
mod:
go get $(patsubst %,%@master,$(shell GO111MODULE=on go mod edit -print | sed -n -e 's|.*\(yunion.io/x/[a-z].*\) v.*|\1|p'))
go get -d $(patsubst %,%@master,$(shell GO111MODULE=on go mod edit -print | sed -n -e 's|.*\(yunion.io/x/[a-z].*\) v.*|\1|p'))
go mod tidy
go mod vendor -v
DOCKER_BUILD_IMAGE_VERSION?=latest
DOCKER_BUILD_IMAGE_VERSION?=1.0-1
define dockerBuildCmd
define dockerCentOSBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
cd /home/build/onecloud
cd /root/onecloud
export GOFLAGS=-mod=vendor
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
docker-build: export dockerBuildCmd:=$(call dockerBuildCmd,$(F))
docker-build:
echo "$$dockerBuildCmd"
docker-centos-build: export dockerCentOSBuildCmd:=$(call dockerCentOSBuildCmd,$(F))
docker-centos-build:
docker rm --force onecloud-ci-build &>/dev/null || true
docker run \
--name onecloud-ci-build \
--rm \
--volume $(CURDIR):/home/build/onecloud \
yunionio/onecloud-ci:$(DOCKER_BUILD_IMAGE_VERSION) \
/bin/bash -c "$$dockerBuildCmd"
--volume $(CURDIR):/root/onecloud \
--volume $(CURDIR)/_output/_cache:/root/.cache \
registry.cn-beijing.aliyuncs.com/yunionio/centos-build:$(DOCKER_BUILD_IMAGE_VERSION) \
/bin/bash -c "$$dockerCentOSBuildCmd"
chown -R $$(id -u):$$(id -g) _output
ls -lh _output/bin
# NOTE we need a way to stop and remove the container started by docker-build.
# No --tty, --stop-signal won't work
docker-build-stop:
docker stop --time 0 onecloud-ci-build || true
docker-centos-build-stop:
docker-centos stop --time 0 onecloud-ci-build || true
.PHONY: docker-build
.PHONY: docker-build-stop
.PHONY: docker-centos-build
.PHONY: docker-centos-build-stop
define dockerAlpineBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
cd /root/go/src/yunion.io/x/onecloud
export GOFLAGS=-mod=vendor
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
docker-alpine-build: export dockerAlpineBuildCmd:=$(call dockerAlpineBuildCmd,$(F))
docker-alpine-build:
docker rm --force onecloud-docker-alpine-build &>/dev/null || true
docker run --rm \
--name onecloud-docker-alpine-build \
-v $(CURDIR):/root/go/src/yunion.io/x/onecloud \
-v $(CURDIR)/_output/alpine-build:/root/go/src/yunion.io/x/onecloud/_output \
-v $(CURDIR)/_output/alpine-build/_cache:/root/.cache \
registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:1.0-1 \
/bin/sh -c "$$dockerAlpineBuildCmd"
ls -lh _output/alpine-build/bin
docker-alpine-build-stop:
docker stop --time 0 onecloud-docker-alpine-build || true
.PHONY: docker-alpine-build
.PHONY: docker-alpine-build-stop
define helpText
Build with docker
make docker-build F='-j4'
make docker-build F='-j4 cmd/region cmd/climc'
make docker-build-stop
make docker-centos-build F='-j4'
make docker-centos-build F='-j4 cmd/region cmd/climc'
make docker-centos-build-stop
make docker-alpine-build F='-j4'
make docker-alpine-build F='-j4 cmd/host cmd/host-deployer'
make docker-alpine-build-stop
Tidy up go modules and vendor directory
@@ -253,10 +291,15 @@ gen-swagger: gen-swagger-check
$(ROOT_DIR)/scripts/codegen.py swagger-code
$(ROOT_DIR)/scripts/codegen.py swagger-yaml
swagger-serve: gen-swagger
swagger-serve-only:
$(ROOT_DIR)/scripts/codegen.py swagger-serve
.PHONY: gen-model-api-check gen-model-api gen-swagger-check gen-swagger swagger-serve
swagger-serve: gen-model-api gen-swagger swagger-serve-only
swagger-site: gen-model-api gen-swagger
$(ROOT_DIR)/scripts/codegen.py swagger-site
.PHONY: gen-model-api-check gen-model-api gen-swagger-check gen-swagger swagger-serve swagger-site
REGISTRY ?= "registry.cn-beijing.aliyuncs.com/yunionio"
VERSION ?= $(shell git describe --exact-match 2> /dev/null || \

View File

@@ -0,0 +1,42 @@
#!/bin/bash
set -e
pushd $(dirname $BASH_SOURCE) > /dev/null
CUR_DIR=$(pwd -P)
popd > /dev/null
ACCOUNT=$1
if [ -z "$ACCOUNT" ]; then
echo "Usage: $0 <cloud-acount-id-or-name>"
exit 1
fi
ACCOUNT_ID=$(climc cloud-account-show $ACCOUNT | grep -w " id " | awk '{print $4}')
ACCOUNT_NAME=$(climc cloud-account-show $ACCOUNT | grep -w " name " | awk '{print $4}')
if [ -z "$ACCOUNT_ID" ]; then
echo "Cloud account $ACCOUNT not found"
exit 1
fi
echo "Ready to clean cloud account $ACCOUNT_NAME($ACCOUNT_ID)..."
echo "1. Disable cloud account $ACCOUNT_NAME($ACCOUNT_ID) ..."
climc cloud-account-disable $ACCOUNT_ID
echo "2. Clean all providers ..."
for provider_id in $(climc cloud-provider-list --account $ACCOUNT_ID --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
echo "### to clean cloud provider $provider_id ..."
$CUR_DIR/clean_provider.sh $provider_id
done
echo "3. Delete cloud account ..."
climc cloud-account-delete $ACCOUNT_ID

View File

@@ -0,0 +1,27 @@
#/bin/bash
set -e
EIP=$1
if [ -z "$EIP" ]; then
echo "Usage: $0 <eip_id_or_name>"
exit 1
fi
EIP_NAME=$(climc eip-show $EIP | grep -w " name " | awk '{print $4}')
EIP_ID=$(climc eip-show $EIP | grep -w " id " | awk '{print $4}')
if [ -z "$EIP_ID" ]; then
echo "Cannot find eip $EIP_ID"
exit 1
fi
echo "To clean eip $EIP_NAME($EIP_ID)..."
clean_eip() {
local EID=$1
climc eip-purge $EID
}
clean_eip $EIP_ID

View File

@@ -0,0 +1,80 @@
#!/bin/bash
set -e
HOST=$1
if [ -z "$HOST" ]; then
echo "Usage: $0 <host_id_or_name>"
exit 1
fi
error_exit() {
echo "Error: $1"
exit 1
}
HOSTID=$(climc host-show $HOST | grep -w " id " | awk '{print $4}')
HOSTNAME=$(climc host-show $HOST | grep -w " name " | awk '{print $4}')
if [ -z "$HOSTNAME" ]; then
error_exit "Cannot find host $HOST"
fi
if [ -z "$HOSTID" ]; then
error_exit "Cannot find host $HOST"
fi
echo "Ready to purge host $HOSTNAME($HOSTID)..."
echo "1. Disable $HOSTNAME($HOSTID)"
if ! climc host-disable $HOSTID > /dev/null; then
error_exit "Fail to disable $HOST"
fi
echo "2. Clean servers on $HOSTNAME($HOSTID)"
for i in $(climc server-list --host $HOSTID --admin --limit 2048 --system | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc server-update --delete enable $i > /dev/null
climc server-purge $i > /dev/null
done
for i in $(climc server-list --host $HOSTID --admin --limit 2048 --pending-delete --system | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc server-purge $i > /dev/null
done
echo "3. Clean disks on $HOSTNAME($HOSTID)"
for storageid in $(climc host-storage-list --host $HOSTID --show-emulated | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $4}')
do
STORAGENAME=$(climc storage-show $storageid | grep -w " name " | awk '{print $4}')
STORAGE_TYPE=$(climc storage-show $storageid | grep -w " storage_type " | awk '{print $4}')
if [ "$STORAGE_TYPE" == "local" ]; then
for diskid in $(climc disk-list --admin --system --details --search $storageid --limit 2048 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc disk-purge $diskid > /dev/null
done
for diskid in $(climc disk-list --admin --system --details --search $storageid --pending-delete --limit 2048 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc disk-purge $diskid > /dev/null
done
fi
done
echo "4. Remove host $HOSTNAME($HOSTID)"
BAREMETAL=$(climc host-show $HOSTID | grep -w " is_baremetal " | awk '{print $4}')
HOSTTYPE=$(climc host-show $HOSTID | grep -w " host_type " | awk '{print $4}')
if [ "$BAREMETAL" == "true" ] && [ "$HOSTTYPE" != "baremetal" ]; then
climc host-update --host-type baremetal $HOSTID > /dev/null
fi
climc host-delete $HOSTID > /dev/null
echo "DONE."

View File

@@ -0,0 +1,27 @@
#!/bin/bash
set -e
LB=$1
if [ -z "$LB" ]; then
echo "Usage: $0 <loadbalancer_id_or_name>"
exit 1
fi
LB_ID=$(climc lb-show $LB | grep -w " id " | awk '{print $4}')
LB_NAME=$(climc lb-show $LB | grep -w " name " | awk '{print $4}')
if [ -z "$LB_ID" ]; then
echo "Loadbalancer $LB not found"
exit 1
fi
echo "Ready to remove loadbalancer $LB_NAME($LB_ID) ..."
clean_loadbalancer() {
local LID=$1
climc lb-purge $LID
}
clean_loadbalancer $LB_ID

View File

@@ -0,0 +1,27 @@
#!/bin/bash
set -e
LB_ACL=$1
if [ -z "$LB_ACL" ]; then
echo "Usage: $0 <loadbalancer_id_or_name>"
exit 1
fi
LB_ACL_ID=$(climc lbacl-show $LB_ACL | grep -w " id " | awk '{print $4}')
LB_ACL_NAME=$(climc lbacl-show $LB_ACL | grep -w " name " | awk '{print $4}')
if [ -z "$LB_ACL_ID" ]; then
echo "Loadbalancer ACL $LB_ACL_ID not found"
exit 1
fi
echo "Ready to remove loadbalancer acl $LB_ACL_NAME($LB_ACL_ID) ..."
clean_loadbalancer_acl() {
local LID=$1
climc lbacl-purge $LID
}
clean_loadbalancer_acl $LB_ACL_ID

View File

@@ -0,0 +1,27 @@
#!/bin/bash
set -e
LB_CERT=$1
if [ -z "$LB_CERT" ]; then
echo "Usage: $0 <loadbalancer_id_or_name>"
exit 1
fi
LB_CERT_ID=$(climc lbcert-show $LB_CERT | grep -w " id " | awk '{print $4}')
LB_CERT_NAME=$(climc lbcert-show $LB_CERT | grep -w " name " | awk '{print $4}')
if [ -z "$LB_CERT_ID" ]; then
echo "Loadbalancer certificate $LB_CERT_ID not found"
exit 1
fi
echo "Ready to remove loadbalancer certificate $LB_CERT_NAME($LB_CERT_ID) ..."
clean_loadbalancer_cert() {
local LID=$1
climc lbcert-purge $LID
}
clean_loadbalancer_cert $LB_CERT_ID

View File

@@ -0,0 +1,96 @@
#!/bin/bash
set -e
pushd $(dirname $BASH_SOURCE) > /dev/null
CUR_DIR=$(pwd -P)
popd > /dev/null
PROVIDER=$1
if [ -z "$PROVIDER" ]; then
echo "Usage: $0 <cloud-provider-id-or-name>"
exit 1
fi
PROVIDER_ID=$(climc cloud-provider-show $PROVIDER | grep -w " id " | awk '{print $4}')
PROVIDER_NAME=$(climc cloud-provider-show $PROVIDER | grep -w " name " | awk '{print $4}')
if [ -z "$PROVIDER_ID" ]; then
echo "Cloud provider $PROVIDER not found"
exit 1
fi
echo "Ready to clean cloud provider $PROVIDER_NAME($PROVIDER_ID)..."
echo "1. Disable cloud provider $PROVIDER_NAME($PROVIDER_ID) ..."
climc cloud-provider-disable $PROVIDER_ID
echo "2. Clean all hosts ..."
for hostid in $(climc host-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_host.sh $hostid
done
echo "3. Clean all loadbalancer ..."
for lbid in $(climc lb-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_loadbalancer.sh $lbid
done
echo "4. Clean all loadbalancer acl ..."
for lbaclid in $(climc lbacl-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_loadbalancer_acl.sh $lbaclid
done
echo "5. Clean all loadbalancer certificate ..."
for lbcertid in $(climc lbcert-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_loadbalancer_certificate.sh $lbcertid
done
echo "6. Clean all vpc ..."
for vpcid in $(climc vpc-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_vpc.sh $vpcid
done
echo "7. Clean all eips ..."
for eipid in $(climc eip-list --admin --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_eip.sh $eipid
done
echo "8. Clean all snapshots ..."
for snapid in $(climc snapshot-list --admin --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
echo "to clean snapshot $snapid ..."
$CUR_DIR/clean_snapshot.sh $snapid
done
echo "9. Clean all storagecache ..."
for cacheid in $(climc storage-cache-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_storagecache.sh $cacheid
done
echo "10. Clean all storages ..."
for storeid in $(climc storage-list --manager $PROVIDER_ID --admin --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
$CUR_DIR/clean_storage.sh $storeid
done
echo "Delete cloud provider ..."
climc cloud-provider-delete $PROVIDER_ID

View File

@@ -0,0 +1,27 @@
#/bin/bash
set -e
SNAPSHOT=$1
if [ -z "$SNAPSHOT" ]; then
echo "Usage: $0 <snapshot_id_or_name>"
exit 1
fi
SNAPSHOT_NAME=$(climc snapshot-show $SNAPSHOT | grep -w " name " | awk '{print $4}')
SNAPSHOT_ID=$(climc snapshot-show $SNAPSHOT | grep -w " id " | awk '{print $4}')
if [ -z "$SNAPSHOT_ID" ]; then
echo "Cannot find snapshot $SNAPSHOT_ID"
exit 1
fi
echo "To clean snapshot $SNAPSHOT_NAME($SNAPSHOT_ID)..."
clean_snapshot() {
local SNAP_ID=$1
climc snapshot-purge $SNAP_ID > /dev/null
}
clean_snapshot $SNAPSHOT_ID

View File

@@ -0,0 +1,34 @@
#!/bin/bash
set -e
STORAGE=$1
if [ -z "$STORAGE" ]; then
echo "Usage: $0 <storage_id_or_name>"
exit 1
fi
STORAGE_ID=$(climc storage-show $STORAGE | grep -w " id " | awk '{print $4}')
STORAGE_NAME=$(climc storage-show $STORAGE | grep -w " name " | awk '{print $4}')
if [ -z "$STORAGE_ID" ]; then
echo "Storage $STORAGE not found"
exit 1
fi
echo "Clean disks on storage $STORAGE_NAME($STORAGE_ID) ..."
for disk_id in $(climc disk-list --admin --storage $STORAGE_ID --show-emulated --limit 2048 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc disk-purge $disk_id > /dev/null
done
for disk_id in $(climc disk-list --admin --storage $STORAGE_ID --show-emulated --pending-delete --limit 2048 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc disk-purge $disk_id > /dev/null
done
# CACHE_ID=$(climc storage-show $STORAGE_ID | grep -w " storagecache_id " | awk '{print $4}')
climc storage-delete $STORAGE_ID > /dev/null

View File

@@ -0,0 +1,28 @@
#!/bin/bash
set -e
CACHE=$1
if [ -z "$CACHE" ]; then
echo "Usage: $0 <storage_cache_id_or_name>"
exit 1
fi
CACHE_ID=$(climc storage-cache-show $CACHE | grep -w " id " | awk '{print $4}')
CACHE_NAME=$(climc storage-cache-show $CACHE | grep -w " name " | awk '{print $4}')
if [ -z "$CACHE_ID" ]; then
echo "Storage cache $CACHE not found"
exit 1
fi
echo "Ready to remove storagecache $CACHE_NAME($CACHE_ID) ..."
for imgid in $(climc storage-cached-image-list --storagecache $CACHE_ID --show-emulated --limit 0 | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $4}')
do
climc storagecache-uncache-image $CACHE_ID $imgid --force # > /dev/null
done
climc storage-cache-delete $CACHE_ID > /dev/null

View File

@@ -0,0 +1,55 @@
#/bin/bash
set -e
VPC=$1
if [ -z "$VPC" ]; then
echo "Usage: $0 <vpc_id_or_name>"
exit 1
fi
VPC_NAME=$(climc vpc-show $VPC | grep -w " name " | awk '{print $4}')
VPC_ID=$(climc vpc-show $VPC | grep -w " id " | awk '{print $4}')
if [ -z "$VPC_ID" ]; then
echo "Cannot find vpc $VPC"
exit 1
fi
echo "To clean vpc $VPC_NAME($VPC_ID)..."
clean_network() {
climc network-purge $1 > /dev/null
}
clean_wire() {
local WIRE_ID=$1
for net_id in $(climc network-list --admin --wire $WIRE_ID --show-emulated | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
clean_network $net_id
done
climc wire-delete $wire_id > /dev/null
}
clean_vpc() {
local VPC_ID=$1
climc vpc-purge $VPC_ID > /dev/null
}
echo "1. Clean wires ..."
for wire_id in $(climc wire-list --vpc $VPC_ID --show-emulated | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
clean_wire $wire_id
done
echo "2. Clean route tables ..."
for routetable_id in $(climc routetable-list --vpc $VPC_ID --show-emulated | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc routetable-purge $routetable_id >/dev/null
done
echo "3. clean vpc ..."
clean_vpc $VPC_ID

View File

@@ -1,15 +1,3 @@
FROM frolvlad/alpine-glibc:glibc-2.28
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk update && \
apk add --no-cache tzdata ansible ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:latest
ADD ./_output/bin/ansibleserver /opt/yunion/bin/ansibleserver

View File

@@ -0,0 +1,13 @@
FROM frolvlad/alpine-glibc:glibc-2.28
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk update && \
apk add --no-cache tzdata ansible ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:latest
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:v0.0.1
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"

View File

@@ -27,3 +27,13 @@ COPY ./opt/cloud/yunion/baremetal/libutil.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/lpxelinux.0 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/menu.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/pxelinux.0 /opt/cloud/yunion/baremetal
# add mkisofs with bundles libraries
ADD ./mkisofs /bin/mkisofs
ADD ./.mkisofs.bin /bin/.mkisofs.bin
ADD ./bundles/mkisofs /bin/bundles/mkisofs
# use GNU timeout command replace busybox timeout command
RUN rm /usr/bin/timeout
ADD ./timeout /bin/timeout
ADD ./.timeout.bin /bin/.timeout.bin
ADD ./bundles/timeout /bin/bundles/timeout

View File

@@ -1,16 +1,5 @@
FROM frolvlad/alpine-glibc:glibc-2.28
FROM registry.cn-beijing.aliyuncs.com/yunionio/climc-base:v20200308
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN apk add --no-cache bash bash-completion tzdata ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV PATH="/opt/yunion/bin:${PATH}"
RUN mkdir -p /opt/yunion/bin
ADD ./build/climc/root/opt /opt
ADD ./_output/bin/climc ./_output/bin/*cli /opt/yunion/bin/

View File

@@ -0,0 +1,16 @@
FROM frolvlad/alpine-glibc:glibc-2.28
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk add --no-cache bash bash-completion tzdata ca-certificates vim && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV PATH="/opt/yunion/bin:${PATH}"
RUN mkdir -p /opt/yunion/bin

View File

@@ -0,0 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:latest
COPY ./build/esxi-agent/root/opt/ /opt/
ADD ./_output/bin/esxi-agent /opt/yunion/bin/esxi-agent

View File

@@ -1,11 +1,9 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.1.0
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"
ENV TZ Asia/Shanghai
RUN apk add librados librbd
RUN mkdir -p /opt/yunion/bin
ADD ./_output/bin/host /opt/yunion/bin/host
ADD ./_output/bin/.host.bin /opt/yunion/bin/.host.bin
ADD ./_output/bin/bundles/host /opt/yunion/bin/bundles/host
ADD ./_output/alpine-build/bin/host /opt/yunion/bin/host

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base:v0.0.3
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"

View File

@@ -0,0 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:latest
ADD ./_output/bin/monitor /opt/yunion/bin/monitor

View File

@@ -1,3 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:latest
FROM alpine:3.11.3
ADD ./_output/bin/region-dns /opt/yunion/bin/region-dns
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/region-dns /opt/yunion/bin/region-dns

View File

@@ -0,0 +1,6 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/openvswitch:2.9.6-1
MAINTAINER "Yousong Zhou <zhouyousong@yunion.cn>"
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/vpcagent /opt/yunion/bin/vpcagent

View File

@@ -1,14 +1,3 @@
FROM yunion/kubectl:1.14.3
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk add --no-cache sshpass ipmitool openssh-client tzdata ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
FROM registry.cn-beijing.aliyuncs.com/yunionio/webconsole-base:latest
ADD ./_output/bin/webconsole /opt/yunion/bin/webconsole

View File

@@ -0,0 +1,12 @@
FROM yunion/kubectl:1.14.3
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk add --no-cache sshpass ipmitool openssh-client tzdata ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns="http://schemas.dmtf.org/ovf/envelope/1"
xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1"
xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common"
xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData"
xmlns:vmw="http://www.vmware.com/schema/ovf"
xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<References>
<File ovf:href="{{ .Name }}" ovf:id="file1" ovf:size="{{ .Size }}"/>
</References>
<DiskSection>
<Info>Virtual disk information</Info>
<Disk ovf:capacity="{{ .Capacity }}" ovf:capacityAllocationUnits="byte" ovf:diskId="vmdisk1" ovf:fileRef="file1" ovf:format="http://www.vmware.com/interfaces/specifications/vmdk.html#streamOptimized" ovf:populatedSize="0"/>
</DiskSection>
<VirtualSystem ovf:id="{{ .ImportName }}">
<Info>A virtual machine</Info>
<Name>{{ .ImportName }}</Name>
<OperatingSystemSection ovf:id="100" vmw:osType="other26xLinux64Guest">
<Info>The kind of installed guest operating system</Info>
</OperatingSystemSection>
<VirtualHardwareSection>
<Info>Virtual hardware requirements</Info>
<System>
<vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
<vssd:InstanceID>0</vssd:InstanceID>
<vssd:VirtualSystemIdentifier>{{ .ImportName }}</vssd:VirtualSystemIdentifier>
<vssd:VirtualSystemType>vmx-07</vssd:VirtualSystemType>
</System>
<Item>
<rasd:AllocationUnits>hertz * 10^6</rasd:AllocationUnits>
<rasd:Description>Number of Virtual CPUs</rasd:Description>
<rasd:ElementName>1 virtual CPU(s)</rasd:ElementName>
<rasd:InstanceID>1</rasd:InstanceID>
<rasd:ResourceType>3</rasd:ResourceType>
<rasd:VirtualQuantity>1</rasd:VirtualQuantity>
</Item>
<Item>
<rasd:AllocationUnits>byte * 2^20</rasd:AllocationUnits>
<rasd:Description>Memory Size</rasd:Description>
<rasd:ElementName>1024MB of memory</rasd:ElementName>
<rasd:InstanceID>2</rasd:InstanceID>
<rasd:ResourceType>4</rasd:ResourceType>
<rasd:VirtualQuantity>1024</rasd:VirtualQuantity>
</Item>
<Item>
<rasd:Address>0</rasd:Address>
<rasd:Description>SCSI Controller</rasd:Description>
<rasd:ElementName>SCSI Controller 0</rasd:ElementName>
<rasd:InstanceID>3</rasd:InstanceID>
<rasd:ResourceSubType>VirtualSCSI</rasd:ResourceSubType>
<rasd:ResourceType>6</rasd:ResourceType>
</Item>
<Item>
<rasd:AddressOnParent>0</rasd:AddressOnParent>
<rasd:ElementName>Hard Disk 1</rasd:ElementName>
<rasd:HostResource>ovf:/disk/vmdisk1</rasd:HostResource>
<rasd:InstanceID>9</rasd:InstanceID>
<rasd:Parent>3</rasd:Parent>
<rasd:ResourceType>17</rasd:ResourceType>
<vmw:Config ovf:required="false" vmw:key="backing.writeThrough" vmw:value="false"/>
</Item>
</VirtualHardwareSection>
</VirtualSystem>
</Envelope>

2
build/esxi-agent/vars Normal file
View File

@@ -0,0 +1,2 @@
DESCRIPTION="Esxi Agent"
# SERVICE="yes"

View File

@@ -0,0 +1,19 @@
[Unit]
Description=Yunion Host Image Server
Documentation=https://docs.yunion.cn
After=network.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/opt/yunion/bin/host-image --conf /etc/yunion/host.conf
WorkingDirectory=/opt/yunion/bin
KillMode=process
Restart=always
RestartSec=30
LimitNOFILE=500000
LimitNPROC=500000
[Install]
WantedBy=multi-user.target

2
build/host-image/vars Normal file
View File

@@ -0,0 +1,2 @@
DESCRIPTION="Yunion Host Image Server"
SERVICE="yes"

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{{.os_type}} 镜像 {{.name}} 上传完成

View File

@@ -0,0 +1,66 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<table style="width: 650px; margin-bottom: 20px;" border="0" cellpadding="0" cellspacing="0" align="center">
<tr style="height: 50px; background: #333; overflow: hidden;">
<td>
<table style="margin-left: 20px;">
<tr>
<td>
<img src="data:{{.logo_format}};base64,{{.logo}}" alt="" style="color: #fff; width: 80px; vertical-align: middle;">
</td>
</tr>
</table>
</td>
<td>
<table style="float: right;">
<tr>
<td style="padding-left: 20px; padding-right: 20px;">
<a href="" style="text-decoration: none; color: #20A0FF; font-size: 12px; display: none;">产品</a>
</td>
<td style="padding-left: 20px; padding-right: 20px;">
<a href="" style="text-decoration: none; color: #20A0FF; font-size: 12px; display: none;">解决方案</a>
</td>
<td style="padding-left: 20px; padding-right: 20px;">
<a href="" style="text-decoration: none; color: #20A0FF; font-size: 12px; display: none;">服务</a>
</td>
<td style="padding-left: 20px; padding-right: 20px;">
<a href="" style="text-decoration: none; color: #20A0FF; font-size: 12px; display: none;">帮助与文档</a>
</td>
<td style="padding-left: 20px; padding-right: 20px;">
<a href="" style="text-decoration: none; color: #20A0FF; font-size: 12px; display: none;">关于我们</a>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td style="width: 100%;" colspan="2">
<table style="padding: 20px 10px; width: 100%;">
<tr>
<td style="padding-bottom: 20px;">
亲爱的{{.name}},您好:
</td>
</tr>
<tr>
<td style="padding-bottom: 10px;">请点击下面的链接,完成用户邮箱的激活:</td>
</tr>
<tr>
<td style="padding-bottom: 30px;"><a href="{{.link}}">{{.link}}</a></td>
</tr>
</table>
</td>
</tr>
<tr style="width: 96%;">
<td colspan="2" style="border-top: 1px dashed #ccc; color: #ccc; font-size: 12px; padding-bottom: 10px; font-weight: 100;">*为了确保您的帐号安全该链接仅48小时内访问有效请勿直接回复此邮件。</td>
</tr>
<tr>
<td colspan="2" style="background: #333; text-align: right; padding-right: 20px; font-size: 12px; color: #949494; height: 50px;">版权所有 © {{.copyright}} 保留一切权利</td>
</tr>
</table>
</body>
</html>

View File

@@ -0,0 +1 @@
镜像 {{.name}} 上传完成

View File

@@ -0,0 +1 @@
Yunion Verify

View File

@@ -84,7 +84,11 @@ func newClient(options *BaseOptions) (*aliyun.SRegion, error) {
return nil, fmt.Errorf("Missing secret")
}
cli, err := aliyun.NewAliyunClient("", "", options.AccessKey, options.Secret, options.Debug)
cli, err := aliyun.NewAliyunClient(
aliyun.NewAliyunClientConfig(
options.AccessKey, options.Secret,
).Debug(options.Debug),
)
if err != nil {
return nil, err
}

View File

@@ -85,7 +85,13 @@ func newClient(options *BaseOptions) (*aws.SRegion, error) {
return nil, fmt.Errorf("Missing secret")
}
cli, err := aws.NewAwsClient("", "", options.AccessUrl, options.AccessKey, options.Secret, options.Debug)
cli, err := aws.NewAwsClient(
aws.NewAwsClientConfig(
options.AccessUrl,
options.AccessKey,
options.Secret,
).Debug(options.Debug),
)
if err != nil {
return nil, err
}

View File

@@ -100,11 +100,17 @@ func newClient(options *BaseOptions) (*azure.SRegion, error) {
return nil, fmt.Errorf("Missing Cloud Environment")
}
cli, err := azure.NewAzureClient("", "", options.CloudEnv,
options.DirectoryID,
options.ApplicationID, options.ApplicationKey,
options.SubscriptionID,
options.Debug)
cli, err := azure.NewAzureClient(
azure.NewAzureClientConfig(
options.CloudEnv,
options.DirectoryID,
options.ApplicationID,
options.ApplicationKey,
).
SubscriptionId(options.SubscriptionID).
Debug(options.Debug),
)
if err != nil {
return nil, err
}

View File

@@ -35,6 +35,7 @@ import (
_ "yunion.io/x/onecloud/cmd/climc/shell/cloudnet"
_ "yunion.io/x/onecloud/cmd/climc/shell/etcd"
_ "yunion.io/x/onecloud/cmd/climc/shell/k8s"
_ "yunion.io/x/onecloud/cmd/climc/shell/monitor"
"yunion.io/x/onecloud/pkg/mcclient"
)

View File

@@ -0,0 +1,42 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package shell
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
)
func init() {
type BillTasksCreateOptions struct {
options.BaseListOptions
CloudaccountId string `help:"cloudaccount Id" required:"true"`
StartDay int `help:"start day of billing cycle, example: 20060102"`
EndDay int `help:"end day of billing cycle, example: 20060102"`
}
R(&BillTasksCreateOptions{}, "bill-tasks-create", "create bill task",
func(s *mcclient.ClientSession, args *BillTasksCreateOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.BillTasks.Create(s, params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -0,0 +1,46 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package shell
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
)
func init() {
type BucketOptionsVerifyOptions struct {
options.BaseListOptions
CloudaccountId string `help:"cloudaccount Id" required:"true"`
BillingReportBucket string `help:"S3 bucket that stores account billing report"`
BillingFilePrefix string `help:"prefix of billing file name"`
BillingBucketAccount string `help:"Id of cloudaccount that can access billing bucket"`
UsageReportBucket string `help:"S3 bucket that stores account usage report"`
UsageFilePrefix string `help:"prefix of usage file name"`
UsageBucketAccount string `help:"Id of cloudaccount that can access usage bucket"`
}
R(&BucketOptionsVerifyOptions{}, "bucket-options-verify", "billing bucket connection test",
func(s *mcclient.ClientSession, args *BucketOptionsVerifyOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.BucketOptions.PerformAction(s, args.CloudaccountId, "verify", params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -32,12 +32,22 @@ import (
func init() {
type BucketListOptions struct {
options.BaseListOptions
DistinctField string `help:"query specified distinct field"`
}
R(&BucketListOptions{}, "bucket-list", "List all buckets", func(s *mcclient.ClientSession, args *BucketListOptions) error {
params, err := options.ListStructToParams(args)
if err != nil {
return err
}
if len(args.DistinctField) > 0 {
params.Add(jsonutils.NewString(args.DistinctField), "extra_field")
result, err := modules.Buckets.Get(s, "distinct-field", params)
if err != nil {
return err
}
fmt.Println(result)
return nil
}
result, err := modules.Buckets.List(s, params)
if err != nil {
return err
@@ -46,10 +56,10 @@ func init() {
return nil
})
type BucketShowOptions struct {
type BucketIdOptions struct {
ID string `help:"ID or name of bucket"`
}
R(&BucketShowOptions{}, "bucket-show", "Show details of bucket", func(s *mcclient.ClientSession, args *BucketShowOptions) error {
R(&BucketIdOptions{}, "bucket-show", "Id details of bucket", func(s *mcclient.ClientSession, args *BucketIdOptions) error {
result, err := modules.Buckets.Get(s, args.ID, nil)
if err != nil {
return err
@@ -58,6 +68,15 @@ func init() {
return nil
})
R(&BucketIdOptions{}, "bucket-syncstatus", "Sync bucket statust", func(s *mcclient.ClientSession, args *BucketIdOptions) error {
result, err := modules.Buckets.PerformAction(s, args.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type BucketUpdateOptions struct {
ID string `help:"ID or name of bucket" json:"-"`
Name string `help:"new name of bucket" json:"name"`

View File

@@ -26,10 +26,36 @@ import (
"yunion.io/x/onecloud/pkg/mcclient/options"
)
func parseGcpCredential(filename string) (jsonutils.JSONObject, error) {
data, err := ioutil.ReadFile(filename)
if err != nil {
return nil, err
}
authParams, err := jsonutils.Parse(data)
if err != nil {
return nil, err
}
ret := jsonutils.NewDict()
for _, k := range []string{
"client_email",
"project_id",
"private_key_id",
"private_key",
} {
v, _ := authParams.Get(k)
ret.Add(v, fmt.Sprintf("gcp_%s", k))
}
return ret, nil
}
func init() {
type CloudaccountListOptions struct {
options.BaseListOptions
Capability []string `help:"capability filter" choices:"project|compute|network|loadbalancer|objectstore|rds|cache|event"`
DistinctField string `help:"distinct field"`
ProxySetting string `help:"Proxy setting id or name"`
}
R(&CloudaccountListOptions{}, "cloud-account-list", "List cloud accounts", func(s *mcclient.ClientSession, args *CloudaccountListOptions) error {
var params *jsonutils.JSONDict
@@ -39,6 +65,21 @@ func init() {
if err != nil {
return err
}
if len(args.Capability) > 0 {
params.Add(jsonutils.NewStringArray(args.Capability), "capability")
}
if len(args.ProxySetting) > 0 {
params.Add(jsonutils.NewString(args.ProxySetting), "proxy_setting")
}
}
if len(args.DistinctField) > 0 {
params.Add(jsonutils.NewString(args.DistinctField), "extra_field")
result, err := modules.Cloudaccounts.Get(s, "distinct-field", params)
if err != nil {
return err
}
fmt.Println(result)
return nil
}
result, err := modules.Cloudaccounts.List(s, params)
if err != nil {
@@ -88,6 +129,19 @@ func init() {
R(&options.SAliyunCloudAccountCreateOptions{}, "cloud-account-create-aliyun", "Create an Aliyun cloud account", func(s *mcclient.ClientSession, args *options.SAliyunCloudAccountCreateOptions) error {
params := jsonutils.Marshal(args)
params.(*jsonutils.JSONDict).Add(jsonutils.NewString("Aliyun"), "provider")
options := jsonutils.NewDict()
if len(args.OptionsBillingReportBucket) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingReportBucket), "billing_report_bucket")
}
if len(args.OptionsBillingBucketAccount) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingBucketAccount), "billing_bucket_account")
}
if len(args.OptionsBillingFilePrefix) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingFilePrefix), "billing_file_prefix")
}
if options.Size() > 0 {
params.(*jsonutils.JSONDict).Add(options, "options")
}
result, err := modules.Cloudaccounts.Create(s, params)
if err != nil {
return err
@@ -121,11 +175,7 @@ func init() {
R(&options.SGoogleCloudAccountCreateOptions{}, "cloud-account-create-google", "Create a Google cloud account", func(s *mcclient.ClientSession, args *options.SGoogleCloudAccountCreateOptions) error {
params := jsonutils.Marshal(args)
params.(*jsonutils.JSONDict).Add(jsonutils.NewString("Google"), "provider")
data, err := ioutil.ReadFile(args.GoogleJsonFile)
if err != nil {
return err
}
authParams, err := jsonutils.Parse(data)
authParams, err := parseGcpCredential(args.GoogleJsonFile)
if err != nil {
return err
}
@@ -147,6 +197,12 @@ func init() {
if len(args.OptionsBillingReportBucket) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingReportBucket), "billing_report_bucket")
}
if len(args.OptionsBillingBucketAccount) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingBucketAccount), "billing_bucket_account")
}
if len(args.OptionsBillingFilePrefix) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingFilePrefix), "billing_file_prefix")
}
if options.Size() > 0 {
params.Add(options, "options")
}
@@ -280,6 +336,34 @@ func init() {
if params.Size() == 0 {
return InvalidUpdateError()
}
options := jsonutils.NewDict()
if len(args.OptionsBillingReportBucket) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingReportBucket), "billing_report_bucket")
}
if len(args.OptionsBillingBucketAccount) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingBucketAccount), "billing_bucket_account")
}
if len(args.OptionsBillingFilePrefix) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingFilePrefix), "billing_file_prefix")
}
if options.Size() > 0 {
params.Add(options, "options")
}
removeOptions := make([]string, 0)
if args.RemoveOptionsBillingReportBucket {
removeOptions = append(removeOptions, "billing_report_bucket")
}
if args.RemoveOptionsBillingBucketAccount {
removeOptions = append(removeOptions, "billing_bucket_account")
}
if args.RemoveOptionsBillingFilePrefix {
removeOptions = append(removeOptions, "billing_file_prefix")
}
if len(removeOptions) > 0 {
params.Add(jsonutils.NewStringArray(removeOptions), "remove_options")
}
result, err := modules.Cloudaccounts.Update(s, args.ID, params)
if err != nil {
return err
@@ -330,6 +414,19 @@ func init() {
return nil
})
R(&options.SGoogleCloudAccountUpdateOptions{}, "cloud-account-update-google", "update a google cloud account", func(s *mcclient.ClientSession, args *options.SGoogleCloudAccountUpdateOptions) error {
params := jsonutils.Marshal(args).(*jsonutils.JSONDict)
if params.Size() == 0 {
return InvalidUpdateError()
}
result, err := modules.Cloudaccounts.Update(s, args.ID, params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SAWSCloudAccountUpdateOptions{}, "cloud-account-update-aws", "update an AWS cloud account", func(s *mcclient.ClientSession, args *options.SAWSCloudAccountUpdateOptions) error {
params := jsonutils.Marshal(args).(*jsonutils.JSONDict)
@@ -337,6 +434,12 @@ func init() {
if len(args.OptionsBillingReportBucket) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingReportBucket), "billing_report_bucket")
}
if len(args.OptionsBillingBucketAccount) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingBucketAccount), "billing_bucket_account")
}
if len(args.OptionsBillingFilePrefix) > 0 {
options.Add(jsonutils.NewString(args.OptionsBillingFilePrefix), "billing_file_prefix")
}
if options.Size() > 0 {
params.Add(options, "options")
}
@@ -344,6 +447,12 @@ func init() {
if args.RemoveOptionsBillingReportBucket {
removeOptions = append(removeOptions, "billing_report_bucket")
}
if args.RemoveOptionsBillingBucketAccount {
removeOptions = append(removeOptions, "billing_bucket_account")
}
if args.RemoveOptionsBillingFilePrefix {
removeOptions = append(removeOptions, "billing_file_prefix")
}
if len(removeOptions) > 0 {
params.Add(jsonutils.NewStringArray(removeOptions), "remove_options")
}
@@ -359,7 +468,7 @@ func init() {
return nil
})
R(&options.SOpenStackCloudAccountUpdateOptions{}, "cloud-account-update-openstack", "update an AWS cloud account", func(s *mcclient.ClientSession, args *options.SOpenStackCloudAccountUpdateOptions) error {
R(&options.SOpenStackCloudAccountUpdateOptions{}, "cloud-account-update-openstack", "update an OpenStack cloud account", func(s *mcclient.ClientSession, args *options.SOpenStackCloudAccountUpdateOptions) error {
params := jsonutils.Marshal(args).(*jsonutils.JSONDict)
if params.Size() == 0 {
return InvalidUpdateError()
@@ -611,6 +720,19 @@ func init() {
return nil
})
R(&options.SGoogleCloudAccountUpdateCredentialOptions{}, "cloud-account-update-credential-google", "Update credential of a Google cloud account", func(s *mcclient.ClientSession, args *options.SGoogleCloudAccountUpdateCredentialOptions) error {
params, err := parseGcpCredential(args.GoogleJsonFile)
if err != nil {
return err
}
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "update-credential", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SS3CloudAccountUpdateCredentialOptions{}, "cloud-account-update-credential-s3", "Update credential of a generic S3 cloud account", func(s *mcclient.ClientSession, args *options.SS3CloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "update-credential", params)
@@ -631,6 +753,129 @@ func init() {
return nil
})
R(&options.SVMwareCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-vmware", "Update credential of a VMware cloud account", func(s *mcclient.ClientSession, args *options.SVMwareCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SAliyunCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-aliyun", "Update credential of an Aliyun cloud account", func(s *mcclient.ClientSession, args *options.SAliyunCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SAzureCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-azure", "Update credential of an Azure cloud account", func(s *mcclient.ClientSession, args *options.SAzureCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SQcloudCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-qcloud", "Update credential of a Qcloud cloud account", func(s *mcclient.ClientSession, args *options.SQcloudCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SAWSCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-aws", "Update credential of an AWS cloud account", func(s *mcclient.ClientSession, args *options.SAWSCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SOpenStackCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-openstack", "Update credential of an OpenStack cloud account", func(s *mcclient.ClientSession, args *options.SOpenStackCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SHuaweiCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-huawei", "Update credential of an Huawei cloud account", func(s *mcclient.ClientSession, args *options.SHuaweiCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SUcloudCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-ucloud", "Update credential of a Ucloud cloud account", func(s *mcclient.ClientSession, args *options.SUcloudCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SZStackCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-zstack", "Update credential of a ZStack cloud account", func(s *mcclient.ClientSession, args *options.SZStackCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SGoogleCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-google", "Update credential of a Google cloud account", func(s *mcclient.ClientSession, args *options.SGoogleCloudAccountUpdateCredentialOptions) error {
params, err := parseGcpCredential(args.GoogleJsonFile)
if err != nil {
return err
}
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SS3CloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-s3", "Update credential of a generic S3 cloud account", func(s *mcclient.ClientSession, args *options.SS3CloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.SCtyunCloudAccountUpdateCredentialOptions{}, "cloud-account-test-connectivity-ctyun", "Update credential of an Ctyun cloud account", func(s *mcclient.ClientSession, args *options.SCtyunCloudAccountUpdateCredentialOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "test-connectivity", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type CloudaccountSyncOptions struct {
ID string `help:"ID or Name of cloud account"`
Force bool `help:"Force sync no matter what"`
@@ -694,10 +939,14 @@ func init() {
})
type CloudaccountPublicOptions struct {
ID string `help:"ID or name of cloud account"`
ID string `help:"ID or name of cloud account" json:"-"`
Scope string `help:"public_sccope" choices:"domain|system" json:"scope"`
SharedDomains []string `help:"shared domains" json:"shared_domains"`
ShareMode string `help:"share_mode" choices:"account_domain|provider_domain|system"`
}
R(&CloudaccountPublicOptions{}, "cloud-account-public", "Mark this cloud account public ", func(s *mcclient.ClientSession, args *CloudaccountPublicOptions) error {
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "public", nil)
params := jsonutils.Marshal(args)
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "public", params)
if err != nil {
return err
}
@@ -727,4 +976,77 @@ func init() {
printObject(result)
return nil
})
type CloudaccountSyncSkusOptions struct {
ID string `help:"ID or Name of cloud account"`
RESOURCE string `help:"Resource of skus" choices:"serversku|elasticcachesku|dbinstance_sku"`
Force bool `help:"Force sync no matter what"`
Provider string `help:"provider to sync"`
Region string `help:"region to sync"`
}
R(&CloudaccountSyncSkusOptions{}, "cloud-account-sync-skus", "Sync skus of a cloud account", func(s *mcclient.ClientSession, args *CloudaccountSyncSkusOptions) error {
params := jsonutils.NewDict()
params.Set("resource", jsonutils.NewString(args.RESOURCE))
if args.Force {
params.Add(jsonutils.JSONTrue, "force")
}
if len(args.Provider) > 0 {
params.Add(jsonutils.NewString(args.Provider), "cloudprovider")
}
if len(args.Region) > 0 {
params.Add(jsonutils.NewString(args.Region), "cloudregion")
}
result, err := modules.Cloudaccounts.PerformAction(s, args.ID, "sync-skus", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type ClouaccountChangeOwnerOptions struct {
ID string `help:"ID or name of cloudaccount" json:"-"`
ProjectDomain string `json:"project_domain" help:"target domain"`
}
R(&ClouaccountChangeOwnerOptions{}, "cloud-account-change-owner", "Change owner domain of cloudaccount", func(s *mcclient.ClientSession, args *ClouaccountChangeOwnerOptions) error {
if len(args.ProjectDomain) == 0 {
return fmt.Errorf("empty project_domain")
}
params := jsonutils.Marshal(args)
ret, err := modules.Cloudaccounts.PerformAction(s, args.ID, "change-owner", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
type ClouaccountChangeProjectOptions struct {
ID string `help:"ID or name of cloudaccount" json:"-"`
PROJECT string `json:"project" help:"target domain"`
}
R(&ClouaccountChangeProjectOptions{}, "cloud-account-change-project", "Change domain/project of cloudaccount", func(s *mcclient.ClientSession, args *ClouaccountChangeProjectOptions) error {
if len(args.PROJECT) == 0 {
return fmt.Errorf("empty project")
}
params := jsonutils.Marshal(args)
ret, err := modules.Cloudaccounts.PerformAction(s, args.ID, "change-project", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&CloudaccountShowOptions{}, "cloud-account-change-owner-candidate-domains", "Show candiate domains of a cloud account changing project", func(s *mcclient.ClientSession, args *CloudaccountShowOptions) error {
result, err := modules.Cloudaccounts.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -24,6 +24,9 @@ func init() {
type CloudeventListOptions struct {
options.BaseListOptions
Since string `help:"since time"`
Until string `hlep:"until time"`
}
R(&CloudeventListOptions{}, "cloud-event-list", "List cloud events", func(s *mcclient.ClientSession, opts *CloudeventListOptions) error {
params, err := options.ListStructToParams(opts)

View File

@@ -22,7 +22,7 @@ import (
)
func init() {
R(&options.RouteCreateOptions{}, "router-route-create", "Create router", func(s *mcclient.ClientSession, opts *options.RouteCreateOptions) error {
R(&options.RouteCreateOptions{}, "router-route-create", "Create router route", func(s *mcclient.ClientSession, opts *options.RouteCreateOptions) error {
params, err := base_options.StructToParams(opts)
if err != nil {
return err
@@ -34,7 +34,7 @@ func init() {
printObject(router)
return nil
})
R(&options.RouteGetOptions{}, "router-route-show", "Show router", func(s *mcclient.ClientSession, opts *options.RouteGetOptions) error {
R(&options.RouteGetOptions{}, "router-route-show", "Show router route", func(s *mcclient.ClientSession, opts *options.RouteGetOptions) error {
router, err := modules.Routes.Get(s, opts.ID, nil)
if err != nil {
return err
@@ -42,7 +42,7 @@ func init() {
printObject(router)
return nil
})
R(&options.RouteListOptions{}, "router-route-list", "List routers", func(s *mcclient.ClientSession, opts *options.RouteListOptions) error {
R(&options.RouteListOptions{}, "router-route-list", "List router routes", func(s *mcclient.ClientSession, opts *options.RouteListOptions) error {
params, err := base_options.ListStructToParams(opts)
if err != nil {
return err
@@ -54,7 +54,7 @@ func init() {
printList(result, modules.Routes.GetColumns(s))
return nil
})
R(&options.RouteUpdateOptions{}, "router-route-update", "Update router", func(s *mcclient.ClientSession, opts *options.RouteUpdateOptions) error {
R(&options.RouteUpdateOptions{}, "router-route-update", "Update router route", func(s *mcclient.ClientSession, opts *options.RouteUpdateOptions) error {
params, err := base_options.StructToParams(opts)
router, err := modules.Routes.Update(s, opts.ID, params)
if err != nil {
@@ -63,7 +63,7 @@ func init() {
printObject(router)
return nil
})
R(&options.RouteDeleteOptions{}, "router-route-delete", "Delete router", func(s *mcclient.ClientSession, opts *options.RouteDeleteOptions) error {
R(&options.RouteDeleteOptions{}, "router-route-delete", "Delete router route", func(s *mcclient.ClientSession, opts *options.RouteDeleteOptions) error {
router, err := modules.Routes.Delete(s, opts.ID, nil)
if err != nil {
return err

View File

@@ -0,0 +1,60 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package shell
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
)
func init() {
type CloudproviderQuotaListOptions struct {
options.BaseListOptions
Cloudregion string `help:"ID or Name of Cloudregion"`
QuotaType string `help:"Quota type"`
QuotaRange string `help:"Quota range" choices:"cloudregion|cloudprovider"`
}
R(&CloudproviderQuotaListOptions{}, "cloud-provider-quota-list", "List cloudprovider quota", func(s *mcclient.ClientSession, args *CloudproviderQuotaListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
if len(args.QuotaType) > 0 {
params.Add(jsonutils.NewString(args.QuotaType), "quota_type")
}
if len(args.QuotaRange) > 0 {
params.Add(jsonutils.NewString(args.QuotaRange), "quota_range")
}
if len(args.Cloudregion) > 0 {
params.Add(jsonutils.NewString(args.Cloudregion), "cloudregion")
}
result, err := modules.CloudproviderQuotas.List(s, params)
if err != nil {
return err
}
printList(result, modules.CloudproviderQuotas.GetColumns(s))
return nil
})
}

View File

@@ -27,6 +27,8 @@ func init() {
type CloudproviderRegionListOptions struct {
options.BaseListOptions
Region string `help:"ID or Name of Host"`
Capability []string `help:"capability filter" choices:"project|compute|network|loadbalancer|objectstore|rds|cache|event"`
}
R(&CloudproviderRegionListOptions{}, "cloud-provider-region-list", "List cloudprovider region synchronization status", func(s *mcclient.ClientSession, args *CloudproviderRegionListOptions) error {
var params *jsonutils.JSONDict

View File

@@ -31,8 +31,10 @@ func init() {
Usable bool `help:"Vpc & Network usable"`
HasObjectStorage bool `help:"filter cloudproviders that has object storage"`
NoObjectStorage bool `help:"filter cloudproviders that has no object storage"`
HasObjectStorage bool `help:"filter cloudproviders that has object storage"`
NoObjectStorage bool `help:"filter cloudproviders that has no object storage"`
Capability []string `help:"capability filter" choices:"project|compute|network|loadbalancer|objectstore|rds|cache|event"`
Cloudregion string `help:"filter cloudproviders by cloudregion"`
}
R(&CloudproviderListOptions{}, "cloud-provider-list", "List cloud providers", func(s *mcclient.ClientSession, args *CloudproviderListOptions) error {
var params *jsonutils.JSONDict
@@ -52,6 +54,14 @@ func init() {
} else if args.NoObjectStorage {
params.Add(jsonutils.JSONFalse, "has_object_storage")
}
if len(args.Capability) > 0 {
params.Add(jsonutils.NewStringArray(args.Capability), "capability")
}
if len(args.Cloudregion) > 0 {
params.Add(jsonutils.NewString(args.Cloudregion), "cloudregion")
}
}
result, err := modules.Cloudproviders.List(s, params)
if err != nil {
@@ -240,4 +250,13 @@ func init() {
printObject(result)
return nil
})
R(&CloudproviderShowOptions{}, "cloud-provider-change-owner-candidate-domains", "Show candiate domains of a cloud provider changing owner", func(s *mcclient.ClientSession, args *CloudproviderShowOptions) error {
result, err := modules.Cloudproviders.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -15,6 +15,8 @@
package shell
import (
"fmt"
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
@@ -32,12 +34,25 @@ func init() {
Service string `help:"List regions which service has available skus" choices:"dbinstances|servers"`
City string `help:"List regions in the specified city"`
Capability []string `help:"capability filter" choices:"project|compute|network|loadbalancer|objectstore|rds|cache|event"`
DistinctField string `help:"list the specified distinct field, e.g. city, region"`
}
R(&CloudregionListOptions{}, "cloud-region-list", "List cloud regions", func(s *mcclient.ClientSession, opts *CloudregionListOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
}
if len(opts.DistinctField) > 0 {
params.Add(jsonutils.NewString(opts.DistinctField), "extra_field")
result, err := modules.Cloudregions.Get(s, "distinct-field", params)
if err != nil {
return err
}
fmt.Println(result)
return nil
}
result, err := modules.Cloudregions.List(s, params)
if err != nil {
return err
@@ -49,7 +64,7 @@ func init() {
type CloudregionCityListOptions struct {
Manager string `help:"List objects belonging to the cloud provider"`
Account string `help:"List objects belonging to the cloud account"`
Provider string `help:"List objects from the provider" choices:"VMware|Aliyun|Qcloud|Azure|Aws|Huawei|Openstack|Ucloud|ZStack"`
Provider string `help:"List objects from the provider" choices:"VMware|Aliyun|Qcloud|Azure|Aws|Huawei|Openstack|Ucloud|ZStack|Google|Ctyun"`
City string `help:"List regions in the specified city"`
PublicCloud *bool `help:"List objects belonging to public cloud" json:"public_cloud"`

View File

@@ -29,11 +29,11 @@ func init() {
* 操作用户的通信地址(如果用户的通信地址不存在则进行添加;如果已存在则进行修改;如果设置空则进行删除。)
*/
type ContactsUpdateOptions struct {
UID string `help:"The user you wanna add contact to (Keystone User ID)"`
CONTACTTYPE string `help:"The contact type email|mobile" choices:"email|mobile|dingtalk"`
CONTACT string `help:"The contacts details mobile number or email address or dingtalk's userid, if set it the empty str means delete"`
Status string `help:"Enabled or disabled contact status" choices:"enable|disable"`
UpdateDingtalk bool `help:"if update dingtalk"`
UID string `help:"The user you wanna add contact to (Keystone User ID)"`
CONTACTTYPE string `help:"The contact type email|mobile" choices:"email|mobile|dingtalk"`
CONTACT string `help:"The contacts details mobile number or email address or dingtalk's userid, if set it the empty str means delete"`
Status string `help:"Enabled or disabled contact status" choices:"enable|disable"`
Pull []string `help:"pull some subcontacts(e.g., dingtalk, feishu, etc) related to mobile"`
}
R(&ContactsUpdateOptions{}, "contact-update", "Create, delete or update contact for user", func(s *mcclient.ClientSession, args *ContactsUpdateOptions) error {
arr := jsonutils.NewArray()
@@ -52,12 +52,14 @@ func init() {
params := jsonutils.NewDict()
params.Add(arr, "contacts")
if args.UpdateDingtalk {
params.Add(jsonutils.JSONTrue, "update_dingtalk")
pulls := jsonutils.NewArray()
for _, pull := range args.Pull {
pulls.Add(jsonutils.NewString(pull))
}
params.Add(pulls, "pull")
contact, err := modules.Contacts.CustomizedPerformAction(s, args.UID, "update-contact", params)
if err != nil {
return err
}
@@ -66,6 +68,22 @@ func init() {
return nil
})
type ContactsPullOptions struct {
UID string `help:"The user you wanna pull contact"`
CONTACTTYPE string `help:"The contact type"`
}
R(&ContactsPullOptions{}, "contact-pull", "Pull contact", func(s *mcclient.ClientSession, args *ContactsPullOptions) error {
params := jsonutils.NewDict()
params.Set("contacts", jsonutils.NewArray())
params.Set("pull", jsonutils.NewArray(jsonutils.NewString(args.CONTACTTYPE)))
contact, err := modules.Contacts.CustomizedPerformAction(s, args.UID, "update-contact", params)
if err != nil {
return err
}
printObject(contact)
return nil
})
type ContactsDeleteOptions struct {
UID string `help:"The user you wanna add contact to (Keystone User ID)"`
CONTACTTYPE string `help:"The contact type email|mobile|dingtalk" choices:"email|mobile|dingtalk"`

View File

@@ -15,7 +15,14 @@
package shell
import (
"bufio"
"bytes"
"encoding/base64"
"fmt"
"io/ioutil"
"mime/multipart"
"net/http"
"path/filepath"
"yunion.io/x/jsonutils"
@@ -56,4 +63,78 @@ func init() {
printObject(r)
return nil
})
type EnterpriseUpdateOptions struct {
Name string `help:"Enterprise name"`
Copyright string `help:"The Email"`
Logo string `help:"logo file path"`
LoginLogo string `help:"login page logo file path"`
Favicon string `help:"favicon path"`
}
R(&EnterpriseUpdateOptions{}, "infos-update", "update enterprise info", func(s *mcclient.ClientSession, args *EnterpriseUpdateOptions) error {
var b bytes.Buffer
w := multipart.NewWriter(&b)
if len(args.Name) > 0 {
w.WriteField("name", args.Name)
}
if len(args.Copyright) > 0 {
w.WriteField("copyright", args.Copyright)
}
writeFile := func(filedName, filePath string) error {
if len(filePath) == 0 {
return nil
}
c, err := ioutil.ReadFile(filePath)
if err != nil {
return err
}
var v string
c64 := base64.StdEncoding.EncodeToString(c)
ext := filepath.Ext(filePath)
switch ext {
case ".png":
v = fmt.Sprintf("data:image/png;base64,%s", c64)
case ".jpg":
v = fmt.Sprintf("data:image/jpg;base64,%s", c64)
default:
return fmt.Errorf("only support png/jpg image")
}
err = w.WriteField(filedName, v)
if err != nil {
return err
}
return nil
}
if err := writeFile("logo", args.Logo); err != nil {
return err
}
if err := writeFile("login_logo", args.LoginLogo); err != nil {
return err
}
if err := writeFile("favicon", args.Favicon); err != nil {
return err
}
header := make(http.Header)
header.Set("content-type", fmt.Sprintf("multipart/form-data; boundary=%s", w.Boundary()))
w.Close()
ret, err := modules.Info.Update(s, header, bufio.NewReader(&b))
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -38,7 +38,11 @@ func init() {
if err != nil {
return err
}
printList(result, modules.DBInstanceBackups.GetColumns(s))
if len(opts.ExportFile) > 0 {
exportList(result, opts.ExportFile, opts.ExportKeys, opts.ExportTexts, modules.DBInstanceBackups.GetColumns(s))
} else {
printList(result, modules.DBInstanceBackups.GetColumns(s))
}
return nil
})
@@ -80,6 +84,15 @@ func init() {
return nil
})
R(&DBInstanceBackupIdOptions{}, "dbinstance-backup-syncstatus", "Sync DB instance backup status", func(s *mcclient.ClientSession, opts *DBInstanceBackupIdOptions) error {
result, err := modules.DBInstanceBackups.PerformAction(s, opts.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&DBInstanceBackupIdOptions{}, "dbinstance-backup-delete", "Delete DB instance backup", func(s *mcclient.ClientSession, opts *DBInstanceBackupIdOptions) error {
result, err := modules.DBInstanceBackups.Delete(s, opts.ID, nil)
if err != nil {

View File

@@ -41,7 +41,12 @@ func init() {
if err != nil {
return err
}
printList(result, modules.DBInstance.GetColumns(s))
if len(opts.ExportFile) > 0 {
exportList(result, opts.ExportFile, opts.ExportKeys, opts.ExportTexts, modules.DBInstance.GetColumns(s))
} else {
printList(result, modules.DBInstance.GetColumns(s))
}
return nil
})
@@ -258,6 +263,24 @@ func init() {
return nil
})
R(&DBInstanceIdOptions{}, "dbinstance-syncstatus", "Sync status for DB instance", func(s *mcclient.ClientSession, opts *DBInstanceIdOptions) error {
result, err := modules.DBInstance.PerformAction(s, opts.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&DBInstanceIdOptions{}, "dbinstance-sync", "Sync conf from cloud dbinstance", func(s *mcclient.ClientSession, opts *DBInstanceIdOptions) error {
result, err := modules.DBInstance.PerformAction(s, opts.ID, "sync", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&DBInstanceIdOptions{}, "dbinstance-sync-status", "Sync status for DB instance", func(s *mcclient.ClientSession, opts *DBInstanceIdOptions) error {
result, err := modules.DBInstance.PerformAction(s, opts.ID, "sync-status", nil)
if err != nil {

View File

@@ -107,7 +107,7 @@ func init() {
R(
&options.DevtoolTemplateBindingOptions{},
"devtooltemplate-unbind",
"Binding devtool template to a host/vm",
"UnBinding devtool template to a host/vm",
func(s *mcclient.ClientSession, opts *options.DevtoolTemplateBindingOptions) error {
params := jsonutils.NewDict()
params.Set("server_id", jsonutils.NewString(opts.ServerID))

View File

@@ -133,6 +133,15 @@ func init() {
return nil
})
R(&DiskDetailOptions{}, "disk-syncstatus", "Sync status for disk", func(s *mcclient.ClientSession, args *DiskDetailOptions) error {
ret, e := modules.Disks.PerformAction(s, args.ID, "syncstatus", nil)
if e != nil {
return e
}
printObject(ret)
return nil
})
type DiskUpdateOptions struct {
ID string `help:"ID or name of disk"`
Name string `help:"New name of disk"`
@@ -282,4 +291,14 @@ func init() {
printObject(srv)
return nil
})
R(&DiskDetailOptions{}, "disk-change-owner-candidate-domains", "Get change owner candidate domain list", func(s *mcclient.ClientSession, args *DiskDetailOptions) error {
result, err := modules.Disks.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -0,0 +1,48 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package shell
import (
"fmt"
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modulebase"
)
func init() {
type DistinctFieldOption struct {
MODULE string `help:"module name"`
FIELD string `help:"distinct field name to query"`
}
R(&DistinctFieldOption{}, "distinct-field", "Query values of a distinct field for a module", func(s *mcclient.ClientSession, args *DistinctFieldOption) error {
mod, err := modulebase.GetModule(s, args.MODULE)
if err != nil || mod == nil {
if err != nil {
return fmt.Errorf("module %s not found %s", args.MODULE, err)
}
return fmt.Errorf("No module %s found", args.MODULE)
}
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.FIELD), "extra_field")
result, err := mod.Get(s, "distinct-field", params)
if err != nil {
return err
}
fmt.Println(result)
return nil
})
}

View File

@@ -83,6 +83,8 @@ func init() {
Desc string `help:"Description"`
Enabled bool `help:"Set the domain enabled"`
Disabled bool `help:"Set the domain disabled"`
Displayname string `help:"display name"`
}
R(&DomainCreateOptions{}, "domain-create", "Create a new domain", func(s *mcclient.ClientSession, args *DomainCreateOptions) error {
params := jsonutils.NewDict()
@@ -95,6 +97,9 @@ func init() {
} else if !args.Enabled && args.Disabled {
params.Add(jsonutils.JSONFalse, "enabled")
}
if len(args.Displayname) > 0 {
params.Add(jsonutils.NewString(args.Displayname), "displayname")
}
result, err := modules.Domains.Create(s, params)
if err != nil {
return err
@@ -110,6 +115,8 @@ func init() {
Enabled bool `help:"Set the domain enabled"`
Disabled bool `help:"Set the domain disabled"`
Driver string `help:"Set the domain Driver"`
Displayname string `help:"display name"`
}
R(&DomainUpdateOptions{}, "domain-update", "Update a domain", func(s *mcclient.ClientSession, args *DomainUpdateOptions) error {
obj, err := modules.Domains.Get(s, args.ID, nil)
@@ -136,6 +143,9 @@ func init() {
} else if !args.Enabled && args.Disabled {
params.Add(jsonutils.JSONFalse, "enabled")
}
if len(args.Displayname) > 0 {
params.Add(jsonutils.NewString(args.Displayname), "displayname")
}
result, err := modules.Domains.Patch(s, objId, params)
if err != nil {
return err

View File

@@ -75,6 +75,16 @@ func init() {
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-syncstatus", "Sync elastisc cache instance status", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
result, err := modules.ElasticCache.PerformAction(s, opts.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-delete", "Delete elastisc cache instance", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
result, err := modules.ElasticCache.Delete(s, opts.ID, nil)
if err != nil {

View File

@@ -170,6 +170,15 @@ func init() {
return nil
})
R(&EipSingleOptions{}, "eip-syncstatus", "Synchronize status of an EIP", func(s *mcclient.ClientSession, args *EipSingleOptions) error {
result, err := modules.Elasticips.PerformAction(s, args.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type ServerCreateEipOptions struct {
ID string `help:"server ID or name"`
BW int `help:"EIP bandwidth in Mbps"`

View File

@@ -64,14 +64,15 @@ func init() {
})
type EndpointCreateOptions struct {
SERVICE string `help:"Service ID or Name"`
REGION string `help:"Region"`
INTERFACE string `help:"Interface types" choices:"internal|public|admin|console"`
URL string `help:"URL"`
Zone string `help:"Zone"`
Name string `help:"Name"`
Enabled bool `help:"Enabled"`
Disabled bool `help:"Disabled"`
SERVICE string `help:"Service ID or Name"`
REGION string `help:"Region"`
INTERFACE string `help:"Interface types" choices:"internal|public|admin|console"`
URL string `help:"URL"`
Zone string `help:"Zone"`
Name string `help:"Name"`
Enabled bool `help:"Enabled"`
Disabled bool `help:"Disabled"`
ServiceCertificate string `help:"Service certificate id or name"`
}
R(&EndpointCreateOptions{}, "endpoint-create", "Create endpoint", func(s *mcclient.ClientSession, args *EndpointCreateOptions) error {
params := jsonutils.NewDict()
@@ -95,6 +96,9 @@ func init() {
} else if !args.Enabled && args.Disabled {
params.Add(jsonutils.JSONFalse, "enabled")
}
if len(args.ServiceCertificate) > 0 {
params.Add(jsonutils.NewString(args.ServiceCertificate), "service_certificate")
}
ep, err := modules.EndpointsV3.Create(s, params)
if err != nil {
return err
@@ -104,11 +108,12 @@ func init() {
})
type EndpointUpdateOptions struct {
ID string `help:"ID or name of endpoint"`
Url string `help:"URL"`
Name string `help:"Name"`
Enabled bool `help:"Enabled"`
Disabled bool `help:"Disabled"`
ID string `help:"ID or name of endpoint"`
Url string `help:"URL"`
Name string `help:"Name"`
Enabled bool `help:"Enabled"`
Disabled bool `help:"Disabled"`
ServiceCertificate string `help:"Service certificate id or name"`
}
R(&EndpointUpdateOptions{}, "endpoint-update", "Update a endpoint", func(s *mcclient.ClientSession, args *EndpointUpdateOptions) error {
params := jsonutils.NewDict()
@@ -123,6 +128,9 @@ func init() {
} else if !args.Enabled && args.Disabled {
params.Add(jsonutils.JSONFalse, "enabled")
}
if len(args.ServiceCertificate) > 0 {
params.Add(jsonutils.NewString(args.ServiceCertificate), "service_certificate")
}
ep, err := modules.EndpointsV3.Patch(s, args.ID, params)
if err != nil {
return err

View File

@@ -34,8 +34,8 @@ type BaseEventListOptions struct {
OrderBy string `help:"order by specific field"`
Action []string `help:"Log action"`
User []string `help:"filter by operator user"`
Project []string `help:"filter by owner project"`
User string `help:"filter by operator user"`
Project string `help:"filter by owner project"`
PagingMarker string `help:"marker for pagination"`
}
@@ -99,10 +99,10 @@ func doEventList(man modulebase.ResourceManager, s *mcclient.ClientSession, args
params.Add(jsonutils.NewStringArray(args.Action), "action")
}
if len(args.User) > 0 {
params.Add(jsonutils.NewStringArray(args.User), "user")
params.Add(jsonutils.NewString(args.User), "user")
}
if len(args.Project) > 0 {
params.Add(jsonutils.NewStringArray(args.Project), "project")
params.Add(jsonutils.NewString(args.Project), "project")
}
if len(args.Scope) > 0 {
params.Add(jsonutils.NewString(args.Scope), "scope")
@@ -216,6 +216,11 @@ func init() {
return doIdentityEventList(s, &nargs)
})
R(&TypeEventListOptions{}, "idp-event", "Show operation event logs of keystone identity provider", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"identity_provider"}}
return doIdentityEventList(s, &nargs)
})
R(&TypeEventListOptions{}, "project-event", "Show operation event logs of keystone projects", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"project"}}
return doIdentityEventList(s, &nargs)

View File

@@ -15,6 +15,8 @@
package shell
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
@@ -48,4 +50,32 @@ func init() {
printObject(result)
return nil
})
type GlobalVpcPublicOptions struct {
ID string `help:"ID or name of global vpc" json:"-"`
Scope string `help:"sharing scope" choices:"system|domain"`
SharedDomains []string `help:"share to domains"`
}
R(&GlobalVpcPublicOptions{}, "global-vpc-public", "Make global vpc public", func(s *mcclient.ClientSession, args *GlobalVpcPublicOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.GlobalVpcs.PerformAction(s, args.ID, "public", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type GlobalVpcPrivateOptions struct {
ID string `help:"ID or name of global vpc" json:"-"`
}
R(&GlobalVpcPrivateOptions{}, "global-vpc-private", "Make global vpc private", func(s *mcclient.ClientSession, args *GlobalVpcPrivateOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.GlobalVpcs.PerformAction(s, args.ID, "private", params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -79,7 +79,7 @@ func init() {
if err != nil {
return err
}
users, err := modules.Groups.GetUsers(s, grpId)
users, err := modules.Groups.GetUsers(s, grpId, nil)
if err != nil {
return err
}
@@ -224,4 +224,29 @@ func init() {
printObject(sp)
return nil
})
type GroupAddUsersOptions struct {
GROUP string `help:"group Id or Name" json:"-"`
USER []string `help:"list of user id or name" json:"user"`
}
R(&GroupAddUsersOptions{}, "group-add-users", "Add users into group",
func(s *mcclient.ClientSession, args *GroupAddUsersOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Groups.PerformAction(s, args.GROUP, "add-users", params)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&GroupAddUsersOptions{}, "group-remove-users", "Add users into group",
func(s *mcclient.ClientSession, args *GroupAddUsersOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Groups.PerformAction(s, args.GROUP, "remove-users", params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -18,11 +18,13 @@ import (
"fmt"
"yunion.io/x/jsonutils"
"yunion.io/x/log"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
"yunion.io/x/onecloud/pkg/util/fileutils2"
"yunion.io/x/onecloud/pkg/util/ssh"
)
func init() {
@@ -38,7 +40,7 @@ func init() {
Occupied bool `help:"show occupid host" json:"-"`
Enabled bool `help:"Show enabled host only" json:"-"`
Disabled bool `help:"Show disabled host only" json:"-"`
HostType string `help:"Host type filter" choices:"baremetal|hypervisor|esxi|kubelet|hyperv|aliyun|azure|qcloud|aws|huawei|ucloud"`
HostType string `help:"Host type filter" choices:"baremetal|hypervisor|esxi|kubelet|hyperv|aliyun|azure|qcloud|aws|huawei|ucloud|google|ctyun"`
AnyMac string `help:"Mac matches one of the host's interface"`
IsBaremetal *bool `help:"filter host list by is_baremetal=true|false"`
@@ -55,6 +57,8 @@ func init() {
CdromBoot *bool `help:"filter hosts list by cdrom_boot=true|false"`
Sn string `help:"find host by sn"`
options.BaseListOptions
}
R(&HostListOptions{}, "host-list", "List hosts", func(s *mcclient.ClientSession, opts *HostListOptions) error {
@@ -76,6 +80,9 @@ func init() {
if len(opts.Uuid) > 0 {
params.Add(jsonutils.NewString(opts.Uuid), "uuid")
}
if len(opts.Sn) > 0 {
params.Add(jsonutils.NewString(opts.Sn), "sn")
}
result, err := modules.Hosts.List(s, params)
if err != nil {
return err
@@ -196,6 +203,36 @@ func init() {
return nil
})
R(&HostListOptions{}, "host-node-count", "Get host node count", func(s *mcclient.ClientSession, opts *HostListOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
}
if opts.Empty {
params.Add(jsonutils.JSONTrue, "is_empty")
} else if opts.Occupied {
params.Add(jsonutils.JSONFalse, "is_empty")
}
if opts.Enabled {
params.Add(jsonutils.NewInt(1), "enabled")
} else if opts.Disabled {
params.Add(jsonutils.NewInt(0), "enabled")
}
if len(opts.Uuid) > 0 {
params.Add(jsonutils.NewString(opts.Uuid), "uuid")
}
if len(opts.Sn) > 0 {
params.Add(jsonutils.NewString(opts.Sn), "sn")
}
result, err := modules.Hosts.Get(s, "node-count", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type HostUpdateOptions struct {
ID string `help:"ID or Name of Host"`
Name string `help:"New name of the host"`
@@ -659,4 +696,123 @@ func init() {
printObject(result)
return nil
})
type HostSSHLoginOptions struct {
ID string `help:"ID or name of host"`
Port int `help:"SSH service port" default:"22"`
}
R(&HostSSHLoginOptions{}, "host-ssh", "SSH login of a host", func(s *mcclient.ClientSession, args *HostSSHLoginOptions) error {
srvid, e := modules.Hosts.GetId(s, args.ID, nil)
if e != nil {
return e
}
i, e := modules.Hosts.GetLoginInfo(s, srvid, nil)
if e != nil {
return e
}
host, err := i.GetString("ip")
if err != nil {
return err
}
user, err := i.GetString("username")
if err != nil {
return err
}
passwd, err := i.GetString("password")
if err != nil {
return err
}
port := 22
if args.Port != 22 {
port = args.Port
}
sshCli, err := ssh.NewClient(host, port, user, passwd, "")
if err != nil {
return err
}
log.Infof("ssh %s:%d", host, port)
if err := sshCli.RunTerminal(); err != nil {
return err
}
return nil
})
type HostChangeOwnerOptions struct {
ID string `help:"ID or name of host" json:"-"`
ProjectDomain string `json:"project_domain" help:"target domain"`
}
R(&HostChangeOwnerOptions{}, "host-change-owner", "Change owner domain of host", func(s *mcclient.ClientSession, args *HostChangeOwnerOptions) error {
if len(args.ProjectDomain) == 0 {
return fmt.Errorf("empty project_domain")
}
params := jsonutils.Marshal(args)
ret, err := modules.Hosts.PerformAction(s, args.ID, "change-owner", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
type HostPublicOptions struct {
ID string `help:"ID or name of host" json:"-"`
Scope string `help:"sharing scope" choices:"system|domain"`
SharedDomains []string `help:"share to domains"`
}
R(&HostPublicOptions{}, "host-public", "Make a host public", func(s *mcclient.ClientSession, args *HostPublicOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Hosts.PerformAction(s, args.ID, "public", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type HostPrivateOptions struct {
ID string `help:"ID or name of host" json:"-"`
}
R(&HostPrivateOptions{}, "host-private", "Make a host private", func(s *mcclient.ClientSession, args *HostPrivateOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Hosts.PerformAction(s, args.ID, "private", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type HostChangeOwnerCandidateDomainsOptions struct {
ID string `help:"ID or name of host"`
}
R(&HostChangeOwnerCandidateDomainsOptions{}, "host-change-owner-candidate-domains", "Get change owner candidate domain list", func(s *mcclient.ClientSession, args *HostChangeOwnerCandidateDomainsOptions) error {
result, err := modules.Hosts.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type HostAutoMigrateOnHostDownOptions struct {
ID string `help:"ID or name of host"`
Enable bool `help:"enable auto migrate"`
Disable bool `help:"disable auto migrate"`
}
R(&HostAutoMigrateOnHostDownOptions{}, "host-auto-migrate-on-host-down", "Get change owner candidate domain list", func(s *mcclient.ClientSession, args *HostAutoMigrateOnHostDownOptions) error {
params := jsonutils.NewDict()
if args.Disable {
params.Set("auto_migrate_on_host_down", jsonutils.NewString("disable"))
} else if args.Enable {
params.Set("auto_migrate_on_host_down", jsonutils.NewString("enable"))
} else {
return fmt.Errorf("missing input enable or disable")
}
result, err := modules.Hosts.PerformAction(s, args.ID, "auto-migrate-on-host-down", params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -23,6 +23,7 @@ import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
"yunion.io/x/onecloud/pkg/util/shellutils"
)
func init() {
@@ -294,4 +295,34 @@ func init() {
return nil
})
type IdentityProviderConfigEditOptions struct {
IDP string `help:"identity provider name or ID"`
}
R(&IdentityProviderConfigEditOptions{}, "idp-config-edit", "Edit config yaml of an identity provider", func(s *mcclient.ClientSession, args *IdentityProviderConfigEditOptions) error {
conf, err := modules.IdentityProviders.GetSpecific(s, args.IDP, "config", nil)
if err != nil {
return err
}
confJson, err := conf.Get("config")
if err != nil {
return err
}
content, err := shellutils.Edit(confJson.YAMLString())
if err != nil {
return err
}
yamlJson, err := jsonutils.ParseYAML(content)
if err != nil {
return err
}
config := jsonutils.NewDict()
config.Add(yamlJson, "config")
nconf, err := modules.IdentityProviders.PerformAction(s, args.IDP, "config", config)
if err != nil {
return err
}
fmt.Println(nconf.PrettyString())
return nil
})
}

View File

@@ -34,6 +34,7 @@ type ImageOptionalOptions struct {
Unprotected bool `help:"Allow image to be deleted"`
Standard bool `help:"Mark image as a standard image"`
Nonstandard bool `help:"Mark image as a non-standard image"`
Public bool `help:"make image public"`
MinDisk int64 `help:"Disk size after expanded, in MB" metavar:"MIN_DISK_SIZE_MB"`
MinRam int64 `help:"Minimal memory size required" metavar:"MIN_RAM_MB"`
VirtualSize int64 `help:"Disk size after expanded, in MB"`
@@ -50,14 +51,13 @@ type ImageOptionalOptions struct {
OsLang string `help:"OS Language" choices:"zh_CN|en_US"`
Preference int64 `help:"Disk preferences"`
Notes string `help:"Notes about the image"`
Hypervisor []string `help:"Prefer hypervisor type" choices:"kvm|esxi|baremetal|container|openstack"`
Hypervisor []string `help:"Prefer hypervisor type" choices:"kvm|esxi|baremetal|container|openstack|ctyun"`
DiskDriver string `help:"Perfer disk driver" choices:"virtio|scsi|pvscsi|ide|sata"`
NetDriver string `help:"Preferred network driver" choices:"virtio|e1000|vmxnet3"`
}
func addImageOptionalOptions(s *mcclient.ClientSession, params *jsonutils.JSONDict, args ImageOptionalOptions) error {
if len(args.Format) > 0 {
params.Add(jsonutils.NewString("bare"), "container-format")
params.Add(jsonutils.NewString(args.Format), "disk-format")
}
if args.Protected && !args.Unprotected {
@@ -70,6 +70,9 @@ func addImageOptionalOptions(s *mcclient.ClientSession, params *jsonutils.JSONDi
} else if !args.Standard && args.Nonstandard {
params.Add(jsonutils.JSONFalse, "is_standard")
}
if args.Public {
params.Add(jsonutils.JSONTrue, "is_public")
}
if args.MinDisk > 0 {
params.Add(jsonutils.NewString(fmt.Sprintf("%d", args.MinDisk)), "min_disk")
}
@@ -140,6 +143,7 @@ func init() {
Protected string `help:"filter images by protected" choices:"true|false"`
IsUefi bool `help:"list uefi image"`
Format []string `help:"Disk formats"`
SubFormats []string `help:"Sub formats"`
Name string `help:"Name filter"`
}
R(&ImageListOptions{}, "image-list", "List images", func(s *mcclient.ClientSession, args *ImageListOptions) error {
@@ -170,15 +174,14 @@ func init() {
params.Add(jsonutils.NewString(args.Name), "name")
}
if len(args.Format) > 0 {
if len(args.Format) == 1 {
params.Add(jsonutils.NewString(args.Format[0]), "disk_format")
} else {
fs := jsonutils.NewArray()
for _, f := range args.Format {
fs.Add(jsonutils.NewString(f))
}
params.Add(fs, "disk_formats")
fs := jsonutils.NewArray()
for _, f := range args.Format {
fs.Add(jsonutils.NewString(f))
}
params.Add(fs, "disk_formats")
}
if len(args.SubFormats) > 0 {
params.Add(jsonutils.Marshal(args.SubFormats), "sub_formats")
}
result, err := modules.Images.List(s, params)
if err != nil {
@@ -244,22 +247,6 @@ func init() {
return nil
})
type ImageMembershipOptions struct {
IMAGE string `help:"ID or name of image to share"`
PROJECT string `help:"ID or name of project to share image with"`
}
type ImageMembershipAddOptions struct {
ImageMembershipOptions
CanShare bool `help:"Indicating whether the project can share the image with others"`
}
R(&ImageMembershipAddOptions{}, "image-add-project", "Add a project to private image's membership list", func(s *mcclient.ClientSession, args *ImageMembershipAddOptions) error {
return modules.Images.AddMembership(s, args.IMAGE, args.PROJECT, args.CanShare)
})
R(&ImageMembershipOptions{}, "image-remove-project", "Remove a project from private image's membership list", func(s *mcclient.ClientSession, args *ImageMembershipOptions) error {
return modules.Images.RemoveMembership(s, args.IMAGE, args.PROJECT)
})
type ImageDetailOptions struct {
ID string `help:"Image ID or name"`
}
@@ -278,19 +265,6 @@ func init() {
return nil
})
R(&ImageDetailOptions{}, "image-list-project", "List image members", func(s *mcclient.ClientSession, args *ImageDetailOptions) error {
imgId, e := modules.Images.GetId(s, args.ID, nil)
if e != nil {
return e
}
result, e := modules.Images.ListMemberProjects(s, imgId)
if e != nil {
return e
}
printList(result, modules.Projects.GetColumns(s))
return nil
})
type ImageCancelDeleteOptions struct {
ID string `help:"Image id or name" metavar:"IMAGE"`
}
@@ -416,14 +390,12 @@ func init() {
type ImagePublicOptions struct {
ID []string `help:"ID or name of image" json:"-"`
Scope string `help:"sharing scope" choices:"system|domain"`
ShareToProject []string `help:"Share to prject"`
Scope string `help:"sharing scope" choices:"system|domain|project"`
SharedProjects []string `help:"Share to projects"`
SharedDomains []string `help:"Share to domains"`
}
R(&ImagePublicOptions{}, "image-public", "Make a image public", func(s *mcclient.ClientSession, args *ImagePublicOptions) error {
params, err := options.StructToParams(args)
if err != nil {
return err
}
params := jsonutils.Marshal(args)
if len(args.ID) == 0 {
return fmt.Errorf("No image ID provided")
} else if len(args.ID) == 1 {

View File

@@ -68,7 +68,7 @@ func init() {
type HistoricProcessInstanceStaticticsOptions struct {
ID string `help:"ID of user"`
}
R(&HistoricProcessInstanceStaticticsOptions{}, "historic-process-instance-statistics", "Delete all contacts for the user", func(s *mcclient.ClientSession, args *HistoricProcessInstanceStaticticsOptions) error {
R(&HistoricProcessInstanceStaticticsOptions{}, "historic-process-instance-statistics", "Show statistics for historic process instance", func(s *mcclient.ClientSession, args *HistoricProcessInstanceStaticticsOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.ID), "user_id")

View File

@@ -205,4 +205,70 @@ func initKubeCluster() {
printObject(ret)
return nil
})
R(&o.IdentOptions{}, cmdN("components-status"), "Get cluster component status", func(s *mcclient.ClientSession, args *o.IdentOptions) error {
ret, err := k8s.KubeClusters.GetSpecific(s, args.ID, "components-status", nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.ClusterComponentTypeOptions{}, cmdN("component-setting"), "Get cluster component setting", func(s *mcclient.ClientSession, args *o.ClusterComponentTypeOptions) error {
q := jsonutils.NewDict()
q.Add(jsonutils.NewString(args.TYPE), "type")
ret, err := k8s.KubeClusters.GetSpecific(s, args.ID, "component-setting", q)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.ClusterEnableComponentCephCSIOpt{}, cmdN("component-enable-ceph-csi"), "Enable cluster component", func(s *mcclient.ClientSession, args *o.ClusterEnableComponentCephCSIOpt) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.KubeClusters.PerformAction(s, args.ID, "enable-component", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.ClusterDisableComponent{}, cmdN("component-disable"), "Enable cluster component", func(s *mcclient.ClientSession, args *o.ClusterDisableComponent) error {
params := args.Params()
ret, err := k8s.KubeClusters.PerformAction(s, args.ID, "disable-component", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.ClusterDisableComponent{}, cmdN("component-delete"), "Delete cluster component", func(s *mcclient.ClientSession, args *o.ClusterDisableComponent) error {
params := args.Params()
ret, err := k8s.KubeClusters.PerformAction(s, args.ID, "delete-component", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&o.ClusterUpdateComponentCephCSIOpt{}, cmdN("component-update-ceph-csi"), "Update cluster component", func(s *mcclient.ClientSession, args *o.ClusterUpdateComponentCephCSIOpt) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.KubeClusters.PerformAction(s, args.ID, "update-component", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -0,0 +1,9 @@
package k8s
import (
"yunion.io/x/onecloud/pkg/mcclient/modules/k8s"
)
func initEvent() {
initK8sNamespaceResource("event", k8s.Events)
}

View File

@@ -16,6 +16,11 @@ package k8s
import (
"fmt"
"io/ioutil"
"os"
"os/exec"
"github.com/ghodss/yaml"
"yunion.io/x/jsonutils"
@@ -57,7 +62,7 @@ func init() {
initPVC()
initJob()
initCronJob()
initEvent()
initRbac()
initApp()
@@ -217,6 +222,71 @@ func NewK8sNsResourceGetCmd(cmdN CmdNameFactory, manager modulebase.Manager) *Cm
)
}
func NewK8sNsResourceGetRawCmd(cmdN CmdNameFactory, manager k8s.IClusterResourceManager) *Cmd {
return NewCommand(
&o.NamespaceResourceGetOptions{},
cmdN.Do("show-raw"),
fmt.Sprintf("Show k8s %s raw data", cmdN.Kind),
func(s *mcclient.ClientSession, args *o.NamespaceResourceGetOptions) error {
ret, err := manager.GetRaw(s, args.NAME, args.Params())
if err != nil {
return err
}
printObjectYAML(ret)
return nil
},
)
}
func NewK8sResourceEditRawCmd(cmdN CmdNameFactory, manager k8s.IClusterResourceManager) *Cmd {
return NewCommand(
&o.NamespaceResourceGetOptions{},
cmdN.Do("edit-raw"),
fmt.Sprintf("Edit and update k8s %s raw data", cmdN.Kind),
func(s *mcclient.ClientSession, args *o.NamespaceResourceGetOptions) error {
rawData, err := manager.GetRaw(s, args.NAME, args.Params())
if err != nil {
return err
}
yamlBytes := rawData.YAMLString()
tempfile, err := ioutil.TempFile("", fmt.Sprintf("k8s-%s-%s*.yaml", cmdN.Kind, args.NAME))
if err != nil {
return err
}
defer os.Remove(tempfile.Name())
if _, err := tempfile.Write([]byte(yamlBytes)); err != nil {
return err
}
if err := tempfile.Close(); err != nil {
return err
}
cmd := exec.Command("vim", tempfile.Name())
cmd.Stdin = os.Stdin
cmd.Stdout = os.Stdout
if err := cmd.Run(); err != nil {
return err
}
content, err := ioutil.ReadFile(tempfile.Name())
if err != nil {
return err
}
jsonBytes, err := yaml.YAMLToJSON(content)
if err != nil {
return err
}
body, err := jsonutils.Parse(jsonBytes)
if err != nil {
return err
}
if _, err := manager.UpdateRaw(s, args.NAME, args.Params(), body.(*jsonutils.JSONDict)); err != nil {
return err
}
return nil
},
)
}
func NewK8sResourceDeleteCmd(cmdN CmdNameFactory, manager modulebase.Manager) *Cmd {
return NewCommand(
&o.ResourceDeleteOptions{},
@@ -244,11 +314,13 @@ func NewK8sNsResourceDeleteCmd(cmdN CmdNameFactory, manager modulebase.Manager)
return deleteCmd
}
func initK8sNamespaceResource(kind string, manager modulebase.Manager) *ShellCommands {
func initK8sNamespaceResource(kind string, manager k8s.IClusterResourceManager) *ShellCommands {
cmdN := NewCmdNameFactory(kind)
return NewShellCommands(cmdN.Do).AddR(
NewK8sNsResourceListCmd(cmdN, manager),
NewK8sNsResourceGetCmd(cmdN, manager),
NewK8sNsResourceDeleteCmd(cmdN, manager),
NewK8sNsResourceGetRawCmd(cmdN, manager),
NewK8sResourceEditRawCmd(cmdN, manager),
)
}

View File

@@ -40,22 +40,40 @@ func initSecret() {
})
secretCmd.AddR(listCmd)
registryCmd := initK8sNamespaceResource("registrysecret", k8s.RegistrySecrets)
createCmd := NewCommand(
registryCmd := NewCmdNameFactory("secret-registry")
registryCreateCmd := NewCommand(
&o.RegistrySecretCreateOptions{},
registryCmd.CommandNameFactory("create"),
"Create docker registry secret resource",
registryCmd.Do("create"),
"Create docker registry secret secret",
func(s *mcclient.ClientSession, args *o.RegistrySecretCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.RegistrySecrets.Create(s, params)
ret, err := k8s.Secrets.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
registryCmd.AddR(createCmd)
cephCSICmd := NewCmdNameFactory("secret-ceph-csi")
cephCSICreateCmd := NewCommand(
&o.CephCSISecretCreateOptions{},
cephCSICmd.Do("create"),
"Create ceph csi user secret",
func(s *mcclient.ClientSession, args *o.CephCSISecretCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.Secrets.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
secretCmd.AddR(cephCSICreateCmd, registryCreateCmd)
}

View File

@@ -15,9 +15,70 @@
package k8s
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/k8s"
o "yunion.io/x/onecloud/pkg/mcclient/options/k8s"
)
func initStorageClass() {
initK8sClusterResource("storageclass", k8s.Storageclass)
cmdN := NewCmdNameFactory("storageclass")
scCmd := initK8sClusterResource("storageclass", k8s.Storageclass)
setDefaultCmd := NewCommand(
&o.ClusterResourceBaseOptions{},
cmdN.Do("set-default"),
"Set storageclass as default",
func(s *mcclient.ClientSession, args *o.ClusterResourceBaseOptions) error {
ret, err := k8s.Storageclass.PerformAction(s, args.NAME, "set-default", args.Params())
if err != nil {
return err
}
printObject(ret)
return nil
},
)
scCmd.AddR(setDefaultCmd)
addStorageClassCephCSI(scCmd)
}
func addStorageClassCephCSI(cmd *ShellCommands) {
rbdN := NewCmdNameFactory("storageclass-ceph-csi-rbd")
rbdCreateCmd := NewCommand(
&o.StorageClassCephCSIRBDCreateOptions{},
rbdN.Do("create"),
"Create ceph csi rbd",
func(s *mcclient.ClientSession, args *o.StorageClassCephCSIRBDCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.Storageclass.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
},
)
testConnCmd := NewCommand(
&o.StorageClassCephCSIRBDTestOptions{},
rbdN.Do("connection-test"),
"Test storageclass connection",
func(s *mcclient.ClientSession, args *o.StorageClassCephCSIRBDTestOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.Storageclass.PerformClassAction(s, "connection-test", params)
if err != nil {
return err
}
printObject(ret)
return nil
},
)
cmd.AddR(rbdCreateCmd, testConnCmd)
}

View File

@@ -51,9 +51,10 @@ func init() {
})
type KeypairCreate struct {
NAME string `help:"Name of keypair to be created"`
Scheme string `help:"Scheme of keypair, default is RSA" choices:"RSA|DSA" default:"RSA"`
Desc string `help:"Short description of keypair"`
NAME string `help:"Name of keypair to be created"`
Scheme string `help:"Scheme of keypair, default is RSA" choices:"RSA" default:"RSA"`
PublicKey string `help:"Publickey of keypair"`
Desc string `help:"Short description of keypair"`
}
R(&KeypairCreate{}, "keypair-create", "Create a new keypair", func(s *mcclient.ClientSession, args *KeypairCreate) error {
@@ -63,6 +64,10 @@ func init() {
params.Add(jsonutils.NewString(args.Scheme), "scheme")
}
if len(args.PublicKey) > 0 {
params.Add(jsonutils.NewString(args.PublicKey), "public_key")
}
if len(args.Desc) > 0 {
params.Add(jsonutils.NewString(args.Desc), "description")
}

View File

@@ -65,7 +65,7 @@ func init() {
printList(result, modules.LoadbalancerClusters.GetColumns(s))
return nil
})
R(&options.LoadbalancerClusterDeleteOptions{}, "lbcluster-delete", "Show lbcluster", func(s *mcclient.ClientSession, opts *options.LoadbalancerClusterDeleteOptions) error {
R(&options.LoadbalancerClusterDeleteOptions{}, "lbcluster-delete", "Delete lbcluster", func(s *mcclient.ClientSession, opts *options.LoadbalancerClusterDeleteOptions) error {
lbagent, err := modules.LoadbalancerClusters.Delete(s, opts.ID, nil)
if err != nil {
return err

View File

@@ -99,4 +99,13 @@ func init() {
return nil
})
R(&options.LoadbalancerGetOptions{}, "lb-change-owner-candidate-domains", "Get change owner candidate domain list", func(s *mcclient.ClientSession, args *options.LoadbalancerGetOptions) error {
result, err := modules.Loadbalancers.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -16,6 +16,7 @@ package shell
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modulebase"
"yunion.io/x/onecloud/pkg/mcclient/modules"
"yunion.io/x/onecloud/pkg/mcclient/options"
)
@@ -43,7 +44,12 @@ func init() {
if err != nil {
return err
}
printObject(result)
listResult := modulebase.ListResult{}
err = result.Unmarshal(&listResult)
if err != nil {
return err
}
printList(&listResult, []string{})
return nil
})

View File

@@ -0,0 +1,116 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"fmt"
monitorapi "yunion.io/x/onecloud/pkg/apis/monitor"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func init() {
aN := cmdN("alert")
R(&options.AlertListOptions{}, aN("list"), "List all alerts",
func(s *mcclient.ClientSession, args *options.AlertListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Alerts.List(s, params)
if err != nil {
return err
}
printList(ret, monitor.Alerts.GetColumns(s))
return nil
})
R(&options.AlertCreateOptions{}, aN("create"), "Create alert rule",
func(s *mcclient.ClientSession, args *options.AlertCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Alerts.DoCreate(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.AlertShowOptions{}, aN("show"), "Show details of a alert rule",
func(s *mcclient.ClientSession, args *options.AlertShowOptions) error {
ret, err := monitor.Alerts.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.AlertUpdateOptions{}, aN("update"), "Update a alert rule",
func(s *mcclient.ClientSession, args *options.AlertUpdateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Alerts.Update(s, args.ID, params.JSON(params))
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.AlertDeleteOptions{}, aN("delete"), "Delete alerts",
func(s *mcclient.ClientSession, args *options.AlertDeleteOptions) error {
ret := monitor.Alerts.BatchDelete(s, args.ID, nil)
printBatchResults(ret, monitor.Alerts.GetColumns(s))
return nil
})
R(&options.AlertTestRunOptions{}, aN("test-run"), "Test run alert",
func(s *mcclient.ClientSession, args *options.AlertTestRunOptions) error {
data := new(monitorapi.AlertTestRunInput)
if args.Debug {
data.IsDebug = true
}
ret, err := monitor.Alerts.DoTestRun(s, args.ID, data)
if err != nil {
return err
}
fmt.Println(ret.JSON(ret).YAMLString())
return nil
})
R(&options.AlertPauseOptions{}, aN("pause"), "Pause or unpause alert",
func(s *mcclient.ClientSession, args *options.AlertPauseOptions) error {
data := new(monitorapi.AlertPauseInput)
if args.UnPause {
data.Paused = false
} else {
data.Paused = true
}
ret, err := monitor.Alerts.PerformAction(s, args.ID, "pause", data.JSON(data))
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -0,0 +1,74 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
monitorapi "yunion.io/x/onecloud/pkg/apis/monitor"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modulebase"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func init() {
initAlertNotification()
}
func initAlertNotification() {
aN := cmdN("alert-notification")
R(&options.AlertNotificationListOptions{}, aN("list"), "List alert notification pairs",
func(s *mcclient.ClientSession, args *options.AlertNotificationListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
var result *modulebase.ListResult
if len(args.Alert) > 0 {
result, err = monitor.Alertnotification.ListDescendent(s, args.Alert, params)
} else if len(args.Notification) > 0 {
result, err = monitor.Alertnotification.ListDescendent2(s, args.Notification, params)
} else {
result, err = monitor.Alertnotification.List(s, params)
}
if err != nil {
return err
}
printList(result, monitor.Alertnotification.GetColumns(s))
return nil
})
R(&options.AlertNotificationAttachOptions{}, aN("attach"), "Attach a notification to a alert",
func(s *mcclient.ClientSession, args *options.AlertNotificationAttachOptions) error {
input := &monitorapi.AlertnotificationCreateInput{
UsedBy: args.UsedBy,
}
ret, err := monitor.Alertnotification.Attach(s, args.ALERT, args.NOTIFICATION, input.JSON(input))
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.AlertNotificationAttachOptions{}, aN("detach"), "Detach a notification to a alert",
func(s *mcclient.ClientSession, args *options.AlertNotificationAttachOptions) error {
ret, err := monitor.Alertnotification.Detach(s, args.ALERT, args.NOTIFICATION, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -0,0 +1,27 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/util/printutils"
)
var (
R = shell.R
printList = printutils.PrintJSONList
printObject = printutils.PrintJSONObject
printBatchResults = printutils.PrintJSONBatchResults
)

View File

@@ -0,0 +1,56 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"fmt"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func cmdN(suffix string) func(action string) string {
return func(action string) string {
return fmt.Sprintf("monitor-%s-%s", suffix, action)
}
}
func init() {
dsN := cmdN("datasource")
R(&options.DataSourceListOptions{}, dsN("list"), "List all monitor data source",
func(s *mcclient.ClientSession, args *options.DataSourceListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.DataSources.List(s, params)
if err != nil {
return err
}
printList(ret, monitor.DataSources.GetColumns(s))
return nil
})
R(&options.DataSourceDeleteOptions{}, dsN("delete"), "Delete monitor data source",
func(s *mcclient.ClientSession, args *options.DataSourceDeleteOptions) error {
ret, err := monitor.DataSources.Delete(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -0,0 +1,99 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func init() {
nN := cmdN("notification")
R(&options.NotificationListOptions{}, nN("list"), "List all alert notification",
func(s *mcclient.ClientSession, args *options.NotificationListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Notifications.List(s, params)
if err != nil {
return err
}
printList(ret, monitor.Notifications.GetColumns(s))
return nil
})
R(&options.NotificationDingDingCreateOptions{}, nN("create-dingding"),
"Create dingding alert notification",
func(s *mcclient.ClientSession, args *options.NotificationDingDingCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Notifications.Create(s, params.JSON(params))
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.NotificationFeishuCreateOptions{}, nN("create-feishu"),
"Create feishu alert notification",
func(s *mcclient.ClientSession, args *options.NotificationFeishuCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Notifications.Create(s, params.JSON(params))
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.NotificationShowOptions{}, nN("show"), "Show alert notification",
func(s *mcclient.ClientSession, args *options.NotificationShowOptions) error {
ret, err := monitor.Notifications.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.NotificationUpdateOptions{}, nN("update"), "Update alert notification",
func(s *mcclient.ClientSession, args *options.NotificationUpdateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.Notifications.Update(s, args.ID, params.JSON(params))
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.NotificationDeleteOptions{}, nN("delete"), "Show delete notification",
func(s *mcclient.ClientSession, args *options.NotificationDeleteOptions) error {
ret := monitor.Notifications.BatchDelete(s, args.ID, nil)
printBatchResults(ret, monitor.Notifications.GetColumns(s))
return nil
})
}

View File

@@ -0,0 +1,53 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func init() {
aN := cmdN("suggestsysalert")
R(&options.SuggestSysAlertListOptions{}, aN("list"), "List all suggestsysrules",
func(s *mcclient.ClientSession, args *options.SuggestSysAlertListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
if len(args.Type) > 0 {
params.Add(jsonutils.NewString(args.Type), "type")
}
ret, err := monitor.SuggestSysAlertManager.List(s, params)
if err != nil {
return err
}
printList(ret, monitor.SuggestSysAlertManager.GetColumns(s))
return nil
})
R(&options.SSuggestAlertShowOptions{}, aN("show"), "Show details of a alert rule",
func(s *mcclient.ClientSession, args *options.SSuggestAlertShowOptions) error {
ret, err := monitor.SuggestSysAlertManager.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -0,0 +1,84 @@
// Copyright 2019 Yunion
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package monitor
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
func init() {
aN := cmdN("suggestsysrule")
R(&options.SuggestRuleListOptions{}, aN("list"), "List all suggestsysrules",
func(s *mcclient.ClientSession, args *options.SuggestRuleListOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.SuggestSysRuleManager.List(s, params)
if err != nil {
return err
}
printList(ret, monitor.SuggestSysRuleManager.GetColumns(s))
return nil
})
R(&options.SuggestRuleCreateOptions{}, aN("create"), "Create suggestsys rule",
func(s *mcclient.ClientSession, args *options.SuggestRuleCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.SuggestSysRuleManager.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.SuggestRuleShowOptions{}, aN("show"), "Show details of a alert rule",
func(s *mcclient.ClientSession, args *options.SuggestRuleShowOptions) error {
ret, err := monitor.SuggestSysRuleManager.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.SuggestRuleUpdateOptions{}, aN("update"), "Update a alert rule",
func(s *mcclient.ClientSession, args *options.SuggestRuleUpdateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := monitor.SuggestSysRuleManager.Update(s, args.ID, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&options.SuggestRuleDeleteOptions{}, aN("delete"), "Delete alerts",
func(s *mcclient.ClientSession, args *options.SuggestRuleDeleteOptions) error {
ret := monitor.SuggestSysRuleManager.BatchDelete(s, args.ID, nil)
printBatchResults(ret, monitor.SuggestSysRuleManager.GetColumns(s))
return nil
})
}

View File

@@ -35,7 +35,7 @@ func init() {
return nil
})
R(&options.NatGatewayShowOptions{}, "natgateway-show", "Show a NAT gateway", func(s *mcclient.ClientSession, args *options.NatGatewayShowOptions) error {
R(&options.NatGatewayIdOptions{}, "natgateway-show", "Show a NAT gateway", func(s *mcclient.ClientSession, args *options.NatGatewayIdOptions) error {
results, err := modules.NatGateways.Get(s, args.ID, nil)
if err != nil {
return err
@@ -44,6 +44,15 @@ func init() {
return nil
})
R(&options.NatGatewayIdOptions{}, "natgateway-syncstatus", "Sync NAT gateway status", func(s *mcclient.ClientSession, args *options.NatGatewayIdOptions) error {
result, err := modules.NatGateways.PerformAction(s, args.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type NatGatewayListEipOptions struct {
ID string `help:"ID"`
}

View File

@@ -38,6 +38,7 @@ func init() {
City string `help:"search networks belongs to a city"`
Usable *bool `help:"search usable networks"`
ServerType string `help:"search networks belongs to a ServerType" choices:"guest|baremetal|container|pxe|ipmi"`
Schedtag string `help:"filter networks by schedtag"`
Status string `help:"filter by network status"`
}
@@ -55,7 +56,11 @@ func init() {
if err != nil {
return err
}
printList(result, modules.Networks.GetColumns(s))
if len(opts.ExportFile) > 0 {
exportList(result, opts.ExportFile, opts.ExportKeys, opts.ExportTexts, modules.Networks.GetColumns(s))
} else {
printList(result, modules.Networks.GetColumns(s))
}
return nil
})
@@ -139,10 +144,10 @@ func init() {
return nil
})
type NetworkShowOptions struct {
type NetworkIdOptions struct {
ID string `help:"ID or Name of the zone to show"`
}
R(&NetworkShowOptions{}, "network-show", "Show network details", func(s *mcclient.ClientSession, args *NetworkShowOptions) error {
R(&NetworkIdOptions{}, "network-show", "Show network details", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.Get(s, args.ID, nil)
if err != nil {
return err
@@ -151,7 +156,7 @@ func init() {
return nil
})
R(&NetworkShowOptions{}, "network-metadata", "Show metadata of a network", func(s *mcclient.ClientSession, args *NetworkShowOptions) error {
R(&NetworkIdOptions{}, "network-metadata", "Show metadata of a network", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.GetMetadata(s, args.ID, nil)
if err != nil {
return err
@@ -160,7 +165,7 @@ func init() {
return nil
})
R(&NetworkShowOptions{}, "network-private", "Make a network private", func(s *mcclient.ClientSession, args *NetworkShowOptions) error {
R(&NetworkIdOptions{}, "network-private", "Make a network private", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.PerformAction(s, args.ID, "private", nil)
if err != nil {
return err
@@ -169,16 +174,23 @@ func init() {
return nil
})
type NetworkShareOptions struct {
NetworkShowOptions
Scope string `help:"sharing scope" choices:"system|domain"`
ShareToProject []string `help:"Share to prject"`
}
R(&NetworkShareOptions{}, "network-public", "Make a network public", func(s *mcclient.ClientSession, args *NetworkShareOptions) error {
params, err := options.StructToParams(args)
R(&NetworkIdOptions{}, "network-syncstatus", "Sync network status", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.PerformAction(s, args.ID, "syncstatus", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkShareOptions struct {
NetworkIdOptions
Scope string `help:"sharing scope" choices:"system|domain|project"`
SharedProjects []string `help:"Share to prjects"`
SharedDomains []string `help:"share to domains"`
}
R(&NetworkShareOptions{}, "network-public", "Make a network public", func(s *mcclient.ClientSession, args *NetworkShareOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Networks.PerformAction(s, args.ID, "public", params)
if err != nil {
return err
@@ -187,7 +199,7 @@ func init() {
return nil
})
R(&NetworkShowOptions{}, "network-delete", "Delete a network", func(s *mcclient.ClientSession, args *NetworkShowOptions) error {
R(&NetworkIdOptions{}, "network-delete", "Delete a network", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.Delete(s, args.ID, nil)
if err != nil {
return err
@@ -196,7 +208,7 @@ func init() {
return nil
})
R(&NetworkShowOptions{}, "network-purge", "Purge a managed network, not delete the remote entity", func(s *mcclient.ClientSession, args *NetworkShowOptions) error {
R(&NetworkIdOptions{}, "network-purge", "Purge a managed network, not delete the remote entity", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.PerformAction(s, args.ID, "purge", nil)
if err != nil {
return err
@@ -346,77 +358,6 @@ func init() {
return nil
})
type NetworkAddDnsUpdateTargetOptions struct {
ID string `help:"Network ID or name"`
DNS string `help:"DNS server address" metavar:"DNS_SERVER"`
KEY string `help:"DNS update key name" metavar:"DNS_UPDATE_KEY"`
SECRET string `help:"DNS update key secret" metavar:"DNS_UPDATE_SECRET"`
}
R(&NetworkAddDnsUpdateTargetOptions{}, "network-add-dns-update-target", "Add a dns update target to a network", func(s *mcclient.ClientSession, args *NetworkAddDnsUpdateTargetOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.DNS), "server")
params.Add(jsonutils.NewString(args.KEY), "key")
params.Add(jsonutils.NewString(args.SECRET), "secret")
result, err := modules.Networks.PerformAction(s, args.ID, "add-dns-update-target", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkRemoveDnsUpdateTargetOptions struct {
ID string `help:"Network ID or name"`
DNS string `help:"DNS server address" metavar:"DNS_SERVER"`
KEY string `help:"DNS update key name" metavar:"DNS_UPDATE_KEY"`
}
R(&NetworkRemoveDnsUpdateTargetOptions{}, "network-remove-dns-update-target", "Remove a dns update target from a network", func(s *mcclient.ClientSession, args *NetworkRemoveDnsUpdateTargetOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.DNS), "server")
params.Add(jsonutils.NewString(args.KEY), "key")
result, err := modules.Networks.PerformAction(s, args.ID, "remove-dns-update-target", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkSetDnsUpdateKeyOptions struct {
ID string `help:"ID of virtual network to update"`
KEY string `help:"Key name of secret" metavar:"KEYNAME"`
SECRET string `help:"Key secret"`
SERVER string `help:"Alternate DNS update server"`
}
R(&NetworkSetDnsUpdateKeyOptions{}, "network-set-dns-update-key", "Set DNS update key info for a virtual network", func(s *mcclient.ClientSession, args *NetworkSetDnsUpdateKeyOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.KEY), "dns_update_key_name")
params.Add(jsonutils.NewString(args.SECRET), "dns_update_key_secret")
params.Add(jsonutils.NewString(args.SERVER), "dns_update_server")
result, err := modules.Networks.PerformAction(s, args.ID, "metadata", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkRemoveDnsUpdateKeyOptions struct {
ID string `help:"ID of virtual network"`
}
R(&NetworkRemoveDnsUpdateKeyOptions{}, "network-remove-dns-update-key", "Set DNS update key info for a virtual network", func(s *mcclient.ClientSession, args *NetworkRemoveDnsUpdateKeyOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.JSONNull, "dns_update_key_name")
params.Add(jsonutils.JSONNull, "dns_update_key_secret")
params.Add(jsonutils.JSONNull, "dns_update_server")
result, err := modules.Networks.PerformAction(s, args.ID, "metadata", params)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkAddressOptions struct {
NETWORK string `help:"id or name of network to query"`
}
@@ -460,4 +401,30 @@ func init() {
printObject(result)
return nil
})
R(&NetworkIdOptions{}, "network-change-owner-candidate-domains", "Show candiate domains of a network for changing owner", func(s *mcclient.ClientSession, args *NetworkIdOptions) error {
result, err := modules.Networks.GetSpecific(s, args.ID, "change-owner-candidate-domains", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type NetworkChangeOwnerOptions struct {
ID string `help:"Network to change owner" json:"-"`
PROJECT string `help:"Project ID or change" json:"tenant"`
}
R(&NetworkChangeOwnerOptions{}, "network-change-owner", "Change owner project of a network", func(s *mcclient.ClientSession, args *NetworkChangeOwnerOptions) error {
params, err := options.StructToParams(args)
if err != nil {
return err
}
net, err := modules.Networks.PerformAction(s, args.ID, "change-owner", params)
if err != nil {
return err
}
printObject(net)
return nil
})
}

View File

@@ -59,18 +59,18 @@ func init() {
* 修改指定的报警规则
*/
type NodealertUpdateOptions struct {
ID string `help:"ID of the alert rule" required:"true" positional:"true"`
Type string `help:"Alert rule type" choices:"guest|host"`
Metric string `help:"Metric name, include measurement and field, such as vm_cpu.usage_active"`
NodeName string `help:"Name of the guest or host"`
NodeID string `help:"ID of the guest or host"`
Period string `help:"Specify the query time period for the data"`
Window string `help:"Specify the query interval for the data"`
Threshold float64 `help:"Threshold value of the metric"`
Comparator string `help:"Comparison operator for join expressions" choices:">|<|>=|<=|=|!="`
Recipients string `help:"Comma separated recipient ID"`
Level string `help:"Alert level" choices:"normal|important|fatal"`
Channel string `help:"Ways to send an alarm" choices:"email|mobile"`
ID string `help:"ID of the alert rule" required:"true" positional:"true"`
Type string `help:"Alert rule type" choices:"guest|host"`
Metric string `help:"Metric name, include measurement and field, such as vm_cpu.usage_active"`
NodeName string `help:"Name of the guest or host"`
NodeID string `help:"ID of the guest or host"`
Period string `help:"Specify the query time period for the data"`
Window string `help:"Specify the query interval for the data"`
Threshold *float64 `help:"Threshold value of the metric"`
Comparator string `help:"Comparison operator for join expressions" choices:">|<|>=|<=|=|!="`
Recipients string `help:"Comma separated recipient ID"`
Level string `help:"Alert level" choices:"normal|important|fatal"`
Channel string `help:"Ways to send an alarm" choices:"email|mobile"`
}
R(&NodealertUpdateOptions{}, "nodealert-update", "Update the node alert rule", func(s *mcclient.ClientSession, args *NodealertUpdateOptions) error {
params, err := options.StructToParams(args)
@@ -92,14 +92,11 @@ func init() {
* 删除指定ID的报警规则
*/
type NodealertDeleteOptions struct {
ID string `help:"ID of node alert" required:"true" positional:"true"`
ID []string `help:"ID of node alert" required:"true" positional:"true"`
}
R(&NodealertDeleteOptions{}, "nodealert-delete", "Delete a node alert", func(s *mcclient.ClientSession, args *NodealertDeleteOptions) error {
alarm, err := modules.NodeAlert.Delete(s, args.ID, nil)
if err != nil {
return err
}
printObject(alarm)
ret := modules.NodeAlert.BatchDelete(s, args.ID, nil)
printBatchResults(ret, modules.NodeAlert.GetColumns(s))
return nil
})

View File

@@ -29,7 +29,7 @@ func init() {
*/
type NotificationCreateOptions struct {
CONTACTTYPE string `help:"User's contacts type" choices:"email|mobile|dingtalk|webconsole"`
CONTACTTYPE string `help:"User's contacts type"`
TOPIC string `help:"Title or topic of the notification"`
PRIORITY string `help:"Priority of the notification" choices:"normal|important|fatal"`
MSG string `help:"The content of the notification"`
@@ -41,7 +41,7 @@ func init() {
NotificationCreateOptions
}
R(&NotificationCreateSingleOptions{}, "notify", "Send a notification to someones", func(s *mcclient.ClientSession,
R(&NotificationCreateSingleOptions{}, "notify", "Send a notification to someone", func(s *mcclient.ClientSession,
args *NotificationCreateSingleOptions) error {
msg := notify.SNotifyMessage{}

View File

@@ -34,7 +34,24 @@ func init() {
}
body := jsonutils.NewDict()
body.Add(tmp, args.CONTACTTYPE)
modules.Configs.Create(s, body)
ret, err := modules.Configs.Create(s, body)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&ConfigCreate2Options{}, "notify-config-validate", "config validate", func(s *mcclient.ClientSession,
args *ConfigCreate2Options) error {
tmp := jsonutils.NewDict()
for i := 0; i+1 < len(args.CONFIGS); i += 2 {
tmp.Add(jsonutils.NewString(args.CONFIGS[i+1]), args.CONFIGS[i])
}
ret, err := modules.Configs.PerformAction(s, args.CONTACTTYPE, "validate", tmp)
if err != nil {
return err
}
printObject(ret)
return nil
})

View File

@@ -173,7 +173,7 @@ func init() {
NAME string `help:"The name of parameter"`
}
R(&ParametersDeleteOptions{}, "parameter-delete", "delete notice", func(s *mcclient.ClientSession, args *ParametersDeleteOptions) error {
R(&ParametersDeleteOptions{}, "parameter-delete", "delete parameter", func(s *mcclient.ClientSession, args *ParametersDeleteOptions) error {
params := jsonutils.NewDict()
var parameter jsonutils.JSONObject

View File

@@ -15,6 +15,7 @@
package shell
import (
"context"
"fmt"
"io/ioutil"
"strings"
@@ -134,13 +135,16 @@ func init() {
return nil
}
R(&PolicyPatchOptions{}, "policy-patch", "Patch policy", updateFunc)
R(&PolicyPatchOptions{}, "policy-update", "Patch policy", updateFunc)
R(&PolicyPatchOptions{}, "policy-update", "Update policy", updateFunc)
type PolicyPerformOptions struct {
ID string `help:"ID of policy to update"`
type PolicyPublicOptions struct {
ID string `help:"ID of policy to update" json:"-"`
Scope string `help:"sharing scope" choices:"system|domain"`
SharedDomains []string `help:"share to domains"`
}
R(&PolicyPerformOptions{}, "policy-public", "Mark a policy public", func(s *mcclient.ClientSession, args *PolicyPerformOptions) error {
result, err := modules.Policies.PerformAction(s, args.ID, "public", nil)
R(&PolicyPublicOptions{}, "policy-public", "Mark a policy public", func(s *mcclient.ClientSession, args *PolicyPublicOptions) error {
params := jsonutils.Marshal(args)
result, err := modules.Policies.PerformAction(s, args.ID, "public", params)
if err != nil {
return err
}
@@ -148,7 +152,10 @@ func init() {
return nil
})
R(&PolicyPerformOptions{}, "policy-private", "Mark a policy private", func(s *mcclient.ClientSession, args *PolicyPerformOptions) error {
type PolicyPrivateOptions struct {
ID string `help:"ID of policy to update" json:"-"`
}
R(&PolicyPrivateOptions{}, "policy-private", "Mark a policy private", func(s *mcclient.ClientSession, args *PolicyPrivateOptions) error {
result, err := modules.Policies.PerformAction(s, args.ID, "private", nil)
if err != nil {
return err
@@ -184,11 +191,7 @@ func init() {
if err != nil {
return err
}
yaml, err := result.GetString("policy")
if err != nil {
return err
}
fmt.Println(yaml)
printObject(result)
return nil
})
@@ -361,7 +364,7 @@ func init() {
token = s.GetToken()
}
result, err := policy.PolicyManager.ExplainRpc(token, req, args.Name)
result, err := policy.ExplainRpc(context.Background(), token, req, args.Name)
if err != nil {
return err
}
@@ -375,7 +378,7 @@ func init() {
rbacutils.ScopeUser,
rbacutils.ScopeNone,
} {
m := policy.PolicyManager.MatchedPolicies(scope, token)
m := policy.PolicyManager.MatchedPolicyNames(scope, token)
fmt.Println("matched", scope, "policies:", m)
}

Some files were not shown because too many files have changed in this diff Show More