Compare commits

...

1013 Commits

Author SHA1 Message Date
wanyaoqi
2c25b737c9 fix(host-deployer): update host-deployer-base to 1.4.9 (#21406) 2024-10-12 14:14:06 +08:00
屈轩
0736e9c135 fix(region): storage conf update (#21392) 2024-10-11 18:05:03 +08:00
屈轩
02d43a5044 fix(region): gcp security group check (#21388) 2024-10-11 17:53:57 +08:00
屈轩
03bd2876bb fix(common): compatible metadata mod find (#21384) 2024-10-11 16:39:57 +08:00
wanyaoqi
81d2a2adce fix(region): check disk is deleted on delete snapshot (#21370) 2024-10-09 21:49:58 +08:00
wanyaoqi
71fbb8336e fix(host): reconnect qga on failed exec qga commands (#21355) 2024-10-08 10:13:54 +08:00
wanyaoqi
ceff4b7330 fix: fix slice init length (#21349)
Co-authored-by: cui fliter <imcusg@gmail.com>
2024-10-07 20:09:28 +08:00
wanyaoqi
2c51ca5e1e fix(region,scheduler): allow req cpu count zero on allocate cpunumapin (#21345) 2024-10-03 20:03:23 +08:00
Jian Qiu
4811fcf99e fix: cloud account filter revisit (#21341)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-10-01 08:49:15 +08:00
wanyaoqi
ecc41e4b3d fix(host): refact qga connection ops (#21335) 2024-09-29 22:53:11 +08:00
Jian Qiu
7254fa5f11 fix: host report ovs kmod version and ksm status (#21327)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-28 20:27:07 +08:00
Zexi Li
af85934ac8 fix(region): make parseDeviceInfo error clear (#21323) 2024-09-28 18:35:38 +08:00
Jian Qiu
e0ba8db6f1 fix: upgrade sqlite3 to 1.14.19 (#21317)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-27 07:18:16 +08:00
wanyaoqi
a39eb5813f Automated cherry pick of #21312: Automated cherry pick of #20996: fix(region,host): lvm snapshot delete and create from backup (#21313)
* fix(region,host): lvm snapshot delete and create from backup

* fix(host): slvm delete snapshot and save images

* fix(host): add option boot vga pci addr

* fix(host): slvm active exclusive mode on convert snapshot
2024-09-27 00:37:18 +08:00
wanyaoqi
6a3ddc131a fix(host): check qga is init on check qga runing (#21308) 2024-09-27 00:35:00 +08:00
屈轩
a4f086fa6e fix(region): filter cloudproviders by regional network zone (#21287) 2024-09-24 18:10:16 +08:00
Jian Qiu
05c704d444 fix: remove metadata server from host (#21278)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-21 22:52:08 +08:00
屈轩
9afdbb32b5 fix(region): kvm user-data (#21240) 2024-09-20 20:41:48 +08:00
屈轩
72a70d5ec2 fix(region): disk metadata with server (#21254) 2024-09-19 09:54:53 +08:00
Jian Qiu
a374b4910c fix: host build image use go 1.21 (#21265)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-19 03:20:25 +08:00
Jian Qiu
7e39ab816b fix: update vendor 20240919 3.11 (#21259)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-18 22:24:06 +08:00
Jian Qiu
3d11283f81 fix: update vendor 3.11 20240917, upgrade go to 1.21 (#21249)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-18 17:15:01 +08:00
Jian Qiu
79b6fe5113 fix: update vendor 20240916 (#21245)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-16 19:08:39 +08:00
Jian Qiu
a33aca15de fix: prevent access from anonymous user (#21241)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-14 19:36:32 +08:00
wanyaoqi
2e533b3a46 fix(region): guest without cpunumapin don't set params on save schedule result (#21233) 2024-09-14 10:11:28 +08:00
Zexi Li
f3cd59d5ca Automated cherry pick of #21079: 1、裸金属删除时,GuestUndeployTask会出现无法调用任务完成方法OnGuestUndeployComplete,导致任务卡住的情况 (#21231)
* 1、裸金属删除时,GuestUndeployTask会出现无法调用任务完成方法OnGuestUndeployComplete,导致任务卡住的情况 2、裸金属删除时,回调用baremetal-agent的sync-config接口不止一次,调用时出现请求参数没有传递server_id情况,导致在OnPXEBoot调用getServer时删除了baremetal的server信息,致使后面的DoEraseDisk方法报错

* 1、裸金属删除时,GuestUndeployTask onInit去掉host不为空时的SetStageComplete函数

---------

Co-authored-by: gj <gj@qq.com>
2024-09-13 14:36:54 +08:00
Zexi Li
c2a0620df2 feat(climc): add public/private command for k8s-container-registry (#21230) 2024-09-13 14:34:51 +08:00
屈轩
734aeef43f fix(cloudmon): vendor update for aws gcp cpu metric (#21227) 2024-09-13 11:58:37 +08:00
Zexi Li
7c70b7628c feat(monitor): filter monitor_resource_alert by ip (#21219) 2024-09-12 11:01:06 +08:00
Zexi Li
1fa397b1bb fix(moniotr): filter dirty resource alerts (#21214) 2024-09-12 10:04:50 +08:00
Zexi Li
683b1c252f fix(climc): monitor-alert-test-run prints result error (#21210) 2024-09-11 20:04:25 +08:00
Zexi Li
4dcdc5c419 optimized(monitor): keep 2 precision of reduced value (#21206) 2024-09-11 16:36:01 +08:00
屈轩
b6c3d9d168 fix(region): sync remove guest whith network address (#21201) 2024-09-10 14:25:45 +08:00
屈轩
9cb2900afc fix(log): add offline export i18n (#21195) 2024-09-10 14:24:55 +08:00
Zexi Li
f14fce685a feat(apigateway): report k3s environment (#21198) 2024-09-10 14:24:16 +08:00
Jian Qiu
88eff2afab fix: climc server-detach-network --force (#21192)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-10 09:58:37 +08:00
Zexi Li
5bb7d1176d optimized(apigateway): use ssh for climc pod cloud shell (#21180) 2024-09-09 16:03:02 +08:00
屈轩
19c3c8bc01 fix(cloudid): cloud policy sync (#21174) 2024-09-06 11:49:02 +08:00
wanyaoqi
15553290e1 fix(host-deployer): update host-deployer-docker base (#21176) 2024-09-06 11:25:39 +08:00
屈轩
5ca05eef84 fix: support apigateway for cloudpods (#21164) 2024-09-06 00:38:37 +08:00
Zexi Li
6af40b96c6 fix(monitor): support or filter of query (#21169) 2024-09-05 20:10:18 +08:00
屈轩
ead18eae11 fix(region): disk update disk type (#21161) 2024-09-04 10:44:38 +08:00
wanyaoqi
9e2108e886 fix(host): rbd save image use /opt/cloud temp dir (#21152) 2024-09-04 10:43:17 +08:00
Jian Qiu
ece3641bcb fix: telegraf config file format error (#21146)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-03 11:03:10 +08:00
屈轩
8290c3b75d fix(region): sync worker hashring (#21128) 2024-09-02 20:08:18 +08:00
Zexi Li
7ff19556bd optimize(host): wrap updateOrCreateHost error (#21140) 2024-09-02 13:28:22 +08:00
Jian Qiu
d4426ea8dc fix: update vendor for dameng TEXT_EQUAL (#21136)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-01 20:19:23 +08:00
wanyaoqi
426038d4b7 fix(region): allow guest create on cannot detect image props (#21129) 2024-09-01 20:18:06 +08:00
Jian Qiu
75df132f99 fix: migrate ipv6 routes from physical interface to bridge (#21131)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-09-01 20:16:36 +08:00
Zexi Li
ecef940442 fix(monitor): delete default group by and mean aggregator (#21115) 2024-08-29 10:03:37 +08:00
Zexi Li
7c891bbbb9 fix(climc): host-ssh is not working (#21113) 2024-08-27 16:25:31 +08:00
Zexi Li
7f044678d2 fix(monitor): skipCheckSeries when aggregator is sum (#21105) 2024-08-27 10:40:59 +08:00
屈轩
62dfa252cd fix(region): sync aliyun gtm and aws traffic policy address (#21104) 2024-08-26 20:55:31 +08:00
Zexi Li
2bd23b1910 fix(monitor): only show MEAN and SUM aggregators (#21098) 2024-08-26 17:39:51 +08:00
wanyaoqi
2f849b318d fix(host): nbd worker count add options (#21094) 2024-08-26 17:28:47 +08:00
屈轩
6f5f7e96f7 fix(region): set security group domain id (#21093) 2024-08-26 17:27:06 +08:00
Jian Qiu
dbf7b5f67d fix: extend query with metadata field (#21085)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-08-23 11:30:22 +08:00
Zexi Li
8c8dfc5557 feat(monitor): result reducer for query result (#21072) 2024-08-22 15:43:45 +08:00
Zexi Li
3458d95e83 optimze(baremetal): dhcp prefix hints (#21073) 2024-08-22 15:27:18 +08:00
屈轩
f7d0085af8 fix(region): filter eips by associated (#21067) 2024-08-21 10:51:07 +08:00
Zexi Li
cb2805f66f optimize(region,host): add details error message when adding net interface (#21061) 2024-08-20 18:38:50 +08:00
Jian Qiu
b8bed4a2cd fix(host): migrate slave addresses and routes from physical nic to bridge (#21042)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-08-19 10:19:16 +08:00
Jian Qiu
c247550d89 fix: climc command to public/private dns-zone (#21055)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-08-19 10:18:20 +08:00
屈轩
bb57530794 fix(cloudmon): 避免cloudmon任务堆积导致大量请求 (#21049) 2024-08-19 10:17:22 +08:00
wanyaoqi
e6cb8e047a fix(region): try recover image cache on guest migrate (#21026) 2024-08-16 10:29:38 +08:00
wanyaoqi
c6252cd527 Automated cherry pick of #21039: fix(region,host,host-deployer): deploy guest ssh port add lock (#21041)
* fix(host): check nodes count on alloc cpuset

* fix(host-deployer): get ssh port add lock

* feat(region): guest clone add prefer host
2024-08-16 09:56:48 +08:00
Jian Qiu
bd6b05587a fix: filter islated devices capability info by zone (#21035)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-08-15 09:37:49 +08:00
Jian Qiu
a781121c3f fix: support keylike search (#21031)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-08-15 09:36:13 +08:00
屈轩
bc20d62087 fix(region): sync kvm secgroup status (#21019) 2024-08-14 11:37:48 +08:00
Zexi Li
0ac34ecf2d fix(baremetal): ignore 0.0.0.0 ipmi address when probing (#21007) 2024-08-13 17:43:57 +08:00
屈轩
baf914f635 fix(region): custom total count (#21000) 2024-08-12 15:48:07 +08:00
屈轩
ffe8a0816e fix(region): vendor update (#20994) 2024-08-12 09:52:30 +08:00
屈轩
b72eab269d fix(region): auto clean invalid cached images (#20816) 2024-08-09 09:42:16 +08:00
wanyaoqi
3c1d703faa fix(region): validate guestdisk cache/io mode on upadte (#20983)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-08-09 09:40:53 +08:00
wanyaoqi
91dff4fe90 fix(host): clean image cache check local reference (#20950) 2024-08-09 09:40:08 +08:00
屈轩
5dca24586c fix(region): vendor update for lb backend sync (#20977) 2024-08-07 18:50:44 +08:00
屈轩
65859262f1 fix(region): send notify when vpc or network created (#20929) 2024-08-07 11:55:05 +08:00
屈轩
e02ce67cf6 fix(region): show status info with list api (#20944) 2024-08-07 11:54:05 +08:00
wanyaoqi
d79217059b fix(host-deployer): add cpu mem hotplug udev rules (#20961) 2024-08-06 09:07:05 +08:00
wanyaoqi
f18fd960d2 fix(host): too much qga ping logs (#20955) 2024-08-05 14:47:15 +08:00
wanyaoqi
6f3f9cb058 fix(region,scheduler): sub pending usage on select cpu numa pin (#20948)
- reset guest cpu numa pin before start guest
- sub pending usage on select cpu numa pin
- hypervisor pod record pending usage
- add core:threads pair allocate, use same core threads first

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-08-02 10:22:53 +08:00
wanyaoqi
9f8945886c fix(region): cpu numa pin guest sched start (#20939) 2024-07-31 21:36:23 +08:00
wanyaoqi
4690c2307d feat(region,host,scheduler): scheduler support allocate cpu numa pin (#20372) 2024-07-30 19:10:18 +08:00
Zexi Li
72f8cd2617 feat(monitor): multiple alerts of resource (#20908) 2024-07-30 16:15:37 +08:00
屈轩
3ce3d803d2 fix(cloudmon): 避免产生大量操作日志 (#20920) 2024-07-30 14:42:06 +08:00
屈轩
e85a9ea129 fix(region): vendor update (#20912) 2024-07-30 09:33:09 +08:00
Zexi Li
57a9ac2688 fix(monitor): add pps_sent/recv metric for query (#20913) 2024-07-29 20:58:41 +08:00
Jian Qiu
2b59cf326c fix: opsadmin deny host perform login-info (#20905)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-29 13:21:48 +08:00
屈轩
767e68a5a7 fix(keystone): change user mobile field character set to utf8 (#20899) 2024-07-27 13:50:04 +08:00
Zexi Li
3b141651a6 fix(mointor): multiple duplicated message (#20889) 2024-07-25 15:26:35 +08:00
wanyaoqi
558d310bea feat(regin,host,host-deployer): qga deploy and fsdriver (#20813)
- host-deployer add deploy qga support
- host add qga partition fsdriver
- qga set network use fsdriver
- hostpinger sync qga status
2024-07-25 11:49:22 +08:00
屈轩
9fd7fca9b5 fix(cloudid): cloudid resource sync worker (#20877) 2024-07-25 11:19:06 +08:00
Zexi Li
62ac71ccc0 feat(webconsole): add secret_level property inside query data (#20881) 2024-07-24 17:41:13 +08:00
屈轩
ede5e6af50 fix(region): keypair id typo (#20874) 2024-07-24 14:35:40 +08:00
wanyaoqi
aeb14820c6 fix(region,host): slvm disk create use guest host lvm disk create from backup (#20852)
* fix(region): slvm disk create use guest host

* fix(host): lvm disk create from backup
2024-07-22 15:12:57 +08:00
Zexi Li
0246770fa5 feat(apigateway): report docker-compose-baremetal running environment (#20865) 2024-07-22 15:11:43 +08:00
Zexi Li
a79927f825 feat(monitor): add inodes_used_percent metric (#20847) 2024-07-20 11:57:11 +08:00
屈轩
c31bca3052 fix(region): host nic info (#20861) 2024-07-20 11:56:08 +08:00
Zexi Li
fd5fdb630e feat(monitor): update influxql-to-metricsql@v0.0.7 to support percentile aggregator (#20833) 2024-07-17 22:59:06 +08:00
屈轩
234d8da1cb fix(region): add storage name for snapshot (#20829) 2024-07-17 22:55:49 +08:00
屈轩
7c90f63e8d fix(region): support baremetal server as lb backend (#20839) 2024-07-17 22:54:11 +08:00
屈轩
eb72ec047d fix(region): vendor update for qcloud lb backend sync (#20824) 2024-07-17 14:17:28 +08:00
屈轩
ff88eb87ca fix(cloudid): distinct field for cloudid resources (#20820) 2024-07-17 10:12:58 +08:00
Jian Qiu
6cd471633c fix: always add static routes for metadata server (#20808)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-17 10:07:07 +08:00
屈轩
5e7ba9a55e fix(region): check user credential length when exec task (#20793) 2024-07-16 11:20:07 +08:00
Zexi Li
969ed95b60 feat(host): add interface meta tags of netio metrics (#20774) 2024-07-12 10:18:17 +08:00
Zexi Li
75ae9d50fc feat(region,baremetal): validate ipmi info (#20789) 2024-07-12 10:17:57 +08:00
屈轩
92d9c44271 fix(notify): avoid empty email addr (#20799) 2024-07-12 10:10:42 +08:00
屈轩
acd488424b fix(region): vendor update (#20802) 2024-07-12 10:10:07 +08:00
Zexi Li
b0d187bb12 fix(baremetal): some tasks don't implement IServerBaseDeployTask interface (#20784) 2024-07-10 16:15:22 +08:00
屈轩
49f635bde6 fix(region): optimized host-list speed (#20779) 2024-07-10 16:14:29 +08:00
屈轩
254838b72d fix(region): optimized guest list speed (#20760) 2024-07-10 16:12:39 +08:00
wanyaoqi
ed03ae1e75 fix(host): disk reset with encryption (#20764) 2024-07-10 16:11:24 +08:00
屈轩
ea77941b08 fix(region): show pretty cdrom info for server (#20777) 2024-07-10 16:10:10 +08:00
屈轩
b72a9a91f4 fix(region): auto sync remove lb public ip (#20773) 2024-07-09 17:50:55 +08:00
Zexi Li
9d90fb6a04 fix(scheduler,baremetal): match RAID and PCIE storages in range (#20767)
The index of PCIE storages is not reindex when range is provided.
2024-07-09 11:11:55 +08:00
屈轩
36a8428f24 fix(region): enable create cloudpods vm with iso image (#20747) 2024-07-08 21:32:06 +08:00
屈轩
80edd74260 fix(notify): avoid panic when mobile not set (#20745) 2024-07-08 21:31:24 +08:00
Jian Qiu
600a8801f1 fix: turn on ethtool gso by default (#20754)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-08 21:30:24 +08:00
Jian Qiu
1530cab756 fix: server update nic sub ips (#20758)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-08 17:25:31 +08:00
屈轩
8931d292ca fix(climc): auto enable storage when switch s3 on (#20728) 2024-07-07 09:47:01 +08:00
Jian Qiu
a0eeb4b27d fix: fail to perform host remove netif (#20738)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-07 09:02:39 +08:00
屈轩
75154ca3ea fix(region): 补充部分翻译 (#20749) 2024-07-07 09:01:49 +08:00
wanyaoqi
35fc11cdd5 fix(region,host): lvm snapshot reset and backup (#20718)
- fix lvm disk reset request hosts wrong, should reset on guest hosts
- add lvm disk snapshot failed handle
- support lvm disk backup
- lvm disk snapshot add encrypt support
2024-07-05 13:49:56 +08:00
屈轩
b6cc2804e1 fix(region): avoid delete lb failed (#20710) 2024-07-05 12:38:43 +08:00
屈轩
876f3de5a3 fix(region): 简化清理未使用的安全组 (#20724) 2024-07-05 11:03:18 +08:00
Jian Qiu
4d608d59f4 fix: normalize sftp errors (#20706)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-07-03 21:11:33 +08:00
wanyaoqi
f4c6eadae8 fix(scheduler): optimize get guests by hosts ids (#20700) 2024-07-02 00:16:51 +08:00
wanyaoqi
9340c134e5 feat(host): support run guest with qemu 9.0.1 (#20691)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-07-02 00:14:41 +08:00
wanyaoqi
d9bdde8fe0 fix(region,host): migrate converted servers (#20697) 2024-07-01 23:55:35 +08:00
屈轩
581a5e9e32 fix(region): security group rule create (#20696) 2024-07-01 11:31:43 +08:00
Jian Qiu
9492b740df feature: support baremetal profile (#20689)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-30 22:23:17 +08:00
屈轩
6366d35523 fix(region): support eip search (#20684) 2024-06-28 15:58:48 +08:00
屈轩
acba8d26ca fix(log): add rate log type (#20679) 2024-06-28 14:49:33 +08:00
wanyaoqi
721a6cf06d fix(region): convert to kvm overwirte networks (#20666) 2024-06-27 20:39:03 +08:00
wanyaoqi
10f71280e2 fix(region): login account allow startwith capital letter (#20669) 2024-06-27 20:38:20 +08:00
屈轩
2d16104a1c fix(region): vendor update for qcloud tencentos server (#20664) 2024-06-27 15:39:10 +08:00
wanyaoqi
fb37d022a8 feat(region): add batch convert precheck (#20658)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-06-26 21:20:00 +08:00
wanyaoqi
62659d3dd1 fix(host): delete snapshot on guest deleted (#20642) 2024-06-26 21:18:59 +08:00
Zexi Li
6ebbe83f05 fix(climc,webconsole): use OS_AUTH_TOKEN for cloud shell running inside compose environment (#20648) 2024-06-26 12:12:05 +08:00
屈轩
149348b87f fix(region): waf regexset fetch error (#20647) 2024-06-26 11:18:18 +08:00
Jian Qiu
9bd48628db fix: vmware probe host networks (#20627)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-26 11:00:06 +08:00
屈轩
60c03355d0 fix(region): vendor update for qcloud nat sync (#20639) 2024-06-25 15:56:45 +08:00
Zexi Li
a154a61a42 optimize(glance): wrap error of saving image (#20632) 2024-06-25 14:21:21 +08:00
wanyaoqi
f40c766991 fix(region): scheduler forecast before convert to kvm (#20608) 2024-06-25 11:02:24 +08:00
wanyaoqi
5ea9f040b8 fix(glance): sync service options after vmware detected (#20605) 2024-06-25 10:58:05 +08:00
wanyaoqi
11ee966fbc Fix/deploy reset password support loginaccount (#20594)
* fix(host): lvm resize add encrypt support

* fix(region): deploy reset password add loginaccount
2024-06-25 10:56:44 +08:00
屈轩
b14879faab fix(region): vendor update for qcloud nat capability (#20631) 2024-06-25 10:53:44 +08:00
屈轩
74492ab199 fix(region): natgateway api upgrade (#20624) 2024-06-24 14:59:51 +08:00
Zexi Li
0d8073389d fix(monitor): add difference tags for each series (#20620) 2024-06-22 22:06:09 +08:00
Zexi Li
c4970bb90d fix(apigateway): compose environment without k8s service (#20615) 2024-06-21 16:38:11 +08:00
Zexi Li
794047c67e feat(dhcprelay): add Dockerfile (#20614) 2024-06-21 13:56:27 +08:00
Zexi Li
4e6702e05d fix(logger): add rejected action i18n translation (#20599) 2024-06-20 15:00:59 +08:00
屈轩
5deef95a67 fix(region): auto rename when change resource owner with same name (#20593) 2024-06-20 14:04:54 +08:00
Jian Qiu
fa2a2bea18 fix: clone dashboard parameters (#20589)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-20 07:54:20 +08:00
wanyaoqi
1ded6bccd0 fix(region): allow kvm vmware reuse network address (#20584)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-06-20 06:27:58 +08:00
Zexi Li
7d75080c8e feat(monitor): add reducer of AlertRecordRule (#20580) 2024-06-19 19:19:53 +08:00
Zexi Li
e5c56d1bfd feat(log): add i18n consts for itsm service (#20574) 2024-06-19 15:34:59 +08:00
Jian Qiu
51de4f7059 fix: add predefined log policy (#20571)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-19 09:33:55 +08:00
Zexi Li
ac8ad4b494 fix(host-deployer): ignore fatal exit when host.conf not exists (#20559) 2024-06-18 20:26:59 +08:00
屈轩
47ea1c0ca7 fix(region): qcloud permission (#20555) 2024-06-17 14:25:05 +08:00
Jian Qiu
aacaf4e34f fix: cleanup compute options 20240615 (#20549)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-17 00:42:14 +08:00
wanyaoqi
9ec1d86a39 fix(region): convert to esxi fill network params (#20492)
Deploy converted guest after guest created
2024-06-17 00:41:24 +08:00
wanyaoqi
2ff45831c0 fix(region): insert iso sync guest status (#20535) 2024-06-16 22:59:45 +08:00
wanyaoqi
7d7ca5bdc4 fix(region,host): isolated device batch sync (#20536) 2024-06-14 19:39:45 +08:00
Jian Qiu
3cab927394 fix: enable image cache cleanup by default (#20532)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-14 18:14:01 +08:00
gouqi11
d0e76569b5 fix(notify): add mobile verify (#20521)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-06-13 18:59:45 +08:00
gouqi11
81e8a49790 fix(notify): fix mobile validate (#20511)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-06-11 14:18:07 +08:00
Zexi Li
a0c93e3803 fix(region): container is not started when pod's flavor changed (#20490) 2024-06-07 15:04:42 +08:00
wanyaoqi
8591c6c47b fix(host): parse qga command and args (#20507) 2024-06-07 15:03:52 +08:00
wanyaoqi
00ad01ba9b fix(host-deployer): extend volume before extend filesystem (#20502) 2024-06-06 13:37:16 +08:00
Jian Qiu
b134d33338 fix: disk backup details missing components (#20497)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-06 13:33:43 +08:00
Zexi Li
c94411a57f feat(region,baremetal,climc): support baremetal root disk matcher (#20474) 2024-06-05 00:17:02 +08:00
屈轩
b5e875bcd7 fix(region): update cachedimage limit (#20473) 2024-06-04 20:41:55 +08:00
屈轩
e8ce72acb1 fix(baremetal-agent): avoid dead lock (#20477) 2024-06-04 18:04:52 +08:00
屈轩
9e5ab20cf4 fix(keystone): show user group info for user (#20469) 2024-06-04 15:18:27 +08:00
Jian Qiu
656de3be55 fix: disable webconsole watermark by default (#20462)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-06-04 00:48:56 +08:00
屈轩
73103a93f3 fix(keystone): avoid sync remove disabled ldap user (#20438) 2024-06-04 00:48:15 +08:00
wanyaoqi
4e3feec902 fix(host-deployer): deploy telegraf systemd service type simple (#20458) 2024-06-03 19:51:21 +08:00
wanyaoqi
64a7e7c268 fix(host-deployer): split guest dns by comma (#20450) 2024-06-03 19:15:44 +08:00
屈轩
73c30aa8ae fix(keystone): enable user (#20455) 2024-06-03 18:07:04 +08:00
屈轩
5b4013114e fix(region): sync waf ssl and cc list (#20447) 2024-06-03 16:01:32 +08:00
Zexi Li
6bef36bcac feat(monitor): remove precision of float when using max or min function (#20431) 2024-06-01 20:41:05 +08:00
屈轩
19e064d887 fix(keystone): avoid panic (#20435) 2024-06-01 17:15:16 +08:00
wanyaoqi
d5eed29ac1 fix(region): storagecacheresource panic on FetchCustomizeColumns (#20427) 2024-05-31 17:53:51 +08:00
gouqi11
5de92baa9d fix(notify): message add medium tag (#20421)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-05-31 10:39:20 +08:00
Jian Qiu
12668a71cb fix: haproxy check parammeters with default value (#20417)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-31 10:20:19 +08:00
屈轩
526b3f55d1 fix(region): oracle storage should be emulated (#20414) 2024-05-30 20:40:21 +08:00
Jian Qiu
db48b7519b fix: glance import xz compressed images (#20409)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-30 19:17:27 +08:00
Zexi Li
03494857be fix: mv filterclause from pkg to onecloud (#20405)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-30 16:03:33 +08:00
wanyaoqi
ecad5735c5 fix(region,host): slvm default deactivate on hosts (#20381) 2024-05-30 15:03:48 +08:00
gouqi11
bbed855100 fix(notify): change receiver owner (#20399)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-05-30 11:47:07 +08:00
Zexi Li
55e04f3ba6 feat(climc): feature config (#20394) 2024-05-30 10:48:15 +08:00
屈轩
a7b5f47ac7 fix(region): vendor update for web app ip addr sync (#20393) 2024-05-29 18:36:54 +08:00
屈轩
8545faf413 fix(region): vendor update (#20390) 2024-05-29 17:56:13 +08:00
Zexi Li
8c9357ac99 fix(host): wrap disk probed error (#20386) 2024-05-29 17:44:11 +08:00
Zexi Li
ab9f65fed2 fix(monitor): detach alert (#20374) 2024-05-28 09:59:55 +08:00
Zexi Li
cb01f13b53 fix(monitor): multiple monitor resource alert (#20367) 2024-05-27 15:45:03 +08:00
Zexi Li
913169f7c4 fix(monitor): multiple monitor resource alert (#20364) 2024-05-27 15:44:14 +08:00
屈轩
c75c77e405 fix(region): vendor update for sqlchemy click decimal field (#20363) 2024-05-27 10:08:01 +08:00
Jian Qiu
6b53d47253 fix: allow update network server_type (#20355)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-24 20:21:39 +08:00
屈轩
ec11fc7b59 fix(region): distinct fields (#20358) 2024-05-24 20:18:57 +08:00
Jian Qiu
fb39f7c3a1 fix: secgroup init rule CIDR should be empty for both ipv4 and ipv6 (#20346)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-24 10:47:32 +08:00
屈轩
dabf9b4f49 fix(region): account read only (#20345) 2024-05-24 10:00:50 +08:00
屈轩
f5cf42a511 fix(region): vendor update for waf info sync (#20340) 2024-05-22 20:37:50 +08:00
屈轩
78a18320d1 fix(region): currency rate exchange (#20335) 2024-05-21 19:22:04 +08:00
屈轩
f91ceb84b1 fix(region): sync public ip convert eip (#20327) 2024-05-21 15:36:41 +08:00
屈轩
b0ff819b22 fix(region): vendor update for aliyun waf (#20331) 2024-05-21 15:19:24 +08:00
屈轩
dece32cbe8 fix(region): add currency rate exchange (#20321) 2024-05-20 14:51:30 +08:00
屈轩
a21dba1d17 fix(region): vendor update for qcloud waf (#20310) 2024-05-17 15:37:02 +08:00
屈轩
24ac759245 fix(region): webapp custom domains (#20304) 2024-05-16 16:16:19 +08:00
屈轩
b8b48b4d6e fix(region): query distinct fields (#20300) 2024-05-16 15:24:33 +08:00
屈轩
a9c166d8fd fix(region): set cloud provider disconnect when sync region error (#20291) 2024-05-16 10:01:43 +08:00
Jian Qiu
6546056fbf fix: hostbackupstorage climc subcmds (#20286)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-15 18:03:39 +08:00
屈轩
b65abfe76a fix(region): remove waf cache (#20283) 2024-05-15 17:35:14 +08:00
wanyaoqi
cafb619a9f fix(region,host): slvm misc fix (#20270) 2024-05-15 10:45:59 +08:00
屈轩
cdde2bafa1 fix(region): vendor update for web app (#20269) 2024-05-14 20:57:39 +08:00
屈轩
7f11f43f0f fix(region): azure web app (#20266) 2024-05-14 19:17:09 +08:00
wanyaoqi
422c3aeaba fix(region): return origin error on fetch joint item failed (#20252) 2024-05-13 17:51:21 +08:00
Jian Qiu
fb5da2667a fix: ceph stats backward compatible with ceph 12.x (#20221)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-10 14:55:10 +08:00
Jian Qiu
84b8111341 fix: storagecachedimages details speedup (#20232)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-10 14:54:00 +08:00
Jian Qiu
c432a59298 fix: cachedimage sync tenant_id (#20237)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-10 14:52:43 +08:00
屈轩
f7b227274b fix(region): zstack shared block storage (#20226) 2024-05-09 14:25:52 +08:00
Jian Qiu
b13b0725e1 feature: automatically clean obsolete images from host iamge cache (#20218)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-09 12:11:17 +08:00
gouqi11
641410bf35 fix(region): add modelarts capability (#20216)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-05-08 19:59:06 +08:00
屈轩
242b87f395 fix(region): vendor update for azure lb sync (#20213) 2024-05-08 19:18:00 +08:00
Zexi Li
7b376aa537 feat(host): skip calculating checksum for cached image when format is TGZ (#20198) 2024-05-08 12:21:17 +08:00
屈轩
da16872cfd fix(climc): oraclecloud feature (#20203) 2024-05-06 19:17:55 +08:00
Jian Qiu
98367e7f47 fix: set disk status when requesting disk reset (#20194)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-05-04 09:08:50 +08:00
屈轩
5366526d0e fix(region): add enable auto sync resource field (#20189) 2024-04-30 19:28:11 +08:00
屈轩
547680a6e2 fix(region): remove storagecachedimage (#20186) 2024-04-30 15:24:24 +08:00
Jian Qiu
fff5cd1a23 fix(hostman): change userdata.sh mode (#20183)
Co-authored-by: liaoxiaomeng <liaoxiaomeng@hotmail.com>
2024-04-30 12:44:09 +08:00
wanyaoqi
4765550813 fix(host): ignore disk not found on disk delete handler (#20175) 2024-04-30 07:13:34 +08:00
Zexi Li
a981235aed fix(monitor): multiple metrics query of alert (#20169) 2024-04-28 19:05:50 +08:00
屈轩
7996cce2e9 fix(region): update public cloud provider (#20166) 2024-04-28 18:28:12 +08:00
Zexi Li
a81ca98f1d feat(monitor): support multiple metrics alert (#20156) 2024-04-28 11:35:40 +08:00
wanyaoqi
b40122f9d3 Fix/host misc fix 0425 (#20152)
* fix(host): dirty guest dir move to recycle dir

* fix(host-deployer): fix deployer guest ssh port range, use localhost

* fix(host): try bind vfio dirver use addr
2024-04-28 11:18:38 +08:00
Zexi Li
3c977a1f4a fix(monitor): alert panic (#20147) 2024-04-26 12:19:01 +08:00
Zexi Li
e556efa8b0 fix(monitor): filter alerts by monitor_resource_id (#20135) 2024-04-25 17:06:52 +08:00
Zexi Li
795ebbd5e9 fix(monitor): query monitor_resource_alert by monitor_resource_id is not working (#20130) 2024-04-25 15:48:44 +08:00
屈轩
7ce25f00bd fix(region): allow update hostname (#20127) 2024-04-24 18:40:53 +08:00
屈轩
b49c22b749 fix(region): sync hostname (#20124) 2024-04-24 17:33:40 +08:00
屈轩
a21370c96a fix(mcclient): read me (#20117) 2024-04-24 12:22:08 +08:00
屈轩
3ffea07d31 fix(region):auto create project (#20104) 2024-04-22 19:26:57 +08:00
Jian Qiu
9b13891c13 fix: wrong private static route format (#20089)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-22 14:52:24 +08:00
Jian Qiu
dd4095630d fix: guest stop revisit (#20093)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-22 14:51:40 +08:00
屈轩
aa2c39202a fix(region): show more error info when sync nic error (#20099) 2024-04-22 14:37:32 +08:00
屈轩
ecba5d4546 fix(region): show ip out of range details error (#20083) 2024-04-19 18:30:26 +08:00
wanyaoqi
3eb713bffe fix(regin,host): delete snapshots after stream complete (#20084) 2024-04-19 18:27:09 +08:00
Jian Qiu
386fadb407 fix: backup storage access containd by hosts (#20063)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-19 07:20:33 +08:00
wanyaoqi
7674b9fafa fix(host): resize lvm disk (#20046) 2024-04-19 07:18:25 +08:00
屈轩
698cc2f99a fix(region): account disconnect (#20078) 2024-04-18 20:23:54 +08:00
屈轩
acfa5e3634 fix(cloudid): add volcengine sp metadata (#20075) 2024-04-18 18:02:50 +08:00
屈轩
b08bb79f0b fix(region): sync bucket status (#20071) 2024-04-18 15:49:59 +08:00
屈轩
081886c9c6 fix(region): avoid skip zone purge (#20066) 2024-04-18 15:39:25 +08:00
屈轩
733a684671 fix(region): vendor update for code generate (#20059) 2024-04-18 13:22:44 +08:00
屈轩
6336c5858f fix(cloudmon): oracle metric collect (#20056) 2024-04-18 11:33:02 +08:00
屈轩
c0822a43d6 fix(region): vendor update for oracle monitor (#20044) 2024-04-17 18:30:50 +08:00
屈轩
7a2c092548 fix(cloudmon): vendor update for support oracle metric (#20039) 2024-04-17 15:25:57 +08:00
Zexi Li
d8fe2ce5dd Merge pull request #20013 from wanyaoqi/fix/custom-pci-device
fix(region,host): custom device model add auto detect option
2024-04-17 10:27:36 +08:00
Zexi Li
6415beac2b Merge pull request #19994 from wanyaoqi/automated-cherry-pick-of-#19993-upstream-release-3.11
Automated cherry pick of #19993: fix(host): sriov bond
2024-04-17 10:26:51 +08:00
屈轩
a14b932208 fix(region): remove dirty code (#20034) 2024-04-17 10:11:28 +08:00
Zexi Li
b0351bc879 Merge pull request #19999 from wanyaoqi/fix/new-pci-device
feat(host): NewPciDevice add executor
2024-04-16 18:25:04 +08:00
Zexi Li
bb876962f6 Merge pull request #19992 from wanyaoqi/automated-cherry-pick-of-#19991-upstream-release-3.11
Automated cherry pick of #19991: feat(region,host): add disk migrate support
2024-04-16 18:22:37 +08:00
Zexi Li
5a580cbe54 Merge pull request #19998 from swordqiu/automated-cherry-pick-of-#19996-upstream-release-3.11
Automated cherry pick of #19996: fix: disk post create not inherit upper class
2024-04-16 18:20:43 +08:00
Zexi Li
86d4b45ea6 Merge pull request #20025 from wanyaoqi/fix/gpu-probe
fix(host): fix gpu device vendor check strategy
2024-04-16 18:18:00 +08:00
屈轩
3c5f09fdab fix(region): support delete huawei prepaid resource (#20031) 2024-04-16 18:08:15 +08:00
屈轩
53ae0e2f02 fix(region): avoid skip region purge (#20022) 2024-04-16 16:44:16 +08:00
屈轩
7be62a8e88 fix(region): skip not implement error (#20019) 2024-04-16 16:43:30 +08:00
Zexi Li
6c4532e581 Merge pull request #20008 from swordqiu/automated-cherry-pick-of-#20006-upstream-release-3.11
Automated cherry pick of #20006: fix: fail to create encrypted nfs disk
2024-04-16 16:00:43 +08:00
Zexi Li
5c42f663eb Merge pull request #19989 from swordqiu/automated-cherry-pick-of-#19987-upstream-release-3.11
Automated cherry pick of #19987: fix: userdata not executable due to umask
2024-04-16 15:57:26 +08:00
wanyaoqi
32e1d6cdd1 fix(host): fix gpu device vendor check strategy
Check gpu device vendor id on class code is DISPLAY.

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-04-16 15:50:55 +08:00
wanyaoqi
fec1c01cec fix(region,host): custom device model add auto detect option
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-04-16 12:31:16 +08:00
Qiu Jian
725d952f83 fix: fail to create encrypted nfs disk 2024-04-16 00:18:39 +08:00
wanyaoqi
c71e819280 feat(region,host): add disk migrate support 2024-04-15 22:24:01 +08:00
Qiu Jian
bedb0c0a6a fix: disk post create not inherit upper class 2024-04-15 21:47:04 +08:00
wanyaoqi
365de1be8b feat(host): NewPciDevice add executor 2024-04-15 21:45:04 +08:00
wanyaoqi
0ebd7370d1 fix(host): init from existing guest load cpuset 2024-04-15 18:54:44 +08:00
wanyaoqi
f7dc234099 fix(host): detect sriov bond nics 2024-04-15 18:54:43 +08:00
Qiu Jian
2338fd1e34 fix: userdata not executable due to umask 2024-04-15 17:23:50 +08:00
屈轩
66b58af9bc fix(region): simplfy cached-image-list filter (#19986) 2024-04-15 15:50:16 +08:00
屈轩
027f5749fa fix(region): allow not idle account sync (#19982) 2024-04-15 14:10:39 +08:00
Jian Qiu
b7ddcc7ba4 fix: bond interface missing default gateway (#19954)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-15 10:37:23 +08:00
屈轩
42428ecd60 fix(image): set image upload download timeout 4 hour (#19978) 2024-04-15 10:13:57 +08:00
屈轩
72ece6d698 fix(region): sync ksyun tag (#19974) 2024-04-14 13:02:11 +08:00
屈轩
2258c9e15f fix(region): vendor update for vpc not found error (#19970) 2024-04-12 20:52:33 +08:00
屈轩
d5ac3657e8 fix(region): vendor update 0412 (#19963) 2024-04-12 18:26:17 +08:00
屈轩
bb3f183872 fix(region): support ksyun tag sync (#19957) 2024-04-12 12:05:29 +08:00
Jian Qiu
75fd08aef0 fix: netplan empty bond address (#19940)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-11 18:10:40 +08:00
屈轩
9963ef5684 fix(region): vendor update (#19948) 2024-04-11 15:06:53 +08:00
屈轩
eaed04d940 fix(region): avoid purge zone (#19938) 2024-04-11 13:58:00 +08:00
Zexi Li
aeab217763 Merge pull request #19934 from zexi/automated-cherry-pick-of-#19932-upstream-release-3.11
Automated cherry pick of #19932: feat(region,climc): support disk-rebuild
2024-04-11 12:09:04 +08:00
Zexi Li
141b03667b Merge pull request #19898 from swordqiu/hotfix/qj-unique-host-nic-index
fix: host nic index should be unique
2024-04-11 11:37:37 +08:00
Zexi Li
9e5b1a681c Merge pull request #19929 from swordqiu/automated-cherry-pick-of-#19928-upstream-release-3.11
Automated cherry pick of #19928: fix: disable disk serial for esxi vm on release/3.10
2024-04-11 11:35:06 +08:00
Zexi Li
5664981943 feat(region,climc): support disk-rebuild 2024-04-11 11:17:06 +08:00
Qiu Jian
121e048a26 fix: disable disk serial for esxi vm on release/3.10 2024-04-11 01:18:31 +08:00
屈轩
c3e5304a6b fix(region): avoid purge regions (#19924) 2024-04-10 17:06:15 +08:00
Qiu Jian
8159a6d86c fix: host nic index should be unique 2024-04-10 01:33:02 +08:00
gouqi11
2de0bf27f5 update vendor (#19917)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-04-09 19:47:34 +08:00
屈轩
9e9a45d986 fix(region): clean external cachedimage (#19912) 2024-04-09 17:26:17 +08:00
gouqi11
cc475e663c update vendor:ksyun ecs (#19905)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-04-09 11:51:53 +08:00
屈轩
832c5ada8d fix(region): show local task stack info (#19902) 2024-04-09 11:51:03 +08:00
屈轩
a6f1402b94 fix(monitor): remove useless code (#19897) 2024-04-08 11:54:08 +08:00
wanyaoqi
cbada729be feat: lvm snapshots (#19844)
* fix(region,host): remove snapshot fake delete state

* feat(region,host): lvm snapshot support
2024-04-08 02:55:31 +08:00
Jian Qiu
a764ddedfa fix: fail to detect lv by megacli64 and storecli (#19880)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-08 00:26:55 +08:00
屈轩
f935d2a62d fix(region): remove qcloud sync cache (#19891) 2024-04-07 16:45:10 +08:00
屈轩
4dd874e0be fix(glance): image upload timeout (#19889) 2024-04-07 15:29:46 +08:00
屈轩
beeae3c163 fix(region): return error for query guest network (#19886) 2024-04-07 14:16:23 +08:00
屈轩
9eae3cf564 fix(region): add cloud account sync batch size options (#19877) 2024-04-03 14:39:04 +08:00
屈轩
f2f78a10ed fix(region): prepare regions by prefix (#19873) 2024-04-03 10:15:15 +08:00
屈轩
164ea30840 fix(region): total count rds by zone id (#19867) 2024-04-02 20:32:57 +08:00
屈轩
036aca1569 fix(region): vendor update for region sync (#19864) 2024-04-02 20:16:30 +08:00
屈轩
0b82fcf60d fix(cloudid): vendor update for ksyun iam (#19862) 2024-04-02 20:03:47 +08:00
gouqi11
9ec9f3e14f fix(notify): clean notificationGroup after send (#19859)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-04-02 18:40:17 +08:00
屈轩
4f43e6d121 fix(cloudid): vendor update form volcengine iam (#19856) 2024-04-02 14:39:18 +08:00
Zexi Li
f57e69e6b3 Merge pull request #19851 from swordqiu/automated-cherry-pick-of-#19850-upstream-release-3.11
Automated cherry pick of #19850: fix: idp list query filter by sso_domain
2024-04-02 10:36:04 +08:00
Qiu Jian
0f0fd934e7 fix: idp list query filter by sso_domain 2024-04-02 01:30:25 +08:00
Jian Qiu
b065b2b77d fix: trigger project sync by informer (#19837)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-04-02 00:23:52 +08:00
屈轩
e27dbf1266 fix(cloudid): vendor update (#19847) 2024-04-01 11:39:28 +08:00
屈轩
501f0c9393 fix(cloudid): model reflection (#19845) 2024-04-01 11:09:02 +08:00
Zexi Li
7b78f77b99 Merge pull request #19838 from wanyaoqi/fix/mkfs-ext4-resizefs
fix(host-deployer): add ext4 usage type options
2024-04-01 10:14:22 +08:00
屈轩
a220222d17 fix(region): billing resource check (#19841) 2024-04-01 10:06:19 +08:00
wanyaoqi
8508b8551a fix(host-deployer): add ext4 usage type options
resize fs not required find rootfs.
format ext4 partitions select usage type by part size.

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-03-31 12:33:20 +08:00
Zexi Li
895e46256b Merge pull request #19831 from wanyaoqi/automated-cherry-pick-of-#19830-upstream-release-3.11
Automated cherry pick of #19830: fix(host-deployer): deploy guest arm kernel path fix
2024-03-29 16:15:09 +08:00
wanyaoqi
7d0bcfbea2 fix(host-deployer): deploy guest arm kernel path fix 2024-03-29 16:11:15 +08:00
屈轩
ade927c9dd fix(region): vendor update (#19827) 2024-03-29 10:38:01 +08:00
屈轩
ffac25beb0 fix(region): cloudpods region sync (#19821) 2024-03-28 15:33:42 +08:00
Zexi Li
2e78621401 Merge pull request #19810 from wanyaoqi/automated-cherry-pick-of-#19803-upstream-release-3.11
Automated cherry pick of #19803: fix(host): delete lvm disk active first
2024-03-27 20:23:24 +08:00
屈轩
efbcaf5532 fix(region): avoid panic (#19816) 2024-03-27 15:05:18 +08:00
wanyaoqi
d440a57f6e fix(host): resize slvm disk 2024-03-26 22:50:46 +08:00
wanyaoqi
5841593a55 fix(host): delete lvm disk active first 2024-03-26 22:50:46 +08:00
Jian Qiu
e918d6d0f1 fix: host-type-count sql error (#19802)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-26 18:57:40 +08:00
屈轩
6f73da08b7 fix(climc): remove useless code (#19799) 2024-03-26 17:04:09 +08:00
gouqi11
9e10ad4e21 feat(excelutils): support read file data (#19795)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-03-26 14:53:56 +08:00
Jian Qiu
d690f923ed fix: create lb listener rules fail due to domain not found (#19786)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-26 09:49:56 +08:00
wanyaoqi
87e5add5e8 fix(ansibleserver): update file repo (#19773) 2024-03-26 09:48:27 +08:00
Jian Qiu
ff1ea0f7ef fix: server skus ignore seting SetModelManager (#19778)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-26 09:47:42 +08:00
Jian Qiu
719fd389e3 fix: fail to parse ipv6 addr of fc00::1:1004:ffff:ffff:ffff:ffff (#19782)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-26 09:46:35 +08:00
屈轩
85dac7d7cd fix(region): filter cloudprovider by zone (#19789) 2024-03-25 19:23:19 +08:00
屈轩
85416d828d fix(vpcagent): signal killed (#19762) 2024-03-22 09:37:29 +08:00
屈轩
059d3273b2 fix(vpcagent): prevent the security group deletion rule from taking effect (#19759) 2024-03-21 20:39:18 +08:00
屈轩
bf417ce9f0 fix(notify): simplify receiver api (#19765) 2024-03-21 20:07:39 +08:00
屈轩
def5478dda fix(region): allow delete aliyun prepaid vm (#19768) 2024-03-21 20:07:17 +08:00
Zexi Li
0bc7f8f80a Merge pull request #19730 from wanyaoqi/fix/lvm-storage-cache
fix(region,host): lvm storage misc fix
2024-03-21 19:53:21 +08:00
屈轩
8b7ab5cff2 fix(region): skip set lost name when purge deleted vm (#19753) 2024-03-20 18:20:09 +08:00
Zexi Li
8685f3b17b Merge pull request #19750 from zexi/extra-hook
feat(cloudcommon): support extra hook for db model
2024-03-20 15:04:23 +08:00
Zexi Li
a976931ea5 feat(cloudcommon): support extra hook for db model 2024-03-20 11:43:35 +08:00
屈轩
68eeb1ba12 fix(region): esxi vm desc sync (#19747) 2024-03-19 15:49:34 +08:00
屈轩
3eed5b59c4 fix(region): support create vmware vm with desc (#19740) 2024-03-18 09:47:18 +08:00
屈轩
10e7e8cf22 fix(region): sync max priority project tag (#19737) 2024-03-15 19:10:34 +08:00
wanyaoqi
68c47b4ee9 fix(region,host): lvm storage misc fix
- add some lvm storage create check
- fix slvm storage image cache not correct

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-03-14 22:12:20 +08:00
wanyaoqi
ce876e9ab2 fix(region): check normal type nic is null (#19728) 2024-03-14 17:57:27 +08:00
屈轩
dd580c9af1 fix(esxi-agent): create vmware vm with suitable version (#19726) 2024-03-14 15:54:17 +08:00
Zexi Li
87c8461960 Merge pull request #19724 from ioito/automated-cherry-pick-of-#19723-upstream-release-3.11
Automated cherry pick of #19723: fix(region): avoid duplicate zone name
2024-03-13 20:12:09 +08:00
Zexi Li
bc478687a9 Merge pull request #19711 from wanyaoqi/fix/misc-fix-240312
fix(host): gpu probe check vendor is amd or nvidia
2024-03-13 20:05:53 +08:00
Zexi Li
84174f58f0 Merge pull request #19715 from swordqiu/automated-cherry-pick-of-#19714-upstream-release-3.11
Automated cherry pick of #19714: fix: tag filter with no value revisit
2024-03-13 20:04:55 +08:00
屈轩
e4ab58f7eb fix(region): filter disks by guest status (#19721) 2024-03-13 19:10:54 +08:00
Qu Xuan
41db55345b fix(region): avoid duplicate zone name 2024-03-13 19:08:14 +08:00
屈轩
ebf5e3cf90 fix(region): avoid panic when network is nil (#19718) 2024-03-13 11:58:50 +08:00
Qiu Jian
9c303a1795 fix: tag filter with no value revisit 2024-03-12 21:45:28 +08:00
wanyaoqi
70fb9a76b2 fix(host): gpu probe check vendor is amd or nvidia 2024-03-12 19:36:46 +08:00
屈轩
25a2f3a3ed fix(webconsole): sftp download utf8 filename (#19709) 2024-03-12 18:29:06 +08:00
Jian Qiu
299846783d fix: host-deploy options struct consistent with host options (#19695)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-12 13:35:40 +08:00
Zexi Li
5cf7946b33 Merge pull request #19689 from swordqiu/automated-cherry-pick-of-#19688-upstream-release-3.11
Automated cherry pick of #19688: fix: make authManager a singleton
2024-03-12 10:46:44 +08:00
屈轩
153ea3a1d2 fix(region): ipv6 cidr sync for network (#19703) 2024-03-11 17:52:28 +08:00
屈轩
47baaf6297 fix(region): avoid update network dns panic (#19698) 2024-03-11 10:57:49 +08:00
屈轩
69202744a2 fix(webconsole): show link file info (#19692) 2024-03-11 09:43:48 +08:00
Qiu Jian
b4039038a4 fix: make authManager a singleton 2024-03-10 10:09:14 +08:00
Jian Qiu
54925e8de4 fix: webconsole command log empty opstime (#19683)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-10 07:24:34 +08:00
Jian Qiu
31b3432189 fix: vpcagent always do full sync, disable incremental sync (#19629)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-10 07:23:25 +08:00
wanyaoqi
5bc8219e56 fix(host): qga set network flush ipv4 address (#19671) 2024-03-10 07:22:17 +08:00
Jian Qiu
69ec88a05f fix: network address details compatible with dameng (#19687)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-10 07:21:45 +08:00
Jian Qiu
be449a610a fix: support db checksum algorithm of SHA256 (#19681)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-09 14:57:47 +08:00
屈轩
d4d8028dea fix(region): vendor update for qcloud nat sync (#19677) 2024-03-08 18:13:43 +08:00
屈轩
0504084f25 fix(webconsole): sftp return file mode info (#19675) 2024-03-08 13:43:45 +08:00
Zexi Li
9d0380c5de Merge pull request #19669 from swordqiu/automated-cherry-pick-of-#19668-upstream-release-3.11
Automated cherry pick of #19668: fix: always add static routes for default nic master
2024-03-07 10:05:50 +08:00
Qiu Jian
6b26413077 fix: always add static routes for default nic 2024-03-06 19:54:21 +08:00
屈轩
7156c24d68 fix(scheduler): skip network exit check (#19665) 2024-03-06 19:10:43 +08:00
屈轩
70f666d262 fix(region): vendor update for sync azure network cidr (#19662) 2024-03-06 18:08:23 +08:00
屈轩
87c001b0b8 fix(region): exit no longer affects managed network (#19659) 2024-03-06 16:59:57 +08:00
屈轩
3b8acbc2e2 fix(webconsole): file mode (#19657) 2024-03-06 13:21:20 +08:00
Jian Qiu
c180066c95 fix: network ip match recode to fix dameng INET_ATON support (#19655)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-06 03:08:10 +08:00
Jian Qiu
73c3683529 fix: donot use insertOrUpdate for create joint resources (#19651)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-06 02:23:54 +08:00
wanyaoqi
0fbd11fa07 fix(host-deployer): support deploy encrypted disk (#19639) 2024-03-06 02:22:39 +08:00
wanyaoqi
8d5c516540 fix(host): backup guest dirty shutdown (#19621)
backup guest dirty shutdown master request sync status,
slave request dirty start.
2024-03-06 02:22:09 +08:00
wanyaoqi
7c6616d1dc feat(region,host): support shared driver by lvmlockd (#19611) 2024-03-06 02:10:23 +08:00
屈轩
d3017e5ca3 fix(region): dissociate eip when vm deleted (#19647) 2024-03-05 18:35:51 +08:00
屈轩
89307a4ae9 fix(region): sync account project (#19644) 2024-03-05 17:18:20 +08:00
屈轩
2818e47d90 fix(region): compatible with v3.9 vm cdrom (#19637) 2024-03-05 15:56:56 +08:00
屈轩
55d966bca9 fix(cloudmon): support ctyun vm metric (#19635) 2024-03-05 11:58:50 +08:00
Zexi Li
ed2dd1f548 Merge pull request #19632 from swordqiu/automated-cherry-pick-of-#19631-upstream-release-3.11
Automated cherry pick of #19631: fix: tokenCache newInformer fail
2024-03-05 10:29:50 +08:00
Qiu Jian
23ab9b6cd6 fix: tokenCache newInformer fail 2024-03-05 00:30:19 +08:00
屈轩
7cf03d7a7e fix(region): vendor update for azure associate type (#19625) 2024-03-04 20:09:18 +08:00
Jian Qiu
6e820b1945 Automated cherry pick of #19609: Hotfix/qj organization node label contains separator2 (#19610)
* fix: organization node label contains separator, round 2

* fix: hidden parent org nodes

---------

Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-04 18:14:39 +08:00
屈轩
7467c6de6a fix(region): 未开启三级权限允许云账号更改项目 (#19613) 2024-03-04 13:14:22 +08:00
Jian Qiu
e79a81eb0a update vendor 20240303 (#19607)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-03-03 11:47:02 +08:00
gouqi11
d522db3f8c fix(influxdb): support set timeout (#19600)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-03-03 10:47:39 +08:00
屈轩
5ab009f7e9 fix(region): raw query with delete-all options (#19604) 2024-03-01 19:36:36 +08:00
屈轩
a35243f26c fix(region): avoid sync huawei lb backend panic (#19590) 2024-03-01 10:41:34 +08:00
屈轩
ed67e20b04 fix(region): ctyun api page size must le 50 (#19585) 2024-02-29 18:20:41 +08:00
屈轩
147af900c6 fix(region): add secgroup filter for rds and redis (#19583) 2024-02-29 17:02:02 +08:00
Jian Qiu
cf4e1fd15d fix: handle label separator in organization tag value (#19574)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-29 16:37:53 +08:00
Jian Qiu
45c399066f feature: dameng database support (#19571)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-29 16:37:30 +08:00
屈轩
cb77c0e21f fix(region): skip sync apsara expired time (#19580) 2024-02-29 16:08:14 +08:00
屈轩
b8db3e5f09 fix(keystone): domain-list with delete-all options (#19577) 2024-02-29 16:06:15 +08:00
屈轩
6581ab2202 fix(region): support huawei public nat (#19575) 2024-02-29 14:44:43 +08:00
屈轩
2fa97cd09a fix(notify): add capability for notify config (#19569) 2024-02-28 17:51:37 +08:00
屈轩
cd47b45f57 fix(region): remove useless code (#19567) 2024-02-28 16:49:48 +08:00
屈轩
8888107741 fix(keystone): optimized domain-list query (#19556) 2024-02-28 14:45:24 +08:00
wanyaoqi
6282060ab2 Fix/create from iso set os distro (#19547)
* fix(region): iso guest copy image props to metadata

* fix(region): always run host ping detect task
2024-02-28 14:16:28 +08:00
wanyaoqi
103ec2220e Fix/guest image live migrate (#19558)
* fix(host): slvm storage active on init

* fix(region): guest live migrate cache all of guestimage caches
2024-02-28 11:31:38 +08:00
Zexi Li
926b389f4e Merge pull request #19563 from zexi/automated-cherry-pick-of-#19561-upstream-release-3.11
Automated cherry pick of #19561: fix(scheduler): unsued key
2024-02-28 11:00:15 +08:00
Zexi Li
7cbff93e0d fix(scheduler): unsued key 2024-02-28 10:26:50 +08:00
gouqi11
52b08e6e3e fix(monitor): add target for suggestRuleListInput (#19554)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-02-26 20:18:50 +08:00
wanyaoqi
629c9982ab fix(region): update rescuing status to rescue (#19543) 2024-02-24 07:53:56 +08:00
wanyaoqi
e62b5c1fc2 feat(host): disable guest hpet timer by default (#19535)
The HPET was turned off by default purely because of issues with time
drifting on Windows guests. (See nova commit ba3fd16605.)
2024-02-24 07:53:28 +08:00
wanyaoqi
4513e4beb6 fix(host): load guest desc hpet and video1 dev (#19531) 2024-02-24 07:51:58 +08:00
Jian Qiu
9228a973a8 fix: support OpenCloudOS, OpenKylin, Alma, UOSDesktop (#19528)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-24 07:50:26 +08:00
屈轩
abe226008a fix(region): support secgroup ipv6 (#19542) 2024-02-23 16:57:07 +08:00
屈轩
341fe8d5a5 fix(keystone): support filter project by multi admin user (#19540) 2024-02-23 15:25:04 +08:00
屈轩
3a357b343d fix(keystone): support unset project admin user (#19538) 2024-02-23 15:08:20 +08:00
gouqi11
6186e73608 fix(util): fix excelutils set emptu cell (#19525)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-02-22 19:55:30 +08:00
屈轩
5cab69547a fix(region): sync lb secgroup (#19523) 2024-02-22 18:14:09 +08:00
屈轩
bac856527d fix(region): sync by external project with enable project sync (#19520) 2024-02-22 18:13:40 +08:00
屈轩
98a8d28e09 fix(region): refactor lb acl and cert (#19518) 2024-02-21 19:55:04 +08:00
屈轩
1c94dac7b6 fix(region): sync empty security groups (#19516) 2024-02-21 16:27:03 +08:00
屈轩
e2149d01b6 fix(region): vendor update for qcloud nat status (#19513) 2024-02-20 16:00:07 +08:00
屈轩
c51150e756 fix(region): sync regional secgrouop (#19511) 2024-02-20 15:43:47 +08:00
Jian Qiu
ca7621cfb0 fix: filter organization nodes by policy tags (#19507)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-20 09:53:19 +08:00
Jian Qiu
8321100c51 fix: policy update description panic (#19509)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-20 09:28:38 +08:00
wanyaoqi
af3daeafb1 fix(host): script start guest donot force restart on monitor timeout (#19504) 2024-02-19 20:52:27 +08:00
屈轩
b240047cce fix(cloudproxy): cloudproxy service auth first (#19501) 2024-02-19 12:08:28 +08:00
wanyaoqi
092eaf6870 feat(region,host): guest numa allocate (#19496) 2024-02-18 19:35:13 +08:00
Jian Qiu
85efe57b22 fix: create params with require_ipv6 (#19492)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-18 10:35:14 +08:00
屈轩
797f2cc6d9 fix(region): vendor update for openstack https support (#19494) 2024-02-18 10:22:39 +08:00
Jian Qiu
dffd27e2bc fix: invalid token request too frequent (#19488)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-17 19:00:12 +08:00
Jian Qiu
579cba8b6f fix: organization sync panic on nil pointer of weight (#19486)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-12 21:08:47 +08:00
Jian Qiu
bbf5c4afb3 fix: project tag tree sql revise (#19485)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-11 10:47:30 +08:00
Jian Qiu
d0304058b2 fix: IModelManager add NewQuery to initialize query with params (#19482)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-11 00:26:16 +08:00
Jian Qiu
97fc5258df fix: sync error (#19483)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-10 18:00:28 +08:00
Jian Qiu
0f2e11591f fix: avaialble address6 api timeout (#19480)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-10 16:30:29 +08:00
wanyaoqi
5bef00a3a8 fix(region,host): rescue mode update initramfs, vnc login no passwd (#19477) 2024-02-09 09:23:00 +08:00
wanyaoqi
38834f3b1f fix(host-deployer): elfherader fd leak (#19475) 2024-02-08 14:11:24 +08:00
屈轩
52404a26d9 fix(region): avoid panic when change-owner missing domain_id (#19472) 2024-02-08 10:51:26 +08:00
屈轩
31bade24e7 fix(region): add read only filter for account and provider (#19469) 2024-02-07 15:33:03 +08:00
Jian Qiu
f6a9b77698 fix: project tag value tree can return sum of any field (#19465)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-07 11:52:03 +08:00
屈轩
85b6ad8a34 fix(region): trim tag space (#19467) 2024-02-07 11:04:29 +08:00
wanyaoqi
2069906d7b fix(host-deployer): xfs unlock panic (#19458) 2024-02-06 00:32:29 +08:00
Jian Qiu
eef9e48e02 feature: allow manager to preapre query context (#19455)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-06 00:01:26 +08:00
屈轩
1bd5f73365 fix(region): qcloud disks delete when vm deleted (#19453) 2024-02-05 17:54:51 +08:00
屈轩
70c280af77 fix(climc): support set bill report for azure account (#19450) 2024-02-05 15:14:17 +08:00
屈轩
08f92a8d89 fix(region): cloudpods ipv6 sync (#19445) 2024-02-05 11:24:10 +08:00
屈轩
0c4b30335b fix(region): cloudpods deploy api (#19447) 2024-02-05 11:23:45 +08:00
Jian Qiu
f3f9fa9886 fix: tenant cache sync deleted projects (#19441)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-05 08:45:10 +08:00
屈轩
bf320a5b32 fix(region): support set network tags (#19439) 2024-02-04 18:05:15 +08:00
屈轩
c5dcc6fa1d fix(region): avoid informer panic (#19431) 2024-02-04 16:29:00 +08:00
屈轩
317b8b7a3b fix(region): avoid filesystem sync error (#19436) 2024-02-04 15:19:15 +08:00
屈轩
1456f31d45 fix(region): auto set provider project id when change account project info (#19433) 2024-02-04 11:49:59 +08:00
gouqi11
b2de0282f6 fix(scheduledtask): fix deletedResource task (#19428)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-02-04 10:42:53 +08:00
屈轩
9efb34f7c7 fix(webconsole): sort file list (#19409) 2024-02-03 23:28:40 +08:00
Jian Qiu
b03650d97f fix: fail to reset policy org_node_id to empty (#19426)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-03 23:19:53 +08:00
屈轩
31f6a4026d fix(region): auto create project by project mapping (#19407) 2024-02-02 17:37:00 +08:00
屈轩
74932360b5 fix(region): ipv6 free ip (#19418) 2024-02-02 17:15:18 +08:00
屈轩
629ca22509 fix(region): support public ipv6 addr sync (#19420) 2024-02-02 17:14:21 +08:00
Zexi Li
1e5d988346 Merge pull request #19422 from wanyaoqi/automated-cherry-pick-of-#19421-upstream-release-3.11
Automated cherry pick of #19421: fix(host): init from guest mem obj miss size
2024-02-02 16:53:39 +08:00
wanyaoqi
7662f88edc fix(host): init from guest mem obj miss size 2024-02-02 16:43:14 +08:00
Jian Qiu
a4758fbd15 fix: expand policy tags with org node tags (#19416)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-02 14:10:53 +08:00
gouqi11
c7d6b053e5 fix(commom): setStatus with notify hook (#19412)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-02-01 20:44:44 +08:00
屈轩
59dcb4260d fix(region): ipv6 filter (#19411) 2024-02-01 18:52:48 +08:00
屈轩
483a97e6ad fix(keystone): optimized user list (#19404) 2024-02-01 16:43:12 +08:00
Jian Qiu
9e61ae2c63 fix: allow binding organization ids to policy (#19399)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-01 10:58:50 +08:00
屈轩
d6925ac5a9 fix(webconsole): support host ssh (#19387) 2024-02-01 10:58:19 +08:00
Jian Qiu
84f88b705b fix: sync unknown guest status when host ping (#19384)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-02-01 10:57:41 +08:00
屈轩
d3ec086f9c fix(common): auto disable 3des cipher suites (#19392) 2024-02-01 10:57:03 +08:00
屈轩
6d3551745b fix(region): avoid panic (#19402) 2024-02-01 10:12:01 +08:00
屈轩
f56e34ce77 fix(region): vendor update for sync ipv6 (#19398) 2024-01-31 20:57:32 +08:00
屈轩
5d55f60453 fix(region): cloudpods esxi disk create (#19390) 2024-01-31 17:30:32 +08:00
屈轩
681a43d160 fix(region): support managed ipv6 (#19395) 2024-01-31 17:29:55 +08:00
屈轩
0dbaba06d4 fix(region): project mapping key match at end of list (#19381) 2024-01-31 15:05:29 +08:00
Jian Qiu
c7c6477798 fix: vmware change config with cpu sockets (#19375)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-31 15:04:47 +08:00
Zexi Li
cd45fd7e6b fix(baremetal): admin nic is reset when added secondly (#19377) 2024-01-30 16:17:56 +08:00
屈轩
afbd0f922f fix(region): cancel pending delete (#19373) 2024-01-30 14:12:45 +08:00
Zexi Li
5c61e4c46c Merge pull request #19369 from swordqiu/automated-cherry-pick-of-#19368-upstream-release-3.11
Automated cherry pick of #19368: fix: server change ip addr recode
2024-01-30 10:23:53 +08:00
屈轩
de25515eb0 fix(region): vendor update for optimized aliyun rds backup sync (#19371) 2024-01-29 18:07:45 +08:00
Qiu Jian
0464bf5239 fix: server change ip addr recode 2024-01-29 17:10:52 +08:00
屈轩
9eec520567 fix(webconsole): use common options (#19330) 2024-01-29 11:29:29 +08:00
Zexi Li
56869281c4 Merge pull request #19364 from swordqiu/automated-cherry-pick-of-#19363-upstream-release-3.11
Automated cherry pick of #19363: fix: validate policy violation when assign users for oidc IDP
2024-01-28 21:58:50 +08:00
Qiu Jian
78123d0335 fix: validate policy violation when assign users for oidc IDP 2024-01-27 18:17:23 +08:00
Zexi Li
9442b445d0 fix(apigateway): ignore empty rows when registering baremetal host (#19354) 2024-01-27 18:16:42 +08:00
Zexi Li
08fdf688d4 fix(climc): wire is required when using network-create (#19360) 2024-01-27 18:05:21 +08:00
wanyaoqi
775d70be15 fix(host-deployer): escape back quote (#19356) 2024-01-27 08:09:59 +08:00
Zexi Li
ab29fa4c70 Merge pull request #19339 from swordqiu/automated-cherry-pick-of-#19338-upstream-release-3.11
Automated cherry pick of #19338: fix: not resolve local domain with dns records
2024-01-26 16:05:18 +08:00
Zexi Li
21876d631c Merge pull request #19347 from wanyaoqi/fix/host-deployer-disconnect
fix(host-deployer): check sshclient is nil on disconnect
2024-01-26 16:04:02 +08:00
wanyaoqi
ed2a412ed2 fix(host-deployer): check sshclient is nil on disconnect 2024-01-26 12:08:33 +08:00
屈轩
9c2dd4b0ea fix(region): sync resource owner with auto-create-project options (#19320) 2024-01-26 11:14:22 +08:00
Zexi Li
a605f69560 Merge pull request #19344 from zexi/automated-cherry-pick-of-#19342-upstream-release-3.11
Automated cherry pick of #19342: optimized(scheduler): remove fillResidentTenants function loading data from db
2024-01-25 17:10:57 +08:00
Zexi Li
c8aed17eb2 optimized(scheduler): remove fillResidentTenants function loading data from db 2024-01-25 17:07:05 +08:00
Zexi Li
6a708c2c6a Merge pull request #19335 from zexi/automated-cherry-pick-of-#19334-upstream-release-3.11
Automated cherry pick of #19334: fix(baremetal): hardcode h3c ipmi lan channel to 1
2024-01-25 15:49:51 +08:00
Qiu Jian
fb91b1e3eb fix: not resolve local domain with dns records 2024-01-25 15:40:08 +08:00
Jian Qiu
45ee4b1b89 fix: ipv6 secgroup support (#19337)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-25 13:25:42 +08:00
Zexi Li
22e7a3383a fix(baremetal): hardcode h3c ipmi lan channel to 1 2024-01-25 11:54:02 +08:00
屈轩
fdf0c40119 fix(region): gcp secrule update (#19324) 2024-01-24 17:17:01 +08:00
屈轩
af4c02c0f1 fix(climc): optimized storagecache cmd (#19322) 2024-01-24 15:03:26 +08:00
Zexi Li
e18ad59800 Merge pull request #19316 from zexi/automated-cherry-pick-of-#19314-upstream-release-3.11
Automated cherry pick of #19314: fix(build): use telegraf-raid-plugin:release-1.6.5
2024-01-22 16:59:30 +08:00
Zexi Li
3ad45a3cf9 fix(build): use telegraf-raid-plugin:release-1.6.5 2024-01-22 16:50:36 +08:00
Jian Qiu
6f22beca3c fix(region): server change config input recode (#19300)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-22 11:33:09 +08:00
屈轩
826532c5f9 fix(region): avoid panic (#19311) 2024-01-19 19:31:15 +08:00
屈轩
dc8c06a037 fix(region): auto encrypt options password (#19308) 2024-01-19 19:19:47 +08:00
屈轩
c0909bdd53 fix(region): vendor update for aws image import (#19306) 2024-01-19 16:14:39 +08:00
屈轩
0cafaf7445 fix(region): eip sync with project (#19302) 2024-01-19 14:04:19 +08:00
gouqi11
c132ae0cd6 feat(region): support notify for guest_status changed (#19298)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-19 10:24:18 +08:00
gouqi11
bf6a035b53 feat(notify): SupportReceiverGetContactTypeByRoleId (#19296)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-19 10:14:35 +08:00
屈轩
4187111862 fix(region): huawe redis spec code update (#19294) 2024-01-18 18:23:06 +08:00
屈轩
d01474470c fix(region): check kvm vpc and security group relation (#19292) 2024-01-18 14:34:56 +08:00
屈轩
36254142a9 fix(region): huawei bucket create with usable regions (#19290) 2024-01-18 11:19:38 +08:00
gouqi11
15425550ef fix(region): add public_cloud_provider list (#19287)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-18 10:48:55 +08:00
Jian Qiu
cc1a5bcd2c fix: windows ipv6 support (#19280)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-17 19:47:34 +08:00
屈轩
e2e357f89c fix(climc): add bill report for volc account (#19284) 2024-01-17 14:51:16 +08:00
Jian Qiu
a42ce1792e fix: try resolve tenant by project id first (#19277)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-17 00:28:30 +08:00
Jian Qiu
8c50a52fe0 fix: automatically refresh invalid admin token (#19273)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-17 00:27:57 +08:00
Jian Qiu
72cd6e3e32 fix: dhcpv6 support in vpc network (#19271)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-17 00:27:36 +08:00
屈轩
c58a3fd48a fix(region): vendor update for pve vm sync (#19266) 2024-01-16 15:34:48 +08:00
屈轩
c1606f751d fix(region): esxi vm create with tags (#19263) 2024-01-16 14:25:54 +08:00
屈轩
8bea62e5b9 fix(region): dns record update with enabled params (#19261) 2024-01-15 19:47:24 +08:00
gouqi11
4b2509d72b feat(notify): support project notify (#19259)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-15 19:35:07 +08:00
Zexi Li
e5829292e9 Merge pull request #19258 from ioito/automated-cherry-pick-of-#19257-upstream-release-3.11
Automated cherry pick of #19257: fix(region): vendor update for aliyun security group rule create
2024-01-15 19:21:56 +08:00
ioito
e8f3e390ba fix(region): vendor update for aliyun security group rule create 2024-01-15 19:12:14 +08:00
屈轩
cef7656187 fix(region): avoid duplicate cachedimage insert (#19255) 2024-01-15 18:30:44 +08:00
Jian Qiu
3c6da1faac Automated cherry pick of #19249: Feature/qj ipv6 support (#19253)
* feature: ipv6 support

* fix: ipv6 support more

* fix: update vendor for ipv6 support

* fix: allow enable ipv6 on existing guestnetwork

---------

Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-15 13:33:02 +08:00
wanyaoqi
3b313f11ab fix(host-deployer): add growpart resize partitions (#19251) 2024-01-15 12:14:41 +08:00
屈轩
3d703b9ed9 fix(region): huawei eip disassociate (#19244) 2024-01-12 19:32:08 +08:00
屈轩
05fda8da59 fix(region): avoid duplicate project create (#19241) 2024-01-12 19:16:17 +08:00
屈轩
27a9fab7cb fix(region): huawei disk refresh (#19238) 2024-01-12 15:53:29 +08:00
屈轩
d95380c6d1 fix(cloudmon): huawei metric pull (#19236) 2024-01-12 15:40:02 +08:00
屈轩
f543323b51 fix(region): vendor update for huawei rds create (#19232) 2024-01-11 19:04:18 +08:00
Jian Qiu
845123b1b0 fix: no fetch owner scope when GetProperty (#19230)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-11 18:58:52 +08:00
wanyaoqi
533b240a28 fix(host-deployer): add cmdline vsyscall=emulate on ramfs guest (#19223)
deploy fs on older system like centos 6, need emulate vsyscall.
otherwise will get error like:
    Code: Unable to access opcode bytes at 0xffffffffff6003d6.
2024-01-11 05:45:08 +08:00
Jian Qiu
416a26d12e fix: verbose api helper params (#19220)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-11 05:43:59 +08:00
wanyaoqi
53dc58dc69 feat(region,host): shared lvm storage (#19194) 2024-01-10 23:26:23 +08:00
Zexi Li
f40c4e0644 Merge pull request #19196 from wanyaoqi/fix/host-register-skip-virtual-functions
fix(host): host-agent register skip upload vf nics
2024-01-10 10:28:22 +08:00
Zexi Li
270c2ff5fd Merge pull request #19216 from wanyaoqi/automated-cherry-pick-of-#19215-upstream-release-3.11
Automated cherry pick of #19215: fix(host-deployer): deploy params has special char
2024-01-10 10:27:16 +08:00
Zexi Li
cff4a7adac Merge pull request #19214 from gouqi11/automated-cherry-pick-of-#19213-upstream-release-3.11
Automated cherry pick of #19213: fix(notify): fix host webhook err
2024-01-10 10:00:03 +08:00
wanyaoqi
7149904806 fix(host-deployer): deploy params has special char 2024-01-09 23:06:18 +08:00
马鸿飞
e941f84ce2 fix(notify): add actionTranslate 2024-01-09 19:23:50 +08:00
屈轩
8cf0b0e216 fix(region): skip sync used ip addr (#19208) 2024-01-09 17:50:29 +08:00
屈轩
9cce3064b3 fix(region): image project tags (#19211) 2024-01-09 17:49:58 +08:00
屈轩
3a9aab679e fix(region): avoid gcp secgroup delete failed (#19206) 2024-01-09 16:59:47 +08:00
屈轩
541464f035 fix(region): skip clear secgroup when delete vm (#19200) 2024-01-09 16:59:17 +08:00
wanyaoqi
abd0409f88 fix(host): host-agent register skip upload vf nics 2024-01-08 23:09:29 +08:00
屈轩
00283e54d2 fix(region): access group rule purge (#19192) 2024-01-08 15:52:24 +08:00
屈轩
28f58bca71 fix(region): simplify db init (#19183) 2024-01-08 14:19:17 +08:00
屈轩
449937a7ce fix(region): volcengine network range (#19188) 2024-01-08 11:35:08 +08:00
屈轩
a845b12294 fix(region): support aliyun essd entry (#19185) 2024-01-08 11:18:06 +08:00
屈轩
c958e588b9 fix(region): access group without cache (#19179) 2024-01-05 19:58:49 +08:00
gouqi11
d19cd2ab53 fix(notify): add missing topic (#19175)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-05 18:57:34 +08:00
屈轩
4f3948b6e5 fix(region): vendor update for zstack secgroup rule (#19170) 2024-01-05 10:39:06 +08:00
Jian Qiu
c4ebe1d2e4 fix: vpc dhcp options string value should be double quoted (#19163)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-05 07:56:11 +08:00
gouqi11
4f6ffac66d fix(notify): host topic bug fix (#19168)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2024-01-04 19:21:06 +08:00
屈轩
3b8549d8c7 fix(region): add translate (#19157) 2024-01-02 16:49:26 +08:00
wanyaoqi
bdd9953199 fix(host): host register set isinit false on hostId not null (#19154)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2024-01-02 14:01:19 +08:00
Jian Qiu
9f40a68157 fix: qmp free port test (#19151)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2024-01-02 14:00:33 +08:00
wanyaoqi
486aa4edf4 fix(region): ovs offload interface get ifname from isolated devices tlb (#19146)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-12-31 12:30:24 +08:00
Jian Qiu
5511fd7652 fix: automatically reserve guest gateway IP (#19143)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-30 17:11:40 +08:00
Jian Qiu
7e8d6ee4b0 fix: deploy user ssh keypair for user account only (#19134)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-30 16:56:36 +08:00
wanyaoqi
9f7f0f7caa feat(region,host,host-deployer): infiniband nic sriov support (#19127) 2023-12-30 16:55:56 +08:00
屈轩
28a25ebade fix(region): vendor update for huawei project sync (#19140) 2023-12-29 17:09:40 +08:00
Zexi Li
5593f125db Merge pull request #19130 from swordqiu/automated-cherry-pick-of-#19129-upstream-release-3.11
Automated cherry pick of #19129: fix: avoid megacli hang on adpallinfo
2023-12-29 16:37:06 +08:00
Qiu Jian
3f71995205 fix: avoid megacli hang on adpallinfo 2023-12-28 22:10:12 +08:00
gouqi11
c381cbde23 feat(notify): support notify for host (#19122)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-12-27 20:07:32 +08:00
gouqi11
3a52563646 fix(monitor): fix alertRecord manager (#19117)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-12-27 17:31:01 +08:00
屈轩
b8625cb2ab fix(region): huawei subaccount (#19118) 2023-12-27 14:20:42 +08:00
屈轩
182662d5d1 fix(region): vendor update for deploy vm struct params (#19114) 2023-12-27 11:33:37 +08:00
屈轩
b55a39cc84 fix(climc): support set tencent cloud bill report (#19108) 2023-12-27 11:07:41 +08:00
wanyaoqi
382d8f6f39 fix(region,host-deployer): qga os distribution format (#19109)
host-deployer fix xfs mount error

Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-12-26 20:15:17 +08:00
Jian Qiu
0fa95647d5 fix: delete server will purge instance backups (#19103)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-26 15:45:00 +08:00
Jian Qiu
b4f6c11538 Automated cherry pick of #19095: Feature/qj support default interface (#19102)
* fix: support default gateway interface

* fix: default gateway 2

---------

Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-26 15:35:14 +08:00
wanyaoqi
aa210a77f6 feat(region,host): guest sync os info (#19099) 2023-12-26 12:49:24 +08:00
屈轩
0bfc248ecc fix(region): optimized host-list speed (#19094) 2023-12-26 11:04:15 +08:00
屈轩
a1ab937ef7 fix(region): esxi change config (#19090) 2023-12-25 14:36:26 +08:00
屈轩
8415fee8c4 fix(region): change storage_size from int to int64 (#19086) 2023-12-22 18:36:15 +08:00
Zexi Li
84d692dbad Merge pull request #19081 from ioito/automated-cherry-pick-of-#19080-upstream-release-3.11
Automated cherry pick of #19080: fix(region): avoid for-loop sync volcengine disks
2023-12-22 17:32:43 +08:00
Zexi Li
d839af0a58 Merge pull request #19083 from wanyaoqi/automated-cherry-pick-of-#19082-upstream-release-3.11
Automated cherry pick of #19082: fix(host-deployer): check executor is enabled on init qemu driver
2023-12-22 17:32:04 +08:00
wanyaoqi
97425a471a fix(host-deployer): check executor is enabled on init qemu driver 2023-12-22 17:19:53 +08:00
ioito
bb3f48a374 fix(region): avoid for-lool sync volcengine disks 2023-12-22 16:31:01 +08:00
屈轩
21132195a9 fix(region): optimized disk list (#19077) 2023-12-22 14:49:38 +08:00
屈轩
1c2e36a40b fix(region): add disk preallocation for guest info (#19075) 2023-12-22 10:36:02 +08:00
屈轩
c6401d7694 fix(region): remove debug sql query (#19073) 2023-12-21 20:50:42 +08:00
Zexi Li
e7f446047c feat(baremetal-agent): support using tftp to download kernel and initrd (#19065) 2023-12-21 00:50:58 +08:00
屈轩
7a922aeede fix(region): refactor huawei api for support organization (#19068) 2023-12-20 19:31:18 +08:00
Zexi Li
9b0648fca8 Merge pull request #19059 from swordqiu/automated-cherry-pick-of-#19057-upstream-release-3.11
Automated cherry pick of #19057: fix: webconsole ssh open forward failure
2023-12-20 11:37:52 +08:00
屈轩
62103bd7dd fix(region): vendor update for volcengine network and aws dnsrecords sync (#19062) 2023-12-20 11:35:11 +08:00
Qiu Jian
d37a437e0d fix: webconsole ssh open forward failure 2023-12-20 00:08:09 +08:00
屈轩
e11af2d012 fix(region): ignore empty certificate error for ssl sync (#19054) 2023-12-19 20:26:13 +08:00
Zexi Li
40681ccf44 Merge pull request #19052 from ioito/automated-cherry-pick-of-#19051-upstream-release-3.11
Automated cherry pick of #19051: fix(region): avoid rds vcpu count is zero
2023-12-19 14:25:56 +08:00
屈轩
8955cd8e1d fix(region): add log for skiped pending deleted vm (#19050) 2023-12-19 13:28:22 +08:00
ioito
a9285aff4b fix(region): avoid rds vcpu count is zero 2023-12-19 13:26:25 +08:00
Zexi Li
f5e837ec75 Merge pull request #19047 from zhasm/automated-cherry-pick-of-#19046-upstream-release-3.11
Automated cherry pick of #19046: fix(docker): update dockerfile for ansible-base
2023-12-19 13:17:01 +08:00
Zhang Dongliang
83d9774ed6 fix(docker): update dockerfile for ansible-base 2023-12-19 13:09:21 +08:00
屈轩
fc235cbb88 fix(region): snapshot policy sync external id (#19043) 2023-12-18 19:14:18 +08:00
Zexi Li
b288cda5c7 Merge pull request #19035 from swordqiu/automated-cherry-pick-of-#19033-upstream-release-3.11
Automated cherry pick of #19033: fix: disable pvpanic dev
2023-12-18 17:26:50 +08:00
Zexi Li
8b4d4bbb3a Merge pull request #19032 from wanyaoqi/automated-cherry-pick-of-#19031-upstream-release-3.11
Automated cherry pick of #19031: fix(host-deployer): pass config files to deploy vm
2023-12-18 17:25:17 +08:00
Zexi Li
c31d40d31e Merge pull request #19038 from wanyaoqi/automated-cherry-pick-of-#19037-upstream-release-3.11
Automated cherry pick of #19037: fix(host): usb device hotplug
2023-12-18 17:23:09 +08:00
wanyaoqi
20d18137a5 fix(host): hot add usb device 2023-12-18 17:06:18 +08:00
wanyaoqi
9ce5fa6290 fix(host): usb host device add device_id 2023-12-18 17:06:18 +08:00
Qiu Jian
5700b3555d fix: disable pvpanic dev 2023-12-18 16:45:04 +08:00
wanyaoqi
fd1910480e fix(host-deployer): pass config files to deploy vm 2023-12-18 16:42:46 +08:00
屈轩
727390d6d5 fix(region): The latest api of Huawei cloud elb and eip is applicable (#19028) 2023-12-18 15:41:26 +08:00
gouqi11
01f38f9f3e feat(region): add ip_addr for rds.GetShortDesc (#19022)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-12-16 16:38:57 +08:00
屈轩
724fbac416 fix(region): do not clean up the running vm in the recycle bin (#19016) 2023-12-16 12:51:09 +08:00
Zexi Li
4823e1b471 Merge pull request #19013 from swordqiu/automated-cherry-pick-of-#19012-upstream-release-3.11
Automated cherry pick of #19012: fix: webconsole display information control
2023-12-16 10:10:39 +08:00
Zexi Li
004cedc130 Merge pull request #19010 from zexi/automated-cherry-pick-of-#19007-upstream-release-3.11
Automated cherry pick of #19007: fix(scheduler): reload cloudprovider's hosts when syncing finished
2023-12-16 10:06:09 +08:00
Qiu Jian
2292a08364 fix: webconsole display information control 2023-12-15 21:19:18 +08:00
Zexi Li
fff91b8eca fix(scheduler): reload cloudprovider's hosts when syncing finished 2023-12-15 20:19:32 +08:00
屈轩
644b2a20ab fix(region): refactor snapshot policy (#19006) 2023-12-15 17:08:01 +08:00
Zexi Li
0e5a31c41e fix(cloudcommon): service config informer doesn't start watching (#19004) 2023-12-15 14:58:48 +08:00
Zexi Li
7103249d75 Merge pull request #18998 from swordqiu/automated-cherry-pick-of-#18997-upstream-release-3.11
Automated cherry pick of #18997: fix: refine webconsole ssh api
2023-12-15 11:50:43 +08:00
Zexi Li
b9c7c59188 Merge pull request #19000 from wanyaoqi/automated-cherry-pick-of-#18999-upstream-release-3.11
Automated cherry pick of #18999: fix(host-deployer): udpate yunionos, reduce yunionos memsize
2023-12-15 11:50:14 +08:00
wanyaoqi
746a96722c fix(host-deployer): udpate yunionos, reduce yunionos memsize 2023-12-15 11:41:11 +08:00
Qiu Jian
b66c3efd27 fix: refine webconsole ssh api 2023-12-15 10:40:27 +08:00
屈轩
ec08fce85a fix(region): remove useless snapshot policy code (#18993) 2023-12-14 11:56:12 +08:00
屈轩
ef5fee6c8b fix(region): avoid duplicate rule name for gcp (#18990) 2023-12-14 11:23:38 +08:00
wanyaoqi
1f25fc17b8 feat(region,host): clvm support (#18978) 2023-12-14 09:41:54 +08:00
Zexi Li
d811d64fce Merge pull request #18986 from swordqiu/automated-cherry-pick-of-#18985-upstream-release-3.11
Automated cherry pick of #18985: fix: backup storage capacity_mb field optional
2023-12-14 03:28:21 +08:00
屈轩
c19596176c fix(region): set status available for kvm secgroup rule after created (#18988) 2023-12-13 21:26:29 +08:00
Qiu Jian
f7db51b504 fix: backup storage capacity_mb field optional 2023-12-13 19:52:39 +08:00
Zexi Li
f4d9166c79 Merge pull request #18981 from zexi/monitor-vm-measurements
fix(monitor): fetch measurements from victoriametrics
2023-12-13 19:47:15 +08:00
Zexi Li
aef50a49a6 fix(monitor): fetch measurements from victoriametrics 2023-12-13 18:49:40 +08:00
Zexi Li
a5f2194afc Merge pull request #18977 from zexi/automated-cherry-pick-of-#18975-upstream-release-3.11
Automated cherry pick of #18975: fix(monitor): consider whether the target host is in source host of mem balancer
2023-12-13 13:38:28 +08:00
Zexi Li
796bea5d7c fix(monitor): consider whether the target host is in source host of mem balancer 2023-12-13 12:54:37 +08:00
Zexi Li
d2bf8c44ad Merge pull request #18970 from ioito/automated-cherry-pick-of-#18969-upstream-release-3.11
Automated cherry pick of #18969: fix(region): vendor update for gcp rebuild-root sys disk size and password login
2023-12-12 18:21:15 +08:00
ioito
3258a85236 fix(region): vendor update for gcp rebuild-root sys disk size and password login 2023-12-12 17:23:52 +08:00
Zexi Li
ee102ca0c6 Merge pull request #18966 from wanyaoqi/automated-cherry-pick-of-#18965-upstream-release-3.11
Automated cherry pick of #18965: fix(host-deployer): run guest on host and ignore no config file
2023-12-12 15:18:59 +08:00
wanyaoqi
afd5a1f716 fix(host-deployer): run guest on host and ignore no config file
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-12-12 14:56:03 +08:00
Zexi Li
34a1f623ef Merge pull request #18952 from swordqiu/automated-cherry-pick-of-#18951-upstream-release-3.11
Automated cherry pick of #18951: fix: ignore vm virtual ip changes
2023-12-12 09:34:27 +08:00
Zexi Li
4e8cea612a Merge pull request #18955 from swordqiu/hotfix/qj-more-verbose-metric-collection
fix: log metric collection action
2023-12-11 16:18:29 +08:00
Qiu Jian
e9cea00f2d fix: log metric collection action 2023-12-11 00:28:44 +08:00
Qiu Jian
b81d367f95 fix: ignore vm virtual ip changes 2023-12-10 13:28:26 +08:00
Jian Qiu
91ced9d0f4 fix: host add a local config file (#18933)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-08 21:26:40 +08:00
屈轩
22b68fe2d4 fix(region): support volc balance and gcp api retry (#18947) 2023-12-08 17:56:42 +08:00
屈轩
d0e8273b51 fix(region): optimized sync code (#18944) 2023-12-08 15:06:47 +08:00
Zexi Li
4959215d7a Merge pull request #18939 from zexi/monitor-domain-no-metrics
fix(monitor): not add scope to query resource from region service
2023-12-08 12:41:51 +08:00
Zexi Li
cc1c57155c fix(monitor): not add scope to query resource from region service 2023-12-08 12:28:20 +08:00
Zexi Li
5d886e304d Merge pull request #18928 from swordqiu/automated-cherry-pick-of-#18927-upstream-release-3.11
Automated cherry pick of #18927: fix: no default fallback dns server
2023-12-08 10:47:06 +08:00
Zexi Li
100f41bdd9 Merge pull request #18926 from zexi/climc-monitor-query
feat(monitor): make simple-query API adapting victoriametrics and add monitor-unifiedmonitor-query command
2023-12-08 10:46:11 +08:00
Zexi Li
590cba97bb feat(climc): add monitor-unifiedmonitor-query command 2023-12-08 10:05:02 +08:00
Qiu Jian
a8f985a188 fix: no default fallback dns server 2023-12-08 01:16:18 +08:00
Zexi Li
8eaa742333 fix(monitor): make simple-query API adapt to victoriametrics 2023-12-08 00:31:22 +08:00
Zexi Li
ed990bd55f Merge pull request #18923 from ioito/automated-cherry-pick-of-#18922-upstream-release-3.11
Automated cherry pick of #18922: fix(region): cloudpods uefi and generate name
2023-12-07 16:41:07 +08:00
Zexi Li
837c29e34f Merge pull request #18917 from wanyaoqi/automated-cherry-pick-of-#18916-upstream-release-3.11
Automated cherry pick of #18916: Fix/host deployer
2023-12-07 16:40:18 +08:00
ioito
7cadeea34f fix(region): cloudpods uefi and generate name 2023-12-07 16:15:02 +08:00
wanyaoqi
9da12b090a fix(host-deployer): disconnect fix and concurrence control 2023-12-07 16:05:21 +08:00
屈轩
5ae6751ad3 fix(webconsole): rdp 用户隔离上传文件 (#18921) 2023-12-07 15:22:14 +08:00
屈轩
1570a14746 feat(webconsole): support sftp for ssh (#18919) 2023-12-07 14:54:19 +08:00
wanyaoqi
8bfb666129 fix:(host-deployer): arm guest add gic version 2023-12-07 10:37:11 +08:00
屈轩
df3571f972 fix: guacd docker file mkdir required dir (#18913) 2023-12-06 17:03:40 +08:00
Zexi Li
0060fce771 Merge pull request #18909 from zexi/automated-cherry-pick-of-#18908-upstream-release-3.11
Automated cherry pick of #18908: fix(monitor): map interval to step
2023-12-06 16:16:23 +08:00
Zexi Li
db7808a683 Merge pull request #18908 from zexi/vm-map
fix(monitor): map interval to step
2023-12-06 16:16:08 +08:00
Zexi Li
4cbd9fcdfd fix(monitor): map interval to step 2023-12-06 15:32:40 +08:00
Jian Qiu
fb86463bbf fix: esxi hotadd cpu limit (#18893)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-06 15:31:15 +08:00
Zexi Li
887132e297 fix(monitor): map interval to step 2023-12-06 15:31:08 +08:00
屈轩
370c405684 fix(keystone): remove deleted project metadata (#18906) 2023-12-06 15:29:51 +08:00
屈轩
92c23a245b fix(webconsole): optimized guacd error log (#18904) 2023-12-06 11:59:49 +08:00
Zexi Li
bd54efcd2e Merge pull request #18897 from zexi/monitor-vm-top
fix(monitor): update vendor to support victoriametrics topk func
2023-12-05 18:23:19 +08:00
Zexi Li
f212295104 fix(monitor): update vendor to support victoriametrics topk func 2023-12-05 18:01:36 +08:00
Jian Qiu
bc5982907e fix: add index for token_cache_tbl to accelerate invalid token query (#18890)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-05 12:22:27 +08:00
Jian Qiu
01e764e62e fix: clickhouse mapping table use the same name as origin (#18888)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-05 12:22:02 +08:00
Zexi Li
5698d47252 Merge pull request #18881 from ioito/automated-cherry-pick-of-#18880-upstream-release-3.11
Automated cherry pick of #18880: fix(region): avoid cloudmon no cloudprovider sync
2023-12-05 12:06:58 +08:00
Zexi Li
3ec0372159 Merge pull request #18883 from ioito/automated-cherry-pick-of-#18882-upstream-release-3.11
Automated cherry pick of #18882: fix: show update oc cmd
2023-12-05 12:06:25 +08:00
ioito
76b81e33d4 fix: show update oc cmd 2023-12-05 10:40:18 +08:00
ioito
19378997ee fix(region): avoid cloudmon no cloudprovider sync 2023-12-05 10:05:50 +08:00
Jian Qiu
b20ec7bdb3 fix: mapping mysql tables into clickhouse with Engine MySQL (#18878)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-05 07:08:29 +08:00
wanyaoqi
32f2bc5821 fix(host-deployer): qemu deployer without kvm support (#18874) 2023-12-05 07:07:11 +08:00
wanyaoqi
ffafcdb7c1 fix(region): add option control enable default dns server (#18872) 2023-12-04 17:02:14 +08:00
Zexi Li
7a87d00304 Merge pull request #18868 from ioito/automated-cherry-pick-of-#18867-upstream-release-3.11
Automated cherry pick of #18867: fix(region): vendor update
2023-12-04 15:25:58 +08:00
ioito
d6fd14c39a fix(region): vendor update 2023-12-04 14:59:37 +08:00
Zexi Li
f65d175990 Merge pull request #18864 from wanyaoqi/automated-cherry-pick-of-#18863-upstream-release-3.11
Automated cherry pick of #18863: fix(host-deployer,host): mv deploy driver option to common options
2023-12-04 14:35:21 +08:00
屈轩
3bc094e9d7 fix(region): vendor update (#18861) 2023-12-04 14:26:18 +08:00
wanyaoqi
45bec04fde fix(host-deployer,host): mv deploy driver option to common options 2023-12-04 14:22:17 +08:00
Zexi Li
973ef23b42 Merge pull request #18857 from wanyaoqi/fix/qemu-deploy-guest-3-11
Manual cherrypick of #18856
2023-12-04 10:35:28 +08:00
wanyaoqi
4c9e7e1ddd fix(host-deployer): update base image and fix return errors 2023-12-04 01:49:15 +08:00
Jian Qiu
673d67f586 fix: reserve ping probed ip with expiration (#18855)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-03 22:27:26 +08:00
Jian Qiu
f243c3d66f fix: force assign ip address when sync vm vnics (#18853)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-12-03 15:34:36 +08:00
Zexi Li
c31ace6222 fix(baremetal): disable probe access mac by redfish driver (#18846) 2023-12-03 15:17:51 +08:00
Zexi Li
e17ace8c64 Merge pull request #18845 from zexi/automated-cherry-pick-of-#18843-upstream-release-3.11
Automated cherry pick of #18843: feat(ci): use github action to check PR
2023-12-01 14:58:54 +08:00
Zexi Li
9079f4c8bb feat(ci): use github action to check PR 2023-12-01 14:54:55 +08:00
Jian Qiu
f4e0db5c11 fix: server create instance backup parameters (#18842)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-30 20:19:17 +08:00
屈轩
fe78f19e14 fix(region): 增加配置项,支持标签不再同步至云上功能 (#18838) 2023-11-30 19:12:52 +08:00
屈轩
e333fb6f36 fix(webconsole): rdp stop (#18841) 2023-11-30 19:12:29 +08:00
Jian Qiu
3739da2114 Automated cherry pick of #18831: Hotfix/qj esxi sync ips support (#18836)
* fix: support esxi subips

* update vendor

---------

Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-30 18:04:12 +08:00
wanyaoqi
7bc08d6dfe fix(host): guest switch to backup (#18834) 2023-11-30 17:14:56 +08:00
wanyaoqi
5aeb7eabcb Automated cherry pick of #18821: Feat/deploy guest (#18822)
* feat(region): add guest rescue api && download initrd from baremetal tftp server && add baremetal agent ip finder & update pic address & support ip kernel config.

* feat(host-deployer): use qemu-kvm as default deploy dirver

---------

Co-authored-by: boironic@gmail.com <boironic@gmail.com>
2023-11-30 16:50:08 +08:00
屈轩
1647a7dd00 fix(region): optional vcpu when change vm config (#18826) 2023-11-30 13:33:42 +08:00
屈轩
d259d7adc9 fix(region): skip sync meta if no public cloud register (#18828) 2023-11-30 13:33:16 +08:00
Jian Qiu
a76d8fc4f3 fix: filter networks by host type (#18819)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-30 00:07:49 +08:00
屈轩
13d26f7b43 fix(webconsole): checke rdp password (#18817) 2023-11-29 19:07:43 +08:00
屈轩
362e5467c8 fix(webconsole): rdp enable drive (#18806) 2023-11-29 19:07:10 +08:00
屈轩
8472fe65b6 fix(region): vendor update (#18815) 2023-11-29 15:00:41 +08:00
屈轩
0b8c6a0255 fix(region): 只读账号增量更新标签 (#18812) 2023-11-29 14:53:46 +08:00
Jian Qiu
75435de8a8 fix: generalized metadata getter (#18808)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-29 09:04:21 +08:00
屈轩
a3270d53e9 feat(webconsole): support rdp (#18803) 2023-11-28 10:47:14 +08:00
Zexi Li
dc7a451a4d Merge pull request #18801 from swordqiu/automated-cherry-pick-of-#18800-upstream-release-3.11
Automated cherry pick of #18800: fix: customized show content of get-property
2023-11-28 10:09:34 +08:00
Qiu Jian
12aaad6cd9 fix: customized show content of get-property 2023-11-28 09:13:32 +08:00
Zexi Li
22b098b4a2 Merge pull request #18797 from zexi/nvidia-gpu-metrics
fix(monitor): register agent_nvidia_smi metrics
2023-11-27 19:32:12 +08:00
Zexi Li
731af95698 fix(monitor): register agent_nvidia_smi metrics 2023-11-27 19:11:06 +08:00
Zexi Li
32a7f70edd Merge pull request #18792 from wanyaoqi/automated-cherry-pick-of-#18791-upstream-release-3.11
Automated cherry pick of #18791: fix(region): alloc ovn_mapped_ip_addr on host post create
2023-11-27 19:07:42 +08:00
Zexi Li
9e42caa08b Merge pull request #18788 from swordqiu/automated-cherry-pick-of-#18787-upstream-release-3.11
Automated cherry pick of #18787: fix: cloud account update aliyun billing scope
2023-11-27 19:06:47 +08:00
屈轩
98e818b182 fix(region): revert os dist filter and sort (#18794) 2023-11-27 17:34:40 +08:00
wanyaoqi
3aa27eaad5 fix(region): alloc ovn_mapped_ip_addr on host post create 2023-11-27 17:19:44 +08:00
Qiu Jian
283a6fa5aa fix: cloud account update aliyun billing scope 2023-11-27 01:26:10 +08:00
Zexi Li
3a9b11c57d Merge pull request #18784 from swordqiu/feature/qj-backup-support-object-storage
feature: backup support object storage
2023-11-26 20:56:16 +08:00
Qiu Jian
2dec7a3726 fix: encrypt object storage secret 2023-11-26 19:53:57 +08:00
Qiu Jian
f8284d8bc1 fix: update model api 2023-11-26 16:55:42 +08:00
Qiu Jian
20167c2afd feature: backup support object storage 2023-11-26 16:01:46 +08:00
Zexi Li
8adf5abf86 feat(host): use IsolatedDeviceModels as GPU whitelist (#18783) 2023-11-25 19:41:05 +08:00
Zexi Li
06dc39a591 feat(host): use IsolatedDeviceModels as GPU whitelist (#18780) 2023-11-25 19:40:53 +08:00
屈轩
6bef6a1cb6 fix(region): trim metadata key (#18776) 2023-11-24 22:17:47 +08:00
屈轩
04c6ee73a8 fix(region): vm filter by os dist (#18778) 2023-11-24 20:06:05 +08:00
屈轩
f7c83468ea fix(region): distinct os dist field (#18768) 2023-11-24 11:51:55 +08:00
屈轩
39f3c7a1e4 fix(region): show guest gpu model (#18766) 2023-11-23 12:39:47 +08:00
Jian Qiu
7fd56f1baa fix: hot add mem check for esxi vm (#18763)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-23 12:20:52 +08:00
Zexi Li
c6f6329bcd Merge pull request #18760 from swordqiu/automated-cherry-pick-of-#18757-upstream-release-3.11
Automated cherry pick of #18757: fix: hot add mem check for esxi vm
2023-11-23 10:15:29 +08:00
Qiu Jian
fef1b4a578 fix: hot add mem check for esxi vm 2023-11-23 09:54:08 +08:00
Zexi Li
c309fdd3c1 feat(region): add nvidia_smi telegraf input plugin (#18751) 2023-11-23 00:19:40 +08:00
屈轩
7504c2eb5b fix(keystone): project clean (#18742) 2023-11-21 21:10:23 +08:00
Zexi Li
ffb8ff3df8 Merge pull request #18746 from zexi/monitor-vm-mul-query
fix(monitor): query multiple fileds from victoria-metrics
2023-11-21 18:05:47 +08:00
Zexi Li
ece44e0698 fix(monitor): query multiple fileds from victoria-metrics 2023-11-21 17:44:22 +08:00
Zexi Li
d0f045b65f Merge pull request #18744 from ioito/automated-cherry-pick-of-#18743-upstream-release-3.11
Automated cherry pick of #18743: fix(region): remove useless filter params
2023-11-21 17:16:45 +08:00
ioito
bd7319daf7 fix(region): remove useless filter params 2023-11-21 16:05:53 +08:00
屈轩
7461a25508 fix(region): cpu socket (#18732) 2023-11-21 15:08:36 +08:00
Zexi Li
16d6212c45 Merge pull request #18736 from zexi/srv-hardware-info
feat(region,host,climc): aggregate server hardware information
2023-11-21 14:08:56 +08:00
Zexi Li
8fb19b87d2 feat(region,host,climc): aggregate server hardware information 2023-11-21 12:00:19 +08:00
gouqi11
c763fc68dc feat(common): log support rebilling (#18738)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-20 19:21:10 +08:00
屈轩
46b435ca5b fix(region): vendor update for aliyun tags (#18728) 2023-11-17 16:30:25 +08:00
gouqi11
cd9ee7bc9a fix(notify): fix webhook brand (#18724)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-17 15:37:21 +08:00
屈轩
acac041bec fix(region): redis cloudregion id (#18722) 2023-11-17 15:19:53 +08:00
Zexi Li
950a02183b Merge pull request #18720 from zexi/automated-cherry-pick-of-#18718-upstream-release-3.11
Automated cherry pick of #18718: fix(climc): bash completion is not working
2023-11-17 12:34:01 +08:00
Zexi Li
440a7fa5fc fix(climc): bash completion is not working 2023-11-17 12:03:27 +08:00
屈轩
1abb1086ed fix(region): vendor update (#18715) 2023-11-17 11:34:28 +08:00
屈轩
4c84f1cbe1 fix(region): vendor update (#18712) 2023-11-17 10:08:47 +08:00
gouqi11
28644d3da4 Automated cherry pick of #18704: fix(region): rds skip notImplementedErr (#18710)
* fix(region): rds skip notImplementedErr

* fix(region): aws redis set metadata status

---------

Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-16 17:20:45 +08:00
屈轩
5bf44a67ac fix(region): vendor update (#18707) 2023-11-16 17:17:40 +08:00
gouqi11
340f458ff4 update vendor (#18702)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-16 10:01:00 +08:00
gouqi11
89efdbc642 fix(region): fix db_dispatcher duplicate notify (#18699)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-15 17:02:43 +08:00
Jian Qiu
885f4ebcd8 fix: update lb cluster with patch params (#18696)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-15 08:57:28 +08:00
Jian Qiu
7783546754 fix: windows GPU vm should set hypervisor=off (#18691)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-15 08:56:43 +08:00
Jian Qiu
b3580ab64f fix: make host dhcp lease options global (#18683)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-15 08:55:14 +08:00
Jian Qiu
a757ea3dd8 fix: host set nil metadata (#18688)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-15 08:54:34 +08:00
Jian Qiu
b2b60ff660 fix: organization node weight not effective (#18694)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-15 08:54:08 +08:00
Zexi Li
30ee89a390 feat(region,climc): add set-os-info api (#18680) 2023-11-14 22:59:56 +08:00
Zexi Li
9706339eac Merge pull request #18670 from wanyaoqi/automated-cherry-pick-of-#18669-upstream-release-3.11
Automated cherry pick of #18669: fix(host): sync sriov nic bw on change config
2023-11-14 20:25:31 +08:00
屈轩
aa6e34e98d feat(region): support oracle cloud (#18679) 2023-11-14 19:43:29 +08:00
gouqi11
e99c7bed63 Automated cherry pick of #18663: fix(keystone): fix usage for projectNum (#18664)
* feat(region): support action to reBilling

* fix(keystone): fix keystone usage for projectNum

---------

Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-14 19:32:22 +08:00
Zexi Li
c810a3b144 fix(host): setup routes from start to end (#18674) 2023-11-14 17:56:11 +08:00
wanyaoqi
77ff5fcd44 fix(host): sync sriov nic bw on change config 2023-11-14 16:31:11 +08:00
Zexi Li
64027a3280 Merge pull request #18666 from wanyaoqi/automated-cherry-pick-of-#18665-upstream-release-3.11
Automated cherry pick of #18665: fix(regin): instance snapshot create guest fill os arch
2023-11-14 14:47:48 +08:00
Zexi Li
8606e6cfbd Merge pull request #18662 from ioito/automated-cherry-pick-of-#18661-upstream-release-3.11
Automated cherry pick of #18661: fix(region): order by os dist
2023-11-14 14:44:54 +08:00
wanyaoqi
0ad56aa42f fix(regin): instance snapshot create guest fill os arch 2023-11-14 11:16:46 +08:00
ioito
4c2d42a79f fix(region): order by os dist 2023-11-14 10:47:11 +08:00
Zexi Li
9b8094c9a5 Merge pull request #18656 from zexi/automated-cherry-pick-of-#18655-upstream-release-3.11
Automated cherry pick of #18655: fix(host): catch init error
2023-11-13 21:12:38 +08:00
Zexi Li
7702776d8f Merge pull request #18658 from zexi/automated-cherry-pick-of-#18634-upstream-release-3.11
Automated cherry pick of #18634: chore: unnecessary use of fmt.Sprintf d
2023-11-13 20:44:49 +08:00
guoguangwu
65d66edbc7 chore: unnecessary use of fmt.Sprintf d
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com>
2023-11-13 20:42:42 +08:00
Zexi Li
b3180bd87a fix(host): catch init error 2023-11-13 20:40:12 +08:00
Zexi Li
aad04d9cdc Merge pull request #18645 from swordqiu/automated-cherry-pick-of-#18644-upstream-release-3.11
Automated cherry pick of #18644: fix: extend gpu pci class codes
2023-11-13 19:19:38 +08:00
屈轩
845eecc217 fix(yunionconf): allow disable bug report (#18654) 2023-11-13 19:03:58 +08:00
屈轩
59f5c5beea fix(region): vm gpu notes (#18652) 2023-11-13 18:15:40 +08:00
屈轩
1a2c830a76 fix(region): esxi support preallocation vdisk (#18648) 2023-11-13 18:15:18 +08:00
Zexi Li
55707f159a Merge pull request #18640 from wanyaoqi/automated-cherry-pick-of-#18639-upstream-release-3.11
Automated cherry pick of #18639: fix(region,host): sriov nic hotplug and metrics fix
2023-11-13 17:02:35 +08:00
Zexi Li
a6928cfa67 Merge pull request #18635 from ioito/automated-cherry-pick-of-#18633-upstream-release-3.11
Automated cherry pick of #18633: fix(region): esxi disk storage
2023-11-13 16:58:53 +08:00
Qiu Jian
d9e8372d90 fix: extend gpu pci class codes 2023-11-13 16:21:26 +08:00
wanyaoqi
550bfc53b4 fix(region,host): sriov nic hotplug and metrics fix 2023-11-13 14:40:28 +08:00
Zexi Li
6ee1dbedb0 Merge pull request #18637 from wanyaoqi/automated-cherry-pick-of-#18636-upstream-release-3.11
Automated cherry pick of #18636: fix(region): change config check traffic limit params
2023-11-13 11:38:43 +08:00
wanyaoqi
2de131eb27 fix(region): change config check traffic limit params 2023-11-13 11:21:47 +08:00
ioito
c43f0cedf6 fix(region): esxi disk storage 2023-11-13 10:49:36 +08:00
Zexi Li
5183678684 Merge pull request #18632 from ioito/automated-cherry-pick-of-#18631-upstream-release-3.11
Automated cherry pick of #18631: fix(cloudmon): collect metric with project tags
2023-11-10 16:45:40 +08:00
Zexi Li
08288b2d75 Merge pull request #18627 from swordqiu/automated-cherry-pick-of-#18625-upstream-release-3.11
Automated cherry pick of #18625: fix: cloudprovider external id
2023-11-10 16:40:21 +08:00
ioito
de19868d32 fix(cloudmon): collect metric with project tags 2023-11-10 16:33:28 +08:00
屈轩
6a7c109c83 fix(region): vendor update (#18630) 2023-11-10 16:09:56 +08:00
Zexi Li
cacb1e3c6f Merge pull request #18616 from zexi/automated-cherry-pick-of-#18545-upstream-release-3.11
Automated cherry pick of #18545: feat(monitor,region,host,cloudmon): support VictoriaMetrics as TSDB backend
2023-11-10 16:05:34 +08:00
屈轩
54ec8acbeb fix(common): support report bug (#18628) 2023-11-10 15:46:22 +08:00
Zexi Li
4f96f2e5fa feat(monitor,region,host,cloudmon): support VictoriaMetrics as TSDB backend 2023-11-10 15:34:01 +08:00
Qiu Jian
889e9577ef fix: cloudprovider external id 2023-11-10 12:07:55 +08:00
屈轩
698937280a fix(region): vendor update (#18623) 2023-11-10 11:59:09 +08:00
屈轩
bac8ecf432 fix(region): qcloud secgroup rule priority (#18621) 2023-11-10 11:54:59 +08:00
Zexi Li
853855d174 Merge pull request #18619 from gouqi11/automated-cherry-pick-of-#18618-upstream-release-3.11
Automated cherry pick of #18618: fix(keystone): fix usage empty projectTags
2023-11-09 16:09:52 +08:00
马鸿飞
0450883be1 fix(keystone): fix usage empty projectTags 2023-11-09 15:32:15 +08:00
Zexi Li
b6247630f9 Merge pull request #18614 from ioito/automated-cherry-pick-of-#18613-upstream-release-3.11
Automated cherry pick of #18613: fix(region): pve cdrom with host info
2023-11-09 12:18:18 +08:00
ioito
4c8fd267a8 fix(region): pve cdrom with host info 2023-11-09 12:05:01 +08:00
屈轩
82be65ecaf fix(region): avoid panic when sync aliyun redis (#18607) 2023-11-08 20:56:31 +08:00
gouqi11
ffcc092089 feat(usage): support project count (#18611)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-08 20:36:49 +08:00
屈轩
7ca7bf48ab fix(webconsole): pve vnc support (#18604) 2023-11-08 19:35:11 +08:00
Zexi Li
fc4cc7d0b1 fix(host): ignore error when add bridge ip address route (#18601) 2023-11-08 17:39:45 +08:00
屈轩
0fd0284051 fix(region): clean invalid skus (#18595) 2023-11-07 21:16:51 +08:00
屈轩
5b930df74f fix(region): vendor update (#18591) 2023-11-07 20:37:03 +08:00
Zexi Li
c0db929d4c Merge pull request #18585 from wanyaoqi/automated-cherry-pick-of-#18584-upstream-release-3.11
Automated cherry pick of #18584: fix(host-deployer): use sync.lock on nbd connect/disconnect
2023-11-07 15:40:19 +08:00
wanyaoqi
3f74e94e8f fix(host-deployer): use sync.lock on nbd connect/disconnect 2023-11-07 15:30:20 +08:00
wanyaoqi
2ea7da3746 Automated cherry pick of #18580: fix(host): sync guest machine type on live migrate (#18581)
* fix(host): sync guest machine type on live migrate

* fix(host): checkout real anonymous pci devs on ensure pci address
2023-11-07 09:45:40 +08:00
wanyaoqi
1e196b1a9d fix(host-deployer): detach nbd device do not block main thread (#18577) 2023-11-07 07:22:13 +08:00
Zexi Li
07b6906d30 Merge pull request #18572 from wanyaoqi/automated-cherry-pick-of-#18571-upstream-release-3.11
Automated cherry pick of #18571: fix(host): live migrate ensure disk storate type
2023-11-06 16:47:58 +08:00
wanyaoqi
1b6c3aa20a fix(host): live migrate ensure disk storate type 2023-11-06 14:43:55 +08:00
Zexi Li
1a1d941d30 Merge pull request #18566 from swordqiu/automated-cherry-pick-of-#18565-upstream-release-3.11
Automated cherry pick of #18565: fix: qemu disk set serial as disk_id
2023-11-05 11:44:53 +08:00
Qiu Jian
9ff75d4656 fix: qemu disk set serial as disk_id 2023-11-04 18:50:03 +08:00
Zexi Li
181c99868e Merge pull request #18560 from swordqiu/automated-cherry-pick-of-#18559-upstream-release-3.11
Automated cherry pick of #18559: fix: host fail to migrate interface routes
2023-11-04 18:28:14 +08:00
Qiu Jian
634e52142a fix: host fail to migrate interface routes 2023-11-03 23:58:30 +08:00
屈轩
af80f0d82c fix(region): volcengine monitor (#18558) 2023-11-03 13:56:46 +08:00
wanyaoqi
eaa5c52456 fix(region,host): support traffic limit in change config (#18554) 2023-11-03 10:10:25 +08:00
Zexi Li
f7a17d64d6 Merge pull request #18550 from ioito/automated-cherry-pick-of-#18549-upstream-release-3.11
Automated cherry pick of #18549: fix(region): esxi vm resize disk online
2023-11-02 15:02:22 +08:00
Zexi Li
422ae1e511 Merge pull request #18547 from wanyaoqi/automated-cherry-pick-of-#18546-upstream-release-3.11
Automated cherry pick of #18546: fix(host-deployer): clean nbd mount on host-deployer start
2023-11-02 15:01:22 +08:00
ioito
4e44ae2932 fix(region): esxi vm resize disk online 2023-11-02 11:24:08 +08:00
wanyaoqi
38e11808df fix(host-deployer): clean nbd mount on host-deployer start 2023-11-01 21:25:41 +08:00
屈轩
c9d20e7a14 fix(region): volc bucket storage class (#18544) 2023-11-01 20:02:16 +08:00
屈轩
8282619b86 fix(region): vendor update (#18541) 2023-11-01 19:13:40 +08:00
屈轩
4178d46cd9 fix(region): vendor update (#18539) 2023-11-01 18:52:08 +08:00
屈轩
be5075a74b fix(region): vendor update (#18535) 2023-11-01 17:48:09 +08:00
gouqi11
b9aadb704d update vendor (#18533)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-11-01 15:41:46 +08:00
Zexi Li
0a78de3166 Merge pull request #18530 from wanyaoqi/automated-cherry-pick-of-#18529-upstream-release-3.11
Automated cherry pick of #18529: fix(host): live migrate pass disk num queues
2023-11-01 14:58:13 +08:00
wanyaoqi
a84676af7c fix(host): live migrate pass disk num queues 2023-11-01 14:48:24 +08:00
Zexi Li
84c1c7d8d4 Merge pull request #18525 from ioito/automated-cherry-pick-of-#18524-upstream-release-3.11
Automated cherry pick of #18524: fix(region): skip vm eip not found error log
2023-11-01 10:13:46 +08:00
Zexi Li
858af35887 Merge pull request #18523 from ioito/automated-cherry-pick-of-#18522-upstream-release-3.11
Automated cherry pick of #18522: fix(region): volcengine vm save image
2023-11-01 10:13:01 +08:00
Jian Qiu
ddc2b319ed fix: xfs zerofree (experimental) (#18527)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-11-01 09:41:18 +08:00
ioito
d6b28d270f fix(region): skip vm eip not found error log 2023-10-31 20:43:18 +08:00
ioito
49c813659b fix(region): volcengine vm save image 2023-10-31 20:40:47 +08:00
屈轩
9d0e545c66 fix(region): vendor update (#18514) 2023-10-31 20:24:09 +08:00
Zexi Li
2f7c4cd671 Merge pull request #18516 from wanyaoqi/automated-cherry-pick-of-#18515-upstream-release-3.11
Automated cherry pick of #18515: fix(host): detect blk dev numqueues and nics(no id) pci addresses
2023-10-31 20:17:40 +08:00
Zexi Li
08dd95748c Merge pull request #18519 from wanyaoqi/automated-cherry-pick-of-#18518-upstream-release-3.11
Automated cherry pick of #18518: fix(region): reduce local disk max size to 10T
2023-10-31 19:51:14 +08:00
wanyaoqi
9b1622325f fix(region): reduce local disk max size to 10T 2023-10-31 19:38:09 +08:00
Zexi Li
5480dfd1c8 Merge pull request #18504 from swordqiu/automated-cherry-pick-of-#18503-upstream-release-3.11
Automated cherry pick of #18503: fix: dhcp hostname not compatible with some os
2023-10-31 19:28:49 +08:00
Zexi Li
da3167d3bc Merge pull request #18499 from zexi/automated-cherry-pick-of-#18497-upstream-release-3.11
Automated cherry pick of #18497: feat(apigateway): report running env
2023-10-31 19:28:06 +08:00
Zexi Li
c5923cc4b9 Merge pull request #18512 from gouqi11/automated-cherry-pick-of-#18511-upstream-release-3.11
Automated cherry pick of #18511: fix(scheduledtask): supportCycleType week and month
2023-10-31 19:27:33 +08:00
wanyaoqi
732d70d6e5 fix(host): detect blk dev numqueues and nics(no id) pci addresses 2023-10-31 19:17:18 +08:00
屈轩
d33e1f6371 fix(keystone): validate time_zone input (#18506) 2023-10-31 18:41:26 +08:00
马鸿飞
8fddf20c68 fix(scheduledtask): supportCycleType week and month 2023-10-31 17:44:31 +08:00
Qiu Jian
9e2e2d6b8d fix: dhcp hostname not compatible with some os 2023-10-31 12:02:53 +08:00
Zexi Li
304e520ce6 Merge pull request #18495 from ioito/automated-cherry-pick-of-#18494-upstream-release-3.11
Automated cherry pick of #18494: fix(region): vendor update
2023-10-30 20:39:37 +08:00
Zexi Li
c895e5bc7c Merge pull request #18479 from swordqiu/automated-cherry-pick-of-#18478-upstream-release-3.11
Automated cherry pick of #18478: fix: scheduler ping/pong response mime
2023-10-30 20:37:25 +08:00
Zexi Li
c24b0a4082 feat(apigateway): report running env 2023-10-30 20:32:54 +08:00
ioito
f4b74c790c fix(region): vendor update 2023-10-30 20:09:47 +08:00
屈轩
30f2fda002 fix(region): vendor update (#18493) 2023-10-30 17:03:39 +08:00
屈轩
097237eb8c fix(region): qcloud security group rule priority (#18489) 2023-10-30 17:03:17 +08:00
屈轩
69e8ab1936 fix(region): avoid hostname has '-' suffix (#18486) 2023-10-30 17:02:32 +08:00
屈轩
0f8443905a fix(region): gpu spec (#18483) 2023-10-30 14:39:09 +08:00
屈轩
f58532081e fix(region): kvm secgroup filter (#18477) 2023-10-30 13:55:25 +08:00
Qiu Jian
335ff385c5 fix: scheduler ping/pong response mime 2023-10-30 13:17:09 +08:00
Zexi Li
99563805ec Merge pull request #18457 from ioito/automated-cherry-pick-of-#18456-upstream-release-3.11
Automated cherry pick of #18456: fix(region): add gpu log
2023-10-30 10:05:08 +08:00
Zexi Li
03b9501ccb Merge pull request #18473 from ioito/automated-cherry-pick-of-#18472-upstream-release-3.11
Automated cherry pick of #18472: fix(region): security group rule priority validate
2023-10-30 10:03:33 +08:00
Zexi Li
06f3ca8588 Merge pull request #18475 from wanyaoqi/automated-cherry-pick-of-#17671-upstream-release-3.11
Automated cherry pick of #17671: feat(region): add guest rescue api
2023-10-30 10:02:12 +08:00
boironic@gmail.com
7f0fdc3739 feat(region): add guest rescue api && download initrd from baremetal tftp server && add baremetal agent ip finder & update pic address & support ip kernel config. 2023-10-29 20:56:26 +08:00
屈轩
6fb42c4d2c fix(region): kvm server cnt (#18470) 2023-10-27 19:39:18 +08:00
ioito
3b98af9628 fix(region): security group rule priority validate 2023-10-27 19:35:54 +08:00
屈轩
3364a94082 fix(region): vendor update (#18467) 2023-10-27 16:40:50 +08:00
屈轩
0b3ae628c4 fix(region): vendor update (#18465) 2023-10-27 16:08:04 +08:00
屈轩
eb7eb8795b fix(region): aliyun cloud_auto enable burst (#18461) 2023-10-27 15:18:41 +08:00
Zexi Li
9064790c84 Merge pull request #18443 from swordqiu/automated-cherry-pick-of-#18442-upstream-release-3.11
Automated cherry pick of #18442: fix: support rocky linux guestfs
2023-10-27 10:04:14 +08:00
Zexi Li
af70eec115 Merge pull request #18449 from ioito/automated-cherry-pick-of-#18448-upstream-release-3.11
Automated cherry pick of #18448: fix(region): 避免esxi vm没有被真正删除
2023-10-27 10:03:05 +08:00
屈轩
7a6a962790 fix(region): remove useless code (#18455) 2023-10-26 18:35:07 +08:00
ioito
fc8c45e2de fix(region): add gpu log 2023-10-26 18:03:57 +08:00
屈轩
d867fd0251 fix(region): security group rule update (#18452) 2023-10-26 17:58:03 +08:00
ioito
fb911b41ab fix(region): 避免esxi vm没有被真正删除 2023-10-26 14:48:22 +08:00
Zexi Li
756fd92a27 Merge pull request #18446 from ioito/automated-cherry-pick-of-#18445-upstream-release-3.11
Automated cherry pick of #18445: fix(region): fix #18397 esxi vm set tags
2023-10-26 12:11:46 +08:00
ioito
a3b080334c fix(region): fix #18397 esxi vm set tags 2023-10-26 11:41:29 +08:00
屈轩
f03617c18f fix(region): vendor update (#18441) 2023-10-26 11:23:29 +08:00
Qiu Jian
f547d6bc47 fix: support rocky linux guestfs 2023-10-26 11:20:35 +08:00
Zexi Li
c1d148d4e3 Merge pull request #18417 from swordqiu/automated-cherry-pick-of-#18416-upstream-release-3.11
Automated cherry pick of #18416: fix: auto sync esxi host status periodically
2023-10-26 10:08:49 +08:00
Zexi Li
ecc63f3501 Merge pull request #18436 from wanyaoqi/automated-cherry-pick-of-#18435-upstream-release-3.11
Automated cherry pick of #18435: Fix/misc fix 20231025
2023-10-26 10:07:58 +08:00
Zexi Li
9ce1f2322c Merge pull request #18438 from ioito/automated-cherry-pick-of-#18434-upstream-release-3.11
Automated cherry pick of #18434: Hotfix/qx clean scheduler
2023-10-26 10:06:25 +08:00
ioito
f0ac779e55 fix(region): 避免频繁清理调度器缓存 2023-10-26 09:55:03 +08:00
wanyaoqi
835bdf2c15 fix(region): guest start check vcpu is enough 2023-10-25 23:55:26 +08:00
wanyaoqi
0508225799 fix(host): skip isolated device probe on kvm not support 2023-10-25 23:54:42 +08:00
wanyaoqi
069a9a8eaf fix(region): rebuild root update guest bios 2023-10-25 23:54:42 +08:00
屈轩
14300e2f91 fix(region): fix cloudaccount sync projectMapping (#18432)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-10-25 20:53:47 +08:00
gouqi11
204a059cae feat(cloudmon): support lbMetric for MetricTypeDriver (#18430)
Co-authored-by: 马鸿飞 <mahongfei@yunion.cn>
2023-10-25 20:38:02 +08:00
屈轩
675468f48c fix(region): vendor update (#18429) 2023-10-25 19:24:42 +08:00
屈轩
6476cea4dc fix(region): vendor update (#18426) 2023-10-25 18:24:53 +08:00
屈轩
860109369d fix(region): secgroup rule fix (#18415) 2023-10-25 17:58:13 +08:00
Zexi Li
82f1952842 Merge pull request #18419 from wanyaoqi/automated-cherry-pick-of-#18418-upstream-release-3.11
Automated cherry pick of #18418: fix(host): live migrate misc fix
2023-10-25 10:20:48 +08:00
wanyaoqi
601d539bba fix(host): live migrate misc fix 2023-10-25 01:59:01 +08:00
Qiu Jian
e89c3a78da fix: auto sync esxi host status periodically 2023-10-24 21:50:44 +08:00
Zexi Li
80b4caeeda feat(climc): always try to print id and name firstly (#18412) 2023-10-24 21:48:35 +08:00
Zexi Li
f1394bed02 feat(climc): always try to print id and name firstly (#18410) 2023-10-24 21:48:26 +08:00
屈轩
f4d34c8ee4 Revert "fix(common): remove service default policy (#18312)" (#18413)
This reverts commit 6ff9e75fb1.
2023-10-24 21:47:50 +08:00
Zexi Li
e2fb312311 Merge pull request #18386 from swordqiu/automated-cherry-pick-of-#18385-upstream-release-3.11
Automated cherry pick of #18385: fix: capabilities brand revisit
2023-10-24 20:01:47 +08:00
Zexi Li
e2af2f2602 Merge pull request #18409 from ioito/automated-cherry-pick-of-#18408-upstream-release-3.11
Automated cherry pick of #18408: fix(region): kube cluster brand
2023-10-24 19:50:14 +08:00
ioito
6fadaec519 fix(region): kube cluster brand 2023-10-24 18:50:26 +08:00
Zexi Li
30746be01e Merge pull request #18407 from gouqi11/automated-cherry-pick-of-#18396-upstream-release-3.11
Automated cherry pick of #18396: feat(notify): Allow direct notification sending
2023-10-24 15:39:00 +08:00
马鸿飞
b0ccc84260 feat(notify): Allow direct notification sending 2023-10-24 15:24:42 +08:00
Zexi Li
b7db6d4535 Merge pull request #18404 from zexi/automated-cherry-pick-of-#18403-upstream-release-3.11
Automated cherry pick of #18403: fix(scheduler): fetch host storages directly
2023-10-24 14:37:28 +08:00
Zexi Li
bdaf659a28 fix(scheduler): fetch host storages directly 2023-10-24 14:26:49 +08:00
Zexi Li
6583094e85 Merge pull request #18401 from ioito/automated-cherry-pick-of-#18400-upstream-release-3.11
Automated cherry pick of #18400: fix(region): aws eip not found error
2023-10-24 14:23:37 +08:00
ioito
631c255970 fix(region): aws eip not found error 2023-10-24 13:25:30 +08:00
Zexi Li
51f5b01c4e Merge pull request #18394 from wanyaoqi/automated-cherry-pick-of-#18393-upstream-release-3.11
Automated cherry pick of #18393: fix(host-deployer): deploy qga conf according hypervisor
2023-10-23 11:43:27 +08:00
Zexi Li
51ab18e0ba Merge pull request #18384 from wanyaoqi/automated-cherry-pick-of-#18383-upstream-release-3.11
Automated cherry pick of #18383: fix(region,host): live migrate disk driver determines the migration mode
2023-10-23 11:18:03 +08:00
Zexi Li
e0ab303771 Merge pull request #18390 from ioito/automated-cherry-pick-of-#18389-upstream-release-3.11
Automated cherry pick of #18389: fix(apigateway): baremetal usage
2023-10-23 11:17:15 +08:00
wanyaoqi
e8f4e85943 fix(host-deployer): deploy qga conf according hypervisor 2023-10-23 10:48:10 +08:00
ioito
6bf139297c fix(apigateway): baremetal usage 2023-10-23 10:38:14 +08:00
Zexi Li
6e679a88be Merge pull request #18356 from gouqi11/automated-cherry-pick-of-#18161-upstream-release-3.11
Automated cherry pick of #18161: feat(scheduledTask): support cycle_hour
2023-10-23 10:17:33 +08:00
Qiu Jian
e2a843f018 fix: capabilities brand revisit 2023-10-23 10:16:32 +08:00
wanyaoqi
679ddfa3d0 fix(region,host): live migrate disk driver determines the migration mode 2023-10-23 10:12:21 +08:00
马鸿飞
50bd35b558 feat(scheduledTask): support cycle_hour 2023-10-23 10:07:05 +08:00
Jian Qiu
675d453f02 fix: vpcagent sync error (#18382)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-23 09:27:32 +08:00
wanyaoqi
f5b1c828f1 feat(region,host): cloudpods guest convert to kvm guest (#18378) 2023-10-23 09:25:51 +08:00
Zexi Li
e97408dca8 fix(scheduler): improve scheduler prefer and avoid tags strategy (#18373) 2023-10-20 20:46:14 +08:00
Zexi Li
8a89981f79 Merge pull request #18366 from swordqiu/automated-cherry-pick-of-#18365-upstream-release-3.11
Automated cherry pick of #18365: fix: auto convert missing subformat images
2023-10-20 12:28:28 +08:00
Zexi Li
5215a7baff Merge pull request #18363 from swordqiu/automated-cherry-pick-of-#18362-upstream-release-3.11
Automated cherry pick of #18362: fix: fail to fetch admin ssh keypair
2023-10-20 10:35:18 +08:00
Qiu Jian
dd2a61e9a6 fix: auto convert missing subformat images 2023-10-20 10:23:51 +08:00
Qiu Jian
b394e58ee4 fix: fail to fetch admin ssh keypair 2023-10-20 05:42:05 +08:00
Zexi Li
7e7b6512f4 Merge pull request #18361 from ioito/automated-cherry-pick-of-#18360-upstream-release-3.11
Automated cherry pick of #18360: fix(region): aws lb sync panic
2023-10-19 20:34:13 +08:00
ioito
b7ec468b03 fix(region): aws lb sync panic 2023-10-19 20:15:21 +08:00
Jian Qiu
b6e1e9d226 fix: allow vmware network associate with multiple wires (#18341)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-19 09:15:40 +08:00
wanyaoqi
64310bf4df fix(host-deployer): change netdev prefix to "en" on nics has different driver (#18330)
Signed-off-by: wanyaoqi <d3lx.yq@gmail.com>
2023-10-18 20:40:46 +08:00
Jian Qiu
99f671d567 fix: missing project mapping body (#18353)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-18 20:39:38 +08:00
屈轩
d5a3913a1f fix: docgengo (#18351) 2023-10-18 06:19:10 -05:00
屈轩
a6bab03c85 feature: add support for for VolcEngine (#18349)
Co-authored-by: kongrui <kongr@lamda.nju.edu.cn>
2023-10-18 06:05:41 -05:00
Zexi Li
2e761505bf Merge pull request #18343 from swordqiu/automated-cherry-pick-of-#18342-upstream-release-3.11
Automated cherry pick of #18342: fix: unable to recognize anolis os
2023-10-18 15:00:30 +08:00
屈轩
ca89d83e4f fix(climc): 避免climc交互模式下--help自动退出 (#18339) 2023-10-17 20:58:49 -05:00
Qiu Jian
aafab22bb7 fix: unable to recognize anolis os 2023-10-18 01:54:29 +08:00
屈轩
6d49f8c5c8 fix(region): standardization stage name (#18300) 2023-10-18 01:26:36 +08:00
Zexi Li
c59daea668 Merge pull request #18323 from gouqi11/automated-cherry-pick-of-#18320-upstream-release-3.11
Automated cherry pick of #18320: fix(notify): fix role subscriber groupTimes
2023-10-17 12:24:11 +08:00
Zexi Li
dd151944ca Merge pull request #18326 from wanyaoqi/automated-cherry-pick-of-#18325-upstream-release-3.11
Automated cherry pick of #18325: fix(scheduler): isolated device predicate miss sriov nic
2023-10-17 11:51:10 +08:00
wanyaoqi
0fa98f7b82 fix(scheduler): isolated device predicate miss sriov nic 2023-10-16 16:22:19 +08:00
马鸿飞
99afc444a7 fix(notify): fix role subscriber groupTimes 2023-10-16 15:59:33 +08:00
屈轩
847459f2a8 fix(common): distinguish system and user log by is_system_account (#18317) 2023-10-15 20:58:09 -05:00
屈轩
6ff9e75fb1 fix(common): remove service default policy (#18312) 2023-10-13 14:00:39 +08:00
屈轩
115eb587e3 fix(region): show network details with dns (#18289) 2023-10-13 07:43:42 +08:00
屈轩
1b74a9c6a0 fix(keystone): policy result (#18285) 2023-10-13 07:41:12 +08:00
Jian Qiu
b4b9485068 fix: update vendor for edito retry (#18309)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-13 07:29:04 +08:00
Jian Qiu
4e9957c3f2 fix: climc server-logininfo action (#18296)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-12 20:19:02 +08:00
屈轩
afc77d0c7b fix(region): classify invalid access key error (#18305) 2023-10-12 20:17:49 +08:00
屈轩
05ab9311b3 fix(region): avoid ctyun signature verification failed (#18302) 2023-10-12 19:08:39 +08:00
屈轩
0809d6ecfa fix(region): remove ctyun useless env paramenter (#18293) 2023-10-12 18:06:12 +08:00
屈轩
d97ec1c7b5 fix(region): aws userdata error fix (#18290) 2023-10-12 17:27:31 +08:00
Jian Qiu
2a5ba4d77f fix: update vendor 20231012 for sqlchemy (#18282)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-12 16:56:59 +08:00
屈轩
8bd9b78e21 fix(region): history usage (#18260) 2023-10-12 16:30:59 +08:00
Zexi Li
7c836a4993 Merge pull request #18279 from gouqi11/automated-cherry-pick-of-#18267-upstream-release-3.11
Automated cherry pick of #18267: feat(notify): support db_dispatcher notify
2023-10-12 15:51:13 +08:00
马鸿飞
7423ca9726 feat(notify): support db_dispatcher notify 2023-10-12 15:39:54 +08:00
Zexi Li
a1e77ea061 Merge pull request #18276 from ioito/automated-cherry-pick-of-#18275-upstream-release-3.11
Automated cherry pick of #18275: fix(region): use project sshkeypair to ssh vm
2023-10-12 14:59:45 +08:00
wanyaoqi
accc92da16 fix(host): check qga connect is closed (#18272) 2023-10-12 14:49:02 +08:00
ioito
0d85f41098 fix(region): use project sshkeypair to ssh vm 2023-10-12 14:24:02 +08:00
Zexi Li
2881f82226 Merge pull request #18265 from ioito/automated-cherry-pick-of-#18264-upstream-release-3.11
Automated cherry pick of #18264: fix(region): dns record cname check
2023-10-11 18:09:26 +08:00
Zexi Li
2b33c44d59 Merge pull request #18254 from zexi/server-ip-regexp-list
feat(region): filter server ip_addrs by REGEXP
2023-10-11 17:19:24 +08:00
屈轩
b32444047d fix(region): wait vm deleted (#18262) 2023-10-11 17:19:15 +08:00
ioito
560444bc25 fix(region): dns record cname check 2023-10-11 17:12:30 +08:00
Zexi Li
0c0bc34e67 Merge pull request #18251 from swordqiu/automated-cherry-pick-of-#18250-upstream-release-3.11
Automated cherry pick of #18250: fix: guest start params revisit
2023-10-11 17:11:06 +08:00
Zexi Li
7104d73ba6 feat(region): filter server ip_addrs by REGEXP 2023-10-11 17:03:16 +08:00
屈轩
ff414105cb fix: vendor update (#18258) 2023-10-11 16:22:28 +08:00
Qiu Jian
02db6f01e7 fix: guest start params revisit 2023-10-11 05:43:57 +08:00
Zexi Li
ca2ebb35f4 Merge pull request #18249 from zexi/automated-cherry-pick-of-#18246-upstream-release-3.11
Automated cherry pick of #18246: fix(monitor): select host that isn't in source hosts as target
2023-10-10 20:04:19 +08:00
Zexi Li
b21702417a fix(monitor): select host that isn't in source hosts as target 2023-10-10 20:03:55 +08:00
Jian Qiu
83d02d2bf0 fix: allow specify desktop linux os that not allow root login (#18244)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-09 18:38:07 +08:00
wanyaoqi
17733cdd80 fix(host): host sysinfo metadata double quota (#18240) 2023-10-09 18:36:40 +08:00
Zexi Li
37f2bc3fef Merge pull request #18236 from wanyaoqi/automated-cherry-pick-of-#18235-upstream-release-3.11
Automated cherry pick of #18235: fix(host-deployer): deploy qga conf ensure /etc/sysconfig dir
2023-10-09 14:56:30 +08:00
Jian Qiu
c00028ccc6 fix: handle old style auth token (#18233)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-09 12:30:28 +08:00
wanyaoqi
45b744bc50 fix(host-deployer): deploy qga conf ensure /etc/sysconfig dir 2023-10-09 12:23:21 +08:00
Jian Qiu
638c5130c6 fix: unauthorized error should return 401 (#18230)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-08 21:54:21 +08:00
Jian Qiu
5d59e54085 fix: missing invalid token response (#18227)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-08 18:27:38 +08:00
Jian Qiu
e319338460 fix: shorten keystone token (#18223)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-08 11:20:35 +08:00
Zexi Li
f5d466e359 Merge pull request #18220 from gouqi11/automated-cherry-pick-of-#18219-upstream-release-3.11
Automated cherry pick of #18219: feat: support policy and cors for bucket
2023-10-07 17:56:29 +08:00
马鸿飞
5bfa0e03ee feat: support policy and cors for bucket 2023-10-07 17:51:20 +08:00
Zexi Li
27b6f8b8d6 Merge pull request #18211 from ioito/automated-cherry-pick-of-#18210-upstream-release-3.11
Automated cherry pick of #18210: fix(region): vendor update
2023-10-07 13:18:13 +08:00
Zexi Li
27bbc9512f Merge pull request #18208 from wanyaoqi/automated-cherry-pick-of-#18207-upstream-release-3.11
Automated cherry pick of #18207: feat(region,glance): from cloudaccount to enable vmdk target format
2023-10-07 13:16:01 +08:00
ioito
90566723a2 fix(region): vendor update 2023-10-07 10:58:18 +08:00
wanyaoqi
23a7b8f15f feat(region,glance): from cloudaccount to enable vmdk target format 2023-10-07 09:59:39 +08:00
Jian Qiu
8f4fe468ec fix: async refresh revoked tokens (#18205)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-06 13:45:18 +08:00
Zexi Li
c3d782c358 Merge pull request #18200 from swordqiu/automated-cherry-pick-of-#18199-upstream-release-3.11
Automated cherry pick of #18199: feature: invalidate auth token
2023-10-05 19:22:21 +08:00
Qiu Jian
9f7458b58f feature: invalidate auth token 2023-10-05 03:41:15 +08:00
Zexi Li
c811818017 Merge pull request #18190 from swordqiu/automated-cherry-pick-of-#18183-upstream-release-3.11
Automated cherry pick of #18183: feature: SUSE guest support
2023-10-04 00:38:13 +08:00
Qiu Jian
1d1d93858a feature: SUSE guest support 2023-10-02 00:34:19 +08:00
Jian Qiu
a2b17a5492 fix: rebuild root support deploy params (#18188)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-02 00:16:17 +08:00
Jian Qiu
16d380813d fix: host nics api (#18185)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-01 23:40:34 +08:00
Jian Qiu
7e44c015b3 fix: add apis for logininfo (#18181)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2023-10-01 23:39:58 +08:00
Zexi Li
5b066bfd8c Merge pull request #18163 from swordqiu/automated-cherry-pick-of-#18162-upstream-release-3.11
Automated cherry pick of #18162: fix: fail purge disk due to getMastHost failure
2023-09-27 22:52:30 +08:00
Zexi Li
28d541ba78 Merge pull request #18169 from zexi/automated-cherry-pick-of-#18167-upstream-release-3.11
Automated cherry pick of #18167: fix(scheduler): some joint resources are not synced
2023-09-27 22:51:42 +08:00
Zexi Li
f27087867a Merge pull request #18171 from zexi/automated-cherry-pick-of-#18072-upstream-release-3.11
Automated cherry pick of #18072: fix(climc): delete the backup machine from the offline host
2023-09-27 17:10:52 +08:00
hoganlxj
f24cf2fdb0 Update clean_host.sh 2023-09-27 17:09:04 +08:00
Zexi Li
7735720a5e fix(scheduler): some joint resources are not synced 2023-09-27 16:47:36 +08:00
Qiu Jian
e8a52c23be fix: fail purge disk due to getMastHost failure 2023-09-27 14:32:42 +08:00
屈轩
710905c1f2 fix(region): change project log detail (#18154) 2023-09-26 17:58:53 +08:00
Zexi Li
475e698227 Merge pull request #18157 from wanyaoqi/automated-cherry-pick-of-#18156-upstream-release-3.11
Automated cherry pick of #18156: fix(region): remove ansible restart network on guest sync
2023-09-26 17:42:56 +08:00
wanyaoqi
ea3e855655 fix(region): remove ansible restart network on guest sync 2023-09-26 15:47:19 +08:00
Zexi Li
76bd871ef8 Merge pull request #18151 from zexi/automated-cherry-pick-of-#18124-upstream-release-3.11
Automated cherry pick of #18124: fix: charset mismatch in tenant cache convert_ids
2023-09-25 16:58:33 +08:00
Qiu Jian
b6446c8007 fix: charset mismatch in tenant cache convert_ids 2023-09-25 16:58:12 +08:00
Zexi Li
bd3c32b3a3 Merge pull request #18150 from zexi/automated-cherry-pick-of-#18126-upstream-release-3.11
Automated cherry pick of #18126: fix(region): hide agent status
2023-09-25 16:56:53 +08:00
Zexi Li
27b0b342b4 fix(region): hide agent status 2023-09-25 16:56:09 +08:00
Zexi Li
ef52ad5f25 Merge pull request #18146 from ioito/automated-cherry-pick-of-#18145-upstream-release-3.11
Automated cherry pick of #18145: fix(region): aliyun health check tls error
2023-09-25 16:53:49 +08:00
屈轩
efdb5beb71 fix(region): avoid panic after created vm (#18142) 2023-09-25 15:12:43 +08:00
ioito
7de4c55dfc fix(region): aliyun health check tls error 2023-09-25 15:11:10 +08:00
Zexi Li
6ee8be68cd Merge pull request #18137 from ioito/automated-cherry-pick-of-#18136-upstream-release-3.11
Automated cherry pick of #18136: fix(region): account ctx unlock
2023-09-22 16:49:54 +08:00
Zexi Li
f59d2bd256 Merge pull request #18115 from ioito/automated-cherry-pick-of-#18114-upstream-release-3.11
Automated cherry pick of #18114: fix(region): network update detail error
2023-09-22 16:48:33 +08:00
ioito
1f6f9d6adc fix(region): account ctx unlock 2023-09-22 16:22:39 +08:00
屈轩
bac4faf202 fix(region): aws disk type (#18133) 2023-09-22 14:17:31 +08:00
ioito
c2546c31a7 fix(region): network update detail error 2023-09-22 10:11:06 +08:00
Zexi Li
ea50886aa1 Merge pull request #18097 from wanyaoqi/automated-cherry-pick-of-#18096-upstream-release-3.11
Automated cherry pick of #18096: Fix/backup guest prelaunch
2023-09-21 22:43:58 +08:00
Zexi Li
1cf6a5d9db Merge pull request #18092 from wanyaoqi/automated-cherry-pick-of-#18091-upstream-release-3.11
Automated cherry pick of #18091: fix(host): insert iso name not correct
2023-09-21 22:42:04 +08:00
Zexi Li
6cb3a055ae Merge pull request #18081 from wanyaoqi/automated-cherry-pick-of-#18080-upstream-release-3.11
Automated cherry pick of #18080: Fix/host delete validate
2023-09-21 22:41:26 +08:00
Zexi Li
a5b782fdeb Merge pull request #18067 from wanyaoqi/automated-cherry-pick-of-#18065-upstream-release-3.11
Automated cherry pick of #18065: fix(region,host): cancel migrate sync guest status
2023-09-21 22:40:37 +08:00
Zexi Li
9d94a7355d Merge pull request #18077 from wanyaoqi/automated-cherry-pick-of-#18076-upstream-release-3.11
Automated cherry pick of #18076: fix(region,host): guest save image restart not work
2023-09-21 22:39:18 +08:00
Zexi Li
4cb465ab35 Merge pull request #18088 from wanyaoqi/automated-cherry-pick-of-#17858-upstream-release-3.11
Automated cherry pick of #17858: feat(region,host,host-deployer): add qga set network
2023-09-21 20:57:02 +08:00
Zexi Li
00a1659ce8 Merge pull request #18074 from wanyaoqi/automated-cherry-pick-of-#18073-upstream-release-3.11
Automated cherry pick of #18073: feat(region): host list filter by host storage type
2023-09-21 20:54:54 +08:00
屈轩
3d329d7412 fix(esxi-agent): vmware hostname (#18122) 2023-09-21 20:50:24 +08:00
屈轩
7c62173d3f fix(region): cloudpods userdata (#18118) 2023-09-21 20:49:32 +08:00
屈轩
3c14711346 fix(region): avoid deadlock for delete account (#18100) 2023-09-21 14:56:30 +08:00
屈轩
a8ba3a4ec5 fix(region): fix #18106 remove change chonfig stop charing restrict (#18108) 2023-09-21 14:55:23 +08:00
屈轩
3daf38b6a0 fix(region): guest vnc error (#18103) 2023-09-21 14:54:40 +08:00
屈轩
fcc5b2eae1 fix(region): server sku cpu arch filter (#18111) 2023-09-21 14:53:07 +08:00
wanyaoqi
9d7a49ebdf fix(host): avoid panic on host record not init 2023-09-21 11:04:39 +08:00
wanyaoqi
3d1507b0e4 fix(host): cancel backup guest prelaunch 2023-09-21 11:04:39 +08:00
wanyaoqi
e5be78e740 fix(host): insert iso name not correct 2023-09-20 21:24:56 +08:00
屈轩
22d0608786 fix(region): kube cluster version (#18084) 2023-09-20 20:18:16 +08:00
屈轩
2e74e42bde fix(region): vendor update (#18087) 2023-09-20 20:17:24 +08:00
chentianxiang
260a9cbe87 feat(region,host,host-deployer):use qga set network 2023-09-20 20:07:24 +08:00
wanyaoqi
1f4079a863 fix(region): validate is reserve all cpus 2023-09-20 19:41:04 +08:00
wanyaoqi
53d4b0c1b7 fix(region): host delete validate backup guests 2023-09-20 19:41:04 +08:00
wanyaoqi
a538e215b8 fix(region,host): guest save image restart not work 2023-09-20 19:37:25 +08:00
wanyaoqi
00a1ddc508 feat(region): host list filter by host storage type 2023-09-20 19:34:30 +08:00
wanyaoqi
a49148c7e4 fix(region,host): cancel migrate sync guest status 2023-09-20 00:21:02 +08:00
4274 changed files with 463846 additions and 160433 deletions

View File

@@ -7,7 +7,7 @@ jobs:
requires:
- check
docker:
- image: yunion/centos-build:go-1.18.3-0
- image: yunion/centos-build:go-1.21.10-0
environment:
ONECLOUD_CI_BUILD: "1"

38
.github/workflows/ci-pr-build-test.yml vendored Normal file
View File

@@ -0,0 +1,38 @@
name: Building and test for PR
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
build_and_test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: '1.21'
- name: Install check tools
shell: bash
run: |
set -o xtrace
git clone --branch yun --depth 4 https://github.com/yousong/tools && cd tools
go build ./cmd/goimports && sudo cp goimports /usr/bin/ && cd .. && rm -rf tools
git clone --depth 4 https://github.com/yousong/y18n && cd y18n
go build . && sudo cp y18n /usr/bin && cd .. && rm -rf y18n
- name: Test and build
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
make -j3 check
make test
targets="$(find cmd -mindepth 1 -maxdepth 1 -type d | grep -v cmd/host-image | grep -v torrent)"
echo $targets | tr ' ' '\n'
make $targets
ls -lh _output/bin

View File

@@ -22,7 +22,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -20,7 +20,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -21,7 +21,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -19,7 +19,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -19,7 +19,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -24,7 +24,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -20,7 +20,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: '1.18'
go-version: '1.21'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2

View File

@@ -81,7 +81,7 @@ gencopyright:
@bash scripts/gencopyright.sh pkg cmd
test:
@go test $(GO_BUILD_FLAGS) $(shell go list ./... | egrep -v 'host-image|hostimage')
@go test $(GO_BUILD_FLAGS) $(shell go list ./... | egrep -v 'host-image|hostimage|torrent')
vet:
go vet ./...
@@ -282,7 +282,7 @@ dep:
@echo "$$depDeprecated"
@$(MAKE) mod
RELEASE_BRANCH:=master
RELEASE_BRANCH:=release/3.11
GOPROXY ?= direct
mod:
@@ -349,7 +349,7 @@ image:
.PHONY: image
image-telegraf-raid-plugin:
VERSION=release-1.6.4 ARCH=all make image telegraf-raid-plugin
VERSION=release-1.6.5 ARCH=all make image telegraf-raid-plugin
%:
@:

View File

@@ -8,8 +8,8 @@ endif
ModBaseName:=$(notdir $(ModName))
DockerImageRegistry?=registry.cn-beijing.aliyuncs.com
DockerImageAlpineBuild?=$(DockerImageRegistry)/yunionio/alpine-build:3.16.0-go-1.18.2-0
DockerImageCentOSBuild?=$(DockerImageRegistry)/yunionio/centos-build:go-1.18.3-0
DockerImageAlpineBuild?=$(DockerImageRegistry)/yunionio/alpine-build:3.19.0-go-1.21.10-0
DockerImageCentOSBuild?=$(DockerImageRegistry)/yunionio/centos-build:go-1.21.10-0
EnvIf=$(if $($(1)),$(1)=$($(1)))

View File

@@ -1,8 +1,21 @@
export PATH=/opt/yunion/bin:$PATH
if [ -f /etc/profile.d/bash_completion.sh ]; then
source /etc/profile.d/bash_completion.sh
fi
test -f /etc/yunion/rcadmin && source /etc/yunion/rcadmin
if [ -n "$OS_AUTH_TOKEN" ]; then
test -n "$OS_USERNAME" && unset OS_USERNAME
test -n "$OS_PASSWORD" && unset OS_PASSWORD
test -n "$OS_DOMAIN_NAME" && unset OS_DOMAIN_NAME
test -n "$OS_ACCESS_KEY" && unset OS_ACCESS_KEY
test -n "$OS_SECRET_KEY" && unset OS_SECRET_KEY
fi
source <(climc --completion bash)
source <(kubectl completion bash)
echo "Welcome to Cloud Shell :-) You may execute climc and other command tools in this shell."
echo "Please exec 'climc' to get started"

View File

@@ -47,6 +47,11 @@ do
climc server-purge $i > /dev/null
done
for i in $(climc server-list --admin --limit 2048 --system --filter "backup_host_id.equals($HOSTID)" | egrep '[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}' | awk '{print $2}')
do
climc server-delete-backup $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}')

View File

@@ -0,0 +1,35 @@
<?xml version="1.0"?>
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="https://www.volcengine.com/">
<SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol" WantAssertionsSigned="true">
<KeyDescriptor use="signing">
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:X509Data>
<ds:X509Certificate>MIIDJjCCAg6gAwIBAgIUF3lH8/cdlQeyPBqt066RFnt3cI4wDQYJKoZIhvcNAQELBQAwJTEjMCEGA1UEAxMadXJuOnZvbGNlbmdpbmU6d2Vic2VydmljZXMwHhcNMjMwODA4MDIzNzI4WhcNMzMwODIxMTYwMDAwWjAlMSMwIQYDVQQDExp1cm46dm9sY2VuZ2luZTp3ZWJzZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPZ+nhODpFTe+A8PbuZYA5XDQ04WckV1A5U90tKaaUX5uKLUYfDtFA1TwMO/qG87LU/0Pxs4FhgZJkUOeBHkyYzzXZQvtfsJ9frcKkcTjX/WF4XJyitXCULSjhcclMS3gOqeI/Mo3P90KutfhNli/mAHQJaRsuPFG4ZwBusbUo8i5sqBqt/Sg8JapH7DjEU2mN1165o59gavPGSByPeEuu28EkivVFcI7Jox5ztwgMrOYY+pYP9GeSurzpyLq3CfvvahTsAJjuHDHTTnYNcq/I3VOap/y4cOU6vgxcQvBmgb+CBvGldjn0em3BIn5meQwuB6jfQ7kqBaO1PRD1nhDTMCAwEAAaNOMEwwSgYIKwYBBQUHAQEEPjA8MDoGCCsGAQUFBzABhi5odHRwOi8vbmV4dXMtcHJvZHVjdGlvbi5ieXRlZGFuY2UubmV0L3BjYS9vY3NwMA0GCSqGSIb3DQEBCwUAA4IBAQBxySDr9TPJxRN+otrFDaV8HSeFKUUSO3+r8bEVAXmS+xUsdUOZbaf2r/g+eKrW58dpn+iBWTAAKug9Jwe5KVGqB7G5r2r6k/eI5dvv5r/Fr5T7NppRCXKQTQiAhrrVlqttsagPztJ6LmVAcm4sh4Ckx99FgibQCbT/zui+c6IUyEQcVIwtmoPANl3K2Yn85t+G+Cu9xxXY0JPlZcUHntHg0R0PUWc3LuzLXnff7JWEzPyhMUBLpQk5BltxuD5cTGCA6WafJuBTAqkt48VN0MFTP5c5m3PJFz8Ro1GLY8hw1uhUEx28DKBkQSGpkZNx0oJXETIDpSBfD0dHWBvZQPd0</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</KeyDescriptor>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:entity</NameIDFormat>
<AssertionConsumerService index="1" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://signin.volcengine.com/saml/sso"/>
<AttributeConsumingService index="1">
<ServiceName xml:lang="en">Volcengine Single Sign-On</ServiceName>
<RequestedAttribute isRequired="true" Name="https://www.volcengine.com/SAML/Attributes/Identity" FriendlyName="Identity"/>
<RequestedAttribute isRequired="true" Name="https://www.volcengine.com/SAML/Attributes/SessionName" FriendlyName="SessionName"/>
<RequestedAttribute isRequired="false" Name="https://www.volcengine.com/SAML/Attributes/SessionDuration" FriendlyName="SessionDuration"/>
</AttributeConsumingService>
</SPSSODescriptor>
<Organization>
<OrganizationName xml:lang="en">Volcengine, Inc.</OrganizationName>
<OrganizationDisplayName xml:lang="en">Volcengine</OrganizationDisplayName>
<OrganizationURL xml:lang="en">https://www.volcengine.com</OrganizationURL>
</Organization>
</EntityDescriptor>

View File

@@ -1,7 +1,7 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:v1.1.1
# install playbook and telegraf install pkg
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.4.0 /opt/yunion/playbook /opt/yunion/playbook
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.4.0 /opt/yunion/ansible-install-pkg /opt/yunion/ansible-install-pkg
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.5.2 /opt/yunion/playbook /opt/yunion/playbook
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.5.2 /opt/yunion/ansible-install-pkg /opt/yunion/ansible-install-pkg
ADD ./_output/alpine-build/bin/ansibleserver /opt/yunion/bin/ansibleserver

View File

@@ -9,12 +9,20 @@ RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /e
# openssh-client, for ansible ssh connection
# git, ca-certificates, for fetching ansible roles
RUN set -x \
&& apk update \
&& apk add openssh-client \
&& apk add sshpass \
&& apk add ansible \
&& apk add py3-pip \
&& apk add tzdata git ca-certificates \
&& rm -rf /var/cache/apk/*
&& apk update \
&& apk add openssh-client \
&& apk add sshpass \
&& apk add py3-pip \
&& apk add tzdata git ca-certificates
RUN pip3 install pywinrm
RUN apk add --no-cache openssh openssl curl rsync pv mariadb-client
RUN apk add --no-cache --virtual .build-dependencies \
libffi-dev openssl-dev python3-dev build-base py-setuptools rust cargo mariadb-dev
# ansible should be installed
# after setuptools and wheel
RUN pip3 install -U pip setuptools wheel \
&& pip3 install paramiko mysqlclient pywinrm \
&& pip3 install 'ansible<=9.0.0' \
&& apk del --no-network .build-dependencies \
&& rm -rf /root/.cache /root/.cargo /var/cache/apk/*

View File

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

View File

@@ -1,7 +1,7 @@
#FROM --platform=linux/amd64 registry.cn-beijing.aliyuncs.com/yunionio/centos-build:1.1-4 as build
#RUN yum install -y https://iso.yunion.cn/vm-images/baremetal-pxerom-1.1.0-21092209.x86_64.rpm
#RUN yum install -y http://192.168.23.50:8083/baremetal-pxerom-1.1.0-21092209.x86_64.rpm
FROM registry.cn-beijing.aliyuncs.com/yunionio/yunionos:v0.1.8-20230812.0 as yunionos
FROM registry.cn-beijing.aliyuncs.com/yunionio/yunionos:v3.10.8-20231215.0 as yunionos
FROM centos:8 as grub-stage

View File

@@ -0,0 +1,6 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5-1
ADD ./_output/alpine-build/bin/dhcprelay /opt/yunion/bin/dhcprelay
ENV PATH $PATH:/opt/yunion/bin
WORKDIR /opt/yunion/bin

View File

@@ -1,3 +1,5 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.4.0 as file-repo
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.2
MAINTAINER "Rain Zheng <zhengyu@yunion.com>"
@@ -11,12 +13,13 @@ RUN set -x \
# install default playbook and install pkg
Run mkdir -p /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf-1.19.2-yn~be742cbf-0.x86_64.rpm -P /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf-1.19.2-yn~be742cbf-0.aarch64.rpm -P /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf_1.19.2-yn~be742cbf-0_arm64.deb -P /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf_1.19.2-yn~be742cbf-0_amd64.deb -P /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf-1.19.2-yn~be742cbf_windows_amd64.zip -P /opt/yunion/ansible-install-pkg
Run wget https://yunioniso.oss-cn-beijing.aliyuncs.com/rpms/telegraf/telegraf-1.19.2-yn~be742cbf_windows_i386.zip -P /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf-1.19.2-yn~be742cbf-0.x86_64.rpm /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf-1.19.2-yn~be742cbf-0.aarch64.rpm /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf_1.19.2-yn~be742cbf-0_arm64.deb /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf_1.19.2-yn~be742cbf-0_amd64.deb /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf-1.19.2-yn~be742cbf_windows_amd64.zip /opt/yunion/ansible-install-pkg
COPY --from=file-repo /opt/yunion/ansible-install-pkg/telegraf-1.19.2-yn~be742cbf_windows_i386.zip /opt/yunion/ansible-install-pkg
Run mkdir -p /opt/yunion/playbook
Run mkdir /opt/yunion/playbook/monitor-agent

View File

@@ -0,0 +1,214 @@
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
#
#
# Dockerfile for guacamole-server
#
# The Alpine Linux image that should be used as the basis for the guacd image
ARG ALPINE_BASE_IMAGE=latest
FROM alpine:${ALPINE_BASE_IMAGE} AS builder
ARG TARGETPLATFORM
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
# Install build dependencies
RUN apk add --no-cache \
autoconf \
automake \
build-base \
cairo-dev \
cmake \
cunit-dev \
git \
grep \
libjpeg-turbo-dev \
libpng-dev \
libtool \
libwebp-dev \
make \
openssl1.1-compat-dev \
pango-dev \
pulseaudio-dev \
util-linux-dev
# Copy source to container for sake of build
ARG BUILD_DIR=/tmp/guacamole-server
ARG GUAC_VER=1.5.3
RUN git clone --branch=${GUAC_VER} https://github.com/apache/guacamole-server.git /tmp/guacamole-server
#
# Base directory for installed build artifacts.
#
# NOTE: Due to limitations of the Docker image build process, this value is
# duplicated in an ARG in the second stage of the build.
#
ARG PREFIX_DIR=/opt/guacamole
#
# Automatically select the latest versions of each core protocol support
# library (these can be overridden at build time if a specific version is
# needed)
#
ARG WITH_FREERDP='2(\.\d+)+'
ARG WITH_LIBSSH2='libssh2-\d+(\.\d+)+'
ARG WITH_LIBTELNET='\d+(\.\d+)+'
ARG WITH_LIBVNCCLIENT='LibVNCServer-\d+(\.\d+)+'
ARG WITH_LIBWEBSOCKETS='v\d+(\.\d+)+'
#
# Default build options for each core protocol support library, as well as
# guacamole-server itself (these can be overridden at build time if different
# options are needed)
#
ARG FREERDP_OPTS="\
-DBUILTIN_CHANNELS=OFF \
-DCHANNEL_URBDRC=OFF \
-DWITH_ALSA=OFF \
-DWITH_CAIRO=ON \
-DWITH_CHANNELS=ON \
-DWITH_CLIENT=ON \
-DWITH_CUPS=OFF \
-DWITH_DIRECTFB=OFF \
-DWITH_FFMPEG=OFF \
-DWITH_GSM=OFF \
-DWITH_GSSAPI=OFF \
-DWITH_IPP=OFF \
-DWITH_JPEG=ON \
-DWITH_LIBSYSTEMD=OFF \
-DWITH_MANPAGES=OFF \
-DWITH_OPENH264=OFF \
-DWITH_OPENSSL=ON \
-DWITH_OSS=OFF \
-DWITH_PCSC=OFF \
-DWITH_PULSE=OFF \
-DWITH_SERVER=OFF \
-DWITH_SERVER_INTERFACE=OFF \
-DWITH_SHADOW_MAC=OFF \
-DWITH_SHADOW_X11=OFF \
-DWITH_SSE2=ON \
-DWITH_WAYLAND=OFF \
-DWITH_X11=OFF \
-DWITH_X264=OFF \
-DWITH_XCURSOR=ON \
-DWITH_XEXT=ON \
-DWITH_XI=OFF \
-DWITH_XINERAMA=OFF \
-DWITH_XKBFILE=ON \
-DWITH_XRENDER=OFF \
-DWITH_XTEST=OFF \
-DWITH_XV=OFF \
-DWITH_ZLIB=ON"
ARG GUACAMOLE_SERVER_OPTS="\
--disable-guaclog"
ARG LIBSSH2_OPTS="\
-DBUILD_EXAMPLES=OFF \
-DBUILD_SHARED_LIBS=ON"
ARG LIBTELNET_OPTS="\
--disable-static \
--disable-util"
ARG LIBVNCCLIENT_OPTS=""
ARG LIBWEBSOCKETS_OPTS="\
-DDISABLE_WERROR=ON \
-DLWS_WITHOUT_SERVER=ON \
-DLWS_WITHOUT_TESTAPPS=ON \
-DLWS_WITHOUT_TEST_CLIENT=ON \
-DLWS_WITHOUT_TEST_PING=ON \
-DLWS_WITHOUT_TEST_SERVER=ON \
-DLWS_WITHOUT_TEST_SERVER_EXTPOLL=ON \
-DLWS_WITH_STATIC=OFF"
# Build guacamole-server and its core protocol library dependencies
RUN echo "$TARGETPLATFORM"
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; \
then FREERDP_OPTS="${FREERDP_OPTS} -DWITH_SSE2=ON" && echo "SSE2 active"; \
else FREERDP_OPTS="${FREERDP_OPTS} -DWITH_SSE2=OFF" && echo "SSE2 disabled"; \
fi && ${BUILD_DIR}/src/guacd-docker/bin/build-all.sh
# Record the packages of all runtime library dependencies
RUN ${BUILD_DIR}/src/guacd-docker/bin/list-dependencies.sh \
${PREFIX_DIR}/sbin/guacd \
${PREFIX_DIR}/lib/libguac-client-*.so \
${PREFIX_DIR}/lib/freerdp2/*guac*.so \
> ${PREFIX_DIR}/DEPENDENCIES
# Use same Alpine version as the base for the runtime image
FROM alpine:${ALPINE_BASE_IMAGE}
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
#
# Base directory for installed build artifacts. See also the
# CMD directive at the end of this build stage.
#
# NOTE: Due to limitations of the Docker image build process, this value is
# duplicated in an ARG in the first stage of the build.
#
ARG PREFIX_DIR=/opt/guacamole
# Runtime environment
ENV LC_ALL=C.UTF-8
ENV LD_LIBRARY_PATH=${PREFIX_DIR}/lib
ENV GUACD_LOG_LEVEL=info
# Copy build artifacts into this stage
COPY --from=builder ${PREFIX_DIR} ${PREFIX_DIR}
# Bring runtime environment up to date and install runtime dependencies
RUN apk add --no-cache \
ca-certificates \
ghostscript \
netcat-openbsd \
shadow \
terminus-font \
ttf-dejavu \
ttf-liberation \
util-linux-login && \
xargs apk add --no-cache < ${PREFIX_DIR}/DEPENDENCIES
# Checks the operating status every 5 minutes with a timeout of 5 seconds
HEALTHCHECK --interval=5m --timeout=5s CMD nc -z 127.0.0.1 4822 || exit 1
# Create a new user guacd
ARG UID=1000
ARG GID=1000
RUN groupadd --gid $GID guacd
RUN useradd --system --create-home --shell /sbin/nologin --uid $UID --gid $GID guacd
RUN mkdir -p /opt/cloudpods
RUN chown -R guacd:guacd /opt/cloudpods
# Run with user guacd
USER guacd
# Expose the default listener port
EXPOSE 4822
# Start guacd, listening on port 0.0.0.0:4822
#
# Note the path here MUST correspond to the value specified in the
# PREFIX_DIR build argument.
#
CMD /opt/guacamole/sbin/guacd -b 0.0.0.0 -L $GUACD_LOG_LEVEL -f

View File

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

View File

@@ -15,7 +15,7 @@ onecloud-base:
onecloud-base-3-15-4:
$(DOCKER_BUILDX)/onecloud-base:$(ONECLOUD_BASE_VERSION_3-15-4) -f ./Dockerfile.onecloud-base-3-15-4 .
ANSIBLESERVER_BASE = v1.1.1
ANSIBLESERVER_BASE = v1.1.2
ansibleserver-base:
$(DOCKER_BUILDX)/ansibleserver-base:$(ANSIBLESERVER_BASE) -f ./Dockerfile.ansibleserver-base .
@@ -30,7 +30,7 @@ WEBCONSOLE_BASE_VERSION = 20230731.2
webconsole-base:
$(DOCKER_BUILDX)/webconsole-base:$(WEBCONSOLE_BASE_VERSION) -f ./Dockerfile.webconsole-base .
BAREMETAL_BASE_VERSION = v0.3.9-20230812.0
BAREMETAL_BASE_VERSION = v0.3.9-20231219.1
baremetal-base:
$(DOCKER_BUILDX)/baremetal-base:$(BAREMETAL_BASE_VERSION) -f ./Dockerfile.baremetal-base .
@@ -44,7 +44,7 @@ GLANCE_BASE_VERSION = v0.0.1
glance-base:
$(DOCKER_BUILDX)/glance-base:$(GLANCE_BASE_VERSION) -f ./Dockerfile.glance-base .
FILE_REPO_VERSION = v0.3.3
FILE_REPO_VERSION = v0.5.2
file-repo:
$(DOCKER_BUILDX)/file-repo:$(FILE_REPO_VERSION) -f ./Dockerfile.file-repo .
@@ -64,3 +64,13 @@ host-image:
LBAGENT_BASE_VERSION = v0.0.3
lbagent-base:
$(DOCKER_BUILDX)/lbagent-base:$(LBAGENT_BASE_VERSION) -f ./Dockerfile.lbagent-base .
GUACD_VERSION=1.5.3
guacd:
docker buildx build --platform linux/arm64 --push \
-t registry.cn-beijing.aliyuncs.com/yunionio/guacd:$(GUACD_VERSION)-arm64 -f ./Dockerfile.guacd .
docker buildx build --platform linux/amd64 --push \
-t registry.cn-beijing.aliyuncs.com/yunionio/guacd:$(GUACD_VERSION)-amd64 -f ./Dockerfile.guacd .
docker buildx imagetools create -t registry.cn-beijing.aliyuncs.com/yunionio/guacd:$(GUACD_VERSION) \
registry.cn-beijing.aliyuncs.com/yunionio/guacd:$(GUACD_VERSION)-amd64 \
registry.cn-beijing.aliyuncs.com/yunionio/guacd:$(GUACD_VERSION)-arm64

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:3.16.0-go-1.18.2-0 as build
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:3.19.0-go-1.21.10-0 as build
ARG TARGETPLATFORM
ARG BUILDPLATFORM
RUN mkdir -p /root/go/src/yunion.io/x/onecloud

View File

@@ -3,7 +3,7 @@
触发时间: {{.start_time}}
报警级别: {{.level}}
触发条件: {{.description | unescaped}}
资源数量:{{len .matches}}
报警数量:{{len .matches}}
资源名称:{{.resource_name}}
详情地址: {{.web_url}}

View File

@@ -3,7 +3,7 @@ AlertName: {{.name}}
Time: {{.start_time}}
Level: {{.level}}
TriggerCondition: {{.description | unescaped}}
ResourceCount: {{len .matches}}
AlertCount: {{len .matches}}
ResourceName: {{.resource_name}}
WebUrl: {{.web_url}}

View File

@@ -35,4 +35,5 @@ func init() {
cmd.Perform("set-users", &cloudid.CloudgroupUserOptions{})
cmd.Perform("public", &cloudid.CloudgroupPublicOptions{})
cmd.Perform("private", &cloudid.CloudgroupIdOptions{})
cmd.Get("saml", &cloudid.CloudgroupIdOptions{})
}

View File

@@ -1,29 +0,0 @@
// 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 cloudid
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/cloudid"
"yunion.io/x/onecloud/pkg/mcclient/options/cloudid"
)
func init() {
cmd := shell.NewResourceCmd(&modules.Cloudgroupcaches).WithKeyword("cloud-group-cache")
cmd.List(&cloudid.CloudgroupcacheListOptions{})
cmd.Show(&cloudid.CloudgroupcacheIdOption{})
cmd.Delete(&cloudid.CloudgroupcacheIdOption{})
cmd.Perform("syncstatus", &cloudid.CloudgroupcacheIdOption{})
}

View File

@@ -25,5 +25,4 @@ func init() {
cmd.List(&cloudid.CloudroleListOptions{})
cmd.Delete(&cloudid.CloudroleIdOptions{})
cmd.Show(&cloudid.CloudroleIdOptions{})
cmd.Perform("purge", &cloudid.CloudroleIdOptions{})
}

View File

@@ -30,14 +30,13 @@ func init() {
cmd.Show(&cloudid.ClouduserIdOption{})
cmd.Custom(shell.CustomActionGet, "login-info", &cloudid.ClouduserIdOption{})
cmd.Delete(&cloudid.ClouduserIdOption{})
cmd.Perform("sync", &cloudid.ClouduserSyncOptions{})
cmd.Perform("syncstatus", &cloudid.ClouduserIdOption{})
cmd.Perform("attach-policy", &cloudid.ClouduserPolicyOptions{})
cmd.Perform("detach-policy", &cloudid.ClouduserPolicyOptions{})
cmd.Perform("change-owner", &cloudid.ClouduserChangeOwnerOptions{})
cmd.Perform("reset-password", &cloudid.ClouduserResetPasswordOptions{})
cmd.Perform("cloud-user-join-group", &cloudid.ClouduserGroupOptions{})
cmd.Perform("cloud-user-leave-group", &cloudid.ClouduserGroupOptions{})
cmd.Perform("join-group", &cloudid.ClouduserGroupOptions{})
cmd.Perform("leave-group", &cloudid.ClouduserGroupOptions{})
cmd.GetWithCustomShow("access-keys", func(result jsonutils.JSONObject) {
ret := modulebase.JSON2ListResult(result)
shell.PrintList(ret, nil)

View File

@@ -25,6 +25,6 @@ func init() {
cmd := shell.NewResourceCmd(&modules.AccessGroups).WithKeyword("access-group")
cmd.List(&compute.AccessGroupListOptions{})
cmd.Delete(&options.BaseIdOptions{})
cmd.Create(&options.BaseCreateOptions{})
cmd.Create(&compute.AccessGroupCreateOptions{})
cmd.Perform("syncstatus", &options.BaseIdOptions{})
}

View File

@@ -25,6 +25,10 @@ func init() {
cmd.List(&compute.AppListOptions{})
cmd.Show(&compute.AppIdOptions{})
cmd.Perform("syncstatus", &compute.AppIdOptions{})
cmd.Get("hybird-connections", &compute.AppIdOptions{})
cmd.Get("certificates", &compute.AppIdOptions{})
cmd.Get("backups", &compute.AppIdOptions{})
cmd.Get("custom-domains", &compute.AppIdOptions{})
cmd1 := shell.NewResourceCmd(&modules.AppEnvironments)
cmd1.List(&compute.AppEnvironmentListOptions{})

View File

@@ -26,6 +26,7 @@ func init() {
bsCmd.List(&compute.BackupStorageListOptions{})
bsCmd.Show(&compute.BackupStorageIdOptions{})
bsCmd.Create(&compute.BackupStorageCreateOptions{})
bsCmd.Update(&compute.BackupStorageUpdateOptions{})
bsCmd.Delete(&compute.BackupStorageIdOptions{})
bsCmd.Perform("public", &options.BasePublicOptions{})
bsCmd.Perform("private", &options.BaseIdOptions{})
@@ -49,4 +50,10 @@ func init() {
ibCmd.Create(&compute.InstanceBackupManagerCreateFromPackageOptions{})
ibCmd.Perform("syncstatus", &compute.DiskBackupSyncstatusOptions{})
ibCmd.Perform("set-class-metadata", &options.ResourceMetadataOptions{})
hbsCmd := shell.NewJointCmd(&modules.HostBackupstorages)
hbsCmd.List(&compute.HostBackupStorageListOptions{})
hbsCmd.Show(&compute.HostBackupStorageJoinOptions{})
hbsCmd.Attach(&compute.HostBackupStorageJoinOptions{})
hbsCmd.Detach(&compute.HostBackupStorageJoinOptions{})
}

View File

@@ -0,0 +1,50 @@
// 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 compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
baremetalmodules "yunion.io/x/onecloud/pkg/mcclient/modules/compute/baremetal"
baremetaloptions "yunion.io/x/onecloud/pkg/mcclient/options/compute/baremetal"
)
func init() {
cmd := shell.NewResourceCmd(&baremetalmodules.BaremetalProfiles)
cmd.List(new(baremetaloptions.BaremetalProfileListOptions))
cmd.Show(new(baremetaloptions.BaremetalProfileIdOptions))
cmd.Delete(new(baremetaloptions.BaremetalProfileIdOptions))
type BaremetalProfileMatchOpts struct {
OEMNAME string
MODEL string
}
R(&BaremetalProfileMatchOpts{}, "baremetal-profile-match", "find match baremetal profile by oemname and model", func(s *mcclient.ClientSession, args *BaremetalProfileMatchOpts) error {
specs, err := baremetalmodules.BaremetalProfiles.GetMatchProfiles(s, args.OEMNAME, args.MODEL)
if err != nil {
return errors.Wrap(err, "GetMatchProfiles")
}
listResults := printutils.ListResult{}
for _, spec := range specs {
listResults.Data = append(listResults.Data, jsonutils.Marshal(spec))
}
printList(&listResults, nil)
return nil
})
}

View File

@@ -15,62 +15,17 @@
package compute
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
opts "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
type CachedImageListOptions struct {
options.BaseListOptions
ImageType string `help:"image type" choices:"system|customized|shared|market"`
Region string `help:"show images cached at cloud region"`
Zone string `help:"show images cached at zone"`
HostSchedtagId string `help:"filter cached image with host schedtag"`
Valid *bool `help:"valid cachedimage"`
}
R(&CachedImageListOptions{}, "cached-image-list", "List cached images", func(s *mcclient.ClientSession, args *CachedImageListOptions) error {
params, err := options.ListStructToParams(args)
if err != nil {
return err
}
result, err := modules.Cachedimages.List(s, params)
if err != nil {
return err
}
printList(result, modules.Cachedimages.GetColumns(s))
return nil
})
type CachedImageShowOptions struct {
ID string `help:"ID or Name of the cached image to show"`
}
R(&CachedImageShowOptions{}, "cached-image-show", "Show cached image details", func(s *mcclient.ClientSession, args *CachedImageShowOptions) error {
result, err := modules.Cachedimages.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&CachedImageShowOptions{}, "cached-image-refresh", "Refresh cached image details", func(s *mcclient.ClientSession, args *CachedImageShowOptions) error {
result, err := modules.Cachedimages.PerformAction(s, args.ID, "refresh", nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type CachedImageDeleteOptions struct {
ID []string `help:"ID or Name of the cached image to show"`
}
R(&CachedImageDeleteOptions{}, "cached-image-delete", "Remove cached image information", func(s *mcclient.ClientSession, args *CachedImageDeleteOptions) error {
results := modules.Cachedimages.BatchDelete(s, args.ID, nil)
printBatchResults(results, modules.Cachedimages.GetColumns(s))
return nil
})
cmd := shell.NewResourceCmd(&modules.Cachedimages).WithKeyword("cached-image")
cmd.List(&options.CachedImageListOptions{})
cmd.Show(&opts.BaseIdOptions{})
cmd.PerformClass("cache-image", &options.CachedImageCacheImageOptions{})
cmd.Perform("refresh", &opts.BaseIdOptions{})
cmd.BatchDelete(&opts.BaseIdsOptions{})
}

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
@@ -41,6 +41,7 @@ func init() {
cmd.CreateWithKeyword("create-hcs", &options.SHCSAccountCreateOptions{})
cmd.CreateWithKeyword("create-hcsop", &options.SHcsOpCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-ucloud", &options.SUcloudCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-volcengine", &options.SVolcengineCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-zstack", &options.SZStackCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-s3", &options.SS3CloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-ceph", &options.SCephCloudAccountCreateOptions{})
@@ -59,6 +60,7 @@ func init() {
cmd.CreateWithKeyword("create-baidu", &options.SBaiduCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-cucloud", &options.SCucloudCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-qingcloud", &options.SQingCloudCloudAccountCreateOptions{})
cmd.CreateWithKeyword("create-oracle", &options.SOracleCloudAccountCreateOptions{})
cmd.UpdateWithKeyword("update-vmware", &options.SVMwareCloudAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-aliyun", &options.SAliyunCloudAccountUpdateOptions{})
@@ -71,6 +73,7 @@ func init() {
cmd.UpdateWithKeyword("update-hcso", &options.SHCSOAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-hcs", &options.SHCSAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-ucloud", &options.SUcloudCloudAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-volcengine", &options.SVolcengineCloudAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-zstack", &options.SZStackCloudAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-s3", &options.SS3CloudAccountUpdateOptions{})
cmd.UpdateWithKeyword("update-ctyun", &options.SCtyunCloudAccountUpdateOptions{})
@@ -99,6 +102,7 @@ func init() {
cmd.PerformWithKeyword("update-credential-hcso", "update-credential", &options.SHCSOAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-hcs", "update-credential", &options.SHCSOAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-ucloud", "update-credential", &options.SUcloudCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-volcengine", "update-credential", &options.SVolcengineCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-zstack", "update-credential", &options.SZStackCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-s3", "update-credential", &options.SS3CloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("update-credential-ctyun", "update-credential", &options.SCtyunCloudAccountUpdateCredentialOptions{})
@@ -122,6 +126,7 @@ func init() {
cmd.PerformWithKeyword("test-connectivity-openstack", "test-connectivity", &options.SOpenStackCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-huawei", "test-connectivity", &options.SHuaweiCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-ucloud", "test-connectivity", &options.SUcloudCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-volcengine", "test-connectivity", &options.SVolcengineCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-zstack", "test-connectivity", &options.SZStackCloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-s3", "test-connectivity", &options.SS3CloudAccountUpdateCredentialOptions{})
cmd.PerformWithKeyword("test-connectivity-ctyun", "test-connectivity", &options.SCtyunCloudAccountUpdateCredentialOptions{})
@@ -145,5 +150,4 @@ func init() {
cmd.Get("change-owner-candidate-domains", &options.SCloudAccountIdOptions{})
cmd.Get("enrollment-accounts", &options.SCloudAccountIdOptions{})
cmd.Get("balance", &options.SCloudAccountIdOptions{})
cmd.Get("saml", &options.SCloudAccountIdOptions{})
}

View File

@@ -38,7 +38,7 @@ func init() {
Usable *bool `help:"List regions where networks are usable"`
UsableVpc *bool `help:"List regions where VPC are usable"`
Service string `help:"List regions which service has available skus" choices:"dbinstances|servers"`
Service string `help:"List regions which service has available skus" choices:"dbinstances|servers|elasticcaches"`
City string `help:"List regions in the specified city"`

View File

@@ -17,13 +17,14 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
cmd := shell.NewResourceCmd(&modules.DBInstanceAccounts).WithKeyword("dbinstance-account")
cmd.List(&options.DBInstanceAccountListOptions{})
cmd.Update(&options.BaseUpdateOptions{})
cmd.Update(&baseoptions.BaseUpdateOptions{})
cmd.Show(&options.DBInstanceAccountIdOptions{})
cmd.Delete(&options.DBInstanceAccountIdOptions{})
}

View File

@@ -17,13 +17,14 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
cmd := shell.NewResourceCmd(&modules.DBInstanceDatabases).WithKeyword("dbinstance-database")
cmd.List(&options.DBInstanceDatabaseListOptions{})
cmd.Update(&options.BaseUpdateOptions{})
cmd.Update(&baseoptions.BaseUpdateOptions{})
cmd.Delete(&options.DBInstanceDatabaseIdOptions{})
cmd.Show(&options.DBInstanceDatabaseIdOptions{})
cmd.Create(&options.DBInstanceDatabaseCreateOptions{})

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -42,6 +42,8 @@ import (
func init() {
cmd := shell.NewResourceCmd(&modules.Disks)
cmd.Perform("set-class-metadata", &options.ResourceMetadataOptions{})
cmd.Perform("rebuild", &options.ResourceIdOptions{})
cmd.Perform("migrate", &compute_options.DiskMigrateOptions{})
type DiskListOptions struct {
options.BaseListOptions
@@ -172,7 +174,7 @@ func init() {
Desc string `help:"Description" metavar:"DESCRIPTION"`
AutoDelete string `help:"enable/disable auto delete of disk" choices:"enable|disable"`
AutoSnapshot string `help:"enable/disable auto snapshot of disk" choices:"enable|disable"`
DiskType string `help:"Disk type" choices:"data|volume"`
DiskType string `help:"Disk type" choices:"data|volume|sys"`
IsSsd *bool `help:"mark disk as ssd" negative:"no-is-ssd"`
}
R(&DiskUpdateOptions{}, "disk-update", "Update property of a virtual disk", func(s *mcclient.ClientSession, args *DiskUpdateOptions) error {

View File

@@ -22,6 +22,7 @@ import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
"yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
@@ -32,6 +33,8 @@ func init() {
cmd.ClassShow(&compute.DnsZoneCapabilitiesOptions{})
cmd.Delete(&compute.SDnsZoneIdOptions{})
cmd.Create(&compute.DnsZoneCreateOptions{})
cmd.Perform("public", &options.BasePublicOptions{})
cmd.Perform("private", &options.BaseIdOptions{})
cmd.Perform("syncstatus", &compute.SDnsZoneIdOptions{})
cmd.Perform("purge", &compute.SDnsZoneIdOptions{})
cmd.Perform("add-vpcs", &compute.DnsZoneAddVpcsOptions{})

View File

@@ -41,7 +41,7 @@ func init() {
cmd.PerformWithKeyword("disable-auth", "update-auth-mode", &compute.ElasticCacheDisableAuthOptions{})
type ElasticCacheAccountResetPasswordOptions struct {
options.ElasticCacheIdOptions
compute.ElasticCacheIdOptions
PASSWORD string `help:"elastic cache account password."`
}
@@ -77,7 +77,7 @@ func init() {
return nil
})
R(&options.ElasticCacheAccountCreateOptions{}, "elastic-cache-account-create", "Create elastisc cache account", func(s *mcclient.ClientSession, opts *options.ElasticCacheAccountCreateOptions) error {
R(&compute.ElasticCacheAccountCreateOptions{}, "elastic-cache-account-create", "Create elastisc cache account", func(s *mcclient.ClientSession, opts *compute.ElasticCacheAccountCreateOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
@@ -92,7 +92,7 @@ func init() {
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-account-delete", "Delete elastisc cache account", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
R(&compute.ElasticCacheIdOptions{}, "elastic-cache-account-delete", "Delete elastisc cache account", func(s *mcclient.ClientSession, opts *compute.ElasticCacheIdOptions) error {
result, err := modules.ElasticCacheAccount.Delete(s, opts.ID, nil)
if err != nil {
return err
@@ -102,7 +102,7 @@ func init() {
return nil
})
R(&options.ElasticCacheBackupCreateOptions{}, "elastic-cache-backup-create", "Create elastisc cache backup", func(s *mcclient.ClientSession, opts *options.ElasticCacheBackupCreateOptions) error {
R(&compute.ElasticCacheBackupCreateOptions{}, "elastic-cache-backup-create", "Create elastisc cache backup", func(s *mcclient.ClientSession, opts *compute.ElasticCacheBackupCreateOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
@@ -132,7 +132,7 @@ func init() {
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-backup-delete", "Delete elastisc cache backup", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
R(&compute.ElasticCacheIdOptions{}, "elastic-cache-backup-delete", "Delete elastisc cache backup", func(s *mcclient.ClientSession, opts *compute.ElasticCacheIdOptions) error {
result, err := modules.ElasticCacheBackup.Delete(s, opts.ID, nil)
if err != nil {
return err
@@ -142,7 +142,7 @@ func init() {
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-backup-restore", "Restore elastisc cache backup", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
R(&compute.ElasticCacheIdOptions{}, "elastic-cache-backup-restore", "Restore elastisc cache backup", func(s *mcclient.ClientSession, opts *compute.ElasticCacheIdOptions) error {
result, err := modules.ElasticCacheBackup.PerformAction(s, opts.ID, "restore-instance", nil)
if err != nil {
return err
@@ -152,7 +152,7 @@ func init() {
return nil
})
R(&options.ElasticCacheAclCreateOptions{}, "elastic-cache-acl-create", "Create elastisc cache acl", func(s *mcclient.ClientSession, opts *options.ElasticCacheAclCreateOptions) error {
R(&compute.ElasticCacheAclCreateOptions{}, "elastic-cache-acl-create", "Create elastisc cache acl", func(s *mcclient.ClientSession, opts *compute.ElasticCacheAclCreateOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
@@ -167,7 +167,7 @@ func init() {
return nil
})
R(&options.ElasticCacheIdOptions{}, "elastic-cache-acl-delete", "Delete elastisc cache acl", func(s *mcclient.ClientSession, opts *options.ElasticCacheIdOptions) error {
R(&compute.ElasticCacheIdOptions{}, "elastic-cache-acl-delete", "Delete elastisc cache acl", func(s *mcclient.ClientSession, opts *compute.ElasticCacheIdOptions) error {
result, err := modules.ElasticCacheAcl.Delete(s, opts.ID, nil)
if err != nil {
return err
@@ -192,7 +192,7 @@ func init() {
return nil
})
R(&options.ElasticCacheAclUpdateOptions{}, "elastic-cache-acl-update", "Update elastisc cache acl", func(s *mcclient.ClientSession, opts *options.ElasticCacheAclUpdateOptions) error {
R(&compute.ElasticCacheAclUpdateOptions{}, "elastic-cache-acl-update", "Update elastisc cache acl", func(s *mcclient.ClientSession, opts *compute.ElasticCacheAclUpdateOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
@@ -223,7 +223,7 @@ func init() {
return nil
})
R(&options.ElasticCacheParameterUpdateOptions{}, "elastic-cache-parameter-update", "Update elastisc cache parameter", func(s *mcclient.ClientSession, opts *options.ElasticCacheParameterUpdateOptions) error {
R(&compute.ElasticCacheParameterUpdateOptions{}, "elastic-cache-parameter-update", "Update elastisc cache parameter", func(s *mcclient.ClientSession, opts *compute.ElasticCacheParameterUpdateOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
@@ -293,7 +293,7 @@ func init() {
return nil
})
R(&options.ElasticCacheRemoteUpdateOptions{}, "elastic-cache-remote-update", "Restore elastisc cache backup", func(s *mcclient.ClientSession, opts *options.ElasticCacheRemoteUpdateOptions) error {
R(&compute.ElasticCacheRemoteUpdateOptions{}, "elastic-cache-remote-update", "Restore elastisc cache backup", func(s *mcclient.ClientSession, opts *compute.ElasticCacheRemoteUpdateOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err
@@ -307,7 +307,7 @@ func init() {
return nil
})
R(&options.ElasticCacheAutoRenewOptions{}, "elastic-cache-auto-renew", "Set elastisc cache auto renew", func(s *mcclient.ClientSession, opts *options.ElasticCacheAutoRenewOptions) error {
R(&compute.ElasticCacheAutoRenewOptions{}, "elastic-cache-auto-renew", "Set elastisc cache auto renew", func(s *mcclient.ClientSession, opts *compute.ElasticCacheAutoRenewOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err
@@ -321,7 +321,7 @@ func init() {
return nil
})
R(&options.ElasticCacheRenewOptions{}, "elastic-cache-renew", "Renew elastisc cache", func(s *mcclient.ClientSession, opts *options.ElasticCacheRenewOptions) error {
R(&compute.ElasticCacheRenewOptions{}, "elastic-cache-renew", "Renew elastisc cache", func(s *mcclient.ClientSession, opts *compute.ElasticCacheRenewOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err

View File

@@ -23,6 +23,7 @@ import (
"yunion.io/x/log"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/util/httputils"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
@@ -53,6 +54,7 @@ func init() {
cmd.Perform("probe-isolated-devices", &options.BaseIdOptions{})
cmd.Perform("class-metadata", &options.ResourceMetadataOptions{})
cmd.Perform("set-class-metadata", &options.ResourceMetadataOptions{})
cmd.PerformClass("validate-ipmi", &compute.HostValidateIPMI{})
cmd.BatchPerform("enable", &options.BaseIdsOptions{})
cmd.BatchPerform("disable", &options.BaseIdsOptions{})
@@ -69,13 +71,26 @@ func init() {
cmd.Get("vnc", &options.BaseIdOptions{})
cmd.Get("app-options", &options.BaseIdOptions{})
cmd.Get("tap-config", &options.BaseIdOptions{})
cmd.GetWithCustomShow("nics", func(data jsonutils.JSONObject) {
results := printutils.ListResult{}
err := data.Unmarshal(&results)
if err == nil {
printutils.PrintJSONList(&results, []string{
"mac",
"vlan_id",
"interface",
"bridge",
"ip_addr",
"net",
"wire",
})
} else {
fmt.Println("error", err)
}
}, &options.BaseIdOptions{})
R(&options.BaseIdOptions{}, "host-logininfo", "Get SSH login information of a host", func(s *mcclient.ClientSession, args *options.BaseIdOptions) error {
srvid, e := modules.Hosts.GetId(s, args.ID, nil)
if e != nil {
return e
}
i, e := modules.Hosts.GetLoginInfo(s, srvid, nil)
i, e := modules.Hosts.PerformAction(s, args.ID, "login-info", nil)
if e != nil {
return e
}
@@ -168,8 +183,9 @@ func init() {
CpuReserved int64 `help:"CPU reserved"`
HostType string `help:"Change host type, CAUTION!!!!" choices:"hypervisor|kubelet|esxi|baremetal"`
// AccessIp string `help:"Change access ip, CAUTION!!!!"`
AccessMac string `help:"Change baremetal access MAC, CAUTION!!!!"`
Uuid string `help:"Change baremetal UUID, CAUTION!!!!"`
AccessMac string `help:"Change baremetal access MAC, CAUTION!!!!"`
Uuid string `help:"Change baremetal UUID, CAUTION!!!!"`
EnableNumaAllocate string `help:"Host enable numa allocate" choices:"True|False"`
IpmiUsername string `help:"IPMI user"`
IpmiPassword string `help:"IPMI password"`
@@ -220,6 +236,13 @@ func init() {
if len(args.Sn) > 0 {
params.Add(jsonutils.NewString(args.Sn), "sn")
}
if len(args.EnableNumaAllocate) > 0 {
enableNumaAllocate := false
if args.EnableNumaAllocate == "True" {
enableNumaAllocate = true
}
params.Add(jsonutils.NewBool(enableNumaAllocate), "enable_numa_allocate")
}
if params.Size() == 0 {
return fmt.Errorf("Not data to update")
}
@@ -576,14 +599,10 @@ func init() {
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)
i, e := modules.Hosts.PerformAction(s, args.ID, "login-info", nil)
privateKey := ""
if e != nil {
if httputils.ErrorCode(e) == 404 || e.Error() == "ciphertext too short" {
if httputils.ErrorCode(e) == 404 || strings.Contains(e.Error(), "ciphertext too short") {
var err error
privateKey, err = modules.Sshkeypairs.FetchPrivateKeyBySession(context.Background(), s)
if err != nil {

View File

@@ -15,8 +15,13 @@
package compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
@@ -26,4 +31,71 @@ func init() {
cmd.Create(new(options.IsolatedDeviceModelCreateOptions))
cmd.Update(new(options.IsolatedDeviceModelUpdateOptions))
cmd.Delete(new(options.IsolatedDeviceIdsOptions))
cmd.Perform("set-hardware-info", new(options.IsolatedDeviceModelSetHardwareInfoOptions))
cmd.Get("hardware-info", new(options.IsolatedDeviceIdsOptions))
type HostIsolatedDeviceModelListOptions struct {
baseoptions.BaseListOptions
Host string `help:"ID or Name of Host"`
IsolatedDeviceModel string `help:"ID or Name of Isolated device model"`
}
R(&HostIsolatedDeviceModelListOptions{}, "host-isolated-device-model-list",
"List host Isolated device model pairs", func(s *mcclient.ClientSession, args *HostIsolatedDeviceModelListOptions) error {
var params *jsonutils.JSONDict
{
var err error
params, err = args.BaseListOptions.Params()
if err != nil {
return err
}
}
var result *printutils.ListResult
var err error
if len(args.Host) > 0 {
result, err = modules.HostIsolatedDeviceModels.ListDescendent(s, args.Host, params)
} else if len(args.IsolatedDeviceModel) > 0 {
result, err = modules.HostIsolatedDeviceModels.ListDescendent2(s, args.IsolatedDeviceModel, params)
} else {
result, err = modules.HostIsolatedDeviceModels.List(s, params)
}
if err != nil {
return err
}
printList(result, modules.HostIsolatedDeviceModels.GetColumns(s))
return nil
})
type HostIsolatedDeviceModelDetailOptions struct {
HOST string `help:"ID or Name of Host"`
IsolatedDeviceModel string `help:"ID or Name of Isolated device model"`
}
R(&HostIsolatedDeviceModelDetailOptions{}, "host-isolated-device-model-show", "Show host isolated-device-model details", func(s *mcclient.ClientSession, args *HostIsolatedDeviceModelDetailOptions) error {
result, err := modules.HostIsolatedDeviceModels.Get(s, args.HOST, args.IsolatedDeviceModel, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&HostIsolatedDeviceModelDetailOptions{}, "host-isolated-device-model-detach", "Detach a isolated-device-model from a host", func(s *mcclient.ClientSession, args *HostIsolatedDeviceModelDetailOptions) error {
result, err := modules.HostIsolatedDeviceModels.Detach(s, args.HOST, args.IsolatedDeviceModel, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&HostIsolatedDeviceModelDetailOptions{}, "host-isolated-device-model-attach", "Attach a isolated-device-model to a host", func(s *mcclient.ClientSession, args *HostIsolatedDeviceModelDetailOptions) error {
params := jsonutils.NewDict()
result, err := modules.HostIsolatedDeviceModels.Attach(s, args.HOST, args.IsolatedDeviceModel, params)
if err != nil {
return err
}
printObject(result)
return nil
})
}

View File

@@ -15,144 +15,21 @@
package compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
lbAclConvert := func(jd *jsonutils.JSONDict) error {
jaeso, err := jd.Get("acl_entries")
if err != nil {
return err
}
aclEntries := options.AclEntries{}
err = jaeso.Unmarshal(&aclEntries)
if err != nil {
return err
}
aclTextLines := aclEntries.String()
jd.Set("acl_entries", jsonutils.NewString(aclTextLines))
return nil
}
printLbAcl := func(jsonObj jsonutils.JSONObject) {
jd, ok := jsonObj.(*jsonutils.JSONDict)
if !ok {
printObject(jsonObj)
return
}
err := lbAclConvert(jd)
if err != nil {
printObject(jsonObj)
return
}
printObject(jd)
}
printLbAclList := func(list *printutils.ListResult, columns []string) {
data := list.Data
for _, jsonObj := range data {
jd := jsonObj.(*jsonutils.JSONDict)
err := lbAclConvert(jd)
if err != nil {
printList(list, columns)
return
}
}
printList(list, columns)
}
R(&options.LoadbalancerAclCreateOptions{}, "lbacl-create", "Create lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclCreateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbacl, err := modules.LoadbalancerAcls.Create(s, params)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclGetOptions{}, "lbacl-show", "Show lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclGetOptions) error {
lbacl, err := modules.LoadbalancerAcls.Get(s, opts.ID, nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclListOptions{}, "lbacl-list", "List lbacls", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclListOptions) error {
params, err := baseoptions.ListStructToParams(opts)
if err != nil {
return err
}
result, err := modules.LoadbalancerAcls.List(s, params)
if err != nil {
return err
}
printLbAclList(result, modules.LoadbalancerAcls.GetColumns(s))
return nil
})
R(&options.LoadbalancerAclUpdateOptions{}, "lbacl-update", "Update lbacls", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclUpdateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbacl, err := modules.LoadbalancerAcls.Update(s, opts.ID, params)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclDeleteOptions{}, "lbacl-purge", "Purge lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclDeleteOptions) error {
lbacl, err := modules.LoadbalancerAcls.PerformAction(s, opts.ID, "purge", nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclDeleteOptions{}, "lbacl-delete", "Show lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclDeleteOptions) error {
lbacl, err := modules.LoadbalancerAcls.Delete(s, opts.ID, nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclActionPatchOptions{}, "lbacl-patch", "Patch lbacls", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclActionPatchOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbacl, err := modules.LoadbalancerAcls.PerformAction(s, opts.ID, "patch", params)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclPublicOptions{}, "lbacl-public", "Public lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclPublicOptions) error {
params := jsonutils.Marshal(opts)
lbacl, err := modules.LoadbalancerAcls.PerformAction(s, opts.ID, "public", params)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclPrivateOptions{}, "lbacl-private", "Private lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclPrivateOptions) error {
lbacl, err := modules.LoadbalancerAcls.PerformAction(s, opts.ID, "private", nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
cmd := shell.NewResourceCmd(&modules.LoadbalancerAcls).WithKeyword("lbacl")
cmd.List(&options.LoadbalancerAclListOptions{})
cmd.Show(&options.LoadbalancerAclIdOptions{})
cmd.Create(&options.LoadbalancerAclCreateOptions{})
cmd.Delete(&options.LoadbalancerAclIdOptions{})
cmd.Update(&options.LoadbalancerAclUpdateOptions{})
cmd.Perform("purge", &options.LoadbalancerAclIdOptions{})
cmd.Perform("syncstatus", &options.LoadbalancerAclIdOptions{})
cmd.Perform("private", &options.LoadbalancerAclIdOptions{})
cmd.Perform("public", &options.LoadbalancerAclPublicOptions{})
cmd.Perform("patch", &options.LoadbalancerAclActionPatchOptions{})
}

View File

@@ -1,121 +0,0 @@
// 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 compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
lbAclConvert := func(jd *jsonutils.JSONDict) error {
jaeso, err := jd.Get("acl_entries")
if err != nil {
return err
}
aclEntries := options.AclEntries{}
err = jaeso.Unmarshal(&aclEntries)
if err != nil {
return err
}
aclTextLines := aclEntries.String()
jd.Set("acl_entries", jsonutils.NewString(aclTextLines))
return nil
}
printLbAcl := func(jsonObj jsonutils.JSONObject) {
jd, ok := jsonObj.(*jsonutils.JSONDict)
if !ok {
printObject(jsonObj)
return
}
err := lbAclConvert(jd)
if err != nil {
printObject(jsonObj)
return
}
printObject(jd)
}
printLbAclList := func(list *printutils.ListResult, columns []string) {
data := list.Data
for _, jsonObj := range data {
jd := jsonObj.(*jsonutils.JSONDict)
err := lbAclConvert(jd)
if err != nil {
printList(list, columns)
return
}
}
printList(list, columns)
}
R(&options.LoadbalancerAclGetOptions{}, "lbacl-cache-show", "Show cached lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclGetOptions) error {
lbacl, err := modules.LoadbalancerCachedAcls.Get(s, opts.ID, nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.CachedLoadbalancerAclListOptions{}, "lbacl-cache-list", "List cached lbacls", func(s *mcclient.ClientSession, opts *options.CachedLoadbalancerAclListOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
result, err := modules.LoadbalancerCachedAcls.List(s, params)
if err != nil {
return err
}
printLbAclList(result, modules.LoadbalancerCachedAcls.GetColumns(s))
return nil
})
R(&options.LoadbalancerCachedAclCreateOptions{}, "lbacl-cache-create", "Create cached lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerCachedAclCreateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbacl, err := modules.LoadbalancerCachedAcls.Create(s, params)
if err != nil {
return err
}
printObject(lbacl)
return nil
})
R(&options.LoadbalancerAclDeleteOptions{}, "lbacl-cache-purge", "Purge cached lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclDeleteOptions) error {
lbacl, err := modules.LoadbalancerCachedAcls.PerformAction(s, opts.ID, "purge", nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
R(&options.LoadbalancerAclDeleteOptions{}, "lbacl-cache-delete", "Delete cached lbacl", func(s *mcclient.ClientSession, opts *options.LoadbalancerAclDeleteOptions) error {
lbacl, err := modules.LoadbalancerCachedAcls.Delete(s, opts.ID, nil)
if err != nil {
return err
}
printLbAcl(lbacl)
return nil
})
}

View File

@@ -1,77 +0,0 @@
// 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 compute
import (
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
R(&options.LoadbalancerCertificateGetOptions{}, "lbcert-cache-show", "Show cached lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateGetOptions) error {
lbcert, err := modules.LoadbalancerCachedCertificates.Get(s, opts.ID, nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCachedCertificateListOptions{}, "lbcert-cache-list", "List cached lbcerts", func(s *mcclient.ClientSession, opts *options.LoadbalancerCachedCertificateListOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
result, err := modules.LoadbalancerCachedCertificates.List(s, params)
if err != nil {
return err
}
printList(result, modules.LoadbalancerCachedCertificates.GetColumns(s))
return nil
})
R(&options.LoadbalancerCachedCertificateCreateOptions{}, "lbcert-cache-create", "Create cached lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCachedCertificateCreateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbcert, err := modules.LoadbalancerCachedCertificates.Create(s, params)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificateDeleteOptions{}, "lbcert-cache-delete", "Delete cached lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateDeleteOptions) error {
lbcert, err := modules.LoadbalancerCachedCertificates.Delete(s, opts.ID, nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificateDeleteOptions{}, "lbcert-cache-purge", "Purge cached lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateDeleteOptions) error {
lbcert, err := modules.LoadbalancerCachedCertificates.PerformAction(s, opts.ID, "purge", nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
}

View File

@@ -15,81 +15,19 @@
package compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
R(&options.LoadbalancerCertificateCreateOptions{}, "lbcert-create", "Create lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateCreateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbcert, err := modules.LoadbalancerCertificates.Create(s, params)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificateGetOptions{}, "lbcert-show", "Show lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateGetOptions) error {
lbcert, err := modules.LoadbalancerCertificates.Get(s, opts.ID, nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificateListOptions{}, "lbcert-list", "List lbcerts", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateListOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
result, err := modules.LoadbalancerCertificates.List(s, params)
if err != nil {
return err
}
printList(result, modules.LoadbalancerCertificates.GetColumns(s))
return nil
})
R(&options.LoadbalancerCertificateUpdateOptions{}, "lbcert-update", "Update lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateUpdateOptions) error {
params, err := opts.Params()
if err != nil {
return err
}
lbcert, err := modules.LoadbalancerCertificates.Update(s, opts.ID, params)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificateDeleteOptions{}, "lbcert-delete", "Delete lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificateDeleteOptions) error {
lbcert, err := modules.LoadbalancerCertificates.Delete(s, opts.ID, nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificatePublicOptions{}, "lbcert-public", "Public lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificatePublicOptions) error {
params := jsonutils.Marshal(opts)
lbcert, err := modules.LoadbalancerCertificates.PerformAction(s, opts.ID, "public", params)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
R(&options.LoadbalancerCertificatePrivateOptions{}, "lbcert-private", "Private lbcert", func(s *mcclient.ClientSession, opts *options.LoadbalancerCertificatePrivateOptions) error {
lbcert, err := modules.LoadbalancerCertificates.PerformAction(s, opts.ID, "private", nil)
if err != nil {
return err
}
printObject(lbcert)
return nil
})
cmd := shell.NewResourceCmd(&modules.LoadbalancerCertificates).WithKeyword("lbcert")
cmd.Create(&options.LoadbalancerCertificateCreateOptions{})
cmd.Show(&options.LoadbalancerCertificateIdOptions{})
cmd.Delete(&options.LoadbalancerCertificateIdOptions{})
cmd.List(&options.LoadbalancerCertificateListOptions{})
cmd.Update(&options.LoadbalancerCertificateUpdateOptions{})
cmd.Perform("public", &options.LoadbalancerCertificatePublicOptions{})
cmd.Perform("private", &options.LoadbalancerCertificateIdOptions{})
cmd.Perform("syncstatus", &options.LoadbalancerCertificateIdOptions{})
}

View File

@@ -1,3 +1,17 @@
// 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 compute
import (

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -26,12 +26,14 @@ import (
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
compute_options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
"yunion.io/x/onecloud/pkg/util/netutils2"
)
func init() {
cmd := shell.NewResourceCmd(&modules.Networks).WithContextManager(&modules.Wires)
cmd.List(&compute_options.NetworkListOptions{})
cmd.Create(&compute_options.NetworkCreateOptions{})
cmd.Update(&compute_options.NetworkUpdateOptions{})
cmd.Show(&compute_options.NetworkIdOptions{})
cmd.Delete(&compute_options.NetworkIdOptions{})
@@ -43,6 +45,8 @@ func init() {
cmd.Get("change-owner-candidate-domains", &compute_options.NetworkIdOptions{})
cmd.Perform("set-class-metadata", &options.ResourceMetadataOptions{})
cmd.Perform("switch-wire", &compute_options.NetworkSwitchWireOptions{})
cmd.Perform("sync-additional-wires", &compute_options.NetworkSyncAdditionalWiresOptions{})
cmd.Get("available-addresses", &compute_options.NetworkIdOptions{})
type NetworkShareOptions struct {
ID string `help:"ID or Name of the zone to show"`
@@ -60,65 +64,15 @@ func init() {
return nil
})
type NetworkCreateOptions struct {
WIRE string `help:"ID or Name of wire in which the network is created"`
NETWORK string `help:"Name of new network"`
STARTIP string `help:"Start of IPv4 address range"`
ENDIP string `help:"End of IPv4 address rnage"`
NETMASK int64 `help:"Length of network mask"`
Gateway string `help:"Default gateway"`
VlanId int64 `help:"Vlan ID" default:"1"`
IfnameHint string `help:"Hint for ifname generation"`
AllocPolicy string `help:"Address allocation policy" choices:"none|stepdown|stepup|random"`
ServerType string `help:"Server type" choices:"baremetal|container|eip|guest|ipmi|pxe"`
IsAutoAlloc *bool `help:"Auto allocation IP pool"`
BgpType string `help:"Internet service provider name" positional:"false"`
Desc string `help:"Description" metavar:"DESCRIPTION"`
}
R(&NetworkCreateOptions{}, "network-create", "Create a virtual network", func(s *mcclient.ClientSession, args *NetworkCreateOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.NETWORK), "name")
params.Add(jsonutils.NewString(args.STARTIP), "guest_ip_start")
params.Add(jsonutils.NewString(args.ENDIP), "guest_ip_end")
params.Add(jsonutils.NewInt(args.NETMASK), "guest_ip_mask")
if len(args.Gateway) > 0 {
params.Add(jsonutils.NewString(args.Gateway), "guest_gateway")
}
if args.VlanId > 0 {
params.Add(jsonutils.NewInt(args.VlanId), "vlan_id")
}
if len(args.ServerType) > 0 {
params.Add(jsonutils.NewString(args.ServerType), "server_type")
}
if len(args.IfnameHint) > 0 {
params.Add(jsonutils.NewString(args.IfnameHint), "ifname_hint")
}
if len(args.AllocPolicy) > 0 {
params.Add(jsonutils.NewString(args.AllocPolicy), "alloc_policy")
}
if len(args.Desc) > 0 {
params.Add(jsonutils.NewString(args.Desc), "description")
}
if len(args.BgpType) > 0 {
params.Add(jsonutils.NewString(args.BgpType), "bgp_type")
}
if args.IsAutoAlloc != nil {
params.Add(jsonutils.NewBool(*args.IsAutoAlloc), "is_auto_alloc")
}
net, e := modules.Networks.CreateInContext(s, params, &modules.Wires, args.WIRE)
if e != nil {
return e
}
printObject(net)
return nil
})
type NetworkCreateOptions2 struct {
Wire string `help:"ID or Name of wire in which the network is created"`
Vpc string `help:"ID or Name of vpc in which the network is created"`
Zone string `help:"ID or Name of zone in which the network is created"`
NAME string `help:"Name of new network"`
PREFIX string `help:"Start of IPv4 address range"`
Wire string `help:"ID or Name of wire in which the network is created"`
Vpc string `help:"ID or Name of vpc in which the network is created"`
Zone string `help:"ID or Name of zone in which the network is created"`
NAME string `help:"Name of new network"`
PREFIX string `help:"IPv4 prefix"`
Prefix6 string `help:"IPv6 prefix"`
BgpType string `help:"Internet service provider name" positional:"false"`
AssignPublicIp bool
Desc string `help:"Description" metavar:"DESCRIPTION"`
@@ -127,6 +81,11 @@ func init() {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.NAME), "name")
params.Add(jsonutils.NewString(args.PREFIX), "guest_ip_prefix")
if len(args.Prefix6) > 0 {
params.Add(jsonutils.NewString(args.Prefix6), "guest_ip6_prefix")
}
params.Set("assign_public_ip", jsonutils.NewBool(args.AssignPublicIp))
if len(args.BgpType) > 0 {
params.Add(jsonutils.NewString(args.BgpType), "bgp_type")
@@ -282,4 +241,21 @@ func init() {
printObject(net)
return nil
})
type NetworkInterfaceInfoOptions struct {
DEV string `help:"name of device, e.g. eth0"`
}
R(&NetworkInterfaceInfoOptions{}, "network-interface-info", "Show addr and routes of interface", func(s *mcclient.ClientSession, args *NetworkInterfaceInfoOptions) error {
netIf := netutils2.NewNetInterface(args.DEV)
fmt.Println("[Slave Addresses]")
for _, addr := range netIf.GetSlaveAddresses() {
fmt.Printf("%s/%s\n", addr[0], addr[1])
}
fmt.Println("[Routes]")
for _, r := range netIf.GetRouteSpecs() {
fmt.Printf("%s via %s dev %d\n", r.Dst.String(), r.Gw.String(), r.LinkIndex)
}
return nil
})
}

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -22,7 +22,7 @@ import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modulebase"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
type schedtagModelHelper struct {

View File

@@ -17,7 +17,8 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
@@ -29,6 +30,6 @@ func init() {
cmd.Create(new(options.SchedtagCreateOptions))
cmd.Update(new(options.SchedtagUpdateOptions))
cmd.BatchPerform("set-scope", new(options.SchedtagSetScopeOptions))
cmd.PerformWithKeyword("set-user-metadata", "user-metadata", new(options.ResourceMetadataOptions))
cmd.PerformWithKeyword("set-user-metadata", "user-metadata", new(baseoptions.ResourceMetadataOptions))
cmd.Perform("set-resource", new(options.SchedtagSetResource))
}

View File

@@ -1,30 +0,0 @@
// 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 compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
cmd := shell.NewResourceCmd(&modules.SecGroupCaches).WithKeyword("secgroup-cache")
cmd.List(&compute.SecGroupCacheListOptions{})
cmd.Show(&compute.SecGroupCacheIdOptions{})
cmd.Delete(&compute.SecGroupCacheIdOptions{})
cmd.Perform("syncstatus", &compute.SecGroupCacheIdOptions{})
cmd.Get("references", &compute.SecGroupCacheIdOptions{})
}

View File

@@ -17,7 +17,8 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
@@ -25,15 +26,13 @@ func init() {
cmd.List(&options.SecgroupListOptions{})
cmd.Create(&options.SecgroupCreateOptions{})
cmd.Show(&options.SecgroupIdOptions{})
cmd.Update(&options.BaseUpdateOptions{})
cmd.Update(&baseoptions.BaseUpdateOptions{})
cmd.Delete(&options.SecgroupIdOptions{})
cmd.Perform("merge", &options.SecgroupMergeOptions{})
cmd.Perform("public", &options.SecgroupIdOptions{})
cmd.Perform("syncstatus", &options.SecgroupIdOptions{})
cmd.Perform("private", &options.SecgroupIdOptions{})
cmd.Perform("add-rule", &options.SecgroupsAddRuleOptions{})
cmd.Perform("cache-secgroup", &options.SecurityGroupCacheOptions{})
cmd.Perform("uncache-secgroup", &options.SecurityGroupUncacheSecurityGroup{})
cmd.Perform("purge", &options.SecgroupIdOptions{})
cmd.Perform("change-owner", &options.SecgroupChangeOwnerOptions{})
cmd.Perform("import-rules", &options.SecgroupImportRulesOptions{})
cmd.PerformClass("clean", &options.SecgroupCleanOptions{})
}

View File

@@ -94,6 +94,7 @@ func init() {
Driver string `help:"Driver model of vNIC" choices:"virtio|e1000|vmxnet3|rtl8139"`
Index int64 `help:"Index of NIC" default:"-1"`
Ifname string `help:"Interface name of vNIC on host"`
Default bool `help:"is default nic?"`
}
R(&ServerNetworkUpdateOptions{}, "server-network-update", "Update server network settings", func(s *mcclient.ClientSession, args *ServerNetworkUpdateOptions) error {
params := jsonutils.NewDict()
@@ -106,6 +107,9 @@ func init() {
if len(args.Ifname) > 0 {
params.Add(jsonutils.NewString(args.Ifname), "ifname")
}
if args.Default {
params.Add(jsonutils.JSONTrue, "is_default")
}
if params.Size() == 0 {
return InvalidUpdateError()
}
@@ -176,6 +180,7 @@ func init() {
SERVER string `help:"ID or Name of server"`
MACORIP string `help:"Mac Or IP of NIC"`
Reserve bool `help:"Put the release IP address into reserved address pool"`
Force bool `help:"detach server network by force"`
}
R(&ServerDetachNetworkOptions{}, "server-detach-network", "Detach the virtual network fron a virtual server", func(s *mcclient.ClientSession, args *ServerDetachNetworkOptions) error {
params := jsonutils.NewDict()
@@ -183,6 +188,9 @@ func init() {
if args.Reserve {
params.Add(jsonutils.JSONTrue, "reserve")
}
if args.Force {
params.Add(jsonutils.JSONTrue, "force")
}
if regutils.MatchMacAddr(args.MACORIP) {
params.Add(jsonutils.NewString(args.MACORIP), "mac")
} else if regutils.MatchIP4Addr(args.MACORIP) {

View File

@@ -115,11 +115,18 @@ func init() {
cmd.Perform("qga-set-password", &options.ServerQgaSetPassword{})
cmd.Perform("qga-command", &options.ServerQgaCommand{})
cmd.Perform("qga-ping", &options.ServerQgaPing{})
cmd.Perform("qga-guest-info-task", &options.ServerQgaGuestInfoTask{})
cmd.Perform("qga-get-network", &options.ServerQgaGetNetwork{})
cmd.Perform("set-password", &options.ServerSetPasswordOptions{})
cmd.Perform("set-boot-index", &options.ServerSetBootIndexOptions{})
cmd.Perform("reset-nic-traffic-limit", &options.ServerNicTrafficLimitOptions{})
cmd.Perform("set-nic-traffic-limit", &options.ServerNicTrafficLimitOptions{})
cmd.Perform("add-sub-ips", &options.ServerAddSubIpsOptions{})
cmd.Perform("update-sub-ips", &options.ServerUpdateSubIpsOptions{})
cmd.BatchPerform("set-os-info", &options.ServerSetOSInfoOptions{})
cmd.BatchPerform("start-rescue", &options.ServerStartOptions{})
cmd.BatchPerform("stop-rescue", &options.ServerStartOptions{})
cmd.BatchPerform("sync-os-info", &options.ServerIdsOptions{})
cmd.Get("vnc", new(options.ServerVncOptions))
cmd.Get("desc", new(options.ServerIdOptions))
@@ -133,6 +140,7 @@ func init() {
cmd.Get("cpuset-cores", new(options.ServerIdOptions))
cmd.Get("sshport", new(options.ServerIdOptions))
cmd.Get("qemu-info", new(options.ServerIdOptions))
cmd.Get("hardware-info", new(options.ServerIdOptions))
cmd.GetProperty(&options.ServerStatusStatisticsOptions{})
cmd.GetProperty(&options.ServerProjectStatisticsOptions{})
@@ -299,11 +307,6 @@ func init() {
})
R(&options.ServerLoginInfoOptions{}, "server-logininfo", "Get login info of a server", func(s *mcclient.ClientSession, opts *options.ServerLoginInfoOptions) error {
srvid, e := modules.Servers.GetId(s, opts.ID, nil)
if e != nil {
return e
}
params := jsonutils.NewDict()
if len(opts.Key) > 0 {
privateKey, e := ioutil.ReadFile(opts.Key)
@@ -313,7 +316,7 @@ func init() {
params.Add(jsonutils.NewString(string(privateKey)), "private_key")
}
i, e := modules.Servers.GetLoginInfo(s, srvid, params)
i, e := modules.Servers.PerformAction(s, opts.ID, "login-info", params)
if e != nil {
return e
}
@@ -865,7 +868,7 @@ func init() {
privateKey = string(key)
}
i, e := modules.Servers.GetLoginInfo(s, srvid, params)
i, e := modules.Servers.PerformAction(s, srvid, "login-info", params)
if e != nil {
return e
}

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -15,112 +15,18 @@
package compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
"yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
type SnapshotPolicyListOptions struct {
options.BaseListOptions
OrderByBindDiskCount string
}
R(&SnapshotPolicyListOptions{}, "snapshot-policy-list", "List snapshot policy", func(s *mcclient.ClientSession, args *SnapshotPolicyListOptions) error {
params, err := options.ListStructToParams(args)
if err != nil {
return err
}
result, err := modules.SnapshotPoliciy.List(s, params)
if err != nil {
return err
}
printList(result, modules.SnapshotPoliciy.GetColumns(s))
return nil
})
type SnapshotPolicyDeleteOptions struct {
ID string `help:"Delete snapshot id"`
}
R(&SnapshotPolicyDeleteOptions{}, "snapshot-policy-delete", "Delete snapshot policy", func(s *mcclient.ClientSession, args *SnapshotPolicyDeleteOptions) error {
result, err := modules.SnapshotPoliciy.Delete(s, args.ID, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type SnapshotPolicyCreateOptions struct {
NAME string
RetentionDays int `help:"snapshot retention days"`
RepeatWeekdays []int `help:"snapshot create days on week"`
TimePoints []int `help:"snapshot create time points on one day"`
}
R(&SnapshotPolicyCreateOptions{}, "snapshot-policy-create", "Create snapshot policy", func(s *mcclient.ClientSession, args *SnapshotPolicyCreateOptions) error {
params := jsonutils.Marshal(args).(*jsonutils.JSONDict)
snapshot, err := modules.SnapshotPoliciy.Create(s, params)
if err != nil {
return err
}
printObject(snapshot)
return nil
})
type SnapshotPolicyBindDisksOptions struct {
ID string `help:"ID"`
Disk []string `help:"ids of disk"`
}
R(&SnapshotPolicyBindDisksOptions{}, "snapshot-policy-bind-disk", "bind snapshotpolicy to disks",
func(s *mcclient.ClientSession, opts *SnapshotPolicyBindDisksOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err
}
sp, err := modules.SnapshotPoliciy.PerformAction(s, opts.ID, "bind-disks", params)
if err != nil {
return err
}
printObject(sp)
return nil
})
R(&SnapshotPolicyBindDisksOptions{}, "snapshot-policy-unbind-disk", "bind snapshotpolicy to disks",
func(s *mcclient.ClientSession, opts *SnapshotPolicyBindDisksOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err
}
sp, err := modules.SnapshotPoliciy.PerformAction(s, opts.ID, "unbind-disks", params)
if err != nil {
return err
}
printObject(sp)
return nil
})
type SnapshotPolicyCacheOptions struct {
ID string `help:"SnasphotPolicy ID"`
REGIONID string `help:"Region ID"`
PROVIDER string `help:"Provider ID"`
}
R(&SnapshotPolicyCacheOptions{}, "snapshot-policy-cache", "upload local snapshotpolicy to cloud",
func(s *mcclient.ClientSession, opts *SnapshotPolicyCacheOptions) error {
params, err := options.StructToParams(opts)
if err != nil {
return err
}
sp, err := modules.SnapshotPoliciy.PerformAction(s, opts.ID, "cache", params)
if err != nil {
return err
}
printObject(sp)
return nil
},
)
cmd := shell.NewResourceCmd(&modules.SnapshotPoliciy).WithKeyword("snapshot-policy")
cmd.List(&compute.SnapshotPolicyListOptions{})
cmd.Delete(&options.BaseIdOptions{})
cmd.Create(&compute.SnapshotPolicyCreateOptions{})
cmd.Perform("bind-disks", &compute.SnapshotPolicyDisksOptions{})
cmd.Perform("unbind-disks", &compute.SnapshotPolicyDisksOptions{})
cmd.Perform("syncstatus", &options.BaseIdOptions{})
}

View File

@@ -1,80 +0,0 @@
// 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 compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
)
func init() {
type SSnapshotpolicyDiskListOfDiskOption struct {
DISKID string `help:"disk id"`
}
R(&SSnapshotpolicyDiskListOfDiskOption{}, "disk-snapshot-policy-list", "List snapshot policy attached",
func(s *mcclient.ClientSession, opts *SSnapshotpolicyDiskListOfDiskOption) error {
result, err := modules.SnapshotPolicyDisk.ListDescendent(s, opts.DISKID, jsonutils.NewDict())
if err != nil {
return err
}
printList(result, modules.SnapshotPolicyDisk.GetColumns(s))
return nil
},
)
type SSnapshotpolicyDiskListOfSnapshotpolicyOption struct {
SNAPSHOTPOLICYID string `help:"snapshot policy id"`
}
R(&SSnapshotpolicyDiskListOfSnapshotpolicyOption{}, "snapshot-policy-disk-list", "List disk attached",
func(s *mcclient.ClientSession, opts *SSnapshotpolicyDiskListOfSnapshotpolicyOption) error {
result, err := modules.SnapshotPolicyDisk.ListDescendent2(s, opts.SNAPSHOTPOLICYID, jsonutils.NewDict())
if err != nil {
return err
}
printList(result, modules.SnapshotPolicyDisk.GetColumns(s))
return nil
},
)
type SSnapshotpolicyDiskAttachOption struct {
DISKID string `help:"disk id"`
SNAPSHOTPOLICYID string `help:"snapshot policy id"`
}
R(&SSnapshotpolicyDiskAttachOption{}, "disk-snapshot-policy-attach", "attach snapshot policy to disk",
func(s *mcclient.ClientSession, opts *SSnapshotpolicyDiskAttachOption) error {
_, err := modules.SnapshotPolicyDisk.Attach(s, opts.DISKID, opts.SNAPSHOTPOLICYID, jsonutils.NewDict())
if err != nil {
return err
}
return nil
},
)
type SSnapshotpolicyDiskDetachOption struct {
DISKID string `help:"disk id"`
SNAPSHOTPOLICYID string `help:"snapshot policy id"`
}
R(&SSnapshotpolicyDiskDetachOption{}, "disk-snapshot-policy-detach", "detach snapshot policy to disk",
func(s *mcclient.ClientSession, opts *SSnapshotpolicyDiskDetachOption) error {
_, err := modules.SnapshotPolicyDisk.Detach(s, opts.DISKID, opts.SNAPSHOTPOLICYID, jsonutils.NewDict())
if err != nil {
return err
}
return nil
},
)
}

View File

@@ -102,7 +102,7 @@ func init() {
oldKeys = string(output)
}
pubKeys := &deployapi.SSHKeys{AdminPublicKey: pubKey}
newKeys := fsdriver.MergeAuthorizedKeys(oldKeys, pubKeys)
newKeys := fsdriver.MergeAuthorizedKeys(oldKeys, pubKeys, true)
if output, err := procutils.NewCommand(
"sh", "-c", fmt.Sprintf("echo '%s' > %s", newKeys, authFile)).Output(); err != nil {
return errors.Wrapf(err, "write public keys: %s", output)

View File

@@ -15,92 +15,18 @@
package compute
import (
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
"yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
type StoragecacheListOptions struct {
options.BaseListOptions
CloudregionId string `help:"cloudregion id"`
}
R(&StoragecacheListOptions{}, "storage-cache-list", "List storage caches", func(s *mcclient.ClientSession, opts *StoragecacheListOptions) error {
params, err := options.ListStructToParams(opts)
if err != nil {
return err
}
result, err := modules.Storagecaches.List(s, params)
if err != nil {
return err
}
printList(result, modules.Storagecaches.GetColumns(s))
return nil
})
type StoragecacheShowptions struct {
ID string `help:"ID or Name of storagecache"`
}
R(&StoragecacheShowptions{}, "storage-cache-show", "Show details of storage caches", func(s *mcclient.ClientSession, args *StoragecacheShowptions) error {
result, err := modules.Storagecaches.Get(s, args.ID, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
R(&StoragecacheShowptions{}, "storage-cache-delete", "Delete storage cache", func(s *mcclient.ClientSession, args *StoragecacheShowptions) error {
result, err := modules.Storagecaches.Delete(s, args.ID, nil)
if err != nil {
return err
}
printObject(result)
return nil
})
type StorageCacheImageActionOptions struct {
ID string `help:"ID or name of storage"`
IMAGE string `help:"ID or name of image"`
Force bool `help:"Force refresh cache, even if the image exists in cache"`
Format string `help:"image format" choices:"iso|qcow2|vmdk|vhd"`
}
R(&StorageCacheImageActionOptions{}, "storagecache-cache-image", "Ask a storage cache to cache a image", func(s *mcclient.ClientSession, args *StorageCacheImageActionOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.IMAGE), "image")
if args.Force {
params.Add(jsonutils.JSONTrue, "is_force")
}
if len(args.Format) > 0 {
params.Add(jsonutils.NewString(args.Format), "format")
}
storage, err := modules.Storagecaches.PerformAction(s, args.ID, "cache-image", params)
if err != nil {
return err
}
printObject(storage)
return nil
})
type StorageUncacheImageActionOptions struct {
ID string `help:"ID or name of storage"`
IMAGE string `help:"ID or name of image"`
Force bool `help:"Force uncache, even if the image exists in cache is invalid"`
}
R(&StorageUncacheImageActionOptions{}, "storagecache-uncache-image", "Ask a storage cache to remove image from its cache", func(s *mcclient.ClientSession, args *StorageUncacheImageActionOptions) error {
params := jsonutils.NewDict()
params.Add(jsonutils.NewString(args.IMAGE), "image")
if args.Force {
params.Add(jsonutils.JSONTrue, "is_force")
}
storage, err := modules.Storagecaches.PerformAction(s, args.ID, "uncache-image", params)
if err != nil {
return err
}
printObject(storage)
return nil
})
cmd := shell.NewResourceCmd(&modules.Storagecaches).WithKeyword("storage-cache")
cmd.List(&compute.StoragecacheListOptions{})
cmd.Show(&options.BaseIdOptions{})
cmd.Delete(&options.BaseIdOptions{})
cmd.Update(&options.BaseUpdateOptions{})
cmd.Perform("cache-image", &compute.StorageCacheImageActionOptions{})
cmd.Perform("uncache-image", &compute.StorageUncacheImageActionOptions{})
}

View File

@@ -45,6 +45,8 @@ func init() {
cmd.Perform("force-detach-host", &compute.StorageForceDetachHost{})
cmd.Perform("public", &options.BasePublicOptions{})
cmd.Perform("private", &options.BaseIdOptions{})
cmd.Get("hardware-info", &options.BaseIdOptions{})
cmd.Perform("set-hardware-info", &compute.StorageSetHardwareInfoOptions{})
type StorageCephRunOptions struct {
ID string `help:"ID or name of ceph storage"`

View File

@@ -15,19 +15,25 @@
package compute
import (
"yunion.io/x/jsonutils"
"fmt"
"time"
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/modules/identity"
"yunion.io/x/onecloud/pkg/mcclient/modules/image"
"yunion.io/x/onecloud/pkg/mcclient/modules/k8s"
"yunion.io/x/onecloud/pkg/mcclient/options"
)
type GeneralUsageOptions struct {
HostType []string `help:"Host types" choices:"hypervisor|baremetal|esxi|xen|kubelet|hyperv|aliyun|azure|aws|huawei|qcloud|openstack|ucloud|zstack|google|ctyun"`
Provider []string `help:"Provider" choices:"OneCloud|VMware|Aliyun|Azure|Aws|Qcloud|Huawei|OpenStack|Ucloud|ZStack|Google|Ctyun"`
Brand []string `help:"Brands" choices:"OneCloud|VMware|Aliyun|Azure|Aws|Qcloud|Huawei|OpenStack|Ucloud|ZStack|DStack|Google|Ctyun"`
Provider []string `help:"Provider" choices:"OneCloud|VMware|Aliyun|Azure|Aws|Qcloud|Huawei|OpenStack|Ucloud|VolcEngine|ZStack|Google|Ctyun"`
Brand []string `help:"Brands" choices:"OneCloud|VMware|Aliyun|Azure|Aws|Qcloud|Huawei|OpenStack|Ucloud|VolcEngine|ZStack|DStack|Google|Ctyun"`
Project string `help:"show usage of specified project"`
ProjectDomain string `help:"show usage of specified domain"`
@@ -58,7 +64,50 @@ func fetchHostTypeOptions(args *GeneralUsageOptions) *jsonutils.JSONDict {
return params
}
type HistoryUsageListOptions struct {
options.ExtraListOptions
StartDate time.Time
EndDate time.Time
Interval string `choices:"hour|day|month|year" default:"day"`
}
func (opts *HistoryUsageListOptions) Params() (jsonutils.JSONObject, error) {
if opts.StartDate.IsZero() || opts.EndDate.IsZero() {
opts.EndDate = time.Now()
switch opts.Interval {
case "hour":
opts.StartDate = time.Now().Add(time.Hour * -24)
case "day":
opts.StartDate = time.Now().AddDate(0, 0, -30)
case "month":
opts.StartDate = time.Now().AddDate(0, -12, 0)
case "year":
opts.StartDate = time.Now().AddDate(-3, 0, 0)
}
}
return jsonutils.Marshal(opts), nil
}
func (o *HistoryUsageListOptions) GetExportKeys() string {
return ""
}
func (o *HistoryUsageListOptions) GetId() string {
return ""
}
func init() {
cmd := shell.NewResourceCmd(modules.HistoryUsages)
cmd.GetWithCustomShow("list", func(data jsonutils.JSONObject) {
ret := map[string][]jsonutils.JSONObject{}
data.Unmarshal(&ret)
for k, d := range ret {
fmt.Println(k)
printutils.PrintJSONList(&printutils.ListResult{Data: d}, nil)
}
}, &HistoryUsageListOptions{})
R(&GeneralUsageOptions{}, "usage", "Show general usage", func(s *mcclient.ClientSession, args *GeneralUsageOptions) error {
params := fetchHostTypeOptions(args)
if args.Project != "" {

View File

@@ -17,7 +17,7 @@ package compute
import (
"yunion.io/x/onecloud/cmd/climc/shell"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {

View File

@@ -18,7 +18,8 @@ import (
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/compute"
"yunion.io/x/onecloud/pkg/mcclient/options"
baseoptions "yunion.io/x/onecloud/pkg/mcclient/options"
options "yunion.io/x/onecloud/pkg/mcclient/options/compute"
)
func init() {
@@ -33,12 +34,12 @@ func init() {
cmd.Perform("sync", &options.VpcIdOptions{})
cmd.Perform("syncstatus", &options.VpcIdOptions{})
cmd.Perform("private", &options.VpcIdOptions{})
cmd.Perform("public", &options.BasePublicOptions{})
cmd.Perform("public", &baseoptions.BasePublicOptions{})
cmd.Perform("change-owner", &options.VpcChangeOwnerOptions{})
cmd.Get("vpc-change-owner-candidate-domains", &options.VpcIdOptions{})
cmd.Get("topology", &options.VpcIdOptions{})
R(&options.ResourceMetadataOptions{}, "vpc-set-user-metadata", "Set metadata of a vpc", func(s *mcclient.ClientSession, opts *options.ResourceMetadataOptions) error {
R(&baseoptions.ResourceMetadataOptions{}, "vpc-set-user-metadata", "Set metadata of a vpc", func(s *mcclient.ClientSession, opts *baseoptions.ResourceMetadataOptions) error {
params, err := opts.Params()
if err != nil {
return err

View File

@@ -32,6 +32,11 @@ import (
func init() {
handleResult := func(s *mcclient.ClientSession, opt o.WebConsoleOptions, obj jsonutils.JSONObject) error {
if obj.Contains("access_url") {
accessUrl, _ := obj.GetString("access_url")
fmt.Println("AccessURL:", accessUrl)
return nil
}
if opt.WebconsoleUrl == "" {
resp, err := identity.ServicesV3.GetSpecific(s, "common", "config", nil)
if err != nil {
@@ -117,7 +122,7 @@ func init() {
if err != nil {
return err
}
ret, err := webconsole.WebConsole.DoSshConnect(s, args.IP, params)
ret, err := webconsole.WebConsole.DoSshConnect(s, args.ID, params)
if err != nil {
return err
}
@@ -133,4 +138,14 @@ func init() {
handleResult(s, args.WebConsoleOptions, ret)
return nil
})
R(&o.WebConsoleServerRdpOptions{}, "webconsole-server-rdp", "Connect server remote graphic console by rdp", func(s *mcclient.ClientSession, args *o.WebConsoleServerRdpOptions) error {
ret, err := webconsole.WebConsole.DoServerRDPConnect(s, args.ID, jsonutils.Marshal(map[string]interface{}{"webconsole": args}))
if err != nil {
return err
}
handleResult(s, args.WebConsoleOptions, ret)
return nil
})
}

View File

@@ -229,7 +229,7 @@ type IPropertyOpt interface {
Property() string
}
func (cmd ResourceCmd) GetProperty(args IPropertyOpt) {
func (cmd ResourceCmd) GetPropertyWithShowFunc(args IPropertyOpt, showFunc func(jsonutils.JSONObject) error) {
man := cmd.manager
callback := func(s *mcclient.ClientSession, args IPropertyOpt) error {
params, err := args.Params()
@@ -240,6 +240,17 @@ func (cmd ResourceCmd) GetProperty(args IPropertyOpt) {
if err != nil {
return err
}
err = showFunc(ret)
if err != nil {
return err
}
return nil
}
cmd.RunWithDesc(args.Property(), fmt.Sprintf("Get property of a %s", man.GetKeyword()), args, callback)
}
func (cmd ResourceCmd) GetProperty(args IPropertyOpt) {
cmd.GetPropertyWithShowFunc(args, func(ret jsonutils.JSONObject) error {
if _, ok := ret.(*jsonutils.JSONArray); ok {
data, _ := ret.GetArray()
PrintList(&printutils.ListResult{
@@ -249,8 +260,7 @@ func (cmd ResourceCmd) GetProperty(args IPropertyOpt) {
PrintObject(ret)
}
return nil
}
cmd.RunWithDesc(args.Property(), fmt.Sprintf("Get property of a %s", man.GetKeyword()), args, callback)
})
}
func (cmd ResourceCmd) Show(args IShowOpt) {
@@ -657,15 +667,15 @@ func (cmd JointCmd) List(args IJointListOpt) {
cmd.RunWithDesc("list", fmt.Sprintf("list %s %s pairs", man.MasterManager().KeyString(), man.SlaveManager().KeyString()), args, callback)
}
type IJointShowOpt interface {
type IJointOpt interface {
IOpt
GetMasterId() string
GetSlaveId() string
}
func (cmd JointCmd) Show(args IJointShowOpt) {
func (cmd JointCmd) Show(args IJointOpt) {
man := cmd.manager.(modulebase.JointManager)
callback := func(s *mcclient.ClientSession, args IJointShowOpt) error {
callback := func(s *mcclient.ClientSession, args IJointOpt) error {
params, err := args.Params()
if err != nil {
return err
@@ -679,3 +689,54 @@ func (cmd JointCmd) Show(args IJointShowOpt) {
}
cmd.Run("show", args, callback)
}
func (cmd JointCmd) Attach(args IJointOpt) {
man := cmd.manager.(modulebase.JointManager)
callback := func(s *mcclient.ClientSession, args IJointOpt) error {
params, err := args.Params()
if err != nil {
return err
}
result, err := man.Attach(s, args.GetMasterId(), args.GetSlaveId(), params)
if err != nil {
return err
}
PrintObject(result)
return nil
}
cmd.Run("attach", args, callback)
}
func (cmd JointCmd) Detach(args IJointOpt) {
man := cmd.manager.(modulebase.JointManager)
callback := func(s *mcclient.ClientSession, args IJointOpt) error {
params, err := args.Params()
if err != nil {
return err
}
result, err := man.Detach(s, args.GetMasterId(), args.GetSlaveId(), params)
if err != nil {
return err
}
PrintObject(result)
return nil
}
cmd.Run("detach", args, callback)
}
func (cmd JointCmd) Update(args IJointOpt) {
man := cmd.manager.(modulebase.JointManager)
callback := func(s *mcclient.ClientSession, args IJointOpt) error {
params, err := args.Params()
if err != nil {
return err
}
result, err := man.Update(s, args.GetMasterId(), args.GetSlaveId(), nil, params)
if err != nil {
return err
}
PrintObject(result)
return nil
}
cmd.Run("update", args, callback)
}

View File

@@ -31,4 +31,5 @@ func init() {
orgCmd.Delete(&identity_options.OrganizationIdOptions{})
orgCmd.Perform("add-level", &identity_options.OrganizationAddLevelOptions{})
orgCmd.Perform("add-node", &identity_options.OrganizationAddNodeOptions{})
orgCmd.Perform("clean", &identity_options.OrganizationIdOptions{})
}

View File

@@ -40,7 +40,7 @@ import (
"yunion.io/x/onecloud/pkg/util/tagutils"
)
func createPolicy(s *mcclient.ClientSession, name string, genName string, policy string, domain string, enabled bool, disabled bool, desc string, scope string, isSystem *bool, objectags, projecttags, domaintags tagutils.TTagSet) error {
func createPolicy(s *mcclient.ClientSession, name string, genName string, policy string, domain string, enabled bool, disabled bool, desc string, scope string, isSystem *bool, objectags, projecttags, domaintags tagutils.TTagSet, orgNodeId []string) error {
params := jsonutils.NewDict()
if len(genName) > 0 {
params.Add(jsonutils.NewString(genName), "generate_name")
@@ -83,6 +83,10 @@ func createPolicy(s *mcclient.ClientSession, name string, genName string, policy
params.Add(jsonutils.Marshal(domaintags), "domain_tags")
}
if len(orgNodeId) > 0 {
params.Add(jsonutils.NewStringArray(orgNodeId), "org_node_id")
}
result, err := modules.Policies.Create(s, params)
if err != nil {
return err
@@ -115,7 +119,12 @@ func createPolicyFromJson(s *mcclient.ClientSession, old jsonutils.JSONObject, a
domainTags = make(tagutils.TTagSet, 0)
old.Unmarshal(&domainTags, "domain_tags")
}
return createPolicy(s, argsName, genName, policy, argsDomain, enabled, !enabled, desc, scope, &isSystem, objectTags, projectTags, domainTags)
var nodeIds []string
if old.Contains("org_node_id") {
nodeIds = make([]string, 0)
old.Unmarshal(&nodeIds, "org_node_id")
}
return createPolicy(s, argsName, genName, policy, argsDomain, enabled, !enabled, desc, scope, &isSystem, objectTags, projectTags, domainTags, nodeIds)
}
func init() {
@@ -141,6 +150,8 @@ func init() {
ProjectTags string `help:"project tags"`
DomainTags string `help:"domain tags"`
ObjectTags string `help:"object tags"`
OrgNodeId []string `help:"node ids of organiazation tree node"`
}
R(&PolicyCreateOptions{}, "policy-create", "Create a new policy", func(s *mcclient.ClientSession, args *PolicyCreateOptions) error {
policyBytes, err := ioutil.ReadFile(args.FILE)
@@ -151,7 +162,7 @@ func init() {
objectTags := baseoptions.SplitTag(args.ObjectTags)
projectTags := baseoptions.SplitTag(args.ProjectTags)
domainTags := baseoptions.SplitTag(args.DomainTags)
return createPolicy(s, args.NAME, "", string(policyBytes), args.Domain, args.Enabled, args.Disabled, args.Desc, args.Scope, args.IsSystem, objectTags, projectTags, domainTags)
return createPolicy(s, args.NAME, "", string(policyBytes), args.Domain, args.Enabled, args.Disabled, args.Desc, args.Scope, args.IsSystem, objectTags, projectTags, domainTags, args.OrgNodeId)
})
type PolicyExportOptions struct {
@@ -213,6 +224,8 @@ func init() {
ProjectTags string `help:"project tags"`
DomainTags string `help:"domain tags"`
ObjectTags string `help:"object tags"`
OrgNodeId []string `help:"node ids of organiazation tree node"`
}
updateFunc := func(s *mcclient.ClientSession, args *PolicyPatchOptions) error {
policyId, err := modules.Policies.GetId(s, args.ID, nil)
@@ -262,6 +275,10 @@ func init() {
params.Add(jsonutils.NewString(args.TagsAction), "tag_update_policy")
}
if len(args.OrgNodeId) > 0 {
params.Add(jsonutils.NewStringArray(args.OrgNodeId), "org_node_id")
}
result, err := modules.Policies.Update(s, policyId, params)
if err != nil {
return err

View File

@@ -40,6 +40,7 @@ func init() {
cmd.GetProperty(&identity_options.ProjectGetPropertyTagValueTreeOptions{})
cmd.GetProperty(&identity_options.ProjectGetPropertyDomainTagValuePairOptions{})
cmd.GetProperty(&identity_options.ProjectGetPropertyDomainTagValueTreeOptions{})
cmd.PerformClass("clean", &identity_options.ProjectCleanOptions{})
type ProjectShowOptions struct {
ID string `help:"ID or Name of project"`
@@ -387,16 +388,18 @@ func init() {
})
type ProjectAddUserGroupOptions struct {
Project string `help:"ID or name of project to add users/groups" positional:"true" optional:"false"`
User []string `help:"ID of user to add"`
Group []string `help:"ID of group to add"`
Role []string `help:"ID of role to add"`
Project string `help:"ID or name of project to add users/groups" positional:"true" optional:"false"`
User []string `help:"ID of user to add"`
Group []string `help:"ID of group to add"`
Role []string `help:"ID of role to add"`
EnableAllUsers bool
}
R(&ProjectAddUserGroupOptions{}, "project-add-user-group", "Batch add users/groups to project", func(s *mcclient.ClientSession, args *ProjectAddUserGroupOptions) error {
input := api.SProjectAddUserGroupInput{}
input.Users = args.User
input.Groups = args.Group
input.Roles = args.Role
input.EnableAllUsers = args.EnableAllUsers
err := input.Validate()
if err != nil {
return err

View File

@@ -162,6 +162,18 @@ func init() {
return nil
})
type ServiceConfigShow2Options struct {
TYPE string `help:"service type"`
}
R(&ServiceConfigShow2Options{}, "service-config-show2", "Show configs of a service", func(s *mcclient.ClientSession, args *ServiceConfigShow2Options) error {
conf, err := modules.ServicesV3.GetConfig(s, args.TYPE)
if err != nil {
return err
}
fmt.Println(conf.PrettyString())
return nil
})
type ServiceConfigOptions struct {
SERVICE string `help:"service name or id"`
Config []string `help:"config options, can be a JSON, a YAML or a key=value pair, e.g:\n * JSON\n '{\"default\":{\"password_expiration_seconds\":300}}'\n * YAML\n default:\n password_expiration_seconds: 300\n * A key=value pair (under default section)\n password_expiration_seconds=300\n"`

View File

@@ -413,15 +413,32 @@ func init() {
return nil
})
type UserGroupsOptions struct {
USER string `help:"User ID or Name"`
Gids []string `help:"group ID or Name"`
Action string `default:"join" choices:"join|leave"`
Enabled bool
}
R(&UserGroupsOptions{}, "user-join-groups", "Add a user to groups", func(s *mcclient.ClientSession, args *UserGroupsOptions) error {
_, err := modules.UsersV3.DoJoinGroups(s, args.USER, jsonutils.Marshal(args))
if err != nil {
return err
}
return nil
})
type UserJoinProjectOptions struct {
User string `help:"User Id or name" optional:"false" positional:"true"`
Project []string `help:"Projects to join" nargs:"+"`
Role []string `help:"User join project with roles" nargs:"+"`
Enabled bool
}
R(&UserJoinProjectOptions{}, "user-join-project", "User join projects with roles", func(s *mcclient.ClientSession, args *UserJoinProjectOptions) error {
input := api.SJoinProjectsInput{}
input.Projects = args.Project
input.Roles = args.Role
input.Enabled = args.Enabled
result, err := modules.UsersV3.PerformAction(s, args.User, "join", jsonutils.Marshal(input))
if err != nil {
return err

View File

@@ -37,6 +37,8 @@ func initContainerRegistry() {
cmd.Create(new(o.RegistryCreateOptions))
cmd.Get("images", new(o.RegistryGetImagesOptions))
cmd.Get("image-tags", new(o.RegistryGetImageTagsOptions))
cmd.BatchPerform("public", new(o.RegistryPublicOptions))
cmd.Perform("private", new(o.RegistryGetOptions))
type UploadOptions struct {
REGISTRY string `help:"The name or id of registry" json:"-"`

View File

@@ -50,4 +50,28 @@ func init() {
fmt.Println(result)
return nil
})
type DistinctFieldsOption struct {
MODULE string `help:"module name"`
Field []string `help:"distinct field name to query"`
ExtraField []string `help:"distinct field name to query"`
ExtraResource string
}
R(&DistinctFieldsOption{}, "distinct-fields", "Query values of a distinct fields for a module", func(s *mcclient.ClientSession, args *DistinctFieldsOption) 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.Marshal(args)
result, err := mod.Get(s, "distinct-fields", params)
if err != nil {
return err
}
fmt.Println(result)
return nil
})
}

View File

@@ -19,13 +19,50 @@ import (
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/util/sets"
"yunion.io/x/pkg/utils"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/yunionconf"
)
type GlobalSettingsValue struct {
SetupKeys []string `json:"setupKeys"`
SetupKeysVersion string `json:"setupKeysVersion"`
SetupOneStackInitialized bool `json:"setupOneStackInitialized"`
ProductVersion string `json:"productVersion"`
UserDefinedKeys map[string]bool `json:"userDefinedKeys"`
}
func NewGlobalSettingsValue(setupKeys []string, setupOneStack bool) *GlobalSettingsValue {
settings := &GlobalSettingsValue{
SetupOneStackInitialized: setupOneStack,
UserDefinedKeys: make(map[string]bool),
}
for _, key := range setupKeys {
settings.Switch(key, true)
}
return settings
}
func (g *GlobalSettingsValue) Switch(featureKey string, on bool) {
if g.UserDefinedKeys == nil {
g.UserDefinedKeys = map[string]bool{}
}
g.UserDefinedKeys[featureKey] = on
ss := sets.NewString(g.SetupKeys...)
if on {
ss.Insert(featureKey)
} else {
ss.Delete(featureKey)
}
g.SetupKeys = ss.List()
}
func init() {
var storageFeatures = []string{
"s3", "xsky", "ceph",
}
var features = []string{
"onestack",
"baremetal",
@@ -48,9 +85,6 @@ func init() {
"cloudpods",
"hcso",
"nutanix",
"s3",
"ceph",
"xsky",
"bill",
"auth",
"onecloud",
@@ -66,8 +100,12 @@ func init() {
"baidu",
"cucloud",
"qingcloud",
"volcengine",
"oraclecloud",
}
features = append(features, storageFeatures...)
const (
GlobalSettings = "global-settings"
SystemScope = "system"
@@ -94,13 +132,14 @@ func init() {
if len(items.Data) == 0 {
// create it if enabled
if enable {
value := []string{name}
if utils.IsInStringArray(name, storageFeatures) {
value = append(value, "storage")
}
input := map[string]interface{}{
"name": GlobalSettings,
"service_id": YunionAgent,
"value": map[string]interface{}{
"setupKeys": []string{name},
"setupOneStackInitialized": true,
},
"value": NewGlobalSettingsValue(value, true),
}
params := jsonutils.Marshal(input)
if _, err := yunionconf.Parameters.Create(s, params); err != nil {
@@ -122,33 +161,23 @@ func init() {
if err != nil {
return errors.Wrap(err, "get value")
}
setupKeys := []string{}
if value.Contains("setupKeys") {
if err := value.Unmarshal(&setupKeys, "setupKeys"); err != nil {
return errors.Wrap(err, "unmarshal setupKeys")
}
curConf := new(GlobalSettingsValue)
if err := value.Unmarshal(curConf); err != nil {
return errors.Wrapf(err, "unmarshal to GlobalSettingsValue: %s", value)
}
if !enable {
if utils.IsInStringArray(name, setupKeys) {
newKeys := []string{}
for _, key := range setupKeys {
if key != name {
newKeys = append(newKeys, key)
}
}
setupKeys = newKeys
}
} else if enable {
if !utils.IsInStringArray(name, setupKeys) {
setupKeys = append(setupKeys, name)
curConf.Switch(name, false)
} else {
curConf.Switch(name, true)
if utils.IsInStringArray(name, storageFeatures) {
curConf.Switch("storage", true)
}
}
value.(*jsonutils.JSONDict).Set("setupKeys", jsonutils.Marshal(setupKeys))
id, err := ss.GetString("id")
if err != nil {
return errors.Errorf("get id from %s", ss)
}
ss.(*jsonutils.JSONDict).Set("value", value)
ss.(*jsonutils.JSONDict).Set("value", jsonutils.Marshal(curConf))
obj, err := yunionconf.Parameters.Update(s, id, ss)
if err != nil {
return errors.Wrapf(err, "update %s(%s)", GlobalSettings, id)

View File

@@ -96,6 +96,7 @@ func init() {
apis.SERVICE_TYPE_OFFLINE_CLOUDMETA,
apis.SERVICE_TYPE_CLOUDMETA,
apis.SERVICE_TYPE_INFLUXDB,
apis.SERVICE_TYPE_VICTORIA_METRICS,
apis.SERVICE_TYPE_ETCD,
"torrent-tracker",
}) {

View File

@@ -15,7 +15,6 @@
package monitor
import (
"encoding/json"
"fmt"
"yunion.io/x/pkg/errors"
@@ -46,11 +45,7 @@ func init() {
if err != nil {
return errors.Wrap(err, "DoTestRun")
}
jsonBytes, err := json.MarshalIndent(ret, "", " ")
if err != nil {
return errors.Wrap(err, "MarshalIndent")
}
fmt.Printf("%s\n", jsonBytes)
fmt.Printf("%s\n", ret.PrettyString())
return nil
})
}

View File

@@ -15,10 +15,136 @@
package monitor
import (
"yunion.io/x/jsonutils"
monitorapi "yunion.io/x/onecloud/pkg/apis/monitor"
"yunion.io/x/onecloud/pkg/mcclient"
modules "yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
type CommonAlertTerm struct {
Database string
Measurement string
Operator string // and / or
Field []string
FieldFunc string
Reduce string
Comparator string
Threshold float64
Filters []monitorapi.MetricQueryTag
FieldOpt string
Name string
ConditionType string
From string
Interval string
GroupBy string
Level string
}
func newCommonAlertQuery(tem *CommonAlertTerm) *monitorapi.CommonAlertQuery {
mq := monitorapi.MetricQuery{
Alias: "",
Tz: "",
Database: tem.Database,
Measurement: tem.Measurement,
Tags: make([]monitorapi.MetricQueryTag, 0),
GroupBy: make([]monitorapi.MetricQueryPart, 0),
Selects: nil,
Interval: "",
Policy: "",
ResultFormat: "",
}
for _, field := range tem.Field {
sel := monitorapi.MetricQueryPart{
Type: "field",
Params: []string{field},
}
selectPart := []monitorapi.MetricQueryPart{sel}
if len(tem.FieldFunc) != 0 {
selectPart = append(selectPart, monitorapi.MetricQueryPart{
Type: tem.FieldFunc,
Params: []string{},
})
} else {
selectPart = append(selectPart, monitorapi.MetricQueryPart{
Type: "mean",
Params: []string{},
})
}
mq.Selects = append(mq.Selects, selectPart)
}
if len(tem.Filters) != 0 {
for _, filter := range tem.Filters {
mq.Tags = append(mq.Tags, filter)
}
}
alertQ := new(monitorapi.AlertQuery)
alertQ.Model = mq
alertQ.From = "60m"
commonAlert := monitorapi.CommonAlertQuery{
AlertQuery: alertQ,
Reduce: tem.Reduce,
Comparator: tem.Comparator,
Threshold: tem.Threshold,
Operator: tem.Operator,
}
if tem.FieldOpt != "" {
commonAlert.FieldOpt = monitorapi.CommonAlertFieldOpt_Division
}
if len(tem.ConditionType) != 0 {
commonAlert.ConditionType = tem.ConditionType
}
if len(tem.GroupBy) != 0 {
commonAlert.Model.GroupBy = append(commonAlert.Model.GroupBy, monitorapi.MetricQueryPart{
Type: "field",
Params: []string{tem.GroupBy},
})
}
return &commonAlert
}
var (
cpuTem = &CommonAlertTerm{
Operator: "or",
Database: "telegraf",
Measurement: "vm_cpu",
Field: []string{"usage_active"},
Comparator: ">=",
Reduce: "avg",
Threshold: 50,
Name: "lzx-test.cpu.usage_active",
Filters: []monitorapi.MetricQueryTag{
{
Key: "id",
Operator: "=",
Value: "a0eee5dd-3cfe-4ab1-8c79-aee1a8cf4dab",
},
},
}
memTem = &CommonAlertTerm{
Operator: "or",
Database: "telegraf",
Measurement: "vm_mem",
Field: []string{"used_percent"},
Comparator: ">=",
Reduce: "avg",
Threshold: 3,
Name: "lzx-test.mem.avaiable",
Filters: []monitorapi.MetricQueryTag{
{
Key: "id",
Operator: "=",
Value: "a0eee5dd-3cfe-4ab1-8c79-aee1a8cf4dab",
},
},
}
)
func init() {
cmd := NewResourceCmd(modules.CommonAlerts)
cmd.Create(new(options.CommonAlertCreateOptions))
@@ -28,4 +154,34 @@ func init() {
cmd.Perform("disable", &options.CommonAlertShowOptions{})
cmd.BatchDelete(new(options.CommonAlertDeleteOptions))
cmd.Perform("config", &options.CommonAlertUpdateOptions{})
type TestOpt struct {
NAME string
RobotIds []string
Users []string
}
R(&TestOpt{}, "monitor-commonalert-create-mul-test", "create test monitor common alert", func(s *mcclient.ClientSession, opt *TestOpt) error {
cpuQ := newCommonAlertQuery(cpuTem)
memQ := newCommonAlertQuery(memTem)
input := monitorapi.CommonAlertCreateInput{
CommonMetricInputQuery: monitorapi.CommonMetricInputQuery{
MetricQuery: []*monitorapi.CommonAlertQuery{
cpuQ,
memQ,
},
},
AlertCreateInput: monitorapi.AlertCreateInput{
Name: opt.NAME,
},
CommonAlertCreateBaseInput: monitorapi.CommonAlertCreateBaseInput{
Recipients: opt.Users,
RobotIds: opt.RobotIds,
Channel: []string{"webconsole"},
AlertType: monitorapi.CommonAlertNomalAlertType,
Scope: "system",
},
}
_, err := modules.CommonAlerts.Create(s, jsonutils.Marshal(input))
return err
})
}

View File

@@ -15,7 +15,10 @@
package monitor
import (
"yunion.io/x/pkg/errors"
"yunion.io/x/onecloud/cmd/climc/shell"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/monitor"
options "yunion.io/x/onecloud/pkg/mcclient/options/monitor"
)
@@ -24,5 +27,18 @@ func init() {
cmd := shell.NewResourceCmd(monitor.UnifiedMonitorManager).SetPrefix("monitor")
cmd.Show(&options.SimpleQueryOptions{})
cmd.GetProperty(&options.MeasurementsQueryOptions{})
cmd.GetProperty(&options.DatabasesQueryOptions{})
// cmd.GetProperty(&options.DatabasesQueryOptions{})
R(new(options.MetricQueryOptions), "monitor-unifiedmonitor-query", "Perform metrics query", func(s *mcclient.ClientSession, opts *options.MetricQueryOptions) error {
input, err := opts.GetQueryInput()
if err != nil {
return err
}
resp, err := monitor.UnifiedMonitorManager.PerformQuery(s, input)
if err != nil {
return errors.Wrap(err, "PerformQuery")
}
printObject(resp)
return nil
})
}

View File

@@ -27,4 +27,5 @@ func init() {
cmd.Update(new(options.ConfigUpdateOptions))
cmd.Show(new(options.ConfigOptions))
cmd.Delete(new(options.ConfigOptions))
cmd.GetProperty(new(options.ConfigCapabilityOptions))
}

View File

@@ -138,4 +138,28 @@ func init() {
}
return nil
})
type NotificationContactInput struct {
Subject string
Body string
ContactType []string
ReceiverIds []string
RobotIds []string
RoleIds []string
}
R(&NotificationContactInput{}, "notify-contact-send", "Send notify event message", func(s *mcclient.ClientSession, args *NotificationContactInput) error {
params := api.NotificationManagerContactNotifyInput{
Subject: args.Subject,
Body: args.Body,
ReceiverIds: args.ReceiverIds,
ContactTypes: args.ContactType,
RobotIds: args.RobotIds,
RoleIds: args.RoleIds,
}
_, err := modules.Notification.PerformClassAction(s, "contact-notify", jsonutils.Marshal(params))
if err != nil {
return fmt.Errorf("unable to ContactNotify: %s", err)
}
return nil
})
}

View File

@@ -35,4 +35,5 @@ func init() {
cmd.PerformClass("intellij-get", new(options.ReceiverIntellijGetOptions))
cmd.PerformClass("get-types", new(options.ReceiverGetTypeOptions))
cmd.Perform("get-subscription", new(options.ReceiverGetSubscriptionOptions))
cmd.GetProperty(new(options.SReceiverRoleContactType))
}

View File

@@ -73,9 +73,10 @@ func init() {
}
type CycleTimer struct {
CycleCycleType string `help:"Cycle type for cycle timer" json:"cycle_type" choices:"day|week|month"`
CycleCycleType string `help:"Cycle type for cycle timer" json:"cycle_type" choices:"hour|day|week|month"`
CycleMinute int `help:"Minute of cycle timer" json:"minute"`
CycleHour int `help:"Hour of cycle timer" json:"hour"`
CycleCycleNum int `help:"Cycle count of cycle timer" json:"cycle_num"`
CycleWeekdays []int `help:"Weekdays for cycle timer" json:"weekdays"`
CycleMonthDays []int `help:"Month days for cycle timer" json:"month_days"`
CycleStartTime string `help:"Start time for cycle timer, format:'2006-01-02 15:04:05'" json:"start_time"`
@@ -123,6 +124,7 @@ func init() {
},
CycleTimer: apis.CycleTimerCreateInput{
CycleType: args.CycleCycleType,
CycleNum: args.CycleCycleNum,
Minute: args.CycleMinute,
Hour: args.CycleHour,
WeekDays: args.CycleWeekdays,

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 yunionconf
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/yunionconf"
)
func init() {
type BugReportStatusOptions struct {
}
R(&BugReportStatusOptions{}, "bug-report-status", "Show bug report status", func(s *mcclient.ClientSession, args *BugReportStatusOptions) error {
ret, err := yunionconf.BugReport.GetBugReportEnabled(s, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
type BugReportEnableOptions struct {
}
R(&BugReportEnableOptions{}, "bug-report-enable", "Enable bug report", func(s *mcclient.ClientSession, args *BugReportEnableOptions) error {
ret, err := yunionconf.BugReport.DoBugReportEnable(s, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
R(&BugReportEnableOptions{}, "bug-report-disable", "Disable bug report", func(s *mcclient.ClientSession, args *BugReportEnableOptions) error {
ret, err := yunionconf.BugReport.DoBugReportDisable(s, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
}

View File

@@ -15,10 +15,15 @@
package yunionconf
import (
"fmt"
"yunion.io/x/jsonutils"
"yunion.io/x/pkg/errors"
"yunion.io/x/pkg/util/printutils"
"yunion.io/x/pkg/util/shellutils"
api "yunion.io/x/onecloud/pkg/apis/yunionconf"
"yunion.io/x/onecloud/pkg/httperrors"
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/identity"
"yunion.io/x/onecloud/pkg/mcclient/modules/yunionconf"
@@ -241,4 +246,100 @@ func init() {
printObject(parameter)
return nil
})
type ParameterCloneOptions struct {
User string `help:"Clone parameter of specificated user id"`
Service string `help:"Clone parameter of specificated service id"`
NAME string `help:"The name of parameter"`
DestUser string `help:"destination user id of clone action"`
DestService string `help:"destination service id of clone action"`
DestName string `help:"destination parameter name of clone action, may be empty"`
}
R(&ParameterCloneOptions{}, "parameter-clone", "clone parameter", func(s *mcclient.ClientSession, args *ParameterCloneOptions) error {
input := api.ParameterCloneInput{}
input.DestName = args.DestName
if len(args.DestUser) > 0 {
input.DestNs = api.NAMESPACE_USER
input.DestNsId = args.DestUser
} else if len(args.DestService) > 0 {
input.DestNs = api.NAMESPACE_SERVICE
input.DestNsId = args.DestService
} else {
return errors.Wrap(httperrors.ErrMissingParameter, "either dest_user or dest_service must be specified")
}
params := jsonutils.Marshal(input).(*jsonutils.JSONDict)
var parameter jsonutils.JSONObject
var err error
if len(args.User) > 0 {
parameter, err = yunionconf.Parameters.PerformActionInContext(s, args.NAME, "clone", params, &identity.UsersV3, args.User)
} else if len(args.Service) > 0 {
parameter, err = yunionconf.Parameters.PerformActionInContext(s, args.NAME, "clone", params, &identity.ServicesV3, args.Service)
} else {
parameter, err = yunionconf.Parameters.PerformAction(s, args.NAME, "clone", params)
}
if err != nil {
return err
}
printObject(parameter)
return nil
})
type ParameterCloneDashboardOptions struct {
SCOPE string `help:"dashboard scope" choices:"system|domain|project"`
SRC string `help:"source user id"`
DST string `help:"destination user id"`
}
R(&ParameterCloneDashboardOptions{}, "parameter-clone-dashboard", "clone dashboard parameter", func(s *mcclient.ClientSession, args *ParameterCloneDashboardOptions) error {
cloneUserParams := func(srcUid, destUid, name string) (jsonutils.JSONObject, error) {
paramId, err := yunionconf.Parameters.GetIdInContext(s, name, nil, &identity.UsersV3, srcUid)
if err != nil {
return nil, errors.Wrapf(err, "GetByName %s", name)
}
input := api.ParameterCloneInput{
DestNs: api.NAMESPACE_USER,
DestNsId: destUid,
}
params := jsonutils.Marshal(input).(*jsonutils.JSONDict)
return yunionconf.Parameters.PerformActionInContext(s, paramId, "clone", params, &identity.UsersV3, srcUid)
}
rootName := fmt.Sprintf("dashboard_%s", args.SCOPE)
confs := []struct {
Id string
Name string
}{}
paramObj, err := yunionconf.Parameters.GetInContext(s, rootName, nil, &identity.UsersV3, args.SRC)
if err != nil {
return errors.Wrap(err, "GetParameter")
}
err = paramObj.Unmarshal(&confs, "value")
if err != nil {
return errors.Wrap(err, "unmarshal value")
}
for _, conf := range confs {
_, err := cloneUserParams(args.SRC, args.DST, conf.Id)
if err != nil {
return errors.Wrapf(err, "clone %s", conf.Id)
}
fmt.Println("cloned", conf.Id)
}
// finally copy the root
_, err = cloneUserParams(args.SRC, args.DST, rootName)
if err != nil {
return errors.Wrapf(err, "clone %s", rootName)
}
fmt.Println("cloned", rootName)
return nil
})
}

View File

@@ -23,7 +23,9 @@ import (
"yunion.io/x/log"
api "yunion.io/x/onecloud/pkg/apis/cloudproxy"
common_app "yunion.io/x/onecloud/pkg/cloudcommon/app"
common_options "yunion.io/x/onecloud/pkg/cloudcommon/options"
"yunion.io/x/onecloud/pkg/cloudproxy/agent/worker"
"yunion.io/x/onecloud/pkg/cloudproxy/options"
"yunion.io/x/onecloud/pkg/cloudproxy/service"
@@ -33,42 +35,35 @@ import (
func main() {
defer atexit.Handle()
nop := true
wg := &sync.WaitGroup{}
ctx := context.Background()
ctx = context.WithValue(ctx, "wg", wg)
ctx, cancelFunc := context.WithCancel(ctx)
var (
opts = options.Get()
commonOpts = &opts.CommonOptions
opts = options.Get()
)
if opts.EnableAPIServer || opts.EnableProxyAgent {
common_app.InitAuth(commonOpts, func() {
log.Infof("Auth complete")
})
}
if opts.EnableAPIServer {
nop = false
wg.Add(1)
go func() {
defer wg.Done()
service.StartService()
}()
}
common_app.InitAuth(&opts.CommonOptions, func() {
log.Infof("Auth complete")
})
common_options.StartOptionManager(opts, opts.ConfigSyncPeriodSeconds, api.SERVICE_TYPE, api.SERVICE_VERSION, options.OnOptionsChange)
wg.Add(1)
go func() {
defer wg.Done()
service.StartService()
}()
if opts.EnableProxyAgent {
if opts.EnableAPIServer {
const d = "10m"
log.Infof("set proxy_agent_init_wait to %s", d)
opts.Options.ProxyAgentInitWait = d
}
const d = "10m"
log.Infof("set proxy_agent_init_wait to %s", d)
opts.Options.ProxyAgentInitWait = d
if err := opts.Options.ValidateThenInit(); err != nil {
log.Fatalf("proxy agent options validation: %v", err)
}
worker := worker.NewWorker(&opts.CommonOptions, &opts.Options)
nop = false
go func() {
worker.Start(ctx)
pid := os.Getpid()
@@ -79,17 +74,13 @@ func main() {
p.Signal(syscall.SIGTERM)
}()
}
if nop {
log.Warningln("nothing to do. Please check configuration")
} else {
go func() {
sigChan := make(chan os.Signal)
signal.Notify(sigChan, syscall.SIGINT)
signal.Notify(sigChan, syscall.SIGTERM)
sig := <-sigChan
log.Infof("signal received: %s", sig)
cancelFunc()
}()
wg.Wait()
}
go func() {
sigChan := make(chan os.Signal)
signal.Notify(sigChan, syscall.SIGINT)
signal.Notify(sigChan, syscall.SIGTERM)
sig := <-sigChan
log.Infof("signal received: %s", sig)
cancelFunc()
}()
wg.Wait()
}

View File

@@ -1,3 +1,17 @@
// 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 main
import (

View File

@@ -1,3 +1,17 @@
// 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 main
import (

View File

@@ -44,6 +44,14 @@ const (
// Failed, Offline, Degraded, Rebuilding, Out of Sync (OSY)
func main() {
logLevel := "debug"
logVerboseLevel := 5
log.SetVerboseLevel(int32(logVerboseLevel))
err := log.SetLogLevelByString(log.Logger(), logLevel)
if err != nil {
log.Fatalf("Set log level %q: %v", logLevel, err)
}
// creates the in-cluster config
config, err := rest.InClusterConfig()
if err != nil {

115
go.mod
View File

@@ -1,6 +1,6 @@
module yunion.io/x/onecloud
go 1.18
go 1.21
require (
bazil.org/fuse v0.0.0-20180421153158-65cc252bf669
@@ -24,27 +24,30 @@ require (
github.com/golang-plus/uuid v1.0.0
github.com/golang/mock v1.4.4
github.com/google/gopacket v1.1.17
github.com/google/uuid v1.3.0
github.com/google/uuid v1.6.0
github.com/googollee/go-socket.io v0.0.0-20181214084611-0ad7206c347a
github.com/gorilla/mux v1.7.0
github.com/gorilla/websocket v1.4.1
github.com/gosuri/uitable v0.0.0-20160404203958-36ee7e946282
github.com/hako/durafmt v0.0.0-20180520121703-7b7ae1e72ead
github.com/hugozhu/godingtalk v1.0.6
github.com/influxdata/influxql v1.1.0
github.com/influxdata/promql/v2 v2.12.0
github.com/jaypipes/ghw v0.11.0
github.com/koding/websocketproxy v0.0.0-20181220232114-7ed82d81a28c
github.com/lestrrat-go/jwx v1.0.2
github.com/lestrrat/go-jwx v0.0.0-20180221005942-b7d4802280ae
github.com/libvirt/libvirt-go-xml v5.2.0+incompatible
github.com/mattn/go-sqlite3 v1.14.12
github.com/mattn/go-sqlite3 v1.14.19
github.com/mdlayher/arp v0.0.0-20190313224443-98a83c8a2717
github.com/mdlayher/ethernet v0.0.0-20190606142754-0394541c37b7
github.com/mdlayher/raw v0.0.0-20190606144222-a54781e5f38f
github.com/mdlayher/packet v1.1.2
github.com/mholt/caddy v0.10.11
github.com/miekg/dns v1.1.25
github.com/minio/minio-go v6.0.14+incompatible
github.com/pierrec/lz4/v4 v4.1.15
github.com/pkg/errors v0.9.1
github.com/pkg/sftp v1.13.6
github.com/pquerna/otp v1.2.0
github.com/satori/go.uuid v1.2.0
github.com/sergi/go-diff v1.2.0
@@ -52,28 +55,30 @@ require (
github.com/sevlyar/go-daemon v0.1.5
github.com/shirou/gopsutil v3.21.11+incompatible
github.com/shirou/gopsutil/v3 v3.22.10
github.com/sirupsen/logrus v1.9.0
github.com/skip2/go-qrcode v0.0.0-20190110000554-dc11ecdae0a9
github.com/smartystreets/goconvey v1.7.2
github.com/stretchr/testify v1.8.1
github.com/stretchr/testify v1.9.0
github.com/tatsushid/go-fastping v0.0.0-20160109021039-d7bb493dee3e
github.com/tjfoc/gmsm v1.4.1
github.com/tredoe/osutil/v2 v2.0.0-rc.16
github.com/tredoe/osutil v1.5.0
github.com/vishvananda/netlink v1.1.0
github.com/vishvananda/netns v0.0.0-20211101163701-50045581ed74
github.com/vmihailenco/msgpack v4.0.4+incompatible
github.com/xuri/excelize/v2 v2.7.1
github.com/zexi/influxql-to-metricsql v0.0.9
go.etcd.io/etcd/api/v3 v3.5.0
go.etcd.io/etcd/client/v3 v3.5.0
golang.org/x/crypto v0.8.0
golang.org/x/net v0.9.0
golang.org/x/sync v0.1.0
golang.org/x/sys v0.9.0
golang.org/x/text v0.9.0
golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1
golang.org/x/crypto v0.19.0
golang.org/x/net v0.21.0
golang.org/x/sync v0.6.0
golang.org/x/sys v0.17.0
golang.org/x/text v0.14.0
golang.org/x/time v0.5.0
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028
golang.zx2c4.com/wireguard/wgctrl v0.0.0-20230215201556-9c5414ab4bde
google.golang.org/grpc v1.38.0
google.golang.org/protobuf v1.27.1
google.golang.org/grpc v1.62.0
google.golang.org/protobuf v1.32.0
gopkg.in/fatih/set.v0 v0.2.1
gopkg.in/ldap.v3 v3.0.3
gopkg.in/mail.v2 v2.3.1
@@ -83,20 +88,24 @@ require (
k8s.io/client-go v0.19.3
k8s.io/cluster-bootstrap v0.19.3
moul.io/http2curl/v2 v2.3.0
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230919091951-01618b65262e
yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20240926044403-b549642e9ab3
yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32
yunion.io/x/jsonutils v1.0.1-0.20230613121553-0f3b41e2ef19
yunion.io/x/log v1.0.1-0.20230411060016-feb3f46ab361
yunion.io/x/jsonutils v1.0.1-0.20240203102553-4096f103b401
yunion.io/x/log v1.0.1-0.20240305175729-7cf2d6cd5a91
yunion.io/x/ovsdb v0.0.0-20230306173834-f164f413a900
yunion.io/x/pkg v1.0.1-0.20230912084455-1393f31347db
yunion.io/x/pkg v1.10.1-0.20240905110705-77c46e716318
yunion.io/x/s3cli v0.0.0-20190917004522-13ac36d8687e
yunion.io/x/sqlchemy v1.1.2-0.20230823191329-dc02ac3a547c
yunion.io/x/structarg v0.0.0-20220312084958-9c6c79c7d1c6
yunion.io/x/sqlchemy v1.1.3-0.20240926163039-d41512b264e1
yunion.io/x/structarg v0.0.0-20231017124457-df4d5009457c
)
require (
cloud.google.com/go v0.65.0 // indirect
cloud.google.com/go/storage v1.10.0 // indirect
cloud.google.com/go v0.112.1 // indirect
cloud.google.com/go/compute v1.24.0 // indirect
cloud.google.com/go/compute/metadata v0.2.3 // indirect
cloud.google.com/go/iam v1.1.6 // indirect
cloud.google.com/go/storage v1.39.1 // indirect
gitee.com/chunanyong/dm v1.8.14 // indirect
github.com/Azure/azure-sdk-for-go v36.1.0+incompatible // indirect
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
github.com/Azure/go-autorest/autorest v0.9.6 // indirect
@@ -132,7 +141,8 @@ require (
github.com/boltdb/bolt v1.3.1 // indirect
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect
github.com/bradfitz/iter v0.0.0-20140124041915-454541ec3da2 // indirect
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/cespare/xxhash v1.1.0 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/cloudflare/golz4 v0.0.0-20150217214814-ef862a3cdc58 // indirect
github.com/coreos/go-semver v0.3.0 // indirect
github.com/coreos/go-systemd/v22 v22.3.2 // indirect
@@ -148,12 +158,14 @@ require (
github.com/elgatito/upnp v0.0.0-20180711183757-2f244d205f9a // indirect
github.com/farsightsec/golang-framestream v0.0.0-20181102145529-8a0cb8ba8710 // indirect
github.com/fatih/color v1.13.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568 // indirect
github.com/frankban/quicktest v1.14.3 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2 // indirect
github.com/go-logfmt/logfmt v0.5.0 // indirect
github.com/go-logr/logr v0.4.0 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-ole/go-ole v1.2.6 // indirect
github.com/go-playground/locales v0.13.0 // indirect
github.com/go-playground/universal-translator v0.17.0 // indirect
@@ -162,13 +174,15 @@ require (
github.com/gofrs/uuid v4.1.0+incompatible // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang-plus/errors v1.0.0 // indirect
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e // indirect
github.com/golang/protobuf v1.5.2 // indirect
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/google/btree v1.0.1 // indirect
github.com/google/go-querystring v1.0.0 // indirect
github.com/google/gofuzz v1.1.0 // indirect
github.com/googleapis/gax-go/v2 v2.0.5 // indirect
github.com/google/s2a-go v0.1.7 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
github.com/googleapis/gax-go/v2 v2.12.2 // indirect
github.com/googleapis/gnostic v0.4.1 // indirect
github.com/googollee/go-engine.io v0.0.0-20180829091931-e2f255711dcb // indirect
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 // indirect
@@ -178,10 +192,11 @@ require (
github.com/imdario/mergo v0.3.6 // indirect
github.com/jdcloud-api/jdcloud-sdk-go v1.55.0 // indirect
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/josharian/native v1.1.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/jstemmer/go-junit-report v0.9.1 // indirect
github.com/jtolds/gls v4.20.0+incompatible // indirect
github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0 // indirect
github.com/kr/fs v0.1.0 // indirect
github.com/leodido/go-urn v1.2.0 // indirect
github.com/lestrrat-go/iter v0.0.0-20200422075355-fc1769541911 // indirect
github.com/lestrrat-go/pdebug v0.0.0-20200204225717-4d6bd78da58d // indirect
@@ -193,6 +208,8 @@ require (
github.com/mattn/go-runewidth v0.0.13 // indirect
github.com/mattn/go-tty v0.0.0-20181127064339-e4f871175a2f // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect
github.com/mdlayher/raw v0.0.0-20190606142536-fef19f00fc18 // indirect
github.com/mdlayher/socket v0.4.1 // indirect
github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect
github.com/minio/minio-go/v6 v6.0.33 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
@@ -206,6 +223,7 @@ require (
github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492 // indirect
github.com/opentracing/opentracing-go v1.0.2 // indirect
github.com/openzipkin/zipkin-go-opentracing v0.3.4 // indirect
github.com/oracle/oci-go-sdk v24.3.0+incompatible // indirect
github.com/philhofer/fwd v1.0.0 // indirect
github.com/pierrec/lz4 v2.6.1+incompatible // indirect
github.com/pkg/term v1.0.0 // indirect
@@ -220,11 +238,10 @@ require (
github.com/richardlehane/msoleps v1.0.3 // indirect
github.com/rivo/uniseg v0.2.0 // indirect
github.com/ryszard/goskiplist v0.0.0-20150312221310-2dfbae5fcf46 // indirect
github.com/sirupsen/logrus v1.9.0 // indirect
github.com/smartystreets/assertions v1.2.0 // indirect
github.com/spaolacci/murmur3 v1.1.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/stretchr/objx v0.5.0 // indirect
github.com/stretchr/objx v0.5.2 // indirect
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.413 // indirect
github.com/tencentyun/cos-go-sdk-v5 v0.7.24 // indirect
github.com/texttheater/golang-levenshtein v0.0.0-20180516184445-d188e65d659e // indirect
@@ -232,33 +249,43 @@ require (
github.com/tklauser/go-sysconf v0.3.10 // indirect
github.com/tklauser/numcpus v0.4.0 // indirect
github.com/ugorji/go/codec v1.1.7 // indirect
github.com/vmware/govmomi v0.20.1 // indirect
github.com/ulikunitz/xz v0.5.12 // indirect
github.com/vmware/govmomi v0.37.1 // indirect
github.com/volcengine/ve-tos-golang-sdk/v2 v2.6.2 // indirect
github.com/volcengine/volc-sdk-golang v1.0.23 // indirect
github.com/willf/bitset v1.1.9 // indirect
github.com/willf/bloom v2.0.3+incompatible // indirect
github.com/xuri/efp v0.0.0-20220603152613-6918739fd470 // indirect
github.com/xuri/nfp v0.0.0-20220409054826-5e722a1d9e22 // indirect
github.com/yusufpapurcu/wmi v1.2.2 // indirect
go.etcd.io/etcd/client/pkg/v3 v3.5.0 // indirect
go.opencensus.io v0.22.4 // indirect
go.opencensus.io v0.24.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.48.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.48.0 // indirect
go.opentelemetry.io/otel v1.23.0 // indirect
go.opentelemetry.io/otel/metric v1.23.0 // indirect
go.opentelemetry.io/otel/trace v1.23.0 // indirect
go.uber.org/atomic v1.7.0 // indirect
go.uber.org/multierr v1.6.0 // indirect
go.uber.org/zap v1.17.0 // indirect
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 // indirect
golang.org/x/mod v0.8.0 // indirect
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c // indirect
golang.org/x/term v0.7.0 // indirect
golang.org/x/tools v0.6.0 // indirect
google.golang.org/api v0.30.0 // indirect
google.golang.org/appengine v1.6.6 // indirect
google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c // indirect
golang.org/x/oauth2 v0.17.0 // indirect
golang.org/x/term v0.17.0 // indirect
google.golang.org/api v0.167.0 // indirect
google.golang.org/appengine v1.6.8 // indirect
google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240304161311-37d4d3c04a78 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240228224816-df926f6c8641 // indirect
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d // indirect
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/ini.v1 v1.62.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/klog/v2 v2.2.0 // indirect
k8s.io/klog/v2 v2.20.0 // indirect
k8s.io/utils v0.0.0-20200729134348-d5654de09c73 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.0.1 // indirect
sigs.k8s.io/yaml v1.2.0 // indirect
)
replace github.com/influxdata/promql/v2 => github.com/zexi/promql/v2 v2.12.1
replace github.com/Azure/azure-sdk-for-go => github.com/Azure/azure-sdk-for-go v36.1.0+incompatible

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