Compare commits

..

276 Commits

Author SHA1 Message Date
Zexi Li
436b809249 Merge pull request #12390 from zexi/automated-cherry-pick-of-#12226-upstream-release-3.8
Automated cherry pick of #12226: [WIP] fix(baremetal): avoid redfish resp nil cause panic
2021-10-12 11:47:03 +08:00
Zexi Li
d894992e29 fix(baremetal): avoid redfish resp nil cause panic 2021-10-12 11:33:31 +08:00
Zexi Li
c0db3ead14 Merge pull request #12388 from ioito/automated-cherry-pick-of-#12387-upstream-release-3.8
Automated cherry pick of #12387: fix(region): support tag sync for mongodb
2021-10-11 19:18:23 +08:00
Qu Xuan
91dbb1b64e fix(region): support tag sync for mongodb 2021-10-11 17:12:31 +08:00
Zexi Li
7f52cc5ec0 Merge pull request #12385 from zexi/automated-cherry-pick-of-#12384-upstream-release-3.8
Automated cherry pick of #12384: fix(glance): s3 uploaded image removed
2021-10-11 15:02:39 +08:00
Zexi Li
213637679e Merge pull request #12382 from rainzm/automated-cherry-pick-of-#12381-upstream-release-3.8
Automated cherry pick of #12381: fix(devtool): creates a forward using the specified address
2021-10-11 12:45:19 +08:00
Zexi Li
02dc737ccd fix(glance): s3 uploaded image removed 2021-10-11 12:43:35 +08:00
rainzm
627e97b73a fix(devtool): creates a forward using the specified address 2021-10-11 10:55:49 +08:00
屈轩
3d8a727eb8 fix(glance): remove image clean (#12376)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2021-10-10 12:03:54 +08:00
屈轩
49366c5174 fix(host): show disk details error (#12375)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2021-10-10 12:03:41 +08:00
Zexi Li
a50782ab52 fix(climc): host-ssh use privateKey when ciphertext too short (#12371) 2021-10-10 12:02:35 +08:00
Zexi Li
974dd220e8 Merge pull request #12379 from zexi/automated-cherry-pick-of-#12378-upstream-release-3.8
Automated cherry pick of #12378: fix(monitor): use swagger ignore comment out structs
2021-10-09 21:46:56 +08:00
Zexi Li
bf99c1d824 fix(monitor): use swagger ignore comment out structs 2021-10-09 21:15:21 +08:00
Zexi Li
678626ff3a Merge pull request #12365 from ioito/automated-cherry-pick-of-#12364-upstream-release-3.8
Automated cherry pick of #12364: fix(region): fix cloudpods scheduler error
2021-10-09 09:17:06 +08:00
Zexi Li
8b6791b908 Merge pull request #12367 from zhaoxiangchun/automated-cherry-pick-of-#12366-upstream-release-3.8
Automated cherry pick of #12366: fix(monitor): alert record details add trigger_time field
2021-10-09 09:15:52 +08:00
Zexi Li
78b5b0a94c Merge pull request #12369 from rainzm/automated-cherry-pick-of-#12368-upstream-release-3.8
Automated cherry pick of #12368: Fixes for Notify Subscribers
2021-10-09 09:15:25 +08:00
rainzm
cb264e7d1a fix(notify): update mobile where appropriate 2021-10-08 21:26:47 +08:00
rainzm
6fb58e8c63 fix(notify): modify the width of ReceiverId 2021-10-08 21:26:47 +08:00
rainzm
4c12de8eea fix(notify): add default policy for subscribers 2021-10-08 21:26:47 +08:00
zhaoxiangchun
e55aa144fa fix(monitor): alert record details add trigger_time field 2021-10-08 17:13:01 +08:00
Qu Xuan
a55732b782 fix(region): fix cloudpods scheduler error 2021-10-08 15:16:41 +08:00
Zexi Li
128ea60569 Merge pull request #12363 from ioito/automated-cherry-pick-of-#12362-upstream-release-3.8
Automated cherry pick of #12362: fix(region): sync resource by capability with read only
2021-10-08 12:08:25 +08:00
Qu Xuan
0988bf1578 fix(region): sync resource by capability with read only 2021-10-08 11:48:04 +08:00
Zexi Li
42612205fd Merge pull request #12361 from tb365/automated-cherry-pick-of-#12359-upstream-release-3.8
Automated cherry pick of #12359: kvm lb update lb listener redirect code fix
2021-10-08 10:13:53 +08:00
Zexi Li
de48910c63 Merge pull request #12354 from swordqiu/automated-cherry-pick-of-#12353-upstream-release-3.8
Automated cherry pick of #12353: fix: webconsole close socket when read on error
2021-10-08 10:12:29 +08:00
tangbin
c80945338e kvm lb update lb listener redirect code fix 2021-10-08 09:42:58 +08:00
yunion-ci-robot
96973b15bd Merge pull request #12356 from zexi/automated-cherry-pick-of-#12355-upstream-release-3.8
Automated cherry pick of #12355: fix(baremetal): change cat path
2021-10-06 20:53:42 +08:00
Zexi Li
04521a1548 fix(baremetal): change cat path 2021-10-05 21:35:38 +08:00
Qiu Jian
9025a56617 fix: webconsole close socket when read on error 2021-10-03 10:52:34 +08:00
yunion-ci-robot
973ebbf9f3 Merge pull request #12351 from ioito/automated-cherry-pick-of-#12350-upstream-release-3.8
Automated cherry pick of #12350: fix(region): network brand
2021-10-01 12:54:38 +08:00
Qu Xuan
c53164e430 fix(region): network brand 2021-10-01 11:53:42 +08:00
Zexi Li
95aaa66c76 Merge pull request #12331 from ioito/automated-cherry-pick-of-#12317-upstream-release-3.8
Automated cherry pick of #12317: fix(region): read only capability
2021-09-30 10:09:43 +08:00
Zexi Li
1e2773bd18 Merge pull request #12344 from ioito/automated-cherry-pick-of-#12343-upstream-release-3.8
Automated cherry pick of #12343: fix(host): show error for online resize
2021-09-30 09:49:02 +08:00
Qu Xuan
e6ba4a1dc7 fix(host): show error for online resize 2021-09-29 20:30:06 +08:00
Zexi Li
e5afb63551 Merge pull request #12336 from zexi/automated-cherry-pick-of-#12335-upstream-release-3.8
Automated cherry pick of #12335: fix(baremetal): adjust adaptec raid logical volume order
2021-09-29 17:36:18 +08:00
Zexi Li
ced94cfb66 Merge pull request #12342 from zhaoxiangchun/automated-cherry-pick-of-#12341-upstream-release-3.8
Automated cherry pick of #12341: fix(monitor): update usage query param and alert record query support tigger_time
2021-09-29 17:27:19 +08:00
zhaoxiangchun
628244f7b9 fix(monitor): update usage query param and alert record query support tigger_time 2021-09-29 15:52:27 +08:00
Zexi Li
7033974ab4 Merge pull request #12339 from rainzm/automated-cherry-pick-of-#12316-upstream-release-3.8
Automated cherry pick of #12316: Notify Bug Fixes
2021-09-29 14:52:00 +08:00
Zexi Li
cb733ded80 Merge pull request #12340 from rainzm/automated-cherry-pick-of-#12325-upstream-release-3.8
Automated cherry pick of #12325: fix(region): avoid duplicate playbook names
2021-09-29 14:21:12 +08:00
rainzm
658d734ec4 fix(region): avoid duplicate playbook names 2021-09-29 14:17:12 +08:00
rainzm
2f3e6f80a7 fix(notify): optimization of message template 2021-09-29 14:13:19 +08:00
rainzm
c4b5f59e11 fix(notify): add connect info in EXPIRED_RELEASE template 2021-09-29 14:13:18 +08:00
rainzm
5a5cca4110 fix(notify): remove disk in 'update' topic 2021-09-29 14:13:18 +08:00
rainzm
5f8c36b407 fix(notify): solve the permission problem of subscriber 2021-09-29 14:13:18 +08:00
rainzm
a62ac5fb30 fix(notify): allow list and get topics for all 2021-09-29 14:13:18 +08:00
rainzm
9694075bee fix(notify): correctly use tenant cache to query domain 2021-09-29 14:13:18 +08:00
rainzm
4e84ace30a fix(notify): check for duplicate subscribers when creating 2021-09-29 14:13:18 +08:00
rainzm
e96dbaba60 fix(notify): update database when change subscriber's identification 2021-09-29 14:13:18 +08:00
rainzm
05d7a87c1b fix(cloudcommon): set Priority as normal when calling EventNotify 2021-09-29 14:13:18 +08:00
rainzm
d94ddc43a4 fix(notify): repull subcontact correctly when creating or deleting config 2021-09-29 14:13:18 +08:00
rainzm
57d3e37c08 fix(notify): modify NotifyRobotWithCtx 2021-09-29 14:13:18 +08:00
rainzm
ce7dd991d2 fix(notify): change the delivery format of config and eliminate some redundant steps of sending messages 2021-09-29 14:13:18 +08:00
Zexi Li
6364389877 fix(baremetal): adjust adaptec raid logical volume order 2021-09-29 12:16:12 +08:00
Zexi Li
3c2f99313b Merge pull request #12334 from zhaoxiangchun/automated-cherry-pick-of-#12333-upstream-release-3.8
Automated cherry pick of #12333: fix(monitor): shield list support alert_name and res_name like query
2021-09-29 11:29:18 +08:00
Zexi Li
e91bc4e8fb Merge pull request #12332 from ioito/automated-cherry-pick-of-#12104-upstream-release-3.8
Automated cherry pick of #12104: fix(region): optimized vm disk sync
2021-09-29 11:28:48 +08:00
zhaoxiangchun
946a0395ad fix(monitor): shield list support alert_name and res_name like query 2021-09-28 20:41:22 +08:00
Qu Xuan
dea562a733 fix(region): optimized vm disk sync 2021-09-28 20:10:53 +08:00
Qu Xuan
a552c3ff85 fix(region): read only capability 2021-09-28 20:10:05 +08:00
Zexi Li
cc5d7713e4 Merge pull request #12329 from ioito/automated-cherry-pick-of-#12328-upstream-release-3.8
Automated cherry pick of #12328: fix(region): optimized dns zone sync
2021-09-28 19:56:10 +08:00
Qu Xuan
a94b00604d fix(region): optimized dns zone sync 2021-09-28 19:32:49 +08:00
Zexi Li
3d5361bee1 Merge pull request #12323 from ioito/automated-cherry-pick-of-#12322-upstream-release-3.8
Automated cherry pick of #12322: fix(region): support query for project domain statistic
2021-09-28 17:58:46 +08:00
Zexi Li
8c44e4e3e9 Merge pull request #12321 from ioito/automated-cherry-pick-of-#12320-upstream-release-3.8
Automated cherry pick of #12320: fix(region): set google vm running after start
2021-09-28 17:58:28 +08:00
Zexi Li
d46f44ccc1 Merge pull request #12319 from zhaoxiangchun/automated-cherry-pick-of-#12318-upstream-release-3.8
Automated cherry pick of #12318: feat(cloudmon): usage add domain.servers and project.servers statistic
2021-09-28 17:57:48 +08:00
Qu Xuan
3f06837b92 fix(region): support query for project domain statistic 2021-09-27 17:10:47 +08:00
Qu Xuan
2c6aa4fb09 fix(region): set google vm running after start 2021-09-27 16:52:10 +08:00
zhaoxiangchun
7835d0521b feat(cloudmon): usage add domain.servers and project.servers statistic 2021-09-27 15:16:07 +08:00
Zexi Li
a43a3dc4bc Merge pull request #12308 from zhaoxiangchun/automated-cherry-pick-of-#12307-upstream-release-3.8
Automated cherry pick of #12307: fix(monitor): monitor alert support multi robot
2021-09-27 00:43:43 +08:00
Zexi Li
99fb78de35 Merge pull request #12306 from ioito/automated-cherry-pick-of-#12301-upstream-release-3.8
Automated cherry pick of #12301: fix(region): usage for domain isolated dev
2021-09-27 00:42:43 +08:00
Zexi Li
e7d67a41f5 Merge pull request #12303 from ioito/automated-cherry-pick-of-#12302-upstream-release-3.8
Automated cherry pick of #12302: fix(region): aliyun rds billing type
2021-09-26 20:10:58 +08:00
Zexi Li
5f1d1f748f Merge pull request #12312 from swordqiu/automated-cherry-pick-of-#12311-upstream-release-3.8
Automated cherry pick of #12311: fix: host add disable_kvm option
2021-09-26 20:09:54 +08:00
Zexi Li
8189fdb496 Merge pull request #12315 from zhaoxiangchun/automated-cherry-pick-of-#12314-upstream-release-3.8
Automated cherry pick of #12314: fix(monitor): monitor shield fix
2021-09-26 20:09:12 +08:00
zhaoxiangchun
609db4298d fix(monitor): monitor shield fix
1.支持resName过滤
2.告警屏蔽默认屏蔽时间为100year
2021-09-26 19:24:54 +08:00
yunion-ci-robot
09f31ce467 Merge pull request #12310 from tb365/automated-cherry-pick-of-#12309-upstream-release-3.8
Automated cherry pick of #12309: climc update: google account update
2021-09-26 17:40:34 +08:00
Qiu Jian
7cad0e5ee6 fix: host add disable_kvm option 2021-09-26 17:36:25 +08:00
tb365
d5355f21bb climc update: google account update 2021-09-26 17:27:56 +08:00
yunion-ci-robot
e9f6a90bc5 Merge pull request #12300 from zexi/automated-cherry-pick-of-#12241-upstream-release-3.8
Automated cherry pick of #12241: feat(baremetal): adaptec raid driver
2021-09-26 17:21:35 +08:00
zhaoxiangchun
b281ab8543 fix(monitor): monitor alert support multi robot
1. 机器人下放到域后监控报警支持
2021-09-26 16:36:24 +08:00
Qu Xuan
60b333bd1f fix(region): usage for domain isolated dev 2021-09-26 15:58:29 +08:00
Qu Xuan
b3093fbfd6 fix(region): aliyun rds billing type 2021-09-26 15:55:50 +08:00
Zexi Li
f8822c745a feat(baremetal): adaptec raid driver 2021-09-26 11:45:02 +08:00
Zexi Li
4c3adeb328 Merge pull request #12292 from zhaoxiangchun/automated-cherry-pick-of-#12291-upstream-release-3.8
Automated cherry pick of #12291: fix(monitor): project view hide cloudaccount resource
2021-09-26 10:06:10 +08:00
Zexi Li
25c473a435 Merge pull request #12266 from ioito/automated-cherry-pick-of-#12259-upstream-release-3.8
Automated cherry pick of #12259: fix(region): optimized validate delete condition query
2021-09-26 10:03:24 +08:00
Zexi Li
d65471ec41 Merge pull request #12294 from ioito/automated-cherry-pick-of-#12293-upstream-release-3.8
Automated cherry pick of #12293: fix(region): add project and domain statistic
2021-09-26 09:57:52 +08:00
Zexi Li
8961bf4968 Merge pull request #12296 from swordqiu/automated-cherry-pick-of-#12295-upstream-release-3.8
Automated cherry pick of #12295: fix: clean openvswitch config files when save images
2021-09-26 09:56:54 +08:00
Qiu Jian
157921f5c4 fix: clean openvswitch config files when save images 2021-09-24 22:01:17 +08:00
Qu Xuan
cd65b9498b fix(region): add project and domain statistic 2021-09-24 18:59:59 +08:00
zhaoxiangchun
f850e179f2 fix(monitor): project view hide cloudaccount resource 2021-09-24 17:57:33 +08:00
Zexi Li
cf7c8fb03f Merge pull request #12279 from ioito/automated-cherry-pick-of-#12278-upstream-release-3.8
Automated cherry pick of #12278: fix(region): google vm mac addr
2021-09-24 15:25:29 +08:00
Zexi Li
ace44f9490 Merge pull request #12276 from ioito/automated-cherry-pick-of-#12275-upstream-release-3.8
Automated cherry pick of #12275: fix(region): sync aws rds mem size
2021-09-24 15:25:06 +08:00
Zexi Li
72f6412f6c Merge pull request #12282 from swordqiu/automated-cherry-pick-of-#12281-upstream-release-3.8
Automated cherry pick of #12281: fix: disable password expiration for cloudroot
2021-09-24 15:24:11 +08:00
Zexi Li
1eeb11be87 Merge pull request #12286 from ioito/automated-cherry-pick-of-#12285-upstream-release-3.8
Automated cherry pick of #12285: fix(region): export field duplicate vpc
2021-09-24 15:23:20 +08:00
Zexi Li
acab975d94 Merge pull request #12274 from zhaoxiangchun/automated-cherry-pick-of-#12272-upstream-release-3.8
Automated cherry pick of #12272: fix(monitor): fix cloudaccount monitor query return field err
2021-09-24 10:28:12 +08:00
Qu Xuan
b2c52fd1fe fix(region): export field duplicate vpc 2021-09-24 10:00:21 +08:00
Qiu Jian
e6975a6474 fix: disable password expiration for cloudroot 2021-09-24 01:27:30 +08:00
yunion-ci-robot
7c1d16cc63 Merge pull request #12270 from zexi/automated-cherry-pick-of-#12268-upstream-release-3.8
Automated cherry pick of #12268: fix(host): disable usb-kbd for windows 10
2021-09-24 00:28:40 +08:00
Qu Xuan
17c6698073 fix(region): google vm mac addr 2021-09-23 20:28:54 +08:00
Qu Xuan
ea4f290f8c fix(region): sync aws rds mem size 2021-09-23 20:06:11 +08:00
zhaoxiangchun
c5e8ff9b39 fix(monitor): fix alert record shield
1. 修复报警屏蔽列表不显示时间的问题
2. 未恢复报警增加报警策略名称字段
2021-09-23 18:09:37 +08:00
zhaoxiangchun
10ad4c32dc fix(monitor): fix cloudaccount monitor query return field err 2021-09-23 18:09:37 +08:00
Zexi Li
625d7ef304 fix(host): disable usb-kbd for windows 10 2021-09-23 15:11:51 +08:00
Qu Xuan
f68567e28c fix(region): optimized validate delete condition query 2021-09-23 10:00:05 +08:00
Zexi Li
a368985923 Merge pull request #12260 from swordqiu/automated-cherry-pick-of-#12258-upstream-release-3.8
Automated cherry pick of #12258: fix: verify token with expired_at field instead of depending on options.TokenExpirationSeconds
2021-09-23 09:37:54 +08:00
Zexi Li
a12e235fe3 Merge pull request #12264 from ioito/automated-cherry-pick-of-#12263-upstream-release-3.8
Automated cherry pick of #12263: fix(region): external project support domain sync
2021-09-23 09:36:16 +08:00
Qu Xuan
27ec4567cc fix(region): external project support domain sync 2021-09-22 23:11:08 +08:00
Qiu Jian
020092cc4d fix: verify token with expired_at field instead of options.TokenExpirationSeconds 2021-09-22 15:35:21 +08:00
Zexi Li
d64f80ddc8 Merge pull request #12244 from rainzm/automated-cherry-pick-of-#12243-upstream-release-3.8
Automated cherry pick of #12243: fix(region): consider the network of the entire VPC when merging networks
2021-09-22 11:57:27 +08:00
Zexi Li
cee3246346 Merge pull request #12223 from zexi/automated-cherry-pick-of-#12222-upstream-release-3.8
Automated cherry pick of #12222: fix(scheduler): cpu arch match
2021-09-22 11:56:21 +08:00
Zexi Li
7da7ffcb7a Merge pull request #12257 from ioito/automated-cherry-pick-of-#12253-upstream-release-3.8
Automated cherry pick of #12253: fix(region): optimzed network query
2021-09-22 11:30:14 +08:00
Zexi Li
22e2896afc fix(scheduler): cpu arch match 2021-09-22 11:14:06 +08:00
Qu Xuan
c63ed9093b fix(region): optimzed network query 2021-09-18 18:58:31 +08:00
Zexi Li
9f4fc77bd2 Merge pull request #12237 from rainzm/automated-cherry-pick-of-#12236-upstream-release-3.8
Automated cherry pick of #12236: fix: ensure the success of vgrenam
2021-09-18 16:36:36 +08:00
Zexi Li
8702653395 Merge pull request #12255 from ioito/automated-cherry-pick-of-#12254-upstream-release-3.8
Automated cherry pick of #12254: fix(host): ceph snap delete
2021-09-18 16:31:05 +08:00
Qu Xuan
44d738a0b8 fix(host): ceph snap delete 2021-09-18 14:19:43 +08:00
Zexi Li
032353b0cc Merge pull request #12234 from zexi/automated-cherry-pick-of-#12227-upstream-release-3.8
Automated cherry pick of #12227: feat(climc): SSH login of a host by private key
2021-09-17 16:53:15 +08:00
Zexi Li
a6a2e4c288 Merge pull request #12242 from ioito/automated-cherry-pick-of-#12240-upstream-release-3.8
Automated cherry pick of #12240: fix(hostman): rbd command
2021-09-17 16:52:07 +08:00
Zexi Li
0f67656287 Merge pull request #12251 from ioito/automated-cherry-pick-of-#12250-upstream-release-3.8
Automated cherry pick of #12250: fix(region): get region driver
2021-09-17 16:48:14 +08:00
Zexi Li
5ad7bbf61c Merge pull request #12248 from ioito/automated-cherry-pick-of-#12247-upstream-release-3.8
Automated cherry pick of #12247: fix(scheduler): openstack scheduler options
2021-09-17 16:34:27 +08:00
Qu Xuan
22dbb38ff5 fix(region): get region driver 2021-09-17 16:28:11 +08:00
Qu Xuan
420c1968dc fix(scheduler): openstack scheduler options 2021-09-17 16:08:10 +08:00
rainzm
07f482da0f fix(region): consider the network of the entire VPC when merging networks 2021-09-17 14:54:33 +08:00
Qu Xuan
dbee3ec258 fix(hostman): rbd command 2021-09-17 14:20:32 +08:00
Zexi Li
aab33d1355 Merge pull request #12238 from ioito/automated-cherry-pick-of-#12213-upstream-release-3.8
Automated cherry pick of #12213: fix(cloudmon): batch send data
2021-09-17 09:34:52 +08:00
Qu Xuan
8e495f1589 fix(cloudmon): batch send data 2021-09-16 19:41:22 +08:00
rainzm
67513c50c8 fix(host-deployer): ensure the success of vgrenam 2021-09-16 17:49:09 +08:00
rainzm
95abcef299 feat(host-deployer): try again if the partition cannot be found 2021-09-16 17:49:09 +08:00
Stargic
1c2472ae87 feat(climc): SSH login of a host by private key 2021-09-16 15:13:00 +08:00
Zexi Li
ce3e4ac385 Merge pull request #12220 from ioito/automated-cherry-pick-of-#12219-upstream-release-3.8
Automated cherry pick of #12219: fix(region): disk choice master host with os arch
2021-09-15 22:32:30 +08:00
Zexi Li
5e787456b7 Merge pull request #12229 from swordqiu/automated-cherry-pick-of-#12228-upstream-release-3.8
Automated cherry pick of #12228: fix: climc event-show filter by resource name
2021-09-15 22:17:27 +08:00
yunion-ci-robot
5a55a17967 Merge pull request #12231 from zexi/automated-cherry-pick-of-#12230-upstream-release-3.8
Automated cherry pick of #12230: fix(baremetal): parse mptsas duplicated devices
2021-09-15 21:57:34 +08:00
Zexi Li
c1a03c16b3 fix(baremetal): parse mptsas duplicated devices 2021-09-15 21:19:19 +08:00
Qiu Jian
1fc6c8b42e fix: climc event-show filter by resource name 2021-09-15 20:43:34 +08:00
Qu Xuan
a51b977953 fix(region): disk choice master host with os arch 2021-09-15 12:17:33 +08:00
Zexi Li
b6fc27d64f Merge pull request #12215 from zhaoxiangchun/automated-cherry-pick-of-#12214-upstream-release-3.8
Automated cherry pick of #12214: fix(cloudmon): Azure metric pull support metric interval
2021-09-15 10:02:40 +08:00
Zexi Li
aa2445d1c4 Merge pull request #12218 from zexi/automated-cherry-pick-of-#12202-upstream-release-3.8
Automated cherry pick of #12202: feat(climc): SSH Login with cloudroot (add new parameter --use-cloudroot in server-ssh)
2021-09-15 09:41:55 +08:00
Zexi Li
80670214be Merge pull request #12207 from swordqiu/automated-cherry-pick-of-#12206-upstream-release-3.8
Automated cherry pick of #12206: fix: AWS asume role with optional name
2021-09-15 01:15:14 +08:00
Stargic
76c9d8a5ae feat(climc): SSH Login with cloudroot (add new parameter --use-cloudroot in server-ssh)
fix(climc): Fixed the code logic error of FOR loop in server-ssh
2021-09-15 01:14:12 +08:00
zhaoxiangchun
5fd3aebbb1 fix(cloudmon): Azure metric pull support metric interval 2021-09-14 19:32:39 +08:00
Zexi Li
04d533138f Merge pull request #12212 from zexi/automated-cherry-pick-of-#12166-upstream-release-3.8
Automated cherry pick of #12166: feat(region): add cloudcache for dnszone and secgroup details
2021-09-14 16:22:27 +08:00
rainzm
7547142600 feat(region): add cloudcache for dnszone and secgroup details 2021-09-14 16:21:00 +08:00
Zexi Li
7166a100ec Merge pull request #12200 from ioito/automated-cherry-pick-of-#12199-upstream-release-3.8
Automated cherry pick of #12199: fix(region): apsara metric data
2021-09-14 16:17:56 +08:00
Zexi Li
3ff4d65300 Merge pull request #12211 from tb365/automated-cherry-pick-of-#12209-upstream-release-3.8
Automated cherry pick of #12209: fix(region): change aws disk iops
2021-09-14 16:16:31 +08:00
tb365
b61399f12e fix(region): change aws disk iops 2021-09-14 16:03:14 +08:00
Qu Xuan
1d4565807f fix(region): apsara metric data 2021-09-14 11:35:38 +08:00
Qiu Jian
5b232c2ff2 fix: AWS asume role with optional name 2021-09-14 00:50:28 +08:00
yunion-ci-robot
281698906d Merge pull request #12204 from zexi/automated-cherry-pick-of-#12203-upstream-release-3.8
Automated cherry pick of #12203: feat(cloudmon): support classic vm metrics
2021-09-13 23:01:29 +08:00
Zexi Li
c25535d21b feat(cloudmon): support classic vm metrics 2021-09-13 22:33:57 +08:00
Zexi Li
cb0d0b68b2 Merge pull request #12198 from tb365/automated-cherry-pick-of-#12196-upstream-release-3.8
Automated cherry pick of #12196: pure hcso zone is not empty fix
2021-09-13 17:08:59 +08:00
Zexi Li
f6c9aa09ea Merge pull request #12194 from ioito/automated-cherry-pick-of-#12193-upstream-release-3.8
Automated cherry pick of #12193: fix(region): apsara resource group
2021-09-13 17:05:31 +08:00
tb365
2eec54723e pure hcso zone is not empty fix 2021-09-13 14:27:31 +08:00
Qu Xuan
f78047601b fix(region): apsara resource group 2021-09-13 10:15:21 +08:00
Zexi Li
63cd9bec46 Merge pull request #12190 from zexi/automated-cherry-pick-of-#12189-upstream-release-3.8
Automated cherry pick of #12189: fix(region): isolated_device desc include addr
2021-09-10 20:30:39 +08:00
Zexi Li
57bc6f1445 fix(region): isolated_device desc include addr 2021-09-10 19:36:56 +08:00
yunion-ci-robot
d5e6532711 Merge pull request #12185 from ioito/automated-cherry-pick-of-#12184-upstream-release-3.8
Automated cherry pick of #12184: fix(region): qcloud database sync
2021-09-10 19:16:27 +08:00
Zexi Li
4d511c98e9 Merge pull request #12177 from ioito/automated-cherry-pick-of-#12176-upstream-release-3.8
Automated cherry pick of #12176: fix(region): huawei region id with project name
2021-09-10 19:08:54 +08:00
Zexi Li
f96c1f9fd2 Merge pull request #12182 from ioito/automated-cherry-pick-of-#12181-upstream-release-3.8
Automated cherry pick of #12181: Hotfix/qx apsara project
2021-09-10 19:08:08 +08:00
Qu Xuan
315054703c fix(region): qcloud database sync 2021-09-10 18:30:44 +08:00
Qu Xuan
f9064a0018 fix(region): sync apsara project info 2021-09-10 18:00:48 +08:00
Qu Xuan
6641eb15f0 fix(region): support apsara project 2021-09-10 18:00:47 +08:00
Qu Xuan
59f837c0e3 fix(region): 不能通过华为云用户创建时间判断云账号注册时间 2021-09-10 17:18:02 +08:00
Qu Xuan
e5891349cd fix(region): huawei region id with project name 2021-09-10 17:18:02 +08:00
Zexi Li
fe9f5fa4cc Merge pull request #12174 from zexi/automated-cherry-pick-of-#12125-upstream-release-3.8
Automated cherry pick of #12125: fix(climc): SSH terminal window changes with the change of local terminal
2021-09-10 14:47:39 +08:00
Stargic
76b110445e fix(climc): SSH terminal window changes with the change of local terminal 2021-09-10 11:55:53 +08:00
Zexi Li
d274e3078c Merge pull request #12172 from ioito/automated-cherry-pick-of-#12171-upstream-release-3.8
Automated cherry pick of #12171: fix(scheduler): options for openstack scheduler
2021-09-10 11:54:06 +08:00
Zexi Li
e1269cf9fe Merge pull request #12169 from ioito/automated-cherry-pick-of-#12168-upstream-release-3.8
Automated cherry pick of #12168: fix(region): optimized qcloud tag sync
2021-09-09 20:25:58 +08:00
Qu Xuan
5a972e6ddf fix(scheduler): options for openstack scheduler 2021-09-09 17:55:02 +08:00
Qu Xuan
a905f67fb2 fix(region): optimized qcloud tag sync 2021-09-09 17:38:58 +08:00
Zexi Li
9bca310026 Merge pull request #12163 from ioito/automated-cherry-pick-of-#12162-upstream-release-3.8
Automated cherry pick of #12162: fix(region): sync apsara region
2021-09-09 16:29:33 +08:00
Qu Xuan
edcbf3b2d3 fix(region): sync apsara region 2021-09-09 15:48:57 +08:00
Zexi Li
e09c21d452 Merge pull request #12158 from swordqiu/automated-cherry-pick-of-#12157-upstream-release-3.8
Automated cherry pick of #12157: fix: set disk driver and network driver for converting esxi to kvm
2021-09-08 23:06:31 +08:00
Zexi Li
f270daa6ae Merge pull request #12153 from zhaoxiangchun/automated-cherry-pick-of-#12152-upstream-release-3.8
Automated cherry pick of #12152: fix(monitor): add record shield details param
2021-09-08 23:05:53 +08:00
Zexi Li
49d1f6ee1e Merge pull request #12150 from zhaoxiangchun/automated-cherry-pick-of-#12149-upstream-release-3.8
Automated cherry pick of #12149: fix(monitor): add monitor resource details field
2021-09-08 22:52:16 +08:00
Zexi Li
bdf015668f Merge pull request #12155 from ioito/automated-cherry-pick-of-#12154-upstream-release-3.8
Automated cherry pick of #12154: fix(region): sync aliyun qcloud default project
2021-09-08 22:51:31 +08:00
Qiu Jian
334ae46514 fix: set disk driver and network driver for converting esxi to kvm 2021-09-08 22:29:09 +08:00
Qu Xuan
cbbf5c28e1 fix(region): sync aliyun qcloud default project 2021-09-08 20:27:39 +08:00
zhaoxiangchun
f517795c85 fix(monitor): add record shield details param 2021-09-08 18:05:21 +08:00
zhaoxiangchun
82b05b2cd1 fix(monitor): add monitor resource details field 2021-09-08 17:39:17 +08:00
Zexi Li
429d38f06d Merge pull request #12142 from rainzm/automated-cherry-pick-of-#12141-upstream-release-3.8
Automated cherry pick of #12141: fix(devtool): get tenant info via correct field
2021-09-08 16:25:26 +08:00
Zexi Li
b50d54d8cc Merge pull request #12146 from ioito/automated-cherry-pick-of-#12145-upstream-release-3.8
Automated cherry pick of #12145: fix(region): resource apsara resource id not found error
2021-09-08 16:20:33 +08:00
Qu Xuan
d4104bb98d fix(region): resource apsara resource id not found error 2021-09-08 15:54:27 +08:00
Zexi Li
c8b1cfc397 Merge pull request #12138 from ioito/automated-cherry-pick-of-#12126-upstream-release-3.8
Automated cherry pick of #12126: fix(region): apsara default region
2021-09-08 15:53:44 +08:00
rainzm
df3d24b40a fix(devtool): get tenant info via correct field 2021-09-08 15:34:30 +08:00
Qu Xuan
3483446885 fix(region): apsara default region 2021-09-08 14:27:02 +08:00
Zexi Li
b84b5786ed Merge pull request #12127 from ioito/automated-cherry-pick-of-#12126-upstream-release-3.8
Automated cherry pick of #12126: fix(region): apsara default region
2021-09-08 13:58:15 +08:00
Zexi Li
ad4f0da021 Merge pull request #12135 from swordqiu/automated-cherry-pick-of-#12134-upstream-release-3.8
Automated cherry pick of #12134: fix(region): change disk and network drivers for Esxi converted VM
2021-09-08 12:01:41 +08:00
Qiu Jian
31aa3e36ee fix(region): change disk and network drivers for Esxi converted VM 2021-09-08 11:47:51 +08:00
Zexi Li
c4c095e0f8 Merge pull request #12131 from tb365/automated-cherry-pick-of-#12130-upstream-release-3.8
Automated cherry pick of #12130: fix(region): hcso sync server fix
2021-09-08 10:47:24 +08:00
tb365
a9a1c64ef0 fix(region): hcso sync server fix 2021-09-08 10:42:16 +08:00
Qu Xuan
dda5a309ac fix(region): apsara default region 2021-09-08 10:35:29 +08:00
Zexi Li
328dcf8ebb Merge pull request #12122 from ioito/automated-cherry-pick-of-#12121-upstream-release-3.8
Automated cherry pick of #12121: fix(region): apsara endpoint fix
2021-09-07 15:25:46 +08:00
Qu Xuan
7628bd2a81 fix(region): apsara endpoint fix 2021-09-07 14:28:33 +08:00
Zexi Li
237a54a79f Merge pull request #12118 from rainzm/automated-cherry-pick-of-#12117-upstream-release-3.8
Automated cherry pick of #12117: fix(devtool): create serviceurl
2021-09-07 10:50:20 +08:00
rainzm
1927f32109 fix(devtool): create serviceurl 2021-09-07 10:36:44 +08:00
Zexi Li
9dcabdb247 Merge pull request #12116 from tb365/automated-cherry-pick-of-#12114-upstream-release-3.8
Automated cherry pick of #12114: NetworkUsableZoneIds remove duplicate zone ids
2021-09-06 21:48:01 +08:00
tb365
6785b43bad NetworkUsableZoneIds remove duplicate zone ids 2021-09-06 14:43:52 +08:00
yunion-ci-robot
a51f8b6c2c Merge pull request #12113 from ioito/automated-cherry-pick-of-#12112-upstream-release-3.8
Automated cherry pick of #12112: fix(region): sku region info
2021-09-06 00:16:24 +08:00
Qu Xuan
40127b24e6 fix(region): sku region info 2021-09-05 22:56:25 +08:00
Zexi Li
d2f608696f Merge pull request #12106 from rainzm/automated-cherry-pick-of-#12105-upstream-release-3.8
Automated cherry pick of #12105: feat(devtool): add sshinfo and serviceurl
2021-09-05 16:58:43 +08:00
rainzm
a38f03516e feat(devtool): add sshinfo and serviceurl 2021-09-04 18:29:06 +08:00
yunion-ci-robot
e7935d6412 Merge pull request #12103 from ioito/automated-cherry-pick-of-#12102-upstream-release-3.8
Automated cherry pick of #12102: fix(host): return cache image error
2021-09-03 15:17:22 +08:00
Qu Xuan
4a72e87323 fix(host): return cache image error 2021-09-03 10:46:54 +08:00
Zexi Li
a6295d340a fix(baremetal): reindex nic (#12089) 2021-09-03 02:39:44 +08:00
Zexi Li
e8338f2832 Merge pull request #12076 from ioito/automated-cherry-pick-of-#12075-upstream-release-3.8
Automated cherry pick of #12075: fix(region): struct guest json desc
2021-09-02 23:15:48 +08:00
Zexi Li
f87d0e905a Merge pull request #12091 from zexi/automated-cherry-pick-of-#12090-upstream-release-3.8
Automated cherry pick of #12090: fix(climc-base): update tag to 20210901
2021-09-02 23:14:45 +08:00
Zexi Li
9274649334 Merge pull request #12096 from tb365/automated-cherry-pick-of-#12094-upstream-release-3.8
Automated cherry pick of #12094: fix(region): lb list search address fix
2021-09-02 18:33:08 +08:00
Zexi Li
13b05bf0c6 Merge pull request #12098 from zhaoxiangchun/automated-cherry-pick-of-#12097-upstream-release-3.8
Automated cherry pick of #12097: fix(monitor): monitor resource apiHelper fix
2021-09-02 18:27:17 +08:00
Zexi Li
2069057967 Merge pull request #12101 from ioito/automated-cherry-pick-of-#12100-upstream-release-3.8
Automated cherry pick of #12100: fix(region): cloudpods misc fix
2021-09-02 18:26:18 +08:00
Qu Xuan
197ff6f805 fix(region): cloudpods network scheduler 2021-09-02 17:21:52 +08:00
Qu Xuan
c52ee7d073 fix(region): cloudpods misc fix 2021-09-02 17:21:52 +08:00
zhaoxiangchun
3eafa21456 fix(monitor): monitor resource apiHelper fix
1. apiHeleper 中增加interface,对应的ModelSet可以指定资源过滤参数
2. monitor删除过期的资源
2021-09-02 14:39:20 +08:00
tb365
749d063a61 fix(region): lb list search address fix 2021-09-02 14:16:33 +08:00
Zexi Li
7ee8b8abe5 Merge pull request #12068 from rainzm/automated-cherry-pick-of-#12067-upstream-release-3.8
Automated cherry pick of #12067: feat(region): allow custom sshport when make sshable
2021-09-02 11:43:41 +08:00
Zexi Li
3353aa0062 fix(climc-base): update tag to 20210901 2021-09-01 20:17:49 +08:00
Zexi Li
8e493053ee Merge pull request #12081 from ioito/automated-cherry-pick-of-#12080-upstream-release-3.8
Automated cherry pick of #12080: fix(region): access group policy
2021-09-01 16:35:52 +08:00
Zexi Li
eb307bbffd Merge pull request #12079 from tb365/automated-cherry-pick-of-#12077-upstream-release-3.8
Automated cherry pick of #12077: lb list api support search elastic ip
2021-09-01 15:17:06 +08:00
Zexi Li
904f6b3358 Merge pull request #12084 from swordqiu/automated-cherry-pick-of-#12083-upstream-release-3.8
Automated cherry pick of #12083: fix: add ceph-common to climc image, so as to make rbcli work
2021-09-01 14:48:11 +08:00
Qiu Jian
161cec3a08 fix: add ceph-common to climc image, so as to make rbcli work 2021-09-01 12:36:10 +08:00
rainzm
8c6d9ad876 feat(region): allow custom sshport when make sshable 2021-09-01 11:43:24 +08:00
Qu Xuan
bdeed9e7a8 fix(region): access group policy 2021-09-01 11:18:04 +08:00
tb365
b9f3f55e62 lb list api support search elastic ip 2021-09-01 11:12:21 +08:00
Qu Xuan
aa60326bc3 fix(region): struct guest json desc 2021-09-01 09:44:55 +08:00
Zexi Li
43deb292fb Merge pull request #12073 from swordqiu/automated-cherry-pick-of-#12072-upstream-release-3.8
Automated cherry pick of #12072: fix: do not lock system account user
2021-08-31 21:01:49 +08:00
Zexi Li
99eaebe34a Merge pull request #12069 from zexi/automated-cherry-pick-of-#12066-upstream-release-3.8
Automated cherry pick of #12066: fix(climc): host-delete use batch delete function
2021-08-31 18:35:04 +08:00
Qiu Jian
5afb0c82a8 fix: do not lock system account user 2021-08-31 17:44:46 +08:00
Zexi Li
8fbd42e535 Merge pull request #12045 from tb365/automated-cherry-pick-of-#12043-upstream-release-3.8
Automated cherry pick of #12043: count host fix
2021-08-31 16:25:22 +08:00
tb365
c57c4cc5b2 change host type to hcso 2021-08-31 15:49:22 +08:00
tb365
c7ad1243be count host fix 2021-08-31 15:49:22 +08:00
Zexi Li
18b008d838 Merge pull request #12064 from tb365/automated-cherry-pick-of-#12062-upstream-release-3.8
Automated cherry pick of #12062: Bugfix/tb bugfix 083101
2021-08-31 15:16:38 +08:00
Zexi Li
36b91f5afe fix(climc): host-delete use batch delete function 2021-08-31 15:13:19 +08:00
Zexi Li
fe0f3b01b9 Merge pull request #12060 from ioito/automated-cherry-pick-of-#12059-upstream-release-3.8
Automated cherry pick of #12059: fix(region): eip project sync
2021-08-31 11:32:00 +08:00
tb365
45219f3cf4 make fmt 2021-08-31 11:24:40 +08:00
tb365
eebdd2b591 rename huaweicloudstack to hcso 2021-08-31 11:24:40 +08:00
tb365
18e806ba7d syncRemoveCloudHost purge host 2021-08-31 11:24:40 +08:00
Qu Xuan
45dd2ece7c fix(region): eip project sync 2021-08-31 10:34:07 +08:00
Zexi Li
bb62477f80 Merge pull request #12041 from rainzm/automated-cherry-pick-of-#12040-upstream-release-3.8
Automated cherry pick of #12040: feat(region): add no_tags options to filter guests
2021-08-31 10:01:41 +08:00
Zexi Li
a6340afcbe Merge pull request #12057 from rainzm/automated-cherry-pick-of-#12056-upstream-release-3.8
Automated cherry pick of #12056: fix(region): delete the wrong tag 'nullable:false'
2021-08-31 09:56:38 +08:00
rainzm
fc9e1719b7 fix(region): delete the wrong tag 'nullable:false' 2021-08-30 16:54:00 +08:00
rainzm
73a8a01b63 feat(region): add no_tags options to filter guests
no_tags filter the guests without `no_tags`
2021-08-30 16:47:50 +08:00
Zexi Li
1455c52270 Merge pull request #12054 from ioito/automated-cherry-pick-of-#12053-upstream-release-3.8
Automated cherry pick of #12053: fix(region): sync vm os type
2021-08-30 15:04:25 +08:00
Qu Xuan
c810ea46c6 fix(region): sync vm os type 2021-08-30 14:29:40 +08:00
Zexi Li
9b9bcc881e Merge pull request #12052 from zexi/automated-cherry-pick-of-#12050-upstream-release-3.8
Automated cherry pick of #12050: fix(glance): image fuzzy match by distro
2021-08-27 18:02:46 +08:00
Zexi Li
0a4ad0a305 fix(glance): image fuzzy match by distro 2021-08-27 18:01:26 +08:00
Zexi Li
4573622ba5 Merge pull request #12039 from zhaoxiangchun/automated-cherry-pick-of-#12038-upstream-release-3.8
Automated cherry pick of #12038: fix(monitor): monitor rds sync
2021-08-27 16:58:32 +08:00
Zexi Li
11cd699c9c Merge pull request #12049 from ioito/automated-cherry-pick-of-#11987-upstream-release-3.8
Automated cherry pick of #11987: feat(region): cloudpods operation
2021-08-27 16:49:49 +08:00
Qu Xuan
ef873d9f77 feat(region): cloudpods operation 2021-08-27 16:41:57 +08:00
zhaoxiangchun
7ca332aa79 fea(monitor): monitor apiHelper add domain,project 2021-08-27 16:05:34 +08:00
zhaoxiangchun
eca062143b fix(monitor): monitor rds sync 2021-08-27 16:05:34 +08:00
Zexi Li
9b6fe19ea4 Merge pull request #12031 from zexi/automated-cherry-pick-of-#12030-upstream-release-3.8
Automated cherry pick of #12030: fix(keystone): appsrv listen multi port failed cause of race condition
2021-08-27 14:29:52 +08:00
Zexi Li
f0e61cd918 Merge pull request #12035 from ioito/automated-cherry-pick-of-#12034-upstream-release-3.8
Automated cherry pick of #12034: fix(region): sync aliyun classic network ip addr
2021-08-26 18:04:02 +08:00
Qu Xuan
a0170df031 fix(region): sync aliyun classic network ip addr 2021-08-26 17:16:09 +08:00
Zexi Li
c78f7a2f04 fix(keystone): appsrv listen multi port failed cause of race condition 2021-08-26 16:53:31 +08:00
Zexi Li
cb9b344bd4 Merge pull request #12025 from zhaoxiangchun/automated-cherry-pick-of-#12024-upstream-release-3.8
Automated cherry pick of #12024: feat(cloudmon): support HuaweiCloudStack rds metric
2021-08-26 12:34:44 +08:00
Zexi Li
b9c4336dff Merge pull request #12001 from tb365/automated-cherry-pick-of-#11999-upstream-release-3.8
Automated cherry pick of #11999: hcso support sync vm host
2021-08-26 12:23:22 +08:00
Zexi Li
e5f352fa37 Merge pull request #12028 from zexi/automated-cherry-pick-of-#12027-upstream-release-3.8
Automated cherry pick of #12027: fix(vendor): use creack/pty v1.1.11 to adapt go 1.15
2021-08-26 12:03:22 +08:00
Zexi Li
f0862574db fix(vendor): use creack/pty v1.1.11 to adapt go 1.15 2021-08-26 11:46:50 +08:00
Zexi Li
d7978069a9 Merge pull request #12007 from rainzm/automated-cherry-pick-of-#12006-upstream-release-3.8
Automated cherry pick of #12006: feat(region): add direct vpc options
2021-08-26 11:25:59 +08:00
zhaoxiangchun
1df2e03b73 feat(cloudmon): support HuaweiCloudStack rds metric 2021-08-26 11:21:15 +08:00
rainzm
9c2502db8d feat(region): add direct field for vpc
This field describes whether the VPC can be connected directly
2021-08-26 11:10:14 +08:00
Zexi Li
22f188f8c0 Merge pull request #12004 from rainzm/automated-cherry-pick-of-#12003-upstream-release-3.8
Automated cherry pick of #12003: fix(region): check instancesnapshot in correct place when resize disk
2021-08-26 10:42:38 +08:00
Zexi Li
d4656072de Merge pull request #12015 from zexi/automated-cherry-pick-of-#12014-upstream-release-3.8
Automated cherry pick of #12014: fix(cloudcommon): avoid service exit when etcd unreachable
2021-08-26 10:41:31 +08:00
Zexi Li
db34e8ad3b Merge pull request #12021 from zexi/automated-cherry-pick-of-#12020-upstream-release-3.8
Automated cherry pick of #12020: feat(cloudcommon): move ignore_nonrunning_guests option to common
2021-08-26 10:39:09 +08:00
Zexi Li
dd390aa6dd Merge pull request #12019 from ioito/automated-cherry-pick-of-#12018-upstream-release-3.8
Automated cherry pick of #12018: fix(region): cdn misc fix
2021-08-26 00:15:55 +08:00
Zexi Li
e9b0203da4 feat(cloudcommon): move ignore_nonrunning_guests option to common 2021-08-25 21:04:14 +08:00
Qu Xuan
08c5f3c816 fix(region): cdn misc fix 2021-08-25 20:44:38 +08:00
Zexi Li
5317e842f3 Merge pull request #12010 from ioito/automated-cherry-pick-of-#12009-upstream-release-3.8
Automated cherry pick of #12009: fix(region): aliyun rds network sync
2021-08-25 20:18:44 +08:00
tb365
afe7f5d828 hcso support sync vm host 2021-08-25 20:11:57 +08:00
Zexi Li
c8966f7e87 fix(cloudcommon): avoid service exit when etcd unreachable 2021-08-25 19:47:49 +08:00
Qu Xuan
f89c9b933a fix(region): aliyun rds network sync 2021-08-25 18:55:22 +08:00
Zexi Li
66c6a7570c Merge pull request #11997 from zhaoxiangchun/automated-cherry-pick-of-#11995-upstream-release-3.8
Automated cherry pick of #11995: fix(monitor):fix monitor query top 5
2021-08-25 18:19:26 +08:00
rainzm
297d905d4f fix(region): check instancesnapshot in correct place when resize disk 2021-08-25 17:12:06 +08:00
zhaoxiangchun
c24c923a8f fix(monitor):fix monitor query top 5 2021-08-25 10:15:27 +08:00
yunion-ci-robot
40909986f6 Merge pull request #11992 from zexi/automated-cherry-pick-of-#11991-upstream-release-3.8
Automated cherry pick of #11991: fix(region): try to find mediumType matched storage when create disk …
2021-08-25 08:49:05 +08:00
Zexi Li
48d6492715 Merge pull request #11984 from ioito/automated-cherry-pick-of-#11983-upstream-release-3.8
Automated cherry pick of #11983: fix(region): enable zstack allocate ip by itself
2021-08-24 22:56:27 +08:00
Zexi Li
fcc635a90e Merge pull request #11989 from ioito/automated-cherry-pick-of-#11988-upstream-release-3.8
Automated cherry pick of #11988: fix(cloudid): hcso custom role
2021-08-24 22:55:07 +08:00
Zexi Li
38582f5f93 fix(region): try to find mediumType matched storage when create disk for kvm 2021-08-24 21:36:14 +08:00
Qu Xuan
8deacfcf59 fix(cloudid): hcso custom role 2021-08-24 20:55:46 +08:00
Qu Xuan
f1d422e85f fix(region): enable zstack allocate ip by itself 2021-08-24 16:07:53 +08:00
21957 changed files with 1298685 additions and 7204118 deletions

View File

@@ -3,11 +3,22 @@
# Check https://circleci.com/docs/2.0/language-go/ for more details
version: 2
jobs:
test:
check:
docker:
- image: yunionio/centos-build:1.1-4
environment:
ONECLOUD_CI_BUILD: "1"
working_directory: /root/go/src/yunion.io/x/onecloud
steps:
- checkout
- run:
command: |
make -j3 check
build:
requires:
- check
docker:
- image: yunion/alpine-build:3.22.0-go-1.24.6-1
- image: yunionio/centos-build:1.1-4
environment:
ONECLOUD_CI_BUILD: "1"
@@ -16,21 +27,58 @@ jobs:
#### /go/src/github.com/circleci/go-tool
#### /go/src/bitbucket.org/circleci/go-tool
working_directory: /root/go/src/yunion.io/x/onecloud
resource_class: large
parallelism: 1
parallelism: 4
steps:
- checkout
- restore_cache:
key: onecloud-build-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /root/.cache/go-build
- run:
command: |
make -j3 check
make test
targets="$(circleci tests glob "cmd/*" | grep -v cmd/host-image | circleci tests split)"
echo $targets | tr ' ' '\n'
make $targets
make -j2 $targets
ls -lh _output/bin/
- save_cache:
key: onecloud-build-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /root/.cache/go-build
- store_artifacts:
path: _output/
test:
requires:
- check
docker:
- image: yunionio/centos-build:1.1-4
environment:
ONECLOUD_CI_BUILD: "1"
working_directory: /root/go/src/yunion.io/x/onecloud
parallelism: 4
steps:
- checkout
- restore_cache:
key: onecloud-test-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /root/.cache/go-build
- run:
name: unit_test
command: |
./scripts/coverage.sh --codecov
- save_cache:
key: onecloud-test-cache-{{ checksum "go.mod" }}-{{ checksum "Makefile" }}
paths:
- /root/.cache/go-build
workflows:
version: 2
build_and_test:
jobs:
- test
- check
- build:
requires:
- check
- test:
requires:
- check

View File

@@ -1,3 +0,0 @@
[*.sh]
indent_style = space
indent_size = 4

View File

@@ -1,20 +1,18 @@
---
name: Bug report
about: 报告代码缺陷/Create a bug report to help us improve
title: '[BUG]'
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''
---
**问题描述/What happened**:
**What happened**:
**环境/Environment**:
**Environment**:
- OS (e.g. `cat /etc/os-release`):
- Kernel (e.g. `uname -a`):
- Host: (e.g. `dmidecode | egrep -i 'manufacturer|product' |sort -u`)
- Service Version (e.g. `kubectl exec -n onecloud $(kubectl get pods -n onecloud | grep climc | awk '{print $1}') -- climc version-list`):
<!--
- Version (e.g. `climc version-list`):
-->

View File

@@ -1,7 +1,7 @@
---
name: 文档问题/Document Request
about: 文档相关缺陷改进/Document request to this project
title: '[文档/Docs]'
name: Document Request
about: Document request to this project
title: ''
labels:
- area/docs
- enhancement

View File

@@ -1,7 +1,7 @@
---
name: 新特性/Feature Request
about: 建议新功能特性/Suggest an idea for this project
title: '[Feature]'
name: Feature Request
about: Suggest an idea for this project
title: ''
labels: feature
assignees: ''

View File

@@ -1,7 +1,7 @@
---
name: 求助/Support Request
about: 求助使用中遇到的问题/Support request relating to this project
title: '[求助/Help]'
name: Support Request
about: Support request or question relating to this project
title: ''
labels: question
assignees: ''

View File

@@ -13,7 +13,8 @@ If no, just write "NONE".
If don't know, write "UNKNOWN", and let the reviewer decide.
If yes, write the release branches name in the below format and submit the related cherry-pick PR:
- release/3.11
- release/3.7
- release/3.6
Take a look at "https://www.cloudpods.org/en/docs/contribute/contrib/" to learn how to submit a cherry-pick PR.
-->

View File

@@ -1,38 +0,0 @@
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.26.3'
- name: Install check tools
shell: bash
run: |
set -o xtrace
git clone --branch master --depth 4 https://github.com/yunionio/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

233
.github/workflows/docker.yml vendored Normal file
View File

@@ -0,0 +1,233 @@
name: Docker image
on:
push:
branches:
- master
- releases/*
#paths:
#- 'cmd/*'
#- 'pkg/*'
#- 'vendor/*'
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.14
uses: actions/setup-go@v1
with:
go-version: 1.14
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v1
- name: Build
run: |
sudo apt-get update
sudo apt-get install librados-dev librbd-dev # baremetal-agent needs this
make cmd/baremetal-agent && ./scripts/bundle_libraries.sh _output/bin/bundles/baremetal-agent _output/bin/baremetal-agent
make docker-alpine-build F='-j4 cmd/host cmd/vpcagent cmd/region-dns make cmd/apigateway cmd/climc cmd/keystone make cmd/logger cmd/region cmd/scheduler cmd/webconsole make cmd/yunionconf cmd/glance cmd/torrent cmd/s3gateway make cmd/ansibleserver cmd/cloudnet cmd/notify make cmd/host-deployer make cmd/cloudevent cmd/devtool cmd/cloudid make cmd/*cli make cmd/esxi-agent'
- name: Image region
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/region
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.region
- name: Image host
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host
- name: Image host-deployer
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/host-deployer
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.host-deployer
- name: Image baremetal-agent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/baremetal-agent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.baremetal-agent
- name: Image esxi-agent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/esxi-agent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.esxi-agent
- name: Image vpcagent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/vpcagent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.vpcagent
- name: Image climc
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/climc
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.climc
- name: Image keystone
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/keystone
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.keystone
- name: Image logger
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/logger
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.logger
- name: Image scheduler
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/scheduler
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.scheduler
- name: Image apigateway
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/apigateway
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.apigateway
- name: Image s3gateway
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/s3gateway
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.s3gateway
- name: Image ansibleserver
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.ansibleserver
- name: Image cloudnet
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/cloudnet
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.cloudnet
- name: Image glance
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/glance
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.glance
- name: Image notify
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/notify
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.notify
- name: Image cloudevent
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/cloudevent
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.cloudevent
- name: Image cloudid
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/cloudid
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.cloudid
- name: Image devtool
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/devtool
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.devtool
- name: Image region DNS
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: registry.cn-beijing.aliyuncs.com/yunionio/region-dns
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
registry: registry.cn-beijing.aliyuncs.com
snapshot: true
dockerfile: build/docker/Dockerfile.region-dns

View File

@@ -1,52 +0,0 @@
name: Apigateway Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/apigateway/**.go'
- 'pkg/apis/apigateway/**.go'
- 'pkg/mcclient/modules/**.go'
jobs:
build_apigateway:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image apigateway

View File

@@ -1,50 +0,0 @@
name: Climc Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'cmd/climc/**.go'
- 'pkg/mcclient/**.go'
- 'vendor/yunion.io/x/structarg/**.go'
jobs:
build_climc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image climc

View File

@@ -1,51 +0,0 @@
name: Cloudmon Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudmon/**.go'
- 'vendor/yunion.io/x/cloudmux/pkg/multicloud/loader/**.go'
jobs:
build_webconsole:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image cloudmon

View File

@@ -1,49 +0,0 @@
name: Esxi Agent Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/esxi/**.go'
jobs:
build_webconsole:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image esxi-agent

View File

@@ -1,53 +0,0 @@
name: Glance Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/image/**.go'
- 'pkg/apis/image/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_glance:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image glance

View File

@@ -1,49 +0,0 @@
name: Host Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/hostman/**.go'
- 'pkg/apis/host/**.go'
jobs:
build_host:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image host

View File

@@ -1,53 +0,0 @@
name: Keystone Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/keystone/**.go'
- 'pkg/apis/identity/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_keystone:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image keystone

View File

@@ -1,53 +0,0 @@
name: Logger Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/logger/**.go'
- 'pkg/apis/logger/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_webconsole:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image logger

View File

@@ -1,53 +0,0 @@
name: Notify Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/notify/**.go'
- 'pkg/apis/notify/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_notify:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image notify

View File

@@ -1,54 +0,0 @@
name: Region Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/compute/**.go'
- 'pkg/apis/compute/**.go'
- 'vendor/yunion.io/x/cloudmux/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_region:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image region

View File

@@ -1,50 +0,0 @@
name: Scheduler Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/scheduler/**.go'
- 'pkg/apis/scheduler/**.go'
jobs:
build_webconsole:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image scheduler

View File

@@ -1,53 +0,0 @@
name: Webconsole Docker Image
on:
push:
branches:
- 'releases/**'
- 'main'
- 'master'
paths:
- 'pkg/appsrv/**.go'
- 'pkg/cloudcommon/db/**.go'
- 'pkg/webconsole/**.go'
- 'pkg/apis/webconsole/**.go'
- 'vendor/yunion.io/x/sqlchemy/**.go'
- 'vendor/yunion.io/x/jsonutils/**.go'
jobs:
build_webconsole:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 8
- uses: actions/setup-go@v4
with:
go-version: '1.26.3'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v2
- name: Login to Aliyun Container Registry (ACR)
uses: docker/login-action@v2
with:
registry: https://registry.us-west-1.aliyuncs.com
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build And Push Docker Image
shell: bash
run: |
set -o xtrace
export GO111MODULE=on
branch="${GITHUB_REF#refs/heads/}"
timestamp=`TZ="Asia/Shanghai" date +"%Y%m%d%H%M%S"`
export VERSION="$branch-$timestamp-solo"
export GOOS=linux
export ARCH=all
export REGISTRY=registry.us-west-1.aliyuncs.com/yunion-dev
make image webconsole

View File

@@ -1,45 +0,0 @@
name: Issue Check Inactive
on:
schedule:
- cron: "0 0 * * *"
permissions:
issues: write
jobs:
issue-check-inactive:
runs-on: ubuntu-latest
steps:
- name: Label inactive issues as stale
env:
GH_TOKEN: ${{ github.token }}
INACTIVE_DAY: "30"
INACTIVE_LABEL: "stale"
EXCLUDE_LABEL: "announcement"
run: |
set -euo pipefail
cutoff="$(date -u -d "${INACTIVE_DAY} days ago" +%Y-%m-%dT%H:%M:%SZ)"
gh issue list \
--repo "${{ github.repository }}" \
--state open \
--limit 1000 \
--json number,labels,updatedAt \
| jq -c \
--arg cutoff "$cutoff" \
--arg inactive "$INACTIVE_LABEL" \
--arg exclude "$EXCLUDE_LABEL" \
'
.[]
| select(.updatedAt < $cutoff)
| select([.labels[].name] | index($exclude) | not)
| select([.labels[].name] | index($inactive) | not)
' \
| while IFS= read -r issue; do
number="$(echo "$issue" | jq -r .number)"
echo "Marking issue #${number} as ${INACTIVE_LABEL}"
gh issue edit "$number" \
--repo "${{ github.repository }}" \
--add-label "$INACTIVE_LABEL"
done

View File

@@ -1,44 +0,0 @@
name: Issue Close Require
on:
schedule:
- cron: "0 1 * * *"
permissions:
issues: write
jobs:
issue-close-require:
runs-on: ubuntu-latest
steps:
- name: Close inactive issues awaiting user feedback
env:
GH_TOKEN: ${{ github.token }}
INACTIVE_DAY: "7"
run: |
set -euo pipefail
cutoff="$(date -u -d "${INACTIVE_DAY} days ago" +%Y-%m-%dT%H:%M:%SZ)"
body="$(cat <<'EOF'
If you do not provide feedback for more than 37 days, we will close the issue and you can either reopen it or submit a new issue.
您超过 37 天未反馈信息,我们将关闭该 issue如有需求您可以重新打开或者提交新的 issue。
EOF
)"
# Trim leading indentation from heredoc lines for a cleaner comment.
body="$(printf '%s\n' "$body" | sed 's/^[[:space:]]*//')"
gh issue list \
--repo "${{ github.repository }}" \
--state open \
--label "stale" \
--label "state/awaiting user feedback" \
--limit 1000 \
--json number,updatedAt \
| jq -c --arg cutoff "$cutoff" '.[] | select(.updatedAt < $cutoff)' \
| while IFS= read -r issue; do
number="$(echo "$issue" | jq -r .number)"
echo "Closing issue #${number}"
gh issue close "$number" \
--repo "${{ github.repository }}" \
--comment "$body"
done

View File

@@ -1,22 +0,0 @@
name: Issue Close Check
on:
issues:
types: [closed]
permissions:
issues: write
jobs:
issue-closed-remove-labels:
runs-on: ubuntu-latest
if: "!contains(github.event.issue.labels.*.name, 'stale')"
steps:
- name: Remove state labels when issue that hasn't stale label is closed
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--remove-label "state/awaiting processing" \
--remove-label "state/awaiting user feedback" || true

View File

@@ -1,51 +0,0 @@
on:
issue_comment:
types: [created]
name: Add issues workflow labels
permissions:
issues: write
jobs:
add-label-if-is-author:
runs-on: ubuntu-latest
if: (github.event.issue.user.id == github.event.comment.user.id) && !github.event.issue.pull_request && (github.event.issue.state == 'open')
steps:
- name: Add require handle label
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--add-label "state/awaiting processing"
- name: Remove require reply label
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--remove-label "state/awaiting user feedback" \
--remove-label "stale" || true
add-label-if-not-author:
runs-on: ubuntu-latest
if: (github.event.issue.user.id != github.event.comment.user.id) && !github.event.issue.pull_request && (github.event.issue.state == 'open') && (!contains(github.event.comment.body, '/keep-state'))
steps:
- name: Add require reply label
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--add-label "state/awaiting user feedback"
- name: Remove require handle label
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--remove-label "state/awaiting processing" \
--remove-label "stale" || true

View File

@@ -1,17 +0,0 @@
on:
issue_comment:
types: [created]
jobs:
notify-author-comment:
runs-on: ubuntu-latest
if: (github.event.issue.user.id == github.event.comment.user.id) && !github.event.issue.pull_request
# find context from: https://docs.github.com/en/webhooks/webhook-events-and-payloads#issue_comment
steps:
- name: feishu notify
uses: zexi/action-issues-notify@v1
with:
url: ${{ secrets.FEISHU_BOT_WEBHOOK_URL }}
issue_title: "${{ github.event.comment.user.login }} 回复了 issue: ${{ github.event.issue.title }}"
issue_body: "${{ tojson(github.event.comment.body) }}"
issue_link_url: "${{github.event.comment.html_url}}"

View File

@@ -1,41 +0,0 @@
name: Issue Open Check
on:
issues:
types: [opened, reopened]
permissions:
issues: write
jobs:
issue-open-add-labels:
runs-on: ubuntu-latest
if: ${{ !github.event.issue.pull_request }}
steps:
- name: Add labels
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--add-label "state/awaiting processing"
- name: Remove require reply label
env:
GH_TOKEN: ${{ github.token }}
run: |
gh issue edit "${{ github.event.issue.number }}" \
--repo "${{ github.repository }}" \
--remove-label "state/awaiting user feedback" \
--remove-label "stale" || true
notify-author-comment:
runs-on: ubuntu-latest
steps:
- name: feishu notify
uses: zexi/action-issues-notify@v1
with:
url: ${{ secrets.FEISHU_BOT_WEBHOOK_URL }}
issue_title: "${{ github.event.issue.user.login }} 提交了 issue: ${{ github.event.issue.title }}"
issue_body: "${{ tojson(github.event.issue.body) }}"
issue_link_url: "${{github.event.issue.html_url}}"

2
.gitignore vendored
View File

@@ -41,5 +41,3 @@ pkg/generated
# gotext extracted
out.gotext.json
pkg/notify/sender/email_test.go

View File

@@ -18,7 +18,7 @@ You may answer issues at Github and help those who encounter issues when using C
## Contribute codes
You are welcome to contribute codes to Cloudpods. Please refers to [CONTRIBUTING](https://www.cloudpods.org/en/docs/development/contrib/) for more details on how to contribute codes to Cloudpods.
You are welcome to contribute codes to Cloudpods. Please refers to [CONTRIBUTING](https://www.cloudpods.org/en/docs/contribute/contrib/) for more details on how to contribute codes to Cloudpods.
### Fix Issues
@@ -29,8 +29,8 @@ You may help solve bugs by submiting patches.
You may help improve the codes of Cloudpods, including:
* Develop new [features for Cloudpods](https://github.com/yunionio/cloudpods/issues?q=is%3Aopen+is%3Aissue+label%3Afeature).
* Recode some part of Cloudpods so as to make the code easier to be understood, or less error-prone, or more efficient.
* Develop new features for Cloudpods
* Recode some part of Cloudpods so as to make the code easier to be understood, or less error-prone, or more efficient
## Documentation

View File

@@ -18,7 +18,7 @@ Cloudpods是一款开源的基础设施管理工具软件运行场景复杂
## 贡献代码
我们非常欢迎和感谢开发者向项目提交代码PR流程细节请查看 [CONTRIBUTING](https://www.cloudpods.org/docs/development/contrib/).
我们非常欢迎和感谢开发者向项目提交代码PR流程细节请查看 [CONTRIBUTING](https://www.cloudpods.org/zh/docs/contribute/contrib/).
### 修复BUG
@@ -27,8 +27,8 @@ Cloudpods是一款开源的基础设施管理工具软件运行场景复杂
### 开发新的功能特性
不仅仅是修复BUG您也可以通过提交代码以改进Cloudpods包括但不限于
* 开发新的功能特性,您可以在[feature issues](https://github.com/yunionio/cloudpods/issues?q=is%3Aopen+is%3Aissue+label%3Afeature)查找需要的功能
* 重构代码,使得代码更加简洁易读,更加低健壮,或者执行起来更加高效
* 开发新的功能特性,您可以在[Cloudpods Roadmap](https://www.cloudpods.org/zh/docs/roadmap/)找到Cloudpods的功能规划
* 重构代码,使得代码更加简洁易读,更加低健壮,或者执行起来更加高效
## 文档

View File

@@ -47,6 +47,11 @@ PKGS := go list ./...
CGO_CFLAGS_ENV = $(shell go env CGO_CFLAGS)
CGO_LDFLAGS_ENV = $(shell go env CGO_LDFLAGS)
ifdef LIBQEMUIO_PATH
X_CGO_CFLAGS := ${CGO_CFLAGS_ENV} -I${LIBQEMUIO_PATH}/src -I${LIBQEMUIO_PATH}/src/include
X_CGO_LDFLAGS := ${CGO_LDFLAGS_ENV} -laio -lqemuio -lpthread -L ${LIBQEMUIO_PATH}/src
endif
export GOOS ?= linux
export GO111MODULE:=on
export CGO_CFLAGS = ${X_CGO_CFLAGS}
@@ -58,7 +63,7 @@ ifeq ($(UNAME), Linux)
XARGS_FLAGS = --no-run-if-empty
endif
cmdTargets:=$(wildcard cmd/*)
cmdTargets:=$(filter-out cmd/host-image,$(wildcard cmd/*))
rpmTargets:=$(foreach b,$(patsubst cmd/%,%,$(cmdTargets)),$(if $(shell [ -f "$(CURDIR)/build/$(b)/vars" ] && echo 1),rpm/$(b)))
debTargets:=$(foreach b,$(patsubst cmd/%,%,$(cmdTargets)),$(if $(shell [ -f "$(CURDIR)/build/$(b)/vars" ] && echo 1),deb/$(b)))
@@ -76,16 +81,19 @@ gencopyright:
@bash scripts/gencopyright.sh pkg cmd
test:
@go test $(GO_BUILD_FLAGS) $(shell go list ./... | egrep -v 'host-image|hostimage|torrent')
@go test $(GO_BUILD_FLAGS) $(shell go list ./... | egrep -v 'host-image|hostimage')
vet:
go vet ./...
# cmd/esxi-agent: prepare_dir
# CGO_ENABLED=0 $(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
cmd/esxi-agent: prepare_dir
CGO_ENABLED=0 $(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
cmd/fetcherfs: prepare_dir
CGO_ENABLED=0 $(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
cmd/%: prepare_dir
CGO_ENABLED=0 $(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
$(GO_BUILD) -o $(BIN_DIR)/$(shell basename $@) $(REPO_PREFIX)/$@
rpm/%: cmd/%
$(BUILD_SCRIPT) $*
@@ -96,6 +104,21 @@ deb/%: cmd/%
pkg/%: prepare_dir
$(GO_INSTALL) $(REPO_PREFIX)/$@
rpm/fetcherfs: cmd/fetcherfs
docker run --rm \
--name docker-centos-build-fetcherfs \
-v $(CURDIR):/data \
registry.cn-beijing.aliyuncs.com/yunionio/centos-build:1.1-4 \
/bin/bash -c "VERSION=3.6 /data/build/build.sh fetcherfs /opt/yunion/fetchclient/bin"
deb/fetcherfs: rpm/fetcherfs
#VERSION=3.6 $(DEB_BUILD_SCRIPT) fetcherfs /opt/yunion/fetchclient/bin
docker run --rm \
--name docker-debian-build-fetcherfs \
-v $(CURDIR):/data \
registry.cn-beijing.aliyuncs.com/yunionio/debian10-base:1.0 \
/data/build/convert_rpm2deb.sh
build:
$(MAKE) $(cmdTargets)
@@ -166,8 +189,7 @@ goimports-check:
echo "$@: working tree modified (possibly by goimports)" >&2 ; \
echo "$@: " >&2 ; \
echo "$@: import spec should be grouped in order: std, 3rd-party, yunion.io/x, yunion.io/x/onecloud" >&2 ; \
echo "$@: goimports should be installed by: \
echo "$@: git clone --depth 4 https://github.com/yunionio/tools && cd tools && go install ./cmd/goimports ; \
echo "$@: see \"yun\" branch at https://github.com/yousong/tools" >&2 ; \
false ; \
fi
.PHONY: goimports-check
@@ -185,7 +207,6 @@ y18n-lang := en-US,zh-CN
y18n-packages := \
yunion.io/x/onecloud/cmd/apigateway \
yunion.io/x/onecloud/cmd/keystone \
yunion.io/x/onecloud/cmd/llm \
yunion.io/x/onecloud/cmd/monitor \
yunion.io/x/onecloud/cmd/region \
yunion.io/x/onecloud/cmd/yunionconf \
@@ -220,25 +241,10 @@ y18n-check:
.PHONY: y18n-check
define hostdeployer-grpc-gen
set -o errexit; \
set -o pipefail; \
protoc -I pkg/hostman/hostdeployer/apis \
--go_out=pkg/hostman/hostdeployer/apis \
--go_opt=paths=source_relative \
--go-grpc_out=pkg/hostman/hostdeployer/apis \
--go-grpc_opt=paths=source_relative \
pkg/hostman/hostdeployer/apis/deploy.proto
endef
hostdeployer-grpc-gen:
$(hostdeployer-grpc-gen)
check: fmt-check
check: gendocgo-check
#check: goimports-check
#check: vet-check
check: goimports-check
check: vet-check
#check: y18n-check
.PHONY: check
@@ -261,18 +267,18 @@ dep:
@echo "$$depDeprecated"
@$(MAKE) mod
RELEASE_BRANCH:=master
GOPROXY ?= direct
mod:
GOPROXY=$(GOPROXY) GONOSUMDB=yunion.io/x go get yunion.io/x/cloudmux@$(RELEASE_BRANCH)
GOPROXY=$(GOPROXY) GONOSUMDB=yunion.io/x go get $(patsubst %,%@master,$(shell GO111MODULE=on go mod edit -print | sed -n -e 's|.*\(yunion.io/x/[a-z].*\) v.*|\1|p' | grep -v '/cloudmux$$'))
GOPROXY=$(GOPROXY) GONOSUMDB=yunion.io/x go mod tidy
GOPROXY=$(GOPROXY) GONOSUMDB=yunion.io/x go mod vendor -v
go get -d $(patsubst %,%@master,$(shell GO111MODULE=on go mod edit -print | sed -n -e 's|.*\(yunion.io/x/[a-z].*\) v.*|\1|p'))
go mod tidy
go mod vendor -v
define helpText
Build with docker
make docker-centos-build F='-j4'
make docker-centos-build F='-j4 cmd/region cmd/climc'
make docker-centos-build-stop
make docker-alpine-build F='-j4'
make docker-alpine-build F='-j4 cmd/host cmd/host-deployer'
make docker-alpine-build-stop
@@ -324,7 +330,7 @@ image:
.PHONY: image
image-telegraf-raid-plugin:
VERSION=v4.0-20260115.0 GOOS=linux ARCH=all make image telegraf-raid-plugin
VERSION=release-1.6.1 ARCH=all make image telegraf-raid-plugin
%:
@:

View File

@@ -4,11 +4,12 @@ __inc_Makefile_common_mk:=1
ifeq ($(ModName),)
$(error ModName must be set, e.g. yunion.io/x/onecloud)
endif
ModBaseName:=$(notdir $(ModName))
DockerImageRegistry?=registry.cn-beijing.aliyuncs.com
DockerImageAlpineBuild?=$(DockerImageRegistry)/yunionio/alpine-build:3.23-go-1.26.3-0
DockerImageAlpineBuild?=$(DockerImageRegistry)/yunionio/alpine-build:1.1-5
DockerImageCentOSBuild?=$(DockerImageRegistry)/yunionio/centos-build:1.1-5
EnvIf=$(if $($(1)),$(1)=$($(1)))
@@ -16,7 +17,6 @@ define dockerCentOSBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
git config --global --add safe.directory /root/go/src/yunion.io/x/$(ModBaseName)
cd /root/go/src/yunion.io/x/$(ModBaseName)
env \
$(call EnvIf,GOARCH) \
@@ -26,16 +26,33 @@ env \
chown -R $(shell id -u):$(shell id -g) _output
endef
tmpName=$(ModBaseName)-$(shell date +"%Y%m%d.%H%M%S%3N")
docker-centos-build: export dockerCentOSBuildCmd:=$(call dockerCentOSBuildCmd,$(F))
docker-centos-build:
docker rm --force docker-centos-build-$(ModBaseName) &>/dev/null || true
docker run \
--rm \
--name docker-centos-build-$(ModBaseName) \
-v $(CURDIR):/root/go/src/yunion.io/x/$(ModBaseName) \
-v $(CURDIR)/_output/centos-build:/root/go/src/yunion.io/x/$(ModBaseName)/_output \
-v $(CURDIR)/_output/centos-build/_cache:/root/.cache \
$(DockerImageCentOSBuild) \
/bin/bash -c "$$dockerCentOSBuildCmd"
ls -lh _output/centos-build/bin
# NOTE we need a way to stop and remove the container started by docker-build.
# No --tty, --stop-signal won't work
docker-centos-build-stop:
docker stop --time 0 docker-centos-build-$(ModBaseName) || true
.PHONY: docker-centos-build
.PHONY: docker-centos-build-stop
define dockerAlpineBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
git config --global --add safe.directory /root/go/src/yunion.io/x/$(ModBaseName)
cd /root/go/src/yunion.io/x/$(ModBaseName)
git config --global --add safe.directory /root/go/src/yunion.io/x/onecloud
env \
$(call EnvIf,GOARCH) \
$(call EnvIf,GOOS) \
@@ -46,10 +63,10 @@ endef
docker-alpine-build: export dockerAlpineBuildCmd:=$(call dockerAlpineBuildCmd,$(F))
docker-alpine-build:
docker rm --force docker-alpine-build-$(tmpName) &>/dev/null || true
docker rm --force docker-alpine-build-$(ModBaseName) &>/dev/null || true
docker run \
--rm \
--name docker-alpine-build-$(tmpName) \
--name docker-alpine-build-$(ModBaseName) \
-v $(CURDIR):/root/go/src/yunion.io/x/$(ModBaseName) \
-v $(CURDIR)/_output/alpine-build:/root/go/src/yunion.io/x/$(ModBaseName)/_output \
-v $(CURDIR)/_output/alpine-build/_cache:/root/.cache \
@@ -58,7 +75,7 @@ docker-alpine-build:
ls -lh _output/alpine-build/bin
docker-alpine-build-stop:
docker stop --time 0 docker-alpine-build-$(tmpName) || true
docker stop --time 0 docker-alpine-build-$(ModBaseName) || true
.PHONY: docker-alpine-build
.PHONY: docker-alpine-build-stop

7
OWNERS
View File

@@ -1,6 +1,9 @@
# See the OWNERS docs at https://go.k8s.io/owners
reviewers:
- Zexi
- ioito
- swordqiu
- tb365
approvers:
- swordqiu
- Zexi
- ioito
- wanyaoqi

View File

@@ -1,17 +1,14 @@
# Cloudpods
[![CircleCI](https://circleci.com/gh/yunionio/cloudpods.svg?style=svg)](https://circleci.com/gh/yunionio/cloudpods)
[![Build Status](https://travis-ci.com/yunionio/cloudpods.svg?branch=master)](https://travis-ci.org/yunionio/cloudpods)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/cloudpods)](https://goreportcard.com/report/github.com/yunionio/cloudpods)
[简体中文](./README-CN.md) | [English](./README.md)
## Cloudpods是什么?
<img src="https://v1.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
<img src="https://www.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
Cloudpods是一个开源的Golang实现的云原生的融合多云/混合云的云平台,也就是一个云上之云”。Cloudpods不仅可以管理本地的虚拟机和物理机资源还可以管理多个云平台和云账号。Cloudpods隐藏了这些异构基础设施资源的数据模型和API的差异对外暴露了一套统一的API允许用户就像用一个云一样地访问多云。从而大大降低了访问多云的复杂度提升了管理多云的效率。
Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与 AI 容器应用的统一管理平台,帮助企业在同一平台完成 AI 工作负载的部署、调度与运维,与 Cloudpods 私有云/多云资源体系无缝集成。
Cloudpods是一个开源的Golang实现的云原生的融合多云/混合云的云平台,也就是一个云上之云”。Cloudpods不仅可以管理本地的虚拟机和物理机资源还可以管理多个云平台和云账号。Cloudpods隐藏了这些异构基础设施资源的数据模型和API的差异对外暴露了一套统一的API允许用户就像用一个云一样地访问多云。从而大大降低了访问多云的复杂度提升了管理多云的效率。
## 谁需要Cloudpods?
@@ -20,24 +17,20 @@ Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与
* 将VMware vSphere虚拟化集群转换为一个可以自服务的私有云平台
* 在混合云的场景,能够在一个界面访问私有云和公有云
* 通过一个集中的入口访问分布在多个公有云平台上的多个账号
* 当前只使用一个公有云账号但希望将来使用多云的用户
* 需要部署和管理 LLM 推理服务及 AI 容器应用,并需要 GPU 调度支持的用户
* 当前只使用一个公有云账号但希望将来使用多云的用户
## 功能
请访问[产品介绍](https://www.cloudpods.org/docs/introduction/)页面了解详细信息。
Cloudpods提供了如下的功能
### AI 云
* **AI 推理服务**:部署和管理 LLM 推理实例(支持 Ollama、vLLM、SGLang 等),支持 GPU 调度、模型挂载与推理服务地址分配。
* **AI 应用管理**:一站式部署 LLM 应用编排、智能体助手、图像生成等 AI 容器应用。
* **模型库**:统一管理模型来源、版本与缓存,支持多实例复用、离线分发,避免重复下载。
* **模板与镜像**:通过模板定义 CPU/内存/GPU 等资源规格,通过镜像管理容器运行环境,实现标准化交付。
* **GPU 运维**GPU 设备自动探测与注册,支持 NVIDIA/CUDA 环境的统一配置与管理。
支持的 AI 工作负载:
* AI 推理Ollama、vLLM、SGLang
* AI 应用OpenClaw、Dify、ComfyUI、Hermes Agent
* 管理多云资源的功能可以管理大多数的主流云包括私有云例如OpenStack以及公有云例如AWSAzureGCP阿里云华为云和腾讯云等
* 允许以统一的联邦身份访问各个云平台的原生控制台的SSO
* 一个可以管理海量KVM虚拟机的轻量级私有云
* 一个能进行物理机全生命周期管理的裸机云
* 实现了VMware vSphere虚拟化集群的自助服务和自动化
* 一套功能丰富、统一一致的RESTAPI和模型访问以上的云资源和功能
* 一套完整的多租户认证和访问控制体系
* 自动将镜像转换为不同云平台需要的格式的多云镜像服务
### 支持的云平台
@@ -49,45 +42,75 @@ Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与
* 华为云
* 腾讯云
* UCloud
* 天翼
* 移动云
* 中国电信
* 中国移动云
* 京东云
* 火山引擎
* 百度云
* 金山云
* 青云
* Oracle Cloud
* 联通云
* 私有云:
* OpenStack
* ZStack
* Alibaba Cloud Apsara (阿里飞天)
* Huawei HCSO (华为HCSO)
* Nutanix
* BingoCloud
* OceanBase
* AlibabaCloud Aspara (阿里飞天)
* 本地基础设施资源:
* 基于 KVM 实现的轻量级私有云
* VMware vSphere vCenter/ESXi
* Proxmox VE
* 裸金属 (IPMI, Redfish API)
* 对象存储 (Minio, Ceph, XSky)
* KVM
* VMWare vSphere vCenter/ESXi
* Baremetals (IPMI, Redfish API)
* Object storages (Minio, Ceph, XSky)
* NAS (Ceph)
### 支持的云资源
* 服务器实例、磁盘、网卡、网络、VPC、存储、宿主机、二层网络、快照、快照策略、安全组、弹性 IP、SSH 密钥对、镜像
* 负载均衡实例、监听、后端服务器组、后端服务器、TLS 证书、访问控制
* 对象存储:存储桶、对象
* NAS:文件系统、权限组、挂载点
* RDS:实例、账号、备份、数据库、参数、权限
* 弹性缓存:实例、账号、备份、参数
* DNSDNS 区域、DNS 记录
* VPCVPCVPC 对等连接、跨 VPC 网络、NAT 网关、DNAT/SNAT 规则、路由表、路由条目
* Servers: instances, disks, network interfaces, networks, vpcs, storages, hosts, wires, snapshots, snapshot policies, security groups, elastic IPs, SSH keypairs, images
* Load Balancers: instances, listeners, backend groups, backends, TSL certificates, ACLs
* Object Storage: buckets, objects
* NAS: file_systems, access_groups, mount_targets
* RDS: instances, accounts, backups, databases, parameters, privileges
* Elastic Cache: instances, accounts, backups, parameters
* DNS: DNS zones, DNS records
* VPC: VPCs, VPC peering, inter-VPC network, NAT gateway, DNAT/SNAT rules, route tables, route entries
## 安装部署
## 快速开始
请参考文档[安装部署](https://www.cloudpods.org/docs/getting-started/)选择合适的场景部署。
我们可以通过以下简单三步将Cloudpods安装在一台至少8GiB内存和100GB硬盘的Linux主机上目前CentOS 7和Debian 10经过充分测试
(下面假设该主机的IP为 *10.168.26.216*)
### 1. 准备SSH免密登录
```bash
# Generate the local ssh keypair
# (SKIP this stekp if you already have ~/.ssh/id_rsa.pub locally)
$ ssh-keygen
# Copy the generated ~/.ssh/id_rsa.pub public key to the machine to be deployed
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.168.26.216
# Try to login to the machine to be deployed without password,
# should be able to get the hostname of the deployed machine
# without entering the login password
$ ssh root@10.168.26.216 "hostname"
```
### 2. 安装git和相关工具
#### CentOS 7安装git和epel源
```bash
yum install -y git epel-release
```
#### Debian 10安装git
```bash
apt install -y git
```
### 3. 安装Cloudpods
通过以下命令开始安装Cloudpods
```bash
# Git clone the ocboot installation tool locally
$ git clone https://github.com/yunionio/ocboot && cd ./ocboot && ./run.py 10.168.26.216
```
大概10-30分钟后安装完成。访问 https://10.168.26.216 登入Cloudpods的Web控制台。初始的账号为 *admin* ,密码为 *admin@123*
请参考文档 [快速开始](https://www.cloudpods.org/zh/docs/quickstart/) 获得更详细的安装指导。
## 文档
@@ -101,13 +124,23 @@ Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与
## 联系我们
* 请查看[联系我们](https://www.cloudpods.org/docs/contact/)。
您可以通过如下方式联系我们:
* TG群: [cloudpods](https://t.me/cloudpods_org)
* Reddit: [r/Cloudpods](https://www.reddit.com/r/Cloudpods/)
* 哔哩哔哩: [Cloudpods](https://space.bilibili.com/623431553/)
* 微信: 请扫描如下二维码联系我们
<img src="https://www.cloudpods.org/images/contact_me_qr_20210701.png" alt="WeChat QRCode">
## 版本历史
查看[发布日志](https://www.cloudpods.org/docs/release-notes/)和[Changelog](https://www.cloudpods.org/docs/development/changelog/)
访问[Cloudpods Changelog](https://www.cloudpods.org/zh/docs/changelog/).
## 开发规划
请访问[Cloudpods Roadmap](https://www.cloudpods.org/zh/docs/roadmap/).
## 贡献
@@ -116,7 +149,3 @@ Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与
## License
Apache license 2.0,详情请看 [LICENSE](./LICENSE)。
## AI生成文档
[DeepWiki](https://deepwiki.com/yunionio/cloudpods) 提供了对本项目代码详细和全面的AI解读可以参考。

117
README.md
View File

@@ -1,43 +1,36 @@
# Cloudpods
[![CircleCI](https://circleci.com/gh/yunionio/cloudpods.svg?style=svg)](https://circleci.com/gh/yunionio/cloudpods)
[![Build Status](https://travis-ci.com/yunionio/cloudpods.svg?branch=master)](https://travis-ci.com/yunionio/cloudpods/branches)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/cloudpods)](https://goreportcard.com/report/github.com/yunionio/cloudpods)
[English](./README.md) | [简体中文](./README-CN.md)
## What is Cloudpods?
<img src="https://v1.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
<img src="https://www.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
Cloudpods is a cloud-native open source unified multi/hybrid-cloud platform developed with Golang, i.e. Cloudpods is *a cloud on clouds*. Cloudpods is able to manage not only on-premise KVM/baremetals, but also resources from many cloud accounts across many cloud providers. It hides the differences of underlying cloud providers and exposes one set of APIs that allow programatically interacting with these many clouds.
Cloudpods also provides **AI Cloud**, a unified management platform for large language model (LLM) inference and AI container applications, helping enterprises deploy, schedule, and operate AI workloads on a single platform, seamlessly integrated with the Cloudpods private cloud / multi-cloud resource ecosystem.
## Who needs Cloudpods?
* Those who need a simple solution to virtualize a few physical servers into a private cloud
* Those who need a compact and fully automatic baremetal lift-cycle management solution
* Those who want to turn a VMware vSphere virtualization cluster into a private cloud
* Those who need a cohesive view of both public and private cloud in a hybrid cloud setup
* Those who need a centric portal to access multiple accounts from multiple public clouds
* Those who need a centric portal to access multiple acccounts from multiple public clouds
* Those who is currently using a single cloud account, but will not lose the possibility to adopt multicloud strategy
* Those who need to deploy and manage LLM inference services and AI container applications with GPU support
## Features
See [Introduction](https://www.cloudpods.org/docs/introduction/) for details.
### AI Cloud
* **AI Inference Services**: Deploy and manage LLM inference instances (Ollama, vLLM, SGLang, and more) with GPU scheduling, model mounting, and inference service address allocation.
* **AI Application Management**: One-stop deployment of LLM application orchestration, agent assistants, image generation, and other AI container applications.
* **Model Library**: Unified management of model sources, versions, and caches, supporting multi-instance reuse and offline distribution.
* **Templates and Images**: Define resource specifications (CPU/memory/GPU) through templates, manage container runtime environments through images.
* **GPU Operations**: Automatic GPU device detection and registration, unified NVIDIA/CUDA environment configuration and management.
Supported AI workloads:
* AI Inference: Ollama, vLLM, SGLang
* AI Applications: OpenClaw, Dify, ComfyUI, Hermes Agent
* Multi-cloud management that is able to manage a wide range of cloud providers, including private cloud, such as OpenStack, and public clouds, such as AWS, Azure, Google Cloud, Alibaba Cloud, Tencent Cloud, Huawei Cloud, etc.
* Cloud SSO that allows accessing native webconsole of cloud providers with unified federated identities
* A light-weight private cloud that manages KVM hypervisor in scale
* A BareMetal cloud that automates the full life-cycle management of baremetal physical machines
* VMware vSphere management that enables self-service and automation
* One set of feature-rich APIs to access a wide range of resources from cloud providers above with consistent models and APIs
* A complete multi-tenancy RBAC-enabled IAM (identity and access management) system
* Multi-cloud image management system that automates image conversion between different cloud providers
### Supported cloud providers
@@ -52,24 +45,13 @@ Supported AI workloads:
* Ctyun (China Telecom)
* ECloud (China Mobile)
* JDCloud
* Volcengine
* Baidu Cloud
* Kingsoft Cloud
* QingCloud
* Oracle Cloud
* China Unicom Cloud
* Private Clouds:
* OpenStack
* ZStack
* Alibaba Cloud Apsara
* Huawei HCSO
* Nutanix
* BingoCloud
* OceanBase
* AlibabaCloud Aspara
* On-premise resources:
* Lightweight private cloud built on KVM
* VMware vSphere vCenter/ESXi
* Proxmox VE
* KVM
* VMWare vSphere vCenter/ESXi
* Baremetals (IPMI, Redfish API)
* Object storages (Minio, Ceph, XSky)
* NAS (Ceph)
@@ -77,7 +59,7 @@ Supported AI workloads:
### Supported resources
* Servers: instances, disks, network interfaces, networks, vpcs, storages, hosts, wires, snapshots, snapshot policies, security groups, elastic IPs, SSH keypairs, images
* Load Balancers: instances, listeners, backend groups, backends, TLS certificates, ACLs
* Load Balancers: instances, listeners, backend groups, backends, TSL certificates, ACLs
* Object Storage: buckets, objects
* NAS: file_systems, access_groups, mount_targets
* RDS: instances, accounts, backups, databases, parameters, privileges
@@ -85,9 +67,54 @@ Supported AI workloads:
* DNS: DNS zones, DNS records
* VPC: VPCs, VPC peering, inter-VPC network, NAT gateway, DNAT/SNAT rules, route tables, route entries
## Getting started
## Quick start
You may install Cloudpods in a Linux box (currently CentOS 7 and Debian 10 are fully tested) with at least 8GiB RAM and 100GB storage by following three steps.
(Assuming that you install Cloudpods on a Linux box with IP *10.168.26.216*):
### 1. Prepare passwordless SSH login
```bash
# Generate a local ssh keypair
# (SKIP this step if you already have ~/.ssh/id_rsa.pub locally)
$ ssh-keygen
# Copy the generated ~/.ssh/id_rsa.pub public key to the machine to be deployed
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.168.26.216
# Try to login to the machine to be deployed without password,
# should be able to get the hostname of the deployed machine
# without entering the login password
$ ssh root@10.168.26.216 "hostname"
```
### 2. Install git and relevant tools
#### For CentOS 7
```bash
yum install -y git epel-release
```
#### For Debian 10
```bash
apt install -y git
```
### 3. Install Cloudpods
Run the following commands to start installing Cloudpods.
```bash
# Git clone the ocboot installation tool locally
$ git clone https://github.com/yunionio/ocboot && cd ./ocboot && ./run.py 10.168.26.216
```
It takes 10-30 minutes to finish the installation. You may visit the webconsole of Cloudpods at https://10.168.26.216. The initial login account is *admin* and password is *admin@123*.
For more detailed instructions, please refers to [quick start](https://www.cloudpods.org/en/docs/quickstart/).
Please refer to the document [Getting Started](https://www.cloudpods.org/en/docs/getting-started/) to select the appropriate scenario for installation.
## Documentations
@@ -102,13 +129,23 @@ Please check this [issue](https://github.com/yunionio/cloudpods/issues/11427) fo
## Contact
* See [Contact Us](https://www.cloudpods.org/en/docs/contact/) for details.
You may contact us by:
* Telegram: [cloudpods](https://t.me/cloudpods_org)
* Reddit: [r/Cloudpods](https://www.reddit.com/r/Cloudpods/)
* Bilibili: [Cloudpods](https://space.bilibili.com/623431553/)
* WeChat: please scan the following QRCode to contact us
<img src="https://www.cloudpods.org/images/contact_me_qr_20210701.png" alt="WeChat QRCode">
## Changelog
See [Release Notes](https://www.cloudpods.org/en/docs/release-notes/) and [Changelog](https://www.cloudpods.org/en/docs/development/changelog/) for details.
See [Cloudpods Changelog](https://www.cloudpods.org/en/docs/changelog/) for details.
## Roadmap
See [Cloudpods Roadmap](https://www.cloudpods.org/en/docs/roadmap/) for details.
## Contribution
@@ -117,7 +154,3 @@ You are welcome to do any kind of contribution to the project. Please refer to [
## License
Apache License 2.0. See [LICENSE](./LICENSE).
## AI-generated doc
[DeepWiki](https://deepwiki.com/yunionio/cloudpods) provides an amazing AI-generated doc of this project, you may refer to it for more detailed and comprehensive understanding of codes.

View File

@@ -1 +0,0 @@
DESCRIPTION="Yunion Cloud AI Proxy Service"

View File

@@ -36,12 +36,6 @@ fi
. $ROOT/vars
BUILDROOT=$(mktemp -d 2>/dev/null || mktemp -d -t 'yunion')
function cleanup {
rm -rf "$BUILDROOT"
echo "Deleted temp working directory $BUILDROOT"
}
# register the cleanup function to be called on the EXIT signal
trap cleanup EXIT
echo "Build root ${BUILDROOT}"
@@ -50,12 +44,7 @@ echo "Build root ${BUILDROOT}"
if [ -z "$VERSION" ]; then
TAG=$(git describe --abbrev=0 --tags || echo testing)
VERSION=${TAG/\//-}
if [[ "$VERSION" =~ ^v0. ]]; then
VERSION=${VERSION/v0./}
elif [[ "$VERSION" =~ ^v ]]; then
VERSION=${VERSION/v/}
fi
VERSION=${VERSION//-/.}
VERSION=${VERSION/v/}
fi
RELEASE=`date +"%y%m%d%H"`
@@ -79,8 +68,6 @@ echo "# Yunion RPM spec
%global pkgname yunion-$PKG
%global homedir /var/run/%{owner}
%global use_systemd $SERVICE
%global debug_package %{nil}
%global __strip /usr/bin/eu-strip
Name: %{pkgname}
Version: $VERSION
@@ -112,87 +99,41 @@ if [ -d $ROOT/root ]; then
rsync -a $ROOT/root/ \$RPM_BUILD_ROOT
fi
%pre" > $SPEC_FILE
if [ -f $ROOT/preinst ]; then
cat $ROOT/preinst >> $SPEC_FILE
else
echo "
%pre
%if %{use_systemd}
getent group %{owner} >/dev/null || /usr/sbin/groupadd -r %{owner}
getent passwd %{owner} >/dev/null || /usr/sbin/useradd -r -s /sbin/nologin -d %{homedir} -M -g %{owner} %{owner}
%endif
" >> $SPEC_FILE
fi
echo "
%post" >> $SPEC_FILE
if [ -f $ROOT/postinst ]; then
cat $ROOT/postinst >> $SPEC_FILE
else
echo "
%post
%if %{use_systemd}
mkdir -p /var/run/%{owner}
chown -R %{owner}:%{owner} /var/run/%{owner}
/usr/bin/systemctl preset %{pkgname}.service >/dev/null 2>&1 ||:
%endif
" >> $SPEC_FILE
fi
echo "
%preun" >> $SPEC_FILE
if [ -f $ROOT/prerm ]; then
cat $ROOT/prerm >> $SPEC_FILE
else
echo "
%preun
%if %{use_systemd}
/usr/bin/systemctl --no-reload disable %{pkgname}.service >/dev/null 2>&1 || :
/usr/bin/systemctl stop %{pkgname}.service >/dev/null 2>&1 ||:
%endif
" >> $SPEC_FILE
fi
echo "
%postun" >> $SPEC_FILE
if [ -f $ROOT/postrm ]; then
cat $ROOT/postrm >> $SPEC_FILE
else
echo "
%postun
%if %{use_systemd}
/usr/bin/systemctl daemon-reload >/dev/null 2>&1 ||:
%endif
" >> $SPEC_FILE
fi
echo -n "
%files
%doc
$BIN_PATH/$PKG
" >> $SPEC_FILE
for b in $EXTRA_BINS; do
echo $BIN_PATH/$b >> $SPEC_FILE
done
$(for b in $EXTRA_BINS; do echo $BIN_PATH/$b; done)
" > $SPEC_FILE
if [ -d $ROOT/root/ ]; then
find $ROOT/root/ -type f | sed -e "s:$ROOT/root::g" >> $SPEC_FILE
fi
TARGET=
case "$GOARCH" in
"arm64" | "aarch64" | "arm")
TARGET="--target aarch64-redhat-linux"
;;
"amd64" | "x86" | "i686" | "i386" | "x86_64")
TARGET="--target x86_64-redhat-linux"
;;
"riscv64")
TARGET="--target riscv64-linux"
;;
esac
rpmbuild --define "_topdir $BUILDROOT" -bb $SPEC_FILE $TARGET
rpmbuild --define "_topdir $BUILDROOT" -bb $SPEC_FILE
find $RPM_DIR -type f | while read f; do
d="$(dirname "$f")"
@@ -200,3 +141,5 @@ find $RPM_DIR -type f | while read f; do
mkdir -p "$d"
cp $f $d
done
rm -fr $BUILDROOT

View File

@@ -35,6 +35,24 @@ fi
. $ROOT/vars
if [ -z "$VERSION" ]; then
TAG=$(git describe --abbrev=0 --tags || echo 000000)
VERSION=${TAG/\//-}
VERSION=${VERSION/v/}
fi
RELEASE=`date +"%y%m%d%H"`
FULL_VERSION=$VERSION-$RELEASE
BUILDROOT=$OUTPUT_DIR/yunion-$1-$FULL_VERSION
rm -rf $BUILDROOT
mkdir -p $BUILDROOT/DEBIAN
mkdir -p $BUILDROOT/$BIN_PATH
cp -rf $BIN $BUILDROOT/$BIN_PATH
cp -rf $ROOT/root/* $BUILDROOT/
echo "Build root ${BUILDROOT}"
case $(uname -m) in
x86_64)
CURRENT_ARCH=amd64
@@ -42,134 +60,17 @@ case $(uname -m) in
aarch64)
CURRENT_ARCH=arm64
;;
riscv64)
CURRENT_ARCH=riscv64
;;
esac
if [[ -n "$GOARCH" ]]; then
case "$GOARCH" in
"arm64" | "arm" | "aarch64")
CURRENT_ARCH="arm64"
;;
"x86" | "x86_64" | "i686" | "i386" | "amd64")
CURRENT_ARCH="amd64"
;;
"riscv64")
CURRENT_ARCH="riscv64"
;;
esac
fi
if [ -z "$VERSION" ]; then
TAG=$(git describe --abbrev=0 --tags || echo 000000)
VERSION=${TAG/\//-}
VERSION=${VERSION/v/}
VERSION=${VERSION/master-/}
fi
RELEASE=`date +"%y%m%d%H"`
FULL_VERSION=$VERSION-$RELEASE
BUILDROOT=$OUTPUT_DIR/yunion-${PKG}-${FULL_VERSION}_${CURRENT_ARCH}
function cleanup {
rm -rf "$BUILDROOT"
echo "Deleted temp working directory $BUILDROOT"
}
# register the cleanup function to be called on the EXIT signal
trap cleanup EXIT
rm -rf $BUILDROOT
mkdir -p $BUILDROOT/DEBIAN
mkdir -p $BUILDROOT/$BIN_PATH
cp -rf $BIN $BUILDROOT/$BIN_PATH
if [ -d $ROOT/root ]; then
cp -rf $ROOT/root/* $BUILDROOT/
fi
echo "Build root ${BUILDROOT}"
echo "Package: yunion-$PKG
echo "Package: yunion-$1
Version: $FULL_VERSION
Section: base
Priority: optional
Architecture: $CURRENT_ARCH
Maintainer: wanyaoqi@yunionyun.com
Description: $DESCRIPTION" > $BUILDROOT/DEBIAN/control
if [ ${#REQUIRES[@]} -gt 0 ]; then
DEPS=$(IFS=, ; echo "${REQUIRES[*]}")
echo "Depends: $DEPS" >> $BUILDROOT/DEBIAN/control
fi
Description: Yunion $1
" > $BUILDROOT/DEBIAN/control
chmod 0755 $BUILDROOT/DEBIAN/control
cat $BUILDROOT/DEBIAN/control
echo "#!/bin/bash
" > $BUILDROOT/DEBIAN/preinst
if [ -f $ROOT/preinst ]; then
cat $ROOT/preinst >> $BUILDROOT/DEBIAN/preinst
else
if [ "$SERVICE" == "yes" ] && [ -n "$OWNER" ]; then
echo "
getent group ${OWNER} >/dev/null || /usr/sbin/groupadd -r ${OWNER}
getent passwd ${OWNER} >/dev/null || /usr/sbin/useradd -r -s /sbin/nologin -d /home/${OWNER} -M -g ${OWNER} ${OWNER}
" >> $BUILDROOT/DEBIAN/preinst
fi
fi
chmod 0755 $BUILDROOT/DEBIAN/preinst
echo "#!/bin/bash
" > $BUILDROOT/DEBIAN/postinst
if [ -f $ROOT/postinst ]; then
cat $ROOT/postinst >> $BUILDROOT/DEBIAN/postinst
else
if [ "$SERVICE" == "yes" ]; then
echo "
/usr/bin/systemctl preset yunion-${PKG}.service >/dev/null 2>&1 ||:
" >> $BUILDROOT/DEBIAN/postinst
fi
fi
chmod 0755 $BUILDROOT/DEBIAN/postinst
echo "#!/bin/bash
" > $BUILDROOT/DEBIAN/prerm
if [ -f $ROOT/prerm ]; then
cat $ROOT/prerm >> $BUILDROOT/DEBIAN/prerm
else
if [ "$SERVICE" == "yes" ]; then
echo "
/usr/bin/systemctl --no-reload disable yunion-${PKG}.service >/dev/null 2>&1 || :
/usr/bin/systemctl stop yunion-${PKG}.service >/dev/null 2>&1 ||:
" >> $BUILDROOT/DEBIAN/prerm
fi
fi
chmod 0755 $BUILDROOT/DEBIAN/prerm
echo "#!/bin/bash
" > $BUILDROOT/DEBIAN/postrm
if [ -f $ROOT/postrm ]; then
cat $ROOT/postrm >> $BUILDROOT/DEBIAN/postrm
else
if [ "$SERVICE" == "yes" ]; then
echo "
/usr/bin/systemctl daemon-reload >/dev/null 2>&1 ||:
" >> $BUILDROOT/DEBIAN/postrm
fi
fi
chmod 0755 $BUILDROOT/DEBIAN/postrm
dpkg-deb --build $BUILDROOT
case "$CURRENT_ARCH" in
"amd64")
DSTARCH="x86_64"
;;
"arm64")
DSTARCH="aarch64"
;;
"riscv64")
DSTARCH="riscv64"
;;
esac
mkdir -p ${OUTPUT_DIR}/${DSTARCH}
mv ${BUILDROOT}.deb ${OUTPUT_DIR}/${DSTARCH}/
dpkg-deb --build $BUILDROOT

View File

@@ -1,19 +0,0 @@
#!/bin/bash
set -e
BASHRC=/etc/profile.d/climc.sh
grep -q rcadmin $BASHRC || echo 'source /etc/yunion/rcadmin' >> $BASHRC
source $BASHRC
climc sshkeypair-inject --admin --target-dir /root/
mkdir -p /etc/dropbear
mkdir -p /var/run/dropbear
test -f /etc/dropbear/dropbear_rsa_host_key || dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
dropbear -RFEjk -G root -p 22

View File

@@ -1,22 +1,3 @@
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"
echo ""

View File

@@ -47,11 +47,6 @@ 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

@@ -1,35 +0,0 @@
<?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,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/aiproxy /opt/yunion/bin/aiproxy

View File

@@ -1,8 +1,7 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:v1.0.5
# https://github.com/yunionio/telegraf/blob/yn-release-1.36/Makefile.yn#L28
# install playbook and telegraf install pkg
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.5.5 /opt/yunion/playbook /opt/yunion/playbook
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.5.5 /opt/yunion/ansible-install-pkg /opt/yunion/ansible-install-pkg
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.3.3 /opt/yunion/playbook /opt/yunion/playbook
COPY --from=registry.cn-beijing.aliyuncs.com/yunionio/file-repo:v0.3.3 /opt/yunion/ansible-install-pkg /opt/yunion/ansible-install-pkg
ADD ./_output/alpine-build/bin/ansibleserver /opt/yunion/bin/ansibleserver

View File

@@ -1,31 +1,13 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
LABEL maintainer="Yousong Zhou <zhouyousong@yunionyun.com>"
ENV TZ="UTC"
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
MAINTAINER "Yousong Zhou <zhouyousong@yunionyun.com>"
# 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 py3-pip \
&& apk add py3-paramiko \
&& apk add tzdata git ca-certificates
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 rm /usr/lib/python3.*/EXTERNALLY-MANAGED
RUN pip3 install -U pip setuptools wheel \
&& pip3 install mysqlclient pywinrm \
&& pip3 install 'ansible<=9.0.0' \
&& apk del --no-network .build-dependencies \
&& rm -rf /root/.cache /root/.cargo /var/cache/apk/*
&& apk update \
&& apk add openssh-client \
&& apk add sshpass \
&& apk add ansible \
&& apk add tzdata git ca-certificates \
&& rm -rf /var/cache/apk/*

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/apigateway /opt/yunion/bin/apigateway

View File

@@ -1,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/apimap /opt/yunion/bin/apimap

View File

@@ -1,8 +1,11 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:v0.3.9-20260724.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:v0.3.3
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
RUN mkdir -p /opt/yunion/bin
ENV TZ="UTC"
#ADD ./_output/bin/baremetal-agent /opt/yunion/bin/baremetal-agent
#ADD ./_output/bin/.baremetal-agent.bin /opt/yunion/bin/.baremetal-agent.bin
#ADD ./_output/bin/bundles/baremetal-agent /opt/yunion/bin/bundles/baremetal-agent
RUN apk add librados librbd
ADD ./_output/alpine-build/bin/baremetal-agent /opt/yunion/bin/baremetal-agent

View File

@@ -1,89 +1,36 @@
#RUN yum install -y https://iso.yunion.cn/vm-images/baremetal-pxerom-1.1.0-21092209.x86_64.rpm
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:v4.0.0-20251203.0 as yunionos
FROM registry.cn-beijing.aliyuncs.com/cloudpods/centos:8 as grub-stage
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
RUN dnf install -y grub2*
# make grub_booti386 firmware
RUN grub2-mkimage -d /usr/lib/grub/i386-pc/ -O i386-pc-pxe -o /root/grub_booti386 -p '/grub' pxe tftp boot linux ext2 xfs ntfs fat part_msdos part_gpt normal biosdisk
# make grub_bootx64 firmware
RUN grub2-mkimage -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi -o /root/grub_bootx64.efi -p '/grub' efinet tftp boot linux ext2 xfs ntfs fat part_msdos part_gpt normal efi_gop
# make grub_arm64 firmware
RUN grub2-mkimage -d /usr/lib/grub/arm64-efi/ -O arm64-efi -o /root/grub_arm64.efi -p '/grub' efinet tftp boot linux ext2 xfs ntfs fat part_msdos part_gpt normal efi_gop
RUN mkdir -p /tftp/grub
RUN cp /root/grub_booti386 /tftp
RUN cp -rf /usr/lib/grub/i386-pc /tftp/grub
RUN cp /root/grub_bootx64.efi /tftp
RUN cp -rf /usr/lib/grub/x86_64-efi /tftp/grub
RUN cp /root/grub_arm64.efi /tftp
RUN cp -rf /usr/lib/grub/arm64-efi /tftp/grub
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
LABEL maintainer="Zexi Li <zexi.li@icloud.com>"
MAINTAINER "Yaoqi Wan <wanyaoqi@yunionyun.com>"
RUN mkdir -p /opt/yunion/bin
RUN apk update && \
apk add --no-cache ipmitool ethtool tzdata ca-certificates cdrkit coreutils librados librbd && \
apk add --no-cache ipmitool ethtool tzdata ca-certificates cdrkit coreutils && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN mkdir -p /opt/cloud/yunion/baremetal
# udpate latest pci.ids
RUN wget -O /opt/cloud/yunion/baremetal/pci.ids http://pci-ids.ucw.cz/v2.2/pci.ids
# download baremetal-pxerom-*.x86_64.rpm and unpack rpm in current directory
#COPY --from=build /opt/cloud/yunion/baremetal/bootia32.efi /opt/cloud/yunion/baremetal
#COPY --from=build /opt/cloud/yunion/baremetal/bootx64.efi /opt/cloud/yunion/baremetal
#COPY --from=build /opt/cloud/yunion/baremetal/chain.c32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/initramfs /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/isolinux.bin /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/kernel /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.c32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.e32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.e64 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/libcom32.c32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/libutil.c32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/lpxelinux.0 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/menu.c32 /opt/cloud/yunion/baremetal
#COPY --from=build ./opt/cloud/yunion/baremetal/pxelinux.0 /opt/cloud/yunion/baremetal
# copy grub file
COPY --from=grub-stage /tftp/grub_booti386 /opt/cloud/yunion/baremetal
COPY --from=grub-stage /tftp/grub_bootx64.efi /opt/cloud/yunion/baremetal
COPY --from=grub-stage /tftp/grub_arm64.efi /opt/cloud/yunion/baremetal
COPY --from=grub-stage /tftp/grub /opt/cloud/yunion/baremetal/grub
# copy boot files from yunionos
COPY --from=yunionos /yunionos/x86_64/kernel /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/initramfs /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/aarch64/kernel /opt/cloud/yunion/baremetal/kernel_aarch64
COPY --from=yunionos /yunionos/aarch64/initramfs /opt/cloud/yunion/baremetal/initramfs_aarch64
COPY --from=yunionos /yunionos/riscv64/kernel /opt/cloud/yunion/baremetal/kernel_riscv64
COPY --from=yunionos /yunionos/riscv64/initramfs /opt/cloud/yunion/baremetal/initramfs_riscv64
# TODO: syslinux firmwares should removed in future
COPY --from=yunionos /yunionos/x86_64/isolinux.bin /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/bootia32.efi /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/bootx64.efi /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/chain.c32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/initramfs /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/kernel /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/ldlinux.c32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/ldlinux.e32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/ldlinux.e64 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/libcom32.c32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/libutil.c32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/lpxelinux.0 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/menu.c32 /opt/cloud/yunion/baremetal
COPY --from=yunionos /yunionos/x86_64/pxelinux.0 /opt/cloud/yunion/baremetal
COPY --from=build /opt/cloud/yunion/baremetal/bootia32.efi /opt/cloud/yunion/baremetal
COPY --from=build /opt/cloud/yunion/baremetal/bootx64.efi /opt/cloud/yunion/baremetal
COPY --from=build /opt/cloud/yunion/baremetal/chain.c32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/initramfs /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/isolinux.bin /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/kernel /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.c32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.e32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/ldlinux.e64 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/libcom32.c32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/libutil.c32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/lpxelinux.0 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/menu.c32 /opt/cloud/yunion/baremetal
COPY --from=build ./opt/cloud/yunion/baremetal/pxelinux.0 /opt/cloud/yunion/baremetal

View File

@@ -1,7 +1,7 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/climc-base:3.22.2-2
FROM registry.cn-beijing.aliyuncs.com/yunionio/climc-base:20210901
ADD ./build/climc/root/opt /opt
RUN cp /opt/yunion/scripts/motd/climc.sh /etc/profile.d/climc.sh && ln -sf /etc/profile.d/climc.sh /root/.bashrc
RUN cat /opt/yunion/scripts/motd/climc.sh >> /root/.bashrc
ADD ./_output/alpine-build/bin/climc ./_output/alpine-build/bin/*cli /opt/yunion/bin/

View File

@@ -1,24 +1,18 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ARG TARGETPLATFORM
ARG BUILDPLATFORM
ARG TARGETARCH
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
ENV TZ="Asia/Shanghai"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN echo http://dl-cdn.alpinelinux.org/alpine/edge/testing >>/etc/apk/repositories
RUN apk add --no-cache bash bash-completion tzdata ca-certificates vim ipmitool ceph-common dropbear shadow && \
RUN apk add --no-cache bash bash-completion tzdata ca-certificates vim ipmitool kubectl ceph-common && \
rm -rf /var/cache/apk/*
RUN usermod --shell /bin/bash root
RUN curl https://iso.yunion.cn/binaries/kubernetes-release/release/v1.22.9/bin/linux/${TARGETARCH}/kubectl -o /usr/bin/kubectl && chmod a+x /usr/bin/kubectl
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV PATH="/opt/yunion/bin:${PATH}"
RUN mkdir -p /opt/yunion/bin

View File

@@ -1,24 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ARG TARGETPLATFORM
ARG BUILDPLATFORM
ARG TARGETARCH
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
ENV TZ="Asia/Shanghai"
RUN mkdir -p /opt/yunion/bin
RUN echo http://dl-cdn.alpinelinux.org/alpine/edge/testing >>/etc/apk/repositories
RUN apk add --no-cache bash bash-completion tzdata ca-certificates vim ipmitool ceph-common dropbear shadow && \
rm -rf /var/cache/apk/*
RUN usermod --shell /bin/bash root
RUN curl -L https://iso.yunion.cn/binaries/kubernetes-release/release/v1.22.9/bin/linux/${TARGETARCH}/kubectl -o /usr/bin/kubectl && chmod a+x /usr/bin/kubectl
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN mkdir -p /opt/yunion/bin

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/cloudevent /opt/yunion/bin/cloudevent

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
COPY ./build/cloudid/root/opt/ /opt/
ADD ./_output/alpine-build/bin/cloudid /opt/yunion/bin/cloudid

View File

@@ -1,6 +1,6 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
RUN mkdir -p /etc/yunion/data/

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/cloudnet /opt/yunion/bin/cloudnet

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/cloudproxy /opt/yunion/bin/cloudproxy

View File

@@ -1,6 +1,6 @@
# registry.cn-beijing.aliyuncs.com/yunionio/debian10-base:1.0
FROM debian:trixie
FROM debian:10
RUN apt update && apt install -y alien

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/devtool /opt/yunion/bin/devtool

View File

@@ -1,6 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
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/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
COPY ./build/esxi-agent/root/opt/ /opt/
ADD ./_output/alpine-build/bin/esxi-agent /opt/yunion/bin/esxi-agent

View File

@@ -0,0 +1,21 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.2
MAINTAINER "Rain Zheng <zhengyu@yunion.com>"
# openssh-client, for ansible ssh connection
# git, ca-certificates, for fetching ansible roles
RUN set -x \
&& apk update \
&& apk add git \
&& rm -rf /var/cache/apk/*
# 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~fe11a96b-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~fe11a96b-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~fe11a96b-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~fe11a96b-0_arm64.deb -P /opt/yunion/ansible-install-pkg
Run mkdir -p /opt/yunion/playbook
Run mkdir /opt/yunion/playbook/monitor-agent
Run git clone https://github.com/yunionio/monitor-agent.git /opt/yunion/playbook/monitor-agent --recurse-submodules

View File

@@ -1,5 +1,7 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/glance-base:3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/torrent:20210815.0
ENV TZ="UTC"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
RUN apk add --no-cache s3fs-fuse --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/glance /opt/yunion/bin/glance

View File

@@ -1,7 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/torrent:3.22.2-0
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
RUN apk add --no-cache s3fs-fuse

View File

@@ -1,360 +0,0 @@
#
# 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=3.22.2
# The target architecture of the build. Valid values are "ARM" and "X86". By
# default, this is detected automatically.
ARG BUILD_ARCHITECTURE
# The number of processes that may run simultaneously during the build. By
# default, this is detected automatically.
ARG BUILD_JOBS
# The directory that will house the guacamole-server source during the build
ARG BUILD_DIR=/tmp/guacamole-server
# FreeRDP version (default to version 2)
ARG FREERDP_VERSION=2
# The final install location for guacamole-server and all dependencies. NOTE:
# This value is hard-coded in the entrypoint. Any change to this value must be
# propagated there.
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="${FREERDP_VERSION}(\.\d+)+"
ARG WITH_LIBSSH2='libssh2-\d+(\.\d+)+'
ARG WITH_LIBTELNET='\d+(\.\d+)+'
ARG WITH_LIBVNCCLIENT='LibVNCServer-\d+(\.\d+)+'
ARG WITH_LIBWEBSOCKETS='v\d+(\.\d+)+'
ARG WITH_GUACAMOLE_SERVER='\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_ARM_OPTS=""
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_FUSE=OFF \
-DWITH_GSM=OFF \
-DWITH_GSSAPI=OFF \
-DWITH_IPP=OFF \
-DWITH_JPEG=ON \
-DWITH_KRB5=ON \
-DWITH_LIBSYSTEMD=OFF \
-DWITH_MANPAGES=OFF \
-DWITH_OPENH264=OFF \
-DWITH_OPENSSL=ON \
-DWITH_OSS=OFF \
-DWITH_PCSC=OFF \
-DWITH_PKCS11=OFF \
-DWITH_PULSE=OFF \
-DWITH_SERVER=OFF \
-DWITH_SERVER_INTERFACE=OFF \
-DWITH_SHADOW_MAC=OFF \
-DWITH_SHADOW_X11=OFF \
-DWITH_SWSCALE=OFF \
-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 \
-DCMAKE_CXX_FLAGS=-Wno-incompatible-pointer-types \
-DCMAKE_C_FLAGS=-Wno-incompatible-pointer-types \
-DWITH_ZLIB=ON"
ARG FREERDP_X86_OPTS=""
ARG GUACAMOLE_SERVER_ARM_OPTS=""
ARG GUACAMOLE_SERVER_OPTS="\
--disable-guaclog \
CPPFLAGS=-Wno-error=deprecated-declarations"
ARG GUACAMOLE_SERVER_X86_OPTS=""
ARG GUACAMOLE_SERVER_UNKNOWN_OPTS=""
ARG LIBSSH2_ARM_OPTS=""
ARG LIBSSH2_OPTS="\
-DBUILD_EXAMPLES=OFF \
-DBUILD_SHARED_LIBS=ON"
ARG LIBSSH2_X86_OPTS=""
ARG LIBTELNET_ARM_OPTS=""
ARG LIBTELNET_OPTS="\
--disable-static \
--disable-util"
ARG LIBTELNET_X86_OPTS=""
ARG LIBVNCCLIENT_ARM_OPTS=""
ARG LIBVNCCLIENT_OPTS=""
ARG LIBVNCCLIENT_X86_OPTS=""
ARG LIBWEBSOCKETS_ARM_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"
ARG LIBWEBSOCKETS_X86_OPTS=""
#
# Base builder image that will be used by subsequent build stages, including
# for building dependencies of guacamole-server.
#
FROM alpine:${ALPINE_BASE_IMAGE} AS builder
ARG BUILD_DIR
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
# Install build dependencies
RUN apk add \
autoconf \
automake \
build-base \
cairo-dev \
cjson-dev \
cmake \
cunit-dev \
git \
grep \
krb5-dev \
libjpeg-turbo-dev \
libpng-dev \
libtool \
libwebp-dev \
make \
openssl-dev \
pango-dev \
pulseaudio-dev \
sdl2-dev \
sdl2_ttf-dev \
util-linux-dev
ARG GUAC_VER=1.6.0
RUN git clone --branch=${GUAC_VER} https://github.com/apache/guacamole-server.git ${BUILD_DIR}
#
# Build dependency: libssh2
#
FROM builder AS libssh2
ARG BUILD_DIR
ARG LIBSSH2_ARM_OPTS
ARG LIBSSH2_OPTS
ARG LIBSSH2_X86_OPTS
ARG PREFIX_DIR
ARG WITH_LIBSSH2
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "LIBSSH2" \
"https://github.com/libssh2/libssh2"
#
# Build dependency: libtelnet
#
FROM builder AS libtelnet
ARG BUILD_DIR
ARG LIBTELNET_ARM_OPTS
ARG LIBTELNET_OPTS
ARG LIBTELNET_X86_OPTS
ARG PREFIX_DIR
ARG WITH_LIBTELNET
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "LIBTELNET" \
"https://github.com/seanmiddleditch/libtelnet"
#
# Build dependency: libvncclient
#
FROM builder AS libvncclient
ARG BUILD_DIR
ARG LIBVNCCLIENT_ARM_OPTS
ARG LIBVNCCLIENT_OPTS
ARG LIBVNCCLIENT_X86_OPTS
ARG PREFIX_DIR
ARG WITH_LIBVNCCLIENT
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "LIBVNCCLIENT" \
"https://github.com/LibVNC/libvncserver"
#
# Build dependency: libwebsockets
#
FROM builder AS libwebsockets
ARG BUILD_DIR
ARG LIBWEBSOCKETS_ARM_OPTS
ARG LIBWEBSOCKETS_OPTS
ARG LIBWEBSOCKETS_X86_OPTS
ARG PREFIX_DIR
ARG WITH_LIBWEBSOCKETS
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "LIBWEBSOCKETS" \
"https://github.com/warmcat/libwebsockets"
#
# Build dependency: FreeRDP
#
FROM builder AS freerdp
ARG BUILD_DIR
ARG FREERDP_ARM_OPTS
ARG FREERDP_OPTS
ARG FREERDP_X86_OPTS
ARG PREFIX_DIR
ARG WITH_FREERDP
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "FREERDP" \
"https://github.com/FreeRDP/FreeRDP"
#
# STAGE 7: Collect dependencies built by previous stages and build
# guacamole-server.
#
FROM builder AS guacamole-server
ARG BUILD_DIR
ARG FREERDP_VERSION
ARG GUACAMOLE_SERVER_ARM_OPTS
ARG GUACAMOLE_SERVER_UNKNOWN_OPTS
ARG GUACAMOLE_SERVER_OPTS
ARG GUACAMOLE_SERVER_X86_OPTS
ARG PREFIX_DIR
ARG WITH_GUACAMOLE_SERVER
# Copy dependencies built in previous stages
COPY --from=freerdp ${PREFIX_DIR} ${PREFIX_DIR}
COPY --from=libssh2 ${PREFIX_DIR} ${PREFIX_DIR}
COPY --from=libtelnet ${PREFIX_DIR} ${PREFIX_DIR}
COPY --from=libvncclient ${PREFIX_DIR} ${PREFIX_DIR}
COPY --from=libwebsockets ${PREFIX_DIR} ${PREFIX_DIR}
# Use guacamole-server source from build context
COPY --from=builder ${BUILD_DIR} ${BUILD_DIR}
RUN ${BUILD_DIR}/src/guacd-docker/bin/autobuild.sh "GUACAMOLE_SERVER" "${BUILD_DIR}"
# Determine location of the FREERDP library based on the version.
ARG FREERDP_LIB_PATH=${PREFIX_DIR}/lib/freerdp${FREERDP_VERSION}
# 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 \
${FREERDP_LIB_PATH}/*guac*.so \
> ${PREFIX_DIR}/DEPENDENCIES
#
# STAGE 8: Final, runtime image.
#
# Use same Alpine version as the base for the runtime image
FROM alpine:${ALPINE_BASE_IMAGE} AS runtime
ARG PREFIX_DIR
ARG BUILD_DIR
# Copy build artifacts into this stage
COPY --from=guacamole-server ${PREFIX_DIR} ${PREFIX_DIR}
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
RUN cat ${PREFIX_DIR}/DEPENDENCIES
# Bring runtime environment up to date and install runtime dependencies
RUN apk add --no-cache \
ca-certificates \
font-noto-cjk \
ghostscript \
netcat-openbsd \
shadow \
terminus-font \
ttf-dejavu \
ttf-liberation \
util-linux-login && \
xargs apk add --no-cache < ${PREFIX_DIR}/DEPENDENCIES
# Runtime environment
ENV LC_ALL=C.UTF-8
ENV LD_LIBRARY_PATH=${PREFIX_DIR}/lib
# 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 with user guacd
USER guacd
# Expose the default listener port
EXPOSE 4822
COPY --from=guacamole-server ${BUILD_DIR}/src/guacd-docker/bin/entrypoint.sh /opt/guacamole/
#COPY
ENTRYPOINT [ "/opt/guacamole/entrypoint.sh" ]

View File

@@ -1,8 +1,8 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.9.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.4.0
LABEL maintainer="Yaoqi Wan wanyaoqi@yunionyun.com"
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/host /opt/yunion/bin/host

View File

@@ -1,9 +1,9 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base:1.5.11
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base:1.1
LABEL maintainer="Yaoqi Wan wanyaoqi@yunionyun.com"
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/host-deployer /opt/yunion/bin/host-deployer
ADD ./_output/centos-build/bin/host-deployer /opt/yunion/bin/host-deployer

View File

@@ -1,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/host-health /opt/yunion/bin/host-health

View File

@@ -1,6 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/host-image /opt/yunion/bin/host-image

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/keystone /opt/yunion/bin/keystone

View File

@@ -1,9 +1,4 @@
FROM alpine:3.22.2
ARG TARGETPLATFORM
ARG BUILDPLATFORM
ARG TARGETARCH
FROM alpine:3.11
RUN echo http://dl-cdn.alpinelinux.org/alpine/edge/testing >>/etc/apk/repositories
RUN apk update && apk add curl android-tools && rm -rf /var/cache/apk/*
RUN curl -L https://iso.yunion.cn/binaries/kubernetes-release/release/v1.22.9/bin/linux/${TARGETARCH}/kubectl -o /usr/bin/kubectl && chmod a+x /usr/bin/kubectl
RUN apk update && apk add kubectl && rm -rf /var/cache/apk/*

View File

@@ -1,8 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/lbagent-base:v0.0.5
LABEL maintainer="Yousong Zhou <zhouyousong@yunion.cn>"
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/lbagent /opt/yunion/bin/lbagent

View File

@@ -1,35 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/openvswitch:2.12.4-5
LABEL maintainer="Jian QIU <qiujian@yunion.cn>"
ENV TZ="UTC"
ENV GOPATH=/root/go
RUN sed -i 's!v3.20/!v3.22/!g' /etc/apk/repositories
RUN set -x \
&& apk update \
&& apk upgrade \
&& apk add --no-cache bash haproxy keepalived iptables \
&& apk add --no-cache --virtual .build-deps \
build-base \
make \
go \
git \
gcc \
libc-dev \
libgcc \
linux-headers
RUN set -x \
&& mkdir -p $GOPATH/src/github.com/yyyar $GOPATH/bin \
&& cd $GOPATH/src/github.com/yyyar \
&& git clone --depth 1 https://github.com/yyyar/gobetween.git \
&& cd gobetween \
&& make deps \
&& make build \
&& cp bin/gobetween /bin/gobetween \
&& rm -fr $GOPATH \
&& apk del .build-deps \
&& rm -rf /var/cache/apk/*

View File

@@ -1,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/llm /opt/yunion/bin/llm

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/logger /opt/yunion/bin/logger

View File

@@ -1,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/mcp-server /opt/yunion/bin/mcp-server

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
COPY ./build/monitor/root/opt/ /opt/
ADD ./_output/alpine-build/bin/monitor /opt/yunion/bin/monitor

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
COPY ./build/notify/root/opt/ /opt/
ADD ./_output/alpine-build/bin/notify /opt/yunion/bin/notify

View File

@@ -1,14 +1,14 @@
# TODO: use 3.14 will lead 'apk add qemu-img fail on arm64'
FROM alpine:3.22.1
FROM alpine:3.13.5
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
RUN apk update && \
apk add --no-cache tzdata curl busybox-extras tcpdump strace ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

View File

@@ -1,13 +0,0 @@
FROM alpine:3.15.4
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
RUN apk update && \
apk add --no-cache tzdata curl busybox-extras tcpdump strace ca-certificates && \
rm -rf /var/cache/apk/*

View File

@@ -1,13 +0,0 @@
FROM alpine:3.22.2
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
RUN apk update && \
apk add --no-cache tzdata curl busybox-extras tcpdump strace ca-certificates && \
rm -rf /var/cache/apk/*

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
COPY ./build/region/root/opt/ /opt/
ADD ./_output/alpine-build/bin/region /opt/yunion/bin/region

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/region-dns /opt/yunion/bin/region-dns

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/s3gateway /opt/yunion/bin/s3gateway

View File

@@ -1,3 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
ADD ./_output/alpine-build/bin/scheduledtask /opt/yunion/bin/scheduledtask

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/scheduler /opt/yunion/bin/scheduler

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/yunion-rootfs:v4.0.0-20251112.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/yunion-rootfs:v1.0
ADD ./_output/alpine-build/bin/telegraf-raid-plugin /opt/yunion/bin/telegraf-raid-plugin
ADD ./_output/centos-build/bin/telegraf-raid-plugin /opt/yunion/bin/telegraf-raid-plugin

View File

@@ -1,6 +1,10 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
LABEL maintainer="Zexi Li <zexi.li@icloud.com>"
MAINTAINER "Zexi Li <zexi.li@icloud.com>"
# HACK: use v3.14 alpine mirror to upgrade qemu-img
RUN echo http://dl-cdn.alpinelinux.org/alpine/v3.14/main > /etc/apk/repositories
RUN echo http://dl-cdn.alpinelinux.org/alpine/v3.14/community >> /etc/apk/repositories
RUN apk update && \
apk add --no-cache qemu-img && \

View File

@@ -1,7 +1,6 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/openvswitch:2.12.4-5
FROM registry.cn-beijing.aliyuncs.com/yunionio/openvswitch:2.10.5-1
LABEL maintainer="Yousong Zhou <zhouyousong@yunion.cn>"
MAINTAINER "Yousong Zhou <zhouyousong@yunion.cn>"
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/vpcagent /opt/yunion/bin/vpcagent

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/webconsole-base:3.22.2-1
FROM registry.cn-beijing.aliyuncs.com/yunionio/webconsole-base:v0.2
ADD ./_output/alpine-build/bin/webconsole /opt/yunion/bin/webconsole
ADD ./_output/alpine-build/bin/webconsole /opt/yunion/bin/webconsole

View File

@@ -1,10 +1,12 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/kubectl:3.22.2-1
FROM registry.cn-beijing.aliyuncs.com/yunionio/kubectl:1.18.6
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
RUN apk add --no-cache sshpass ipmitool openssh-client tzdata ca-certificates bash && \
RUN apk add --no-cache sshpass ipmitool openssh-client tzdata ca-certificates && \
rm -rf /var/cache/apk/*
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

View File

@@ -1,3 +1,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
ADD ./_output/alpine-build/bin/yunionconf /opt/yunion/bin/yunionconf

View File

@@ -1,83 +1,35 @@
REGISTRY ?= "registry.cn-beijing.aliyuncs.com/yunionio"
DOCKER_BUILD = docker build -t $(REGISTRY)
DOCKER_BUILDX = docker buildx build --platform linux/arm64,linux/amd64,linux/riscv64 --push -t $(REGISTRY)
DOCKER_BUILDX_BM = docker buildx build --platform linux/arm64,linux/amd64 --push -t $(REGISTRY)
DOCKER_BUILDX = docker buildx build --platform linux/arm64,linux/amd64 --push -t $(REGISTRY)
debian10-base:
docker buildx build --platform linux/arm64,linux/amd64 --push \
-t registry.cn-beijing.aliyuncs.com/yunionio/debian10-base:1.0 -f ./Dockerfile.debian-base .
ONECLOUD_BASE_VERSION = v0.3-3.13.5
ONECLOUD_BASE_VERSION_3-15-4 = v3.15.4-0
ONECLOUD_BASE_VERSION_3-22-2 = 3.22.2-0
ONECLOUD_BASE_VERSION = v0.3.5
onecloud-base:
$(DOCKER_BUILDX)/onecloud-base:$(ONECLOUD_BASE_VERSION) -f ./Dockerfile.onecloud-base .
onecloud-base-3-15-4:
$(DOCKER_BUILDX)/onecloud-base:$(ONECLOUD_BASE_VERSION_3-15-4) -f ./Dockerfile.onecloud-base-3-15-4 .
onecloud-base-3-22-2:
$(DOCKER_BUILDX)/onecloud-base:$(ONECLOUD_BASE_VERSION_3-22-2) -f ./Dockerfile.onecloud-base-3-22-2 .
ANSIBLESERVER_BASE = 3.22.2-0
ANSIBLESERVER_BASE = v1.0.5
ansibleserver-base:
$(DOCKER_BUILDX)/ansibleserver-base:$(ANSIBLESERVER_BASE) -f ./Dockerfile.ansibleserver-base .
CLIMC_BASE_VERSION = 20230731.5
CLIMC_BASE_VERSION_3-22-2 = 3.22.2-2
CLIMC_BASE_VERSION = 20210901
climc-base:
$(DOCKER_BUILDX)/climc-base:$(CLIMC_BASE_VERSION) -f ./Dockerfile.climc-base .
docker buildx build --platform linux/arm64,linux/amd64 --push \
-t registry.cn-beijing.aliyuncs.com/yunionio/climc-base:$(CLIMC_BASE_VERSION) -f ./Dockerfile.climc-base .
climc-base-3-22-2:
$(DOCKER_BUILDX)/climc-base:$(CLIMC_BASE_VERSION_3-22-2) -f ./Dockerfile.climc-base-3-22-2 .
BAREMETAL_BASE_VERSION = v0.3.3
KUBECTL_VERSION_3-22-2 = 3.22.2-1
kubectl:
$(DOCKER_BUILDX)/kubectl:$(KUBECTL_VERSION_3-22-2) -f ./Dockerfile.kubectl .
WEBCONSOLE_BASE_VERSION_3-22-2 = 3.22.2-1
webconsole-base:
$(DOCKER_BUILDX)/webconsole-base:$(WEBCONSOLE_BASE_VERSION_3-22-2) -f ./Dockerfile.webconsole-base .
BAREMETAL_BASE_VERSION = v0.3.9-20260724.0
FEDORA_RISCV64_VERSION = 42
fedora-riscv64-base:
wget -q https://dl.fedoraproject.org/pub/alt/risc-v/release/$(FEDORA_RISCV64_VERSION)/Container/riscv64/images/Fedora-Container-Base-Generic-$(FEDORA_RISCV64_VERSION).20250414-8635a3a5bfcd.riscv64.oci.tar.xz && \
xz -d Fedora-Container-Base-Generic-$(FEDORA_RISCV64_VERSION).20250414-8635a3a5bfcd.riscv64.oci.tar.xz && \
skopeo copy oci-archive:Fedora-Container-Base-Generic-$(FEDORA_RISCV64_VERSION).20250414-8635a3a5bfcd.riscv64.oci.tar docker-daemon:fedora-riscv64:$(FEDORA_RISCV64_VERSION) && \
rm -f Fedora-Container-Base-Generic-$(FEDORA_RISCV64_VERSION).20250414-8635a3a5bfcd.riscv64.oci.tar
baremetal-base-riscv: fedora-riscv64-base
$(DOCKER_BUILDX)/baremetal-base:$(BAREMETAL_BASE_VERSION) -f ./Dockerfile.baremetal-base-riscv .
#docker push $(REGISTRY)/baremetal-base:$(BAREMETAL_BASE_VERSION)
# TODO: support riscv64 for baremetal-base
baremetal-base:
$(DOCKER_BUILDX_BM)/baremetal-base:$(BAREMETAL_BASE_VERSION) -f ./Dockerfile.baremetal-base .
$(DOCKER_BUILDX)/baremetal-base:$(BAREMETAL_BASE_VERSION) -f ./Dockerfile.baremetal-base .
#docker push $(REGISTRY)/baremetal-base:$(BAREMETAL_BASE_VERSION)
TORRENT_VERSION = 20210815.0
TORRENT_VERSION_3-22-2 = 3.22.2-0
torrent:
$(DOCKER_BUILDX)/torrent:$(TORRENT_VERSION) -f ./Dockerfile.torrent .
GLANCE_BASE_VERSION = v0.0.1
GLANCE_BASE_VERSION_3-22-2 = 3.22.2-0
glance-base:
$(DOCKER_BUILDX)/glance-base:$(GLANCE_BASE_VERSION) -f ./Dockerfile.glance-base .
glance-base-3-22-2:
$(DOCKER_BUILDX)/glance-base:$(GLANCE_BASE_VERSION_3-22-2) -f ./Dockerfile.glance-base .
LBAGENT_BASE_VERSION = v0.0.5
lbagent-base:
$(DOCKER_BUILDX)/lbagent-base:$(LBAGENT_BASE_VERSION) -f ./Dockerfile.lbagent-base .
GUACD_VERSION=1.6.0
guacd:
$(DOCKER_BUILDX)/guacd:$(GUACD_VERSION) -f ./Dockerfile.guacd .
FILE_REPO_VERSION = v0.3.3
file-repo:
$(DOCKER_BUILDX)/file-repo:$(FILE_REPO_VERSION) -f ./Dockerfile.file-repo .

View File

@@ -1,17 +0,0 @@
#!/bin/bash
set -e
BASHRC=/root/.bashrc
source $BASHRC
climc sshkeypair-inject --admin
mkdir -p /etc/dropbear
mkdir -p /var/run/dropbear
dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
dropbear -RFEjk -G root -p 22

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:3.22.2-go-1.24.9-0 AS build
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:1.0-5 as build
ARG TARGETPLATFORM
ARG BUILDPLATFORM
RUN mkdir -p /root/go/src/yunion.io/x/onecloud
@@ -7,11 +7,11 @@ COPY . /root/go/src/yunion.io/x/onecloud
WORKDIR /root/go/src/yunion.io/x/onecloud
RUN make cmd/host
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.9.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.4.0
LABEL maintainer="Yaoqi Wan wanyaoqi@yunionyun.com"
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN mkdir -p /opt/yunion/bin
COPY --from=build /root/go/src/yunion.io/x/onecloud/_output/bin/host /opt/yunion/bin/host

View File

@@ -1,4 +1,4 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:3.22.2-go-1.24.9-0 AS build
FROM registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:1.0-5 as build
ARG TARGETPLATFORM
ARG BUILDPLATFORM
@@ -6,11 +6,13 @@ RUN mkdir -p /root/go/src/yunion.io/x/onecloud
COPY . /root/go/src/yunion.io/x/onecloud
RUN cd /root/go/src/yunion.io/x/onecloud && make cmd/torrent
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
LABEL maintainer="Zexi Li <zexi.li@icloud.com>"
MAINTAINER "Zexi Li <zexi.li@icloud.com>"
RUN sed -i 's!https://dl-cdn.alpinelinux.org/!https://mirrors.ustc.edu.cn/!g' /etc/apk/repositories
# HACK: use v3.14 alpine mirror to upgrade qemu-img
RUN echo http://dl-cdn.alpinelinux.org/alpine/v3.14/main > /etc/apk/repositories
RUN echo http://dl-cdn.alpinelinux.org/alpine/v3.14/community >> /etc/apk/repositories
RUN apk update && \
apk add --no-cache qemu-img && \

View File

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

View File

@@ -1,5 +1,5 @@
DESCRIPTION="Yunion Cloud Image Service"
REQUIRES=(
yunion-qemu-4.2.0
yunion-qemu-2.12.1
)

View File

@@ -1 +0,0 @@
DESCRIPTION="Memclean Utility"

View File

@@ -1,9 +1,9 @@
{{.title}}
策略名称: {{.name}}
触发时间: {{.start_time}}
报警级别: {{.level}}
触发条件: {{.description | unescaped}}
{{if .reason}}报警原因: {{.reason}}
{{end}}报警数量:{{len .matches}}
资源数量:{{len .matches}}
资源名称:{{.resource_name}}
详情地址: {{.web_url}}

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