Compare commits

..

551 Commits

Author SHA1 Message Date
Zexi Li
301006e213 Merge pull request #8331 from ioito/automated-cherry-pick-of-#8330-upstream-release-3.4
Automated cherry pick of #8330: fix: hostname for instance
2020-10-16 17:43:22 +08:00
Qu Xuan
950a2c29fb fix: hostname for instance 2020-10-16 17:12:40 +08:00
yunion-ci-robot
558872db27 Merge pull request #8324 from zhasm/automated-cherry-pick-of-#8323-upstream-release-3.4
Automated cherry pick of #8323: remove alpine build cache before make image
2020-10-16 15:14:46 +08:00
yunion-ci-robot
6386391bf4 Merge pull request #8327 from zexi/automated-cherry-pick-of-#8326-upstream-release-3.4
Automated cherry pick of #8326: fix: get images distinct field
2020-10-16 14:35:40 +08:00
Zexi Li
d298c75448 fix: get images distinct field 2020-10-16 12:01:01 +08:00
Zhang Dongliang
28cb75f41b remove alpine build cache before make image 2020-10-16 12:00:10 +08:00
yunion-ci-robot
560a68d379 Merge pull request #8320 from swordqiu/automated-cherry-pick-of-#8319-upstream-release-3.4
Automated cherry pick of #8319: fix: resolve with_meta filter conflict
2020-10-16 11:39:33 +08:00
yunion-ci-robot
9e597db90a Merge pull request #8315 from rainzm/automated-cherry-pick-of-#8314-upstream-release-3.4
Automated cherry pick of #8314: feat(esxi): do not specify portkey in NewVNIC
2020-10-16 10:38:34 +08:00
Qiu Jian
9c9cb17d32 fix: resolve with_meta filter conflict 2020-10-16 10:34:04 +08:00
rainzm
cc96c01c00 feat(esxi): do not specify portkey in NewVNIC 2020-10-16 08:22:58 +08:00
yunion-ci-robot
cb22077722 Merge pull request #8313 from swordqiu/automated-cherry-pick-of-#8312-upstream-release-3.4
Automated cherry pick of #8312: feature: filter storages by image
2020-10-15 23:10:33 +08:00
yunion-ci-robot
8e3c173373 Merge pull request #8309 from ioito/automated-cherry-pick-of-#8308-upstream-release-3.4
Automated cherry pick of #8308: fix: 避免并发同步安全组导致规则混乱
2020-10-15 23:02:32 +08:00
Qiu Jian
45e092bd2d feature: filter storages by image 2020-10-15 22:57:13 +08:00
Qu Xuan
4b2d67de42 fix: 避免并发同步安全组导致规则混乱 2020-10-15 22:26:54 +08:00
yunion-ci-robot
6677c30a5d Merge pull request #8306 from zexi/automated-cherry-pick-of-#8305-upstream-release-3.4
Automated cherry pick of #8305: stringutils2: add RemoveUtf8Strings func
2020-10-15 21:46:36 +08:00
Zexi Li
64593fc882 stringutils2: add RemoveUtf8Strings func 2020-10-15 19:37:00 +08:00
Zexi Li
0d7e1a2517 Merge pull request #8303 from swordqiu/automated-cherry-pick-of-#8302-upstream-release-3.4
Automated cherry pick of #8302: fix: allwo filter resource by with-meta and with-user-meta filter
2020-10-15 15:17:18 +08:00
Zexi Li
6fc835abb9 Merge pull request #8300 from ioito/automated-cherry-pick-of-#8299-upstream-release-3.4
Automated cherry pick of #8299: fix: support filter rds sku by provider
2020-10-15 15:16:04 +08:00
Zexi Li
44a9cc5adb Merge pull request #8293 from lvyangyang/automated-cherry-pick-of-#8289-upstream-release-3.4
Automated cherry pick of #8289: fix:openstack lb 后端ip无法映射到主机的异常处理
2020-10-15 15:15:09 +08:00
Qiu Jian
ff2b7eb345 fix: allwo filter resource by with-meta and with-user-meta filter 2020-10-15 14:46:48 +08:00
Qu Xuan
7b5d822373 fix: support filter rds sku by provider 2020-10-15 14:29:59 +08:00
yunion-ci-robot
f5a45fc16e Merge pull request #8298 from swordqiu/automated-cherry-pick-of-#8297-upstream-release-3.4
Automated cherry pick of #8297: fix: filter role assignments by project domains id or name
2020-10-15 14:24:33 +08:00
yunion-ci-robot
a583bbc74b Merge pull request #8295 from ioito/automated-cherry-pick-of-#8294-upstream-release-3.4
Automated cherry pick of #8294: fix: use new api
2020-10-15 14:22:37 +08:00
yunion-ci-robot
ece82cce42 Merge pull request #8266 from rainzm/automated-cherry-pick-of-#8265-upstream-release-3.4
Automated cherry pick of #8265: feat(esxiagent): sync and use of ESXi template
2020-10-15 13:14:31 +08:00
Qiu Jian
8042b9430c fix: filter project role with system=true 2020-10-15 13:10:54 +08:00
Qiu Jian
d1cbaead09 fix: filter role assignments by project domains id or name 2020-10-15 13:10:54 +08:00
Qu Xuan
1768d1e7db fix: use new api 2020-10-15 11:32:56 +08:00
rainzm
ff34e93862 feat: add 'vlan_id' param when creating network 2020-10-15 10:50:25 +08:00
rainzm
a891d1d876 feat: change templateid as <providerId>/<uuid> in esxi 2020-10-15 10:50:25 +08:00
Rain
c7d6bb7811 fix: support fake tempalte when searching template vm 2020-10-15 10:50:25 +08:00
rainzm
2076a75113 fix(esxiagent): check whether regexp is nil 2020-10-15 10:50:25 +08:00
rainzm
5d0d6d960b feat(esxiagent): keep data disks when cloning vm 2020-10-15 10:50:25 +08:00
lvyangyang
cf89e8a23a fix:openstack lb 后端ip无法映射到主机的异常处理 2020-10-15 10:09:53 +08:00
yunion-ci-robot
45994b59d5 Merge pull request #8291 from ioito/automated-cherry-pick-of-#8290-upstream-release-3.4
Automated cherry pick of #8290: fix: 优化安全组规则同步
2020-10-15 09:10:33 +08:00
Qu Xuan
d2d2934e80 fix: 优化安全组规则同步 2020-10-14 21:19:15 +08:00
yunion-ci-robot
0ec0c8e703 Merge pull request #8286 from lvyangyang/automated-cherry-pick-of-#8275-upstream-release-3.4
Automated cherry pick of #8275: fix:aliyun jsonRequest 增加i/o timeout retry
2020-10-14 17:53:30 +08:00
yunion-ci-robot
3347d6c1e1 Merge pull request #8285 from swordqiu/automated-cherry-pick-of-#8284-upstream-release-3.4
Automated cherry pick of #8284: feature: qcloud create VM with tags
2020-10-14 17:52:29 +08:00
yunion-ci-robot
dce9d5e4a1 Merge pull request #8288 from wanyaoqi/automated-cherry-pick-of-#8287-upstream-release-3.4
Automated cherry pick of #8287: make mode
2020-10-14 16:52:33 +08:00
Qiu Jian
ef9b64990e feature: qcloud create VM with tags 2020-10-14 15:22:30 +08:00
wanyaoqi
f19fe2178c replace NewFloat by NewFloat64 and NewFloat32 2020-10-14 11:56:49 +08:00
wanyaoqi
2265c9422f make mode 2020-10-14 11:56:49 +08:00
yunion-ci-robot
cf3717557a Merge pull request #8282 from ioito/automated-cherry-pick-of-#8281-upstream-release-3.4
Automated cherry pick of #8281: fix: sync huawei bucket project info
2020-10-14 10:51:30 +08:00
yunion-ci-robot
0bbdcb9278 Merge pull request #8280 from ioito/automated-cherry-pick-of-#8264-upstream-release-3.4
Automated cherry pick of #8264: fix: support public ip create
2020-10-14 10:50:30 +08:00
lvyangyang
d72081770e fix:aliyun jsonRequest 增加i/o timeout retry 2020-10-14 10:48:50 +08:00
yunion-ci-robot
0f874d8f07 Merge pull request #8254 from ioito/automated-cherry-pick-of-#8253-upstream-release-3.4
Automated cherry pick of #8253: fix: qcloud eip with bandwidth attr
2020-10-14 10:44:30 +08:00
yunion-ci-robot
dd5dd15a76 Merge pull request #8241 from wanyaoqi/automated-cherry-pick-of-#8231-upstream-release-3.4
Automated cherry pick of #8231: add interface freeze virtual resource
2020-10-14 10:42:30 +08:00
Qu Xuan
cb36572c1c fix: sync huawei bucket project info 2020-10-13 20:55:39 +08:00
Qu Xuan
2a210407a5 fix: support public ip create 2020-10-13 20:01:01 +08:00
Zexi Li
82c59154c5 Merge pull request #8268 from ioito/automated-cherry-pick-of-#8267-upstream-release-3.4
Automated cherry pick of #8267: fix: trans google new region name
2020-10-13 17:34:44 +08:00
Zexi Li
041ee6f904 Merge pull request #8271 from ioito/automated-cherry-pick-of-#8270-upstream-release-3.4
Automated cherry pick of #8270: fix: 支持带宽包用户
2020-10-13 17:34:35 +08:00
yunion-ci-robot
4317fac6da Merge pull request #8279 from wanyaoqi/automated-cherry-pick-of-#8278-upstream-release-3.4
Automated cherry pick of #8278: fix host-deployer base image
2020-10-13 17:04:29 +08:00
yunion-ci-robot
a022f99851 Merge pull request #8277 from zhasm/automated-cherry-pick-of-#8276-upstream-release-3.4
Automated cherry pick of #8276: 在 docker push 脚本里创建_output 目录,以便容错
2020-10-13 17:01:30 +08:00
wanyaoqi
407251975e fix host-deployer base image 2020-10-13 16:59:24 +08:00
Zhang Dongliang
b7fd879e44 在 docker push 脚本里创建_output 目录,以便容错 2020-10-13 16:47:33 +08:00
yunion-ci-robot
0a7ccbe958 Merge pull request #8274 from zhasm/automated-cherry-pick-of-#8273-upstream-release-3.4
Automated cherry pick of #8273: 在 docker push 脚本里创建_output 目录,以便容错
2020-10-13 16:18:31 +08:00
Zhang Dongliang
7efb85ba04 在 docker push 脚本里创建_output 目录,以便容错 2020-10-13 15:37:25 +08:00
Qu Xuan
84e8e4e6c8 fix: 支持带宽包用户 2020-10-13 15:34:03 +08:00
Qu Xuan
3fe15d2675 fix: trans google new region name 2020-10-13 14:18:09 +08:00
Qu Xuan
d574a823ba fix: qcloud eip with bandwidth attr 2020-10-13 10:42:25 +08:00
yunion-ci-robot
a2c8ad13ab Merge pull request #8191 from ioito/automated-cherry-pick-of-#8188-upstream-release-3.4
Automated cherry pick of #8188: fix: avoid qcloud secgroup cache name not sync
2020-10-13 10:41:31 +08:00
yunion-ci-robot
de8f57f625 Merge pull request #8243 from zexi/automated-cherry-pick-of-#8242-upstream-release-3.4
Automated cherry pick of #8242: baremetal: fix pxe filter network by guest_dhcp
2020-10-13 10:32:29 +08:00
Zexi Li
658159b18e Merge pull request #8229 from yousong/automated-cherry-pick-of-#8228-upstream-release-3.4
Automated cherry pick of #8228: eip: construct a pointer type
2020-10-13 10:13:49 +08:00
Zexi Li
67cc7b8747 Merge pull request #8259 from rainzm/automated-cherry-pick-of-#8232-upstream-release-3.4
Automated cherry pick of #8232: fix(esxi): search template from whole vCenter
2020-10-13 10:06:22 +08:00
Zexi Li
ce694ff638 Merge pull request #8247 from swordqiu/automated-cherry-pick-of-#8246-upstream-release-3.4
Automated cherry pick of #8246: fix: project_id in resource details not correct
2020-10-13 10:00:34 +08:00
Zexi Li
98702c2470 Merge pull request #8249 from ioito/automated-cherry-pick-of-#8248-upstream-release-3.4
Automated cherry pick of #8248: fix: qcloud instance with max bandwidth
2020-10-13 09:58:37 +08:00
yunion-ci-robot
9ac5265c07 Merge pull request #8257 from zhasm/automated-cherry-pick-of-#8256-upstream-release-3.4
Automated cherry pick of #8256: 解决编译之后 output 的 owerner 问题
2020-10-12 19:24:28 +08:00
Yousong Zhou
896bec8f43 eip: NewEipForVMOnHost: add opslog 2020-10-12 18:39:17 +08:00
Yousong Zhou
a8426482bf eip: construct a pointer type 2020-10-12 18:39:17 +08:00
Zhang Dongliang
d7316b26aa resolve conflict 2020-10-12 18:12:41 +08:00
rainzm
d16affc9a6 fix(esxi): use system disk of template only when cloning vm
1. Create a driver if necessary.
2. After cloning the virtual machine, remove all data disks.
3. Create new data disks.
2020-10-12 17:46:38 +08:00
rainzm
2259fe1195 fix(esxi): search template from whole vCenter 2020-10-12 17:46:38 +08:00
yunion-ci-robot
09e37de117 Merge pull request #8251 from swordqiu/automated-cherry-pick-of-#8237-upstream-release-3.4
Automated cherry pick of #8237: fix: format errors that block make test
2020-10-12 16:09:22 +08:00
Qu Xuan
715db28e3e fix: qcloud instance with max bandwidth 2020-10-12 15:09:09 +08:00
Qiu Jian
152ea54f36 fix: format errors that block make test 2020-10-12 15:06:44 +08:00
yunion-ci-robot
865b433bb0 Merge pull request #8236 from swordqiu/automated-cherry-pick-of-#8235-upstream-release-3.4
Automated cherry pick of #8235: fix: not clean pending domain usage
2020-10-12 15:04:21 +08:00
yunion-ci-robot
f04a37d0a3 Merge pull request #8233 from rainzm/automated-cherry-pick-of-#8126-upstream-release-3.4
Automated cherry pick of #8126: Feats for ESXi Manage
2020-10-12 15:02:18 +08:00
rainzm
7edcd151e3 feat: add vlanId for suggested network 2020-10-12 14:25:05 +08:00
rainzm
df90d99bc5 feat(esxi): support fake template vm via regex filter 2020-10-12 14:25:05 +08:00
rainzm
552ce3b2ea feat: filter esxi ip by CIDR 2020-10-12 14:25:05 +08:00
rainzm
91c852676a feat(region): make address recommendations more precise
1. 虚拟机的网络推荐不再是一整个C段网络,而是存在的连续IP组成的网段,
这样更准确,用户可以根据自己的需要,合并或者扩充建议的网段
2. 使用 DefaultNetworkGatewayAddressEsxi 来配置子网默认的网关地址。
2020-10-12 14:25:05 +08:00
rainzm
8528d79817 feat: add 'ip-list' for esxicli 2020-10-12 14:25:05 +08:00
Qiu Jian
d2aacafa4c fix: project_id in resource details not correct 2020-10-12 14:20:22 +08:00
yunion-ci-robot
8714503087 Merge pull request #8239 from swordqiu/automated-cherry-pick-of-#8238-upstream-release-3.4
Automated cherry pick of #8238: fix: ldap sync not update user's phone and email
2020-10-12 11:54:19 +08:00
Zexi Li
d0d3d8e333 baremetal: fix pxe filter network by guest_dhcp 2020-10-12 11:36:56 +08:00
wanyaoqi
dee1aa26dc genreate api models 2020-10-12 10:45:50 +08:00
wanyaoqi
c973bf1632 add interface freeze virtual resource 2020-10-12 10:45:50 +08:00
Qiu Jian
1aa82ae950 fix: ldap sync not update user's phone and email 2020-10-11 05:44:53 +08:00
Qiu Jian
488e7e56a6 fix: not clean pending domain usage 2020-10-11 04:37:04 +08:00
yunion-ci-robot
6a2ebdc123 Merge pull request #8195 from rainzm/automated-cherry-pick-of-#8194-upstream-release-3.4
Automated cherry pick of #8194: fix(esxi): check nil value when NewVirtualMachine
2020-10-10 19:10:17 +08:00
yunion-ci-robot
4105284718 Merge pull request #8217 from tb365/automated-cherry-pick-of-#8214-upstream-release-3.4
Automated cherry pick of #8214: remove aws lbbg cache metedata
2020-10-10 18:55:20 +08:00
yunion-ci-robot
ac5f29bc0c Merge pull request #8226 from zhaoxiangchun/automated-cherry-pick-of-#8213-upstream-release-3.4
Automated cherry pick of #8213: bugfix:scoperesource FilterByOwner
2020-10-10 17:11:18 +08:00
zhaoxiangchun
58d52d947c Add web url to alarm template 2020-10-10 16:24:29 +08:00
zhaoxiangchun
c5ef564d35 bugfix:scoperesource FilterByOwner
1.调度标签 和 优化建议 FilterByOwner 逻辑调整
2020-10-10 16:24:29 +08:00
yunion-ci-robot
1cacf1068f Merge pull request #8219 from yousong/automated-cherry-pick-of-#8218-upstream-release-3.4
Automated cherry pick of #8218: webconsole: ssh: each argument on its own line
2020-10-10 15:34:49 +08:00
Yousong Zhou
63b0d0c071 webconsole: ssh: add keyboard-interactive as an option
For ESXi 6.0

  Authentications that can continue: publickey,keyboard-interactive
2020-10-10 14:43:39 +08:00
Yousong Zhou
39a45229af webconsole: ssh: each argument on its own line 2020-10-10 14:43:39 +08:00
TangBin
e82cf184f1 remove aws lbbg cache metedata 2020-10-10 14:28:27 +08:00
yunion-ci-robot
afa16944c0 Merge pull request #8211 from ioito/automated-cherry-pick-of-#8210-upstream-release-3.4
Automated cherry pick of #8210: fix: validate secgroup purge condition
2020-10-10 14:02:15 +08:00
yunion-ci-robot
8f953e41da Merge pull request #8200 from rainzm/automated-cherry-pick-of-#8199-upstream-release-3.4
Automated cherry pick of #8199: fix(esxi): check whether some fields of vm are nil
2020-10-10 12:53:09 +08:00
yunion-ci-robot
6e0180656d Merge pull request #8208 from ioito/automated-cherry-pick-of-#8207-upstream-release-3.4
Automated cherry pick of #8207: fix: qcloud set hostname for instance
2020-10-10 12:08:09 +08:00
yunion-ci-robot
718bf0d537 Merge pull request #8184 from yousong/automated-cherry-pick-of-#8183-upstream-release-3.4
Automated cherry pick of #8183: vpcagent: ovn: increase dhcp lease, renew, rebind time
2020-10-10 11:56:13 +08:00
Qu Xuan
9fbd4f0599 fix: validate secgroup purge condition 2020-10-10 11:54:38 +08:00
rainzm
078b1d635a fix: avoid slice out of bounds 2020-10-10 11:52:06 +08:00
rainzm
b8e0599e3f fix(esxi): filter linkLocalAddress 2020-10-10 11:52:06 +08:00
rainzm
27bd564d2d fix(esxi): check whether some fields of vm are nil 2020-10-10 11:52:06 +08:00
Qu Xuan
5b79ba5607 fix: qcloud set hostname for instance 2020-10-10 11:41:15 +08:00
yunion-ci-robot
c9d20d13f1 Merge pull request #8206 from swordqiu/automated-cherry-pick-of-#8205-upstream-release-3.4
Automated cherry pick of #8205: fix: filter cached images with host schedtag
2020-10-10 11:35:09 +08:00
yunion-ci-robot
779d4a9acf Merge pull request #8203 from swordqiu/automated-cherry-pick-of-#8202-upstream-release-3.4
Automated cherry pick of #8202: fix: server name auto index should start from 1
2020-10-10 11:35:04 +08:00
rainzm
1bc4b3cb90 fix(esxi): check nil value when NewVirtualMachine 2020-10-10 11:24:12 +08:00
Qiu Jian
49887e540a fix: filter cached images with host schedtag 2020-10-10 06:57:57 +08:00
Qiu Jian
7ce0d7b44b fix: server name auto index should start from 1 2020-10-10 06:26:31 +08:00
Qu Xuan
e8d737ff6c fix: avoid qcloud secgroup cache name not sync 2020-10-09 14:58:10 +08:00
yunion-ci-robot
fd954efcf2 Merge pull request #8177 from zhaoxiangchun/automated-cherry-pick-of-#8176-upstream-release-3.4
Automated cherry pick of #8176: modify suggest rule cli
2020-10-09 10:35:01 +08:00
Yousong Zhou
e9415ae49e vpcagent: ovn: increase dhcp lease, renew, rebind time 2020-10-09 10:24:55 +08:00
yunion-ci-robot
5b0afbdc6b Merge pull request #8179 from swordqiu/automated-cherry-pick-of-#8178-upstream-release-3.4
Automated cherry pick of #8178: fix: error code of external bucket not found error should be 404
2020-10-09 09:13:00 +08:00
yunion-ci-robot
ec393a6e3c Merge pull request #8182 from swordqiu/automated-cherry-pick-of-#8181-upstream-release-3.4
Automated cherry pick of #8181: hotfix: 1. allow merge networks without continuous addresses 2. filter guest_ip_start and guest_ip_end with contains operator
2020-10-09 09:09:00 +08:00
Qiu Jian
adccad3487 hotfix: 1. allow merge networks without continuous addresses 2. filter guest_ip_start and guest_ip_end with contains operator 2020-10-07 23:32:32 +08:00
Qiu Jian
76f794d1a2 fix: error code of external bucket not found error should be 404 2020-09-30 18:01:44 +08:00
zhaoxiangchun
bba2cf23fd modify suggest rule cli
1.增加perform config方法,方便修改默认规则:执行周期,扫描窗口的属性
2020-09-30 17:18:18 +08:00
yunion-ci-robot
b8f8c3bae4 Merge pull request #8174 from yousong/automated-cherry-pick-of-#8173-upstream-release-3.4
Automated cherry pick of #8173: dns: isMyDomain: match only strict subdomain of dns_domain
2020-09-30 16:31:49 +08:00
yunion-ci-robot
7f3c0103d0 Merge pull request #8167 from lvyangyang/automated-cherry-pick-of-#8153-upstream-release-3.4
Automated cherry pick of #8153: fix:允许cname record通过policy多值
2020-09-30 16:30:46 +08:00
yunion-ci-robot
499ddeba32 Merge pull request #8169 from swordqiu/automated-cherry-pick-of-#8168-upstream-release-3.4
Automated cherry pick of #8168: fix: emulated wire not sync vpc shared info
2020-09-30 16:17:47 +08:00
Yousong Zhou
7e191a503c dns: isMyDomain: match only strict subdomain of dns_domain 2020-09-30 16:15:59 +08:00
yunion-ci-robot
94eb72fb3c Merge pull request #8172 from ioito/automated-cherry-pick-of-#8171-upstream-release-3.4
Automated cherry pick of #8171: fix: 允许域管理员可以看到共享的dns zone cache列表
2020-09-30 16:13:47 +08:00
Qu Xuan
02bcce195c fix: 允许域管理员可以看到共享的dns zone cache列表 2020-09-30 15:57:51 +08:00
Qiu Jian
5c4423bcbe fix: emulated wire not sync vpc shared info 2020-09-30 15:54:34 +08:00
lvyangyang
9b7fbf33b8 fix:允许cname record通过policy多值 2020-09-30 15:50:13 +08:00
yunion-ci-robot
a7a8ad1931 Merge pull request #8164 from swordqiu/automated-cherry-pick-of-#8163-upstream-release-3.4
Automated cherry pick of #8163: fix: oidc response user's info
2020-09-30 12:11:46 +08:00
yunion-ci-robot
6c8b30e1be Merge pull request #8166 from swordqiu/automated-cherry-pick-of-#8165-upstream-release-3.4
Automated cherry pick of #8165: fix: revert filter-by-owner changes of scoped resource
2020-09-30 12:07:51 +08:00
Qiu Jian
8cdab93c15 fix: oidc response user's info 2020-09-30 11:57:21 +08:00
Qiu Jian
8a28d26271 fix: revert filter-by-owner changes of scoped resource 2020-09-30 11:34:56 +08:00
yunion-ci-robot
29fa258c6e Merge pull request #8162 from tb365/automated-cherry-pick-of-#8159-upstream-release-3.4
Automated cherry pick of #8159: aliyun public elb region fix
2020-09-29 23:28:41 +08:00
TangBin
7a61d77b06 aliyun public elb region fix 2020-09-29 22:05:47 +08:00
yunion-ci-robot
552dd2bfd1 Merge pull request #8148 from lvyangyang/automated-cherry-pick-of-#8145-upstream-release-3.4
Automated cherry pick of #8145: fix:forbid top level public domain name
2020-09-29 20:21:36 +08:00
yunion-ci-robot
60c42975a8 Merge pull request #8158 from zhaoxiangchun/automated-cherry-pick-of-#8076-upstream-release-3.4
Automated cherry pick of #8076: bugfix:commonalert
2020-09-29 19:17:34 +08:00
yunion-ci-robot
ad53ddd84b Merge pull request #8157 from tb365/automated-cherry-pick-of-#8154-upstream-release-3.4
Automated cherry pick of #8154: aliyun public elb brand fix
2020-09-29 18:19:33 +08:00
zhaoxiangchun
e87d2c0e86 bugfix commalert 3.4
1.后端先隐藏rds,redis,oss等相关信息
2.报警通知中规则描述增加单位信息
3.调整优化建议规则相关逻辑
2020-09-29 18:14:05 +08:00
zhaoxiangchun
a9c95cf363 bugfix:commonalert
1.suggestrule cli 调整
2020-09-29 18:14:05 +08:00
TangBin
540f4631f4 aliyun public elb brand fix 2020-09-29 16:49:41 +08:00
yunion-ci-robot
6db3ec81ea Merge pull request #8150 from ioito/automated-cherry-pick-of-#8149-upstream-release-3.4
Automated cherry pick of #8149: fix: allow domain admin view shared dns zone records
2020-09-29 12:23:33 +08:00
yunion-ci-robot
abc2be7e5e Merge pull request #8147 from ioito/automated-cherry-pick-of-#8146-upstream-release-3.4
Automated cherry pick of #8146: fix: avoid sync dns zone cache status is init
2020-09-29 12:20:34 +08:00
Qu Xuan
b0e1d0de23 fix: allow domain admin view shared dns zone records 2020-09-29 11:20:35 +08:00
lvyangyang
fba8349e84 fix:forbid top level public domain name 2020-09-29 11:04:10 +08:00
yunion-ci-robot
9bd70e3cb6 Merge pull request #8102 from rainzm/automated-cherry-pick-of-#8101-upstream-release-3.4
Automated cherry pick of #8101: fix(region): set ownerId as userCred when can't FetchOwnerId
2020-09-29 10:41:39 +08:00
Qu Xuan
f931deb41f fix: avoid sync dns zone cache status is init 2020-09-29 10:39:54 +08:00
yunion-ci-robot
324e7435ac Merge pull request #8144 from zexi/automated-cherry-pick-of-#8143-upstream-release-3.4
Automated cherry pick of #8143: mcclient modules: fix k8s fed rolebinding joint wrong resource manager
2020-09-29 10:35:36 +08:00
Zexi Li
1a1d7c70ad mcclient modules: fix k8s fed rolebinding joint wrong resource manager 2020-09-29 08:28:05 +08:00
yunion-ci-robot
3a773f87d3 Merge pull request #8142 from swordqiu/automated-cherry-pick-of-#8141-upstream-release-3.4
Automated cherry pick of #8141: fix: filter storages by host schedtag
2020-09-29 01:20:35 +08:00
Qiu Jian
11ea89795a fix: filter storages by host schedtag 2020-09-29 00:20:26 +08:00
yunion-ci-robot
288b9e02af Merge pull request #8140 from zhaoxiangchun/automated-cherry-pick-of-#8139-upstream-release-3.4
Automated cherry pick of #8139: bugfix :esxi 多机器环境下拉取监控超时
2020-09-28 18:27:33 +08:00
zhaoxiangchun
b88c114ba6 bugfix :esxi 多机器环境下拉取监控超时
1.简化mo.virtualMachine 实体中的属性
2.批量获取cloudprovider下所有的虚拟机的监控信息
2020-09-28 18:13:27 +08:00
Zexi Li
aa3ff8ac5b Merge pull request #8138 from zexi/automated-cherry-pick-of-#8137-upstream-release-3.4
Automated cherry pick of #8137: region: host specs replace space char to '_'
2020-09-28 17:46:58 +08:00
Zexi Li
3b0ba2caa9 region: host specs replace space char to '_' 2020-09-28 17:38:54 +08:00
Zexi Li
4dff79bdd0 Merge pull request #8136 from zexi/automated-cherry-pick-of-#8135-upstream-release-3.4
Automated cherry pick of #8135: specs: fix specKey url not escape
2020-09-28 17:01:44 +08:00
Zexi Li
a4d7b2b4b3 specs: fix specKey url not escape 2020-09-28 16:55:56 +08:00
yunion-ci-robot
f2b0fa1911 Merge pull request #8134 from rainzm/automated-cherry-pick-of-#8133-upstream-release-3.4
Automated cherry pick of #8133: fix(scheduler): filter InstanceGroup whose enabled is false
2020-09-28 16:40:35 +08:00
yunion-ci-robot
c1a963801f Merge pull request #8128 from lvyangyang/automated-cherry-pick-of-#8086-upstream-release-3.4
Automated cherry pick of #8086: fix:/dnsrecordset重复检查,dnszonevpc数量
2020-09-28 16:30:33 +08:00
yunion-ci-robot
95456e3e08 Merge pull request #8124 from rainzm/automated-cherry-pick-of-#8123-upstream-release-3.4
Automated cherry pick of #8123: fix: suffix template cache key
2020-09-28 16:28:35 +08:00
Zexi Li
41c84ca8ec Merge pull request #8132 from tb365/automated-cherry-pick-of-#8129-upstream-release-3.4
Automated cherry pick of #8129: aliyun create public lb fix
2020-09-28 16:24:36 +08:00
Rain
e6de7be7e1 fix(scheduler): filter InstanceGroup whose enabled is false 2020-09-28 16:06:17 +08:00
TangBin
3ddce26aa0 aliyun create public lb fix 2020-09-28 14:20:57 +08:00
lvyangyang
d94e55501a fix:/dnsrecordset重复检查,dnszonevpc数量 2020-09-28 11:08:41 +08:00
yunion-ci-robot
a9ca6e0a8a Merge pull request #8122 from zexi/automated-cherry-pick-of-#8121-upstream-release-3.4
Automated cherry pick of #8121: region: fix query object by spec not include details
2020-09-27 22:10:35 +08:00
rainzm
ad22483113 fix: suffix template cache key 2020-09-27 21:10:03 +08:00
yunion-ci-robot
4e9af39d73 Merge pull request #8117 from wanyaoqi/automated-cherry-pick-of-#8116-upstream-release-3.4
Automated cherry pick of #8116: umount nfs on detach storage
2020-09-27 21:03:37 +08:00
Zexi Li
a05f50dbf0 region: fix query object by spec not include details 2020-09-27 20:48:47 +08:00
wanyaoqi
adbe292f48 increase rbd check timeout 2020-09-27 20:19:50 +08:00
wanyaoqi
61cc180101 umount nfs on detach storage 2020-09-27 20:19:50 +08:00
yunion-ci-robot
1fd043c99b Merge pull request #8115 from swordqiu/automated-cherry-pick-of-#8114-upstream-release-3.4
Automated cherry pick of #8114: fix: filter cloudprovider/network by host-schedtag-id
2020-09-27 19:56:38 +08:00
Qiu Jian
82c0dcfb38 fix: filter cloudprovider/network by host-schedtag-id 2020-09-27 18:30:36 +08:00
yunion-ci-robot
ea5fbef0c2 Merge pull request #8111 from ioito/automated-cherry-pick-of-#8110-upstream-release-3.4
Automated cherry pick of #8110: fix: dns zone cache owner info
2020-09-27 16:51:34 +08:00
yunion-ci-robot
c1d66fc4e7 Merge pull request #8094 from tb365/automated-cherry-pick-of-#8087-upstream-release-3.4
Automated cherry pick of #8087: huawei snapshot delete fix
2020-09-27 15:11:32 +08:00
Zexi Li
b7423baf1f Merge pull request #8085 from ioito/automated-cherry-pick-of-#8084-upstream-release-3.4
Automated cherry pick of #8084: fix: openstack zone not emulated
2020-09-27 14:46:55 +08:00
Zexi Li
0ca3349d58 Merge pull request #8089 from wanyaoqi/automated-cherry-pick-of-#8088-upstream-release-3.4
Automated cherry pick of #8088: set stagefail on clean fail
2020-09-27 14:46:00 +08:00
yunion-ci-robot
8dde6a6ac4 Merge pull request #8100 from rainzm/automated-cherry-pick-of-#8099-upstream-release-3.4
Automated cherry pick of #8099: fix(esxi): Guarantee the uniqueness of the schedtag for esxi host
2020-09-27 14:45:34 +08:00
yunion-ci-robot
0d2d5b0728 Merge pull request #8108 from ioito/automated-cherry-pick-of-#8107-upstream-release-3.4
Automated cherry pick of #8107: fix: allow create disk prefer manager
2020-09-27 14:44:35 +08:00
Qu Xuan
da8529a00a fix: dns zone cache owner info 2020-09-27 14:35:49 +08:00
Qu Xuan
73aee11474 fix: allow create disk prefer manager 2020-09-27 14:18:44 +08:00
yunion-ci-robot
5229c06dfc Merge pull request #8060 from ioito/automated-cherry-pick-of-#8059-upstream-release-3.4
Automated cherry pick of #8059: fix: avoid serial vm creation
2020-09-26 23:18:33 +08:00
yunion-ci-robot
37b2b30af5 Merge pull request #8105 from zexi/automated-cherry-pick-of-#8104-upstream-release-3.4
Automated cherry pick of #8104: region: fix schedtag joint resource master/slave field wrong order
2020-09-26 08:48:31 +08:00
Zexi Li
7baaf23f84 Merge pull request #8096 from ioito/automated-cherry-pick-of-#8095-upstream-release-3.4
Automated cherry pick of #8095: fix: avoid purge storages
2020-09-25 20:54:42 +08:00
Zexi Li
1b6ac9bc48 region: fix schedtag joint resource master/slave field wrong order 2020-09-25 20:50:49 +08:00
rainzm
1215d723af fix(region): set ownerId as userCred when can't FetchOwnerId 2020-09-25 20:38:23 +08:00
rainzm
4586c82cb2 fix:(region) correct syncSchedtags
1.把extTagName存到metadata里面,这样就算修改tag的name,也能在metadata里面拿到。
2.已经创建的schedtag就不要重复创建了。
2020-09-25 20:28:27 +08:00
rainzm
5460f22444 fix(esxi): Guarantee the uniqueness of the schedtag for esxi host
Replace 'cluster:<clustername>' with
'cluster:/<cloudprovidername>/<dcname>/<clustername>'.
2020-09-25 20:28:27 +08:00
Qu Xuan
f5cf093e0f fix: avoid purge storages 2020-09-25 19:16:21 +08:00
TangBin
77865d894e huawei client request add throttling control 2020-09-25 19:07:41 +08:00
TangBin
454aabca75 huawei elb get params log 2020-09-25 19:07:41 +08:00
TangBin
c6d2149914 qcloud elb create listener fix 2020-09-25 19:07:41 +08:00
TangBin
ebee608109 huawei snapshot delete fix 2020-09-25 19:07:41 +08:00
wanyaoqi
7e2e7ade19 set stagefail on clean fail 2020-09-25 18:42:57 +08:00
Zexi Li
5d39338d60 Merge pull request #8083 from ioito/automated-cherry-pick-of-#8075-upstream-release-3.4
Automated cherry pick of #8075: fix: allow cross doamin resource sync
2020-09-25 16:56:36 +08:00
ioito
3903af786b fix: openstack zone not emulated 2020-09-25 16:15:34 +08:00
ioito
91cac5c217 fix: allow cross doamin resource sync 2020-09-25 15:49:57 +08:00
Zexi Li
12ef953b70 Merge pull request #8078 from ioito/automated-cherry-pick-of-#8077-upstream-release-3.4
Automated cherry pick of #8077: fix: avoid account delete failed
2020-09-25 12:11:43 +08:00
Zexi Li
d029dc22c0 Merge pull request #8018 from rainzm/automated-cherry-pick-of-#8017-upstream-release-3.4
Automated cherry pick of #8017: refactor(region): replace 'ActualCapacity' with 'ActualCapacityUsed'
2020-09-25 12:08:29 +08:00
Zexi Li
0deb8ea928 Merge pull request #8055 from rainzm/automated-cherry-pick-of-#8054-upstream-release-3.4
Automated cherry pick of #8054: feat: add GetSchedtags for ICloudHost
2020-09-25 12:07:13 +08:00
Zexi Li
1ffa6f5295 Merge pull request #8081 from zexi/automated-cherry-pick-of-#8080-upstream-release-3.4
Automated cherry pick of #8080: climc: add k8s fed resource sync action
2020-09-25 12:06:18 +08:00
Zexi Li
37b9a2e53d climc: add k8s fed resource sync action 2020-09-25 11:52:20 +08:00
yunion-ci-robot
f6a620ac46 Merge pull request #8067 from lvyangyang/automated-cherry-pick-of-#8002-upstream-release-3.4
Automated cherry pick of #8002: wait deleted
2020-09-25 11:13:30 +08:00
ioito
5f50314df6 fix: avoid account delete failed 2020-09-25 10:54:25 +08:00
rainzm
9ded6e43f1 feat(region): sync capacityUsed for storage after deploying or deleting guest 2020-09-25 10:35:01 +08:00
rainzm
547b2960b1 feat(region): sync CapacityUsed for Storage 2020-09-25 10:35:01 +08:00
rainzm
116d347c88 feat: add GetCapacityUsedMB for ICloudStorage 2020-09-25 10:35:01 +08:00
rainzm
e0c94daaf7 refactor(region): replace 'ActualCapacity' with 'ActualCapacityUsed' 2020-09-25 10:35:01 +08:00
rainzm
679ccb825a feat(region): sync schedtags when syncing host 2020-09-25 10:31:49 +08:00
rainzm
857e76ab78 feat(esxi): add GetSchedtags implementation for esxi.SHost 2020-09-25 10:31:49 +08:00
rainzm
0d05f9ee18 feat: add GetSchedtags for ICloudHost 2020-09-25 10:31:49 +08:00
Zexi Li
7e362cae3d Merge pull request #8057 from ioito/automated-cherry-pick-of-#8056-upstream-release-3.4
Automated cherry pick of #8056: fix: 仅在可用区故障时可强制挂载磁盘
2020-09-25 01:40:52 +08:00
Zexi Li
54ee77db03 Merge pull request #8066 from lvyangyang/automated-cherry-pick-of-#8013-upstream-release-3.4
Automated cherry pick of #8013: fix: dns 错误信息补全
2020-09-25 01:39:40 +08:00
Zexi Li
95b82d299d Merge pull request #8069 from ioito/automated-cherry-pick-of-#8068-upstream-release-3.4
Automated cherry pick of #8068: fix: avoid compare err with cloudprovider.ErrNotFound direct
2020-09-25 01:38:22 +08:00
Zexi Li
e4605d8c3b Merge pull request #8064 from rainzm/automated-cherry-pick-of-#8063-upstream-release-3.4
Automated cherry pick of #8063: fix(region): fetch correct ownerId in PerformPrepareNets
2020-09-24 21:22:00 +08:00
Zexi Li
652eb65252 Merge pull request #8072 from ioito/automated-cherry-pick-of-#8071-upstream-release-3.4
Automated cherry pick of #8071: fix: sql err
2020-09-24 21:19:26 +08:00
ioito
310baa266b fix: sql err 2020-09-24 20:22:39 +08:00
ioito
5f2c771f73 fix: avoid compare err with cloudprovider.ErrNotFound direct 2020-09-24 20:15:48 +08:00
lvyangyang
d90b661f7e wait deleted 2020-09-24 17:40:21 +08:00
lvyangyang
8d28bfc6d2 fix: dns 错误信息补全 2020-09-24 17:36:58 +08:00
rainzm
c7b8e84ffe fix(region): fetch correct ownerId in PerformPrepareNets 2020-09-24 17:26:17 +08:00
ioito
b5088230bf fix: avoid serial vm creation 2020-09-24 16:41:02 +08:00
ioito
4038bfb8a1 fix: 仅在可用区故障时可强制挂载磁盘 2020-09-24 15:39:09 +08:00
yunion-ci-robot
afb8924762 Merge pull request #8050 from zexi/automated-cherry-pick-of-#8049-upstream-release-3.4
Automated cherry pick of #8049: climc: refactor k8s sub command
2020-09-24 10:59:19 +08:00
yunion-ci-robot
796c3d1d48 Merge pull request #8008 from rainzm/automated-cherry-pick-of-#8007-upstream-release-3.4
Automated cherry pick of #8007: Fix & Feat of Notify or Lang
2020-09-24 10:43:19 +08:00
yunion-ci-robot
57a2258d94 Merge pull request #8053 from zhaoxiangchun/automated-cherry-pick-of-#8051-upstream-release-3.4
Automated cherry pick of #8051: commonalert bugfix 3.4
2020-09-24 10:24:20 +08:00
zhaoxiangchun
365e555c98 commonalert bugfix 3.4 2020-09-24 10:20:58 +08:00
Zexi Li
63603359e7 Merge pull request #8046 from ioito/automated-cherry-pick-of-#8029-upstream-release-3.4
Automated cherry pick of #8029: fix: avoid account delete failed
2020-09-23 23:51:44 +08:00
Zexi Li
fc3b794515 Merge pull request #8052 from swordqiu/automated-cherry-pick-of-#8048-upstream-release-3.4
Automated cherry pick of #8048: fix: scope resource filter by owner
2020-09-23 23:49:38 +08:00
Zexi Li
51020aac04 climc: refactor k8s sub command 2020-09-23 23:43:55 +08:00
yunion-ci-robot
32470e2ad3 Merge pull request #8032 from wanyaoqi/automated-cherry-pick-of-#8031-upstream-release-3.4
Automated cherry pick of #8031: support mutli params
2020-09-23 23:13:23 +08:00
Qiu Jian
975e7fb1e8 fix: scope resource filter by owner 2020-09-23 22:58:52 +08:00
rainzm
1c786a034b fix: use i18n.Table to handle Chinese-English conversion 2020-09-23 21:26:35 +08:00
rainzm
2d5055c908 feat: log err when sending notification via notifyclient 2020-09-23 21:26:35 +08:00
rainzm
471e2b4f13 fix(region): split brand as 'YunionCloud' and '云联壹云' when notify server event 2020-09-23 21:26:35 +08:00
rainzm
8da2d5ff7a feat: inherit lang from ctx fro Task 2020-09-23 21:26:35 +08:00
rainzm
043fdcfec2 fix(notify): modify name of notification to avoid duplication 2020-09-23 21:26:35 +08:00
rainzm
09bebcf5f4 fix(notify): clean verifyNote when mark verified 2020-09-23 21:26:35 +08:00
rainzm
d917e8e386 fix(notify): return correct value when sortContactType 2020-09-23 21:26:35 +08:00
yunion-ci-robot
7d163f63a1 Merge pull request #8025 from swordqiu/automated-cherry-pick-of-#8024-upstream-release-3.4
Automated cherry pick of #8024: fix: apigateway userinfo includes project metadata
2020-09-23 21:24:25 +08:00
yunion-ci-robot
8ce445487b Merge pull request #8015 from wanyaoqi/automated-cherry-pick-of-#8014-upstream-release-3.4
Automated cherry pick of #8014: support search ip
2020-09-23 21:22:21 +08:00
Zexi Li
6cff31add6 Merge pull request #8012 from ioito/automated-cherry-pick-of-#8011-upstream-release-3.4
Automated cherry pick of #8011: fix: 避免添加新账号后长时间未同步iam用户
2020-09-23 21:10:26 +08:00
Zexi Li
7698dcf506 Merge pull request #8010 from ioito/automated-cherry-pick-of-#8009-upstream-release-3.4
Automated cherry pick of #8009: fix: 优化提取显示主账号名
2020-09-23 21:08:35 +08:00
yunion-ci-robot
a7e537f4df Merge pull request #8045 from lvyangyang/automated-cherry-pick-of-#8044-upstream-release-3.4
Automated cherry pick of #8044: fix: error 值重叠
2020-09-23 21:08:22 +08:00
yunion-ci-robot
d23ffbb997 Merge pull request #8035 from swordqiu/automated-cherry-pick-of-#8034-upstream-release-3.4
Automated cherry pick of #8034: fix: role assignment filter by users not working for effective users in groups
2020-09-23 20:59:20 +08:00
ioito
c38cb271f8 fix: avoid account delete failed 2020-09-23 20:58:41 +08:00
yunion-ci-robot
c4c07c4e9d Merge pull request #8033 from yousong/automated-cherry-pick-of-#8030-upstream-release-3.4
Automated cherry pick of #8030: monitor: error fmt
2020-09-23 20:56:19 +08:00
yunion-ci-robot
682fa5e5bd Merge pull request #8037 from rainzm/automated-cherry-pick-of-#8036-upstream-release-3.4
Automated cherry pick of #8036: fix(region): add GetSlaveFieldName for ScalingGroupGuest
2020-09-23 20:52:19 +08:00
yunion-ci-robot
cefe057dc8 Merge pull request #8027 from ioito/automated-cherry-pick-of-#8026-upstream-release-3.4
Automated cherry pick of #8026: fix: 避免腾讯云同步虚拟机ip异常
2020-09-23 20:51:31 +08:00
yunion-ci-robot
1026b74e65 Merge pull request #8042 from zhaoxiangchun/automated-cherry-pick-of-#8041-upstream-release-3.4
Automated cherry pick of #8041: bugfix:esxi collect metric
2020-09-23 20:42:20 +08:00
yunion-ci-robot
ccce0a4be5 Merge pull request #8040 from zhasm/automated-cherry-pick-of-#8039-upstream-release-3.4
Automated cherry pick of #8039: fix esxi-agent dockerfile typo
2020-09-23 20:41:20 +08:00
lvyangyang
9a04238b77 fix: error 值重叠 2020-09-23 20:11:25 +08:00
zhaoxiangchun
a7198dc21b bugfix:esxi collect metric 2020-09-23 19:49:28 +08:00
Zhang Dongliang
78fc35d3a6 fix esxi-agent dockerfile typo 2020-09-23 18:56:28 +08:00
Yousong Zhou
70fd9dfb70 locales: monitor: add translations 2020-09-23 18:43:17 +08:00
Yousong Zhou
572e45968d monitor: error fmt 2020-09-23 18:43:17 +08:00
rainzm
35842df1bd fix(region): add GetSlaveFieldName for ScalingGroupGuest 2020-09-23 18:39:16 +08:00
Qiu Jian
b32eddce03 fix: role assignment filter by users not working for effective users in groups 2020-09-23 18:31:00 +08:00
wanyaoqi
8102e7ed00 support mutli params 2020-09-23 18:25:06 +08:00
ioito
f659ccd0d5 fix: 避免腾讯云同步虚拟机ip异常 2020-09-23 18:17:36 +08:00
yunion-ci-robot
27fe6bc38d Merge pull request #8022 from yousong/automated-cherry-pick-of-#8021-upstream-release-3.4
Automated cherry pick of #8021: elasticips: fix calling FilterByOwner
2020-09-23 17:27:19 +08:00
yunion-ci-robot
b118f341bc Merge pull request #8020 from zhasm/automated-cherry-pick-of-#8019-upstream-release-3.4
Automated cherry pick of #8019: make with ARCH argument
2020-09-23 16:38:18 +08:00
Yousong Zhou
59a5e9201e elasticips: error when we have no usable eip network 2020-09-23 16:22:49 +08:00
Yousong Zhou
430e9cd0fc elasticips: fix calling FilterByOwner 2020-09-23 16:22:49 +08:00
Qiu Jian
5b6b5eeb7d fix: apigateway userinfo includes project metadata 2020-09-23 16:07:00 +08:00
Zhang Dongliang
384e866649 make with ARCH argument 2020-09-23 15:57:49 +08:00
wanyaoqi
884e82a150 support search ip 2020-09-23 14:26:43 +08:00
ioito
b3c235fe30 fix: 避免添加新账号后长时间未同步iam用户 2020-09-23 10:34:04 +08:00
ioito
686df64ea9 fix: 优化提取显示主账号名 2020-09-22 21:24:33 +08:00
yunion-ci-robot
d8fa8a49fb Merge pull request #8006 from tb365/automated-cherry-pick-of-#8003-upstream-release-3.4
Automated cherry pick of #8003: regional network filter bugfix
2020-09-22 21:18:23 +08:00
yunion-ci-robot
1afeca5687 Merge pull request #8001 from ioito/automated-cherry-pick-of-#7990-upstream-release-3.4
Automated cherry pick of #7990: fix: avoid not reture cloudprovider.ErrNotFound error
2020-09-22 21:12:18 +08:00
yunion-ci-robot
304457a3b4 Merge pull request #7999 from ioito/automated-cherry-pick-of-#7998-upstream-release-3.4
Automated cherry pick of #7998: optimized: create eip params
2020-09-22 21:10:18 +08:00
TangBin
0bba6e63f0 regional network filter bugfix 2020-09-22 20:06:48 +08:00
Qu Xuan
bb3317cc32 fix: avoid not reture cloudprovider.ErrNotFound error 2020-09-22 16:49:38 +08:00
Qu Xuan
becf92f6bf optimized: create eip params 2020-09-22 16:47:42 +08:00
yunion-ci-robot
632ab6c2f9 Merge pull request #7987 from zhaoxiangchun/automated-cherry-pick-of-#7986-upstream-release-3.4
Automated cherry pick of #7986: common alert bugfix/3.4
2020-09-22 14:40:18 +08:00
yunion-ci-robot
cb0b0bea41 Merge pull request #7992 from zhaoxiangchun/automated-cherry-pick-of-#7991-upstream-release-3.4
Automated cherry pick of #7991: bugfix: collect esxi metric timout
2020-09-22 14:16:20 +08:00
yunion-ci-robot
6f324b0ea1 Merge pull request #7997 from tb365/automated-cherry-pick-of-#7994-upstream-release-3.4
Automated cherry pick of #7994: ctyun sync secgroup fix & cloudaccount delete fix
2020-09-22 14:08:19 +08:00
TangBin
0acbfc89f3 ctyun sync secgroup fix & cloudaccount delete fix 2020-09-22 13:58:22 +08:00
zhaoxiangchun
477d36f827 common alert bugfix/3.4 2020-09-22 11:37:14 +08:00
zhaoxiangchun
caa26b7567 bugfix: collect esxi metric timout
1.增加批量获取esxi中metric的接口
2020-09-22 11:13:25 +08:00
yunion-ci-robot
d0bb0afa2d Merge pull request #7933 from swordqiu/automated-cherry-pick-of-#7916-upstream-release-3.4
Automated cherry pick of #7916: fix: keystone initialize data skip nil extra fields
2020-09-21 19:54:14 +08:00
yunion-ci-robot
cb3884b1c5 Merge pull request #7919 from swordqiu/automated-cherry-pick-of-#7918-upstream-release-3.4
Automated cherry pick of #7918: fix: lock/unlock cleanup
2020-09-21 19:48:12 +08:00
yunion-ci-robot
10524ecc9a Merge pull request #7989 from wanyaoqi/automated-cherry-pick-of-#7988-upstream-release-3.4
Automated cherry pick of #7988: fix host deployer base image
2020-09-21 18:33:16 +08:00
wanyaoqi
33fb33a589 fix host deployer base image 2020-09-21 17:55:46 +08:00
yunion-ci-robot
a4b2af90c5 Merge pull request #7981 from yousong/automated-cherry-pick-of-#7980-upstream-release-3.4
Automated cherry pick of #7980: httputils: preserve format val types
2020-09-21 16:40:17 +08:00
Yousong Zhou
3f7155c39c logger: actionlog: add GetI18N 2020-09-21 15:22:06 +08:00
Yousong Zhou
b13d0f6035 logger: actionlog: remove redundant comments 2020-09-21 15:22:06 +08:00
Yousong Zhou
62c0c11c30 db: IModel: add GetI18N() method 2020-09-21 15:22:06 +08:00
Yousong Zhou
6bff7caf9b logclient: i18n: en for const 2020-09-21 15:22:06 +08:00
Yousong Zhou
27d0452faf logclient: i18n: cn for const 2020-09-21 15:22:06 +08:00
Yousong Zhou
b1a332fec1 logclient: convert const val to use latin chars 2020-09-21 15:22:06 +08:00
Yousong Zhou
bc066edc09 logclient: move ws list to separate file 2020-09-21 15:22:06 +08:00
Yousong Zhou
0b878134b6 logclient: separate lines 2020-09-21 15:22:06 +08:00
Yousong Zhou
986031fc97 opslog: move const to separate file 2020-09-21 15:22:06 +08:00
Yousong Zhou
8164854fd0 i18n: add ITable 2020-09-21 15:22:06 +08:00
Yousong Zhou
8dc1796768 i18n: move out from httperrors pkg 2020-09-21 15:22:06 +08:00
Yousong Zhou
a54d0e5920 locales: update translation 2020-09-21 15:22:06 +08:00
Yousong Zhou
822fae0095 treewide: avoid variable fmt str 2020-09-21 15:22:06 +08:00
Yousong Zhou
23b9991a7b treewide: fmt error 2020-09-21 15:22:06 +08:00
Yousong Zhou
4fb45676a4 httputils: preserve format val types 2020-09-21 15:22:06 +08:00
yunion-ci-robot
93e5f8ec97 Merge pull request #7977 from swordqiu/automated-cherry-pick-of-#7975-upstream-release-3.4
Automated cherry pick of #7975: fix: get jnlp xml from dell idrac6,7,9
2020-09-21 10:16:12 +08:00
yunion-ci-robot
29dde04145 Merge pull request #7979 from swordqiu/automated-cherry-pick-of-#7978-upstream-release-3.4
Automated cherry pick of #7978: fix: reset user password without check
2020-09-21 10:12:17 +08:00
yunion-ci-robot
b69d04ee20 Merge pull request #7985 from swordqiu/automated-cherry-pick-of-#7984-upstream-release-3.4
Automated cherry pick of #7984: fix: scheduler token not support policy
2020-09-21 10:09:12 +08:00
yunion-ci-robot
d0af7f9b23 Merge pull request #7983 from yousong/automated-cherry-pick-of-#7982-upstream-release-3.4
Automated cherry pick of #7982: locales: update translations
2020-09-20 00:22:14 +08:00
Qiu Jian
e444ab7a15 fix: scheduler token not support policy 2020-09-19 23:47:29 +08:00
Yousong Zhou
c4f4e7d30b locales: update translations 2020-09-19 23:45:19 +08:00
Qiu Jian
5f35bba0d0 fix: reset user password without check 2020-09-19 00:51:02 +08:00
Qiu Jian
760ac9900f fix: get jnlp xml from dell idrac6,7,9 2020-09-19 00:11:02 +08:00
Zexi Li
be00107c12 Merge pull request #7969 from tb365/automated-cherry-pick-of-#7966-upstream-release-3.4
Automated cherry pick of #7966: ctyun add region cn-bj1
2020-09-18 21:05:31 +08:00
yunion-ci-robot
17cd333b64 Merge pull request #7971 from swordqiu/automated-cherry-pick-of-#7970-upstream-release-3.4
Automated cherry pick of #7970: fix: add esxicli vmrc/webmks command
2020-09-18 21:04:11 +08:00
Zexi Li
346c8ec564 Merge pull request #7974 from rainzm/automated-cherry-pick-of-#7973-upstream-release-3.4
Automated cherry pick of #7973: fix(notify): allow normal user create their receiver
2020-09-18 21:04:08 +08:00
rainzm
aecf977801 fix(notify): allow normal user create their receiver 2020-09-18 17:17:38 +08:00
yunion-ci-robot
7a044d1ac1 Merge pull request #7947 from wanyaoqi/automated-cherry-pick-of-#7927-upstream-release-3.4
Automated cherry pick of #7927: host sync storage size
2020-09-18 16:53:48 +08:00
Qiu Jian
5f9088d240 fix: add esxicli vmrc/webmks command 2020-09-18 14:41:38 +08:00
TangBin
12bd187ec9 ctyun add region cn-bj1 2020-09-18 14:26:17 +08:00
Zexi Li
c1a0b8a8b5 Merge pull request #7962 from zexi/automated-cherry-pick-of-#7961-upstream-release-3.4
Automated cherry pick of #7961: region: fix network schedtag not cleanup when network deleted
2020-09-18 12:44:58 +08:00
Zexi Li
1d7ffc704e region: fix network schedtag not cleanup when network deleted 2020-09-18 10:38:33 +08:00
Zexi Li
ebdefa1f23 Merge pull request #7960 from zexi/automated-cherry-pick-of-#7959-upstream-release-3.4
Automated cherry pick of #7959: climc: add k8s federated resource cmd
2020-09-17 15:43:37 +08:00
Zexi Li
02dc68f20d climc: add k8s federated resource cmd 2020-09-17 15:29:55 +08:00
Zexi Li
9047c8de39 Merge pull request #7956 from zexi/automated-cherry-pick-of-#7954-upstream-release-3.4
Automated cherry pick of #7954: cloudcommon: get joint model should aware fieldname
2020-09-17 10:33:57 +08:00
yunion-ci-robot
ae3073da48 Merge pull request #7942 from zhaoxiangchun/automated-cherry-pick-of-#7941-upstream-release-3.4
Automated cherry pick of #7941: suggest rule modify:
2020-09-16 21:42:20 +08:00
Zexi Li
ab2567d17d Merge pull request #7955 from wanyaoqi/automated-cherry-pick-of-#7953-upstream-release-3.4
Automated cherry pick of #7953: fix set host image cache properties
2020-09-16 21:38:16 +08:00
Zexi Li
ba03954e50 Merge pull request #7949 from wanyaoqi/automated-cherry-pick-of-#7948-upstream-release-3.4
Automated cherry pick of #7948: fix update image status after save failed
2020-09-16 21:36:15 +08:00
Zexi Li
6c6b7bb6fa Merge pull request #7913 from ioito/automated-cherry-pick-of-#7912-upstream-release-3.4
Automated cherry pick of #7912: fix: 支持自动根据云上项目修改本地项目名称
2020-09-16 21:35:01 +08:00
yunion-ci-robot
b3f62ee186 Merge pull request #7944 from lvyangyang/automated-cherry-pick-of-#7943-upstream-release-3.4
Automated cherry pick of #7943: dup record process
2020-09-16 21:04:51 +08:00
yunion-ci-robot
bc66fd558a Merge pull request #7946 from wanyaoqi/automated-cherry-pick-of-#7945-upstream-release-3.4
Automated cherry pick of #7945: scheduler: fix fillter isolated device
2020-09-16 20:58:12 +08:00
Zexi Li
4164bf58c1 cloudcommon: get joint model should aware fieldname 2020-09-16 20:52:19 +08:00
wanyaoqi
5593b88e98 fix set host image cache properties 2020-09-16 20:51:52 +08:00
wanyaoqi
785da09d62 fix update image status after save failed 2020-09-16 19:14:07 +08:00
wanyaoqi
585ef58332 host sync storage size 2020-09-16 19:02:27 +08:00
wanyaoqi
8e0f47aa0c scheduler: fix fillter isolated device 2020-09-16 18:32:05 +08:00
lvyangyang
4487867f53 dup record process 2020-09-16 18:31:12 +08:00
zhaoxiangchun
9b12c675d2 suggest rule modify:
1.规则由后端初始化,默认禁用
2.规则period默认为12h,扫描范围timeFrom默认为14d
3.增加notify相关的模版文件
4.更改消息重复发送的问题
2020-09-16 12:56:58 +08:00
Zexi Li
a2d7bd16a2 Merge pull request #7940 from zhaoxiangchun/automated-cherry-pick-of-#7938-upstream-release-3.4
Automated cherry pick of #7938: bugfix vmware monitor
2020-09-16 11:35:06 +08:00
Zexi Li
10625a4b26 Merge pull request #7936 from swordqiu/automated-cherry-pick-of-#7935-upstream-release-3.4
Automated cherry pick of #7935: fix: disable qcloud verifyAppId temporarily
2020-09-16 11:33:53 +08:00
Zexi Li
e64ac81f87 Merge pull request #7911 from rainzm/automated-cherry-pick-of-#7910-upstream-release-3.4
Automated cherry pick of #7910: Feat & Fix of Notify
2020-09-16 11:32:46 +08:00
Zexi Li
e42afce6f3 Merge pull request #7926 from ioito/automated-cherry-pick-of-#7925-upstream-release-3.4
Automated cherry pick of #7925: fix: 避免名称重复
2020-09-16 11:31:52 +08:00
Zexi Li
ad0b9e3bd3 Merge pull request #7932 from swordqiu/automated-cherry-pick-of-#7931-upstream-release-3.4
Automated cherry pick of #7931: fix: omit empty fail reason
2020-09-16 11:31:20 +08:00
yunion-ci-robot
d4e2158caf Merge pull request #7930 from swordqiu/automated-cherry-pick-of-#7929-upstream-release-3.4
Automated cherry pick of #7929: fix: enable generate name caused compability issue
2020-09-16 11:30:09 +08:00
Zexi Li
a09932d8ac Merge pull request #7922 from ioito/automated-cherry-pick-of-#7921-upstream-release-3.4
Automated cherry pick of #7921: fix: bucket object cnt fix
2020-09-16 11:30:04 +08:00
zhaoxiangchun
2a680f99a7 bugfix vmware monitor 2020-09-16 10:28:59 +08:00
Qiu Jian
7601ca437a fix: disable qcloud verifyAppId temporarily 2020-09-16 02:21:22 +08:00
Qiu Jian
967d46bbf6 fix: keystone initialize data skip nil extra fields 2020-09-16 01:59:27 +08:00
Qiu Jian
a475a7b416 fix: omit empty fail reason 2020-09-16 01:56:02 +08:00
Qiu Jian
0d798412e1 fix: enable generate name caused compability issue 2020-09-16 01:36:33 +08:00
Qu Xuan
a1ba06a927 fix: 避免名称重复 2020-09-15 19:30:24 +08:00
Qu Xuan
cc5e0cd7ca fix: bucket object cnt fix 2020-09-15 19:13:38 +08:00
Qiu Jian
ada7352469 fix: lock/unlock cleanup 2020-09-15 12:26:47 +08:00
yunion-ci-robot
ef9dac1a86 Merge pull request #7917 from zexi/automated-cherry-pick-of-#7915-upstream-release-3.4
Automated cherry pick of #7915: cloudcommon: joint model list should add field_name into query
2020-09-15 10:27:12 +08:00
yunion-ci-robot
f71d26d2b2 Merge pull request #7906 from wanyaoqi/automated-cherry-pick-of-#7905-upstream-release-3.4
Automated cherry pick of #7905: webconsole: fix defer order to release zombie process
2020-09-15 10:26:10 +08:00
Zexi Li
82e38b8f51 cloudcommon: joint model list should add field_name into query 2020-09-14 23:38:11 +08:00
Qu Xuan
5c71349fe2 fix: 支持自动根据云上项目修改本地项目名称 2020-09-14 21:13:27 +08:00
rainzm
f24950da96 feat(notify): sort the returned contact type array 2020-09-14 20:35:12 +08:00
rainzm
0308ce2882 feat: notify user when failing to change config 2020-09-14 20:35:12 +08:00
rainzm
cee07e7861 feat: add NotifyError in notifyclient
NotifyError send error message to user from userCred.
2020-09-14 20:35:12 +08:00
rainzm
8eba2c369f feat: add WithCtx version to notifyclient function 2020-09-14 20:35:12 +08:00
rainzm
5a10f9dd9c feat(region): divide notify templates into Chinese and English versions
Chinese version: content@cn, title@cn
English version: content@en, title@en
2020-09-14 20:35:12 +08:00
rainzm
c542249c7c feat(region): replace 虚拟机 with 主机 or 云主机 2020-09-14 20:35:12 +08:00
wanyaoqi
fa2d8723a6 webconsole: fix defer order to release zombie process 2020-09-14 18:20:47 +08:00
Zexi Li
523b0d132f Merge pull request #7903 from rainzm/automated-cherry-pick-of-#7902-upstream-release-3.4
Automated cherry pick of #7902: fix(esxi): return when host.Vm is empty
2020-09-14 16:28:08 +08:00
rainzm
6bfca36cb7 fix(esxi): return when host.Vm is empty 2020-09-14 16:26:34 +08:00
yunion-ci-robot
e41c29e6d0 Merge pull request #7900 from ioito/automated-cherry-pick-of-#7899-upstream-release-3.4
Automated cherry pick of #7899: fix: cos use proxy
2020-09-14 14:03:14 +08:00
Zexi Li
6010b253f2 Merge pull request #7896 from wanyaoqi/automated-cherry-pick-of-#7895-upstream-release-3.4
Automated cherry pick of #7895: disk: check disk is need renew on guest set renew
2020-09-14 13:02:07 +08:00
Qu Xuan
0a5ee4ca67 fix: cos use proxy 2020-09-14 13:01:07 +08:00
wanyaoqi
77f479ce60 disk: check disk is need renew on guest set renew 2020-09-14 12:07:48 +08:00
yunion-ci-robot
f8b7d96c62 Merge pull request #7894 from swordqiu/automated-cherry-pick-of-#7893-upstream-release-3.4
Automated cherry pick of #7893: fix: check host sharing status when considering whether a host is assignable
2020-09-12 23:58:08 +08:00
yunion-ci-robot
fda5c3aaa5 Merge pull request #7891 from swordqiu/automated-cherry-pick-of-#7890-upstream-release-3.4
Automated cherry pick of #7890: fix: disable webkms for esxi older than 6.5
2020-09-12 23:55:21 +08:00
yunion-ci-robot
0e88ac81c3 Merge pull request #7888 from yousong/automated-cherry-pick-of-#7887-upstream-release-3.4
Automated cherry pick of #7887: elasticips: filter by owner when doing auto allocation
2020-09-12 23:54:09 +08:00
Qiu Jian
6b5339900b fix: check host sharing status when considering whether a host is assignable 2020-09-12 20:52:09 +08:00
yunion-ci-robot
60b1eddfd8 Merge pull request #7886 from zexi/automated-cherry-pick-of-#7885-upstream-release-3.4
Automated cherry pick of #7885: scheduler: ignore network type when specified
2020-09-12 17:34:08 +08:00
Qiu Jian
7cf5ad9133 fix: disable webkms for esxi older than 6.5 2020-09-12 17:29:50 +08:00
Yousong Zhou
8a0f940b38 elasticips: filter by owner when doing auto allocation 2020-09-12 17:14:41 +08:00
Zexi Li
a1c7a291d5 scheduler: ignore network type when specified 2020-09-12 15:59:17 +08:00
Zexi Li
891b7223f1 Merge pull request #7884 from rainzm/automated-cherry-pick-of-#7883-upstream-release-3.4
Automated cherry pick of #7883: feat(region): change fomat 'id' to 'name(id)' in scheduledtasks' log
2020-09-11 21:06:38 +08:00
yunion-ci-robot
9ef5a43513 Merge pull request #7877 from ioito/automated-cherry-pick-of-#7876-upstream-release-3.4
Automated cherry pick of #7876: fix: 默认不自动合并安全组
2020-09-11 21:05:58 +08:00
Zexi Li
490a0a7fe5 Merge pull request #7880 from ioito/automated-cherry-pick-of-#7879-upstream-release-3.4
Automated cherry pick of #7879: fix: avoid sync natgateway eip panic
2020-09-11 21:03:40 +08:00
Zexi Li
06c27791bb Merge pull request #7871 from rainzm/automated-cherry-pick-of-#7870-upstream-release-3.4
Automated cherry pick of #7870: fix(esxiagent): add HostDelayTaskWorkerCount
2020-09-11 20:55:33 +08:00
Zexi Li
690c3b23a4 Merge pull request #7863 from wanyaoqi/automated-cherry-pick-of-#7836-upstream-release-3.4
Automated cherry pick of #7836: host: fix rbd storage cache iso image
2020-09-11 20:54:17 +08:00
Zexi Li
6bc6309253 Merge pull request #7868 from ioito/automated-cherry-pick-of-#7862-upstream-release-3.4
Automated cherry pick of #7862: fix: add dns recordset dns value check
2020-09-11 20:53:28 +08:00
rainzm
7b67554dcc feat(region): change fomat 'id' to 'name(id)' in scheduledtasks' log 2020-09-11 20:37:54 +08:00
Qu Xuan
ce777855a2 fix: 默认不自动合并安全组 2020-09-11 19:23:15 +08:00
Qu Xuan
9607420298 fix: avoid sync natgateway eip panic 2020-09-11 19:17:25 +08:00
rainzm
4e7e8a59dc fix(esxiagent): add HostDelayTaskWorkerCount
之前,HostDelayWorker 是通过 hostutils.InitWorkerManager 来初始化,
worker的数量依赖于options.HostOptions.DefaultRequestWorkerCount, 因为
这个options没有经过初始化,所以就是0,导致worker count的数量变为1。

现在增加了 HostDelayTaskWorkerCount 来管理这个count,默认值为8。
2020-09-11 17:19:46 +08:00
Qu Xuan
2e93ee3d6d fix: add dns recordset dns value check 2020-09-11 14:26:01 +08:00
wanyaoqi
6a7cf0608d host: fix rbd storage cache iso image 2020-09-10 23:13:58 +08:00
yunion-ci-robot
5f7734b0c3 Merge pull request #7860 from ioito/automated-cherry-pick-of-#7859-upstream-release-3.4
Automated cherry pick of #7859: fix: 平滑迁移数据
2020-09-10 21:42:53 +08:00
yunion-ci-robot
413ba9ddd4 Merge pull request #7858 from lvyangyang/automated-cherry-pick-of-#7762-upstream-release-3.4
Automated cherry pick of #7762: dns access
2020-09-10 21:37:56 +08:00
yunion-ci-robot
0048507211 Merge pull request #7856 from ioito/automated-cherry-pick-of-#7855-upstream-release-3.4
Automated cherry pick of #7855: fix: optimized qcloud keypair
2020-09-10 21:34:33 +08:00
Qu Xuan
d6d490af6c fix: 平滑迁移数据 2020-09-10 17:39:40 +08:00
lvyangyang
70297e3130 dns access 2020-09-10 17:33:17 +08:00
Qu Xuan
5576819f01 fix: 腾讯云不支持同时设置秘钥和密码,若设置秘钥,则将密码置空 2020-09-10 17:25:32 +08:00
Qu Xuan
dc20313ef5 fix: optimized qcloud keypair 2020-09-10 17:25:32 +08:00
yunion-ci-robot
fb7b5d5a95 Merge pull request #7854 from rainzm/automated-cherry-pick-of-#7832-upstream-release-3.4
Automated cherry pick of #7832: refactor(region): optimize preparenet of cloudaccount
2020-09-10 16:04:55 +08:00
rainzm
3f77c01e6b refactor(region): optimize preparenet of cloudaccount
1. 从vcenter中获取host和vm的信息时,只需要获取网络相关的字段就可以了。
2. 每个host的vms,单独启用一个goroutine。
3. 优化了处理vms ip的逻辑,现在的时间复杂度是O(n)。
2020-09-10 15:41:13 +08:00
yunion-ci-robot
5ec2490be5 Merge pull request #7853 from rainzm/automated-cherry-pick-of-#7852-upstream-release-3.4
Automated cherry pick of #7852: fix(notify): pull contact for workwx, dingtalk and feishu
2020-09-10 15:18:01 +08:00
rainzm
dba92d4b0b fix(notify): pull contact for workwx, dingtalk and feishu 2020-09-10 14:41:27 +08:00
yunion-ci-robot
6f77c22573 Merge pull request #7835 from ioito/automated-cherry-pick-of-#7834-upstream-release-3.4
Automated cherry pick of #7834: fix: uniform cachedimage active status
2020-09-10 14:36:02 +08:00
yunion-ci-robot
f653b36733 Merge pull request #7851 from ioito/automated-cherry-pick-of-#7837-upstream-release-3.4
Automated cherry pick of #7837: fix: optimzed clouduser password
2020-09-10 14:33:55 +08:00
Qu Xuan
aa26c6ec99 fix: optimzed clouduser password 2020-09-10 10:24:21 +08:00
yunion-ci-robot
0e0df0999b Merge pull request #7844 from ioito/automated-cherry-pick-of-#7843-upstream-release-3.4
Automated cherry pick of #7843: fix: optimzed clouduser
2020-09-10 09:49:23 +08:00
yunion-ci-robot
5f0b86950b Merge pull request #7842 from ioito/automated-cherry-pick-of-#7841-upstream-release-3.4
Automated cherry pick of #7841: fix: avoid create public zone failed
2020-09-10 09:47:56 +08:00
yunion-ci-robot
d1660c83a9 Merge pull request #7839 from swordqiu/automated-cherry-pick-of-#7831-upstream-release-3.4
Automated cherry pick of #7831: fix: recode project-role rpc handle to support group role assignment results by user or project
2020-09-10 09:46:54 +08:00
yunion-ci-robot
f302756eda Merge pull request #7840 from zhaoxiangchun/automated-cherry-pick-of-#7838-upstream-release-3.4
Automated cherry pick of #7838: commonalert bugfix:
2020-09-10 09:44:53 +08:00
yunion-ci-robot
90185c0074 Merge pull request #7846 from rainzm/automated-cherry-pick-of-#7845-upstream-release-3.4
Automated cherry pick of #7845: Feat & Fix & Refactor for ESXi
2020-09-10 09:41:58 +08:00
rainzm
55b2b29001 fix(region): add RequestSyncstatusOnHost for SESXiGuestDriver
esxi 平台 Guest 进行 syncstatus 和其他平台有所区别,Vcenter 可能会更改
 VM 所在的 Host,所以在 Host 上寻找 VM 可能会出现 ErrNotFound。此时,应该
主动去整个 datacenter 中寻找 VM,然后更改 Host,进行同步。
2020-09-09 21:53:51 +08:00
rainzm
ac69f8a590 fix(esxi): fetch templatevm from datacenter before clone vm
这里应该和image_cache那里保持一直,对template的获取应该从datacenter
中获取,而不是host。
2020-09-09 21:53:51 +08:00
rainzm
42faf34f15 refactor(esxi): replace GetTemplateVMById with FetchTemplateVMById
FetchTemplateVMById 更好,因为它更轻量,更快。
2020-09-09 21:53:51 +08:00
rainzm
3f8f9e6c56 feat(esxicli): better vm operator
现在,可以通过Datacenter来获取vm,不一定要指定HostIp,
Datacenter和HostIp必须指定一个。
2020-09-09 21:53:51 +08:00
rainzm
6b340264e4 feat(esxi): support fetchVM form datacenter 2020-09-09 21:53:51 +08:00
rainzm
ef8768fcef refactor(esxi): fetchVms and fetchHardwareInfo
1. fetchHardwareInfo 只有一种error,原因是moVM的某些字段为nil,这种情况下,完全可以打印日志直接返回。
2. fetchVms 现在只返回[]*SVirtualMachine, 进一步的过滤(是不是template)交给调用者。
2020-09-09 21:53:51 +08:00
Qu Xuan
9281c54294 fix: optimzed clouduser 2020-09-09 20:12:40 +08:00
Qu Xuan
2ad1a4afe5 fix: avoid create public zone failed 2020-09-09 19:54:45 +08:00
zhaoxiangchun
1a323667ad commonalet bugfix:
1.报警接受人通知渠道调整:由notify中解释发送到对应的channel
2.报警恢复增加对应的evalmatch,保存对应的metricvalue
3.报警记录中增加description相关信息
4.其他代码调整
2020-09-09 18:32:56 +08:00
Qiu Jian
0268d95853 fix: recode project-role rpc handle to support group role assignment results by user or project 2020-09-09 18:19:36 +08:00
Qu Xuan
025eca548f fix: uniform cachedimage active status 2020-09-09 15:21:43 +08:00
yunion-ci-robot
4cea5a1c9f Merge pull request #7829 from swordqiu/automated-cherry-pick-of-#7828-upstream-release-3.4
Automated cherry pick of #7828: fix: wire usage stats incorrect
2020-09-08 20:28:56 +08:00
yunion-ci-robot
cb1c8d7961 Merge pull request #7827 from swordqiu/automated-cherry-pick-of-#7820-upstream-release-3.4
Automated cherry pick of #7820: fix: ignore 409 error when doing redfish power on
2020-09-08 20:26:52 +08:00
yunion-ci-robot
408f975f40 Merge pull request #7822 from rainzm/automated-cherry-pick-of-#7821-upstream-release-3.4
Automated cherry pick of #7821: fix(esxiagent): return image extid not id
2020-09-08 20:23:55 +08:00
Qiu Jian
621c2796d6 fix: wire usage stats incorrect 2020-09-08 16:41:48 +08:00
Qiu Jian
d10adf22d7 fix: ignore 409 error when doing redfish power on 2020-09-08 15:34:59 +08:00
rainzm
3ef91f92e5 fix(esxiagent): return image extid not id
调用 disk/image_cache 接口的Task StorageCacheImageTask 会根据回调
回来数据中的 image_id,来设置 storagecachedimage 中的 externalid,
所以这里的 image_id 应该是 externalid。
2020-09-08 15:33:18 +08:00
yunion-ci-robot
e75e5a9b95 Merge pull request #7803 from rainzm/automated-cherry-pick-of-#7802-upstream-release-3.4
Automated cherry pick of #7802: Optimization of the scheduler
2020-09-08 14:59:53 +08:00
rainzm
348ca46a08 fix(scheduler): more standardized testing 2020-09-08 14:28:09 +08:00
rainzm
6000874b3c refactor(scheduler): make forcast result clearer
forcast 的返回值包括:
1. CanCreate: 是否可以创建
2. FilteredCandidate: 被过滤掉的candidate(宿主机),并记录了
   过滤其的 filter 的名字以及给出的原因。
3. ReqCount: 请求的机器数量
4. AllowCount: 允许的机器数量
5. NotAllowReasons: 不允许的原因,每一个不被允许的都会被列出原因。
2020-09-08 14:28:09 +08:00
rainzm
89980b6267 Add mock test for genericScheudler.Schedule 2020-09-08 14:28:09 +08:00
rainzm
d086161a68 feat: Add method 'Sku' to CandidatePropertyGetter 2020-09-08 14:28:09 +08:00
rainzm
39fed764fe feat: Add IResultHelper
1. Adjust the package structure about pkg/scheduler/core and
pkg/scheduler/manager

2. Add IResultHelper

3. Change the signature of genericScheduler.Schedule
func (*Unit, []Candidater) (*SchedResultItemList, error) ==>
func (*Unit, []Candidater, IResultHelper) (*ScheduleResult, error)
2020-09-08 14:28:09 +08:00
yunion-ci-robot
426699ada9 Merge pull request #7819 from wanyaoqi/automated-cherry-pick-of-#7810-upstream-release-3.4
Automated cherry pick of #7810: fix host error output
2020-09-08 10:03:18 +08:00
yunion-ci-robot
82d297eb77 Merge pull request #7809 from swordqiu/automated-cherry-pick-of-#7808-upstream-release-3.4
Automated cherry pick of #7808: fix: check assign-host previliges
2020-09-08 10:01:56 +08:00
yunion-ci-robot
92ecdb5f8d Merge pull request #7818 from wanyaoqi/automated-cherry-pick-of-#7817-upstream-release-3.4
Automated cherry pick of #7817: isolated devices info reenterable
2020-09-08 09:59:54 +08:00
wanyaoqi
ada6c870d8 fix host error output 2020-09-07 21:08:13 +08:00
yunion-ci-robot
86dd4804a3 Merge pull request #7816 from rainzm/automated-cherry-pick-of-#7807-upstream-release-3.4
Automated cherry pick of #7807: fix(notify): break down permissions of notifyconfigs
2020-09-07 21:06:03 +08:00
yunion-ci-robot
cecaa127ea Merge pull request #7805 from yousong/automated-cherry-pick-of-#7804-upstream-release-3.4
Automated cherry pick of #7804: vpcagent: guard against foul eip records
2020-09-07 21:05:46 +08:00
yunion-ci-robot
4d68b5fb61 Merge pull request #7797 from ioito/automated-cherry-pick-of-#7796-upstream-release-3.4
Automated cherry pick of #7796: fix: sync groups for user
2020-09-07 21:03:50 +08:00
yunion-ci-robot
8a329b2b29 Merge pull request #7790 from wanyaoqi/automated-cherry-pick-of-#7789-upstream-release-3.4
Automated cherry pick of #7789: fix get ubuntu version
2020-09-07 21:01:53 +08:00
yunion-ci-robot
c50659a1e4 Merge pull request #7815 from yousong/automated-cherry-pick-of-#7814-upstream-release-3.4
Automated cherry pick of #7814: httperrors: add Error type
2020-09-07 20:59:46 +08:00
yunion-ci-robot
a30df54cb9 Merge pull request #7799 from wanyaoqi/automated-cherry-pick-of-#7798-upstream-release-3.4
Automated cherry pick of #7798: guest short desc add backup host id
2020-09-07 20:57:45 +08:00
yunion-ci-robot
b192e949de Merge pull request #7813 from swordqiu/automated-cherry-pick-of-#7811-upstream-release-3.4
Automated cherry pick of #7811: fix: prevent users in disabled idp from login
2020-09-07 20:55:43 +08:00
yunion-ci-robot
a33a21f712 Merge pull request #7794 from ioito/automated-cherry-pick-of-#7793-upstream-release-3.4
Automated cherry pick of #7793: fix: aliyun wulanchabu region
2020-09-07 20:55:14 +08:00
wanyaoqi
78f9db1ba0 isolated devices info reenterable 2020-09-07 20:46:26 +08:00
rainzm
72276d038d fix(notify): break down permissions of notifyconfigs
1. Only allow admin to create, list, update or delete.
2. Allow user to get types.
2020-09-07 18:56:59 +08:00
Yousong Zhou
f1995a46d8 treewide: DeleteFailReason as an object with translated details 2020-09-07 18:53:07 +08:00
Yousong Zhou
918dce80e8 httperrors: HTTPError: use Error type 2020-09-07 18:53:07 +08:00
Yousong Zhou
12899ab007 httperrors: add Error type 2020-09-07 18:53:07 +08:00
Qiu Jian
e758c4aa97 fix: prevent users in disabled idp from login 2020-09-07 18:25:39 +08:00
Qiu Jian
623c71b143 fix: check assign-host previliges 2020-09-07 18:15:03 +08:00
Yousong Zhou
f0faf07b61 vpcagent: guard against foul eip records 2020-09-07 17:27:12 +08:00
wanyaoqi
8c4941ea70 guest short desc add backup host id 2020-09-07 17:05:34 +08:00
Qu Xuan
4cd73c16ca fix: sync groups for user 2020-09-07 16:35:47 +08:00
Qu Xuan
0a79d1d23e fix: aliyun wulanchabu region 2020-09-07 16:10:37 +08:00
wanyaoqi
d22676906c fix get ubuntu version 2020-09-07 15:40:33 +08:00
yunion-ci-robot
74b3bf2c6a Merge pull request #7787 from rainzm/automated-cherry-pick-of-#7786-upstream-release-3.4
Automated cherry pick of #7786: fix(scheduler): fix array out of bounds when sorting hosts
2020-09-07 15:31:43 +08:00
yunion-ci-robot
c94a90398e Merge pull request #7783 from rainzm/automated-cherry-pick-of-#7782-upstream-release-3.4
Automated cherry pick of #7782: fix(notify): Replace String() with GetString()
2020-09-07 15:28:41 +08:00
yunion-ci-robot
b57bbc66c7 Merge pull request #7781 from swordqiu/automated-cherry-pick-of-#7780-upstream-release-3.4
Automated cherry pick of #7780: fix: user idps attributes includes template name
2020-09-07 15:24:41 +08:00
rainzm
4f9c37239e fix(scheduler): fix array out of bounds when sorting hosts 2020-09-07 15:18:51 +08:00
rainzm
8524fda7f8 fix(notify): Replace String() with GetString()
The String() of jsonutils.JSONObject will add a pair of
double quotes around the content. The GetString() will
get a clean content.
2020-09-07 15:10:54 +08:00
Qiu Jian
bfa4ce38e0 fix: user idps attributes includes template name 2020-09-07 13:01:23 +08:00
yunion-ci-robot
70d790187e Merge pull request #7778 from ioito/automated-cherry-pick-of-#7729-upstream-release-3.4
Automated cherry pick of #7729: optimized cachedimages sync
2020-09-07 11:08:42 +08:00
Qu Xuan
7095ea8f8b optimized cachedimages sync 2020-09-07 10:16:33 +08:00
yunion-ci-robot
4edff8ae34 Merge pull request #7770 from swordqiu/automated-cherry-pick-of-#7769-upstream-release-3.4
Automated cherry pick of #7769: fix: network address list respect privilige of user
2020-09-05 15:50:42 +08:00
yunion-ci-robot
fd750e0a9c Merge pull request #7773 from swordqiu/automated-cherry-pick-of-#7772-upstream-release-3.4
Automated cherry pick of #7772: fix: skup syncing lb, rds, redis instances in tasks
2020-09-05 15:48:43 +08:00
Zexi Li
f0ae739747 Merge pull request #7777 from zexi/automated-cherry-pick-of-#7776-upstream-release-3.4
Automated cherry pick of #7776: climc: k8s cluster grafana componet support subpath
2020-09-05 15:37:48 +08:00
Zexi Li
7f5124bdf2 climc: k8s cluster grafana componet support subpath 2020-09-05 14:47:04 +08:00
Qiu Jian
c5c2b4b699 fix: skup syncing lb, rds, redis instances in tasks 2020-09-05 14:30:07 +08:00
Qiu Jian
29edf83293 fix: network address list respect privilige of user 2020-09-05 12:01:01 +08:00
yunion-ci-robot
1c3bbb70a3 Merge pull request #7768 from ioito/automated-cherry-pick-of-#7767-upstream-release-3.4
Automated cherry pick of #7767: fix: cloudid optimized
2020-09-05 10:32:46 +08:00
Qu Xuan
390d6f07e1 fix: cloudid optimized 2020-09-04 20:23:18 +08:00
yunion-ci-robot
41e2757973 Merge pull request #7766 from tb365/automated-cherry-pick-of-#7764-upstream-release-3.4
Automated cherry pick of #7764: pex register add optional column mac_access
2020-09-04 20:15:41 +08:00
yunion-ci-robot
a7160e7518 Merge pull request #7763 from ioito/automated-cherry-pick-of-#7739-upstream-release-3.4
Automated cherry pick of #7739: fix: valid update name and update dns recordset
2020-09-04 20:14:14 +08:00
yunion-ci-robot
01f07c6044 Merge pull request #7761 from swordqiu/automated-cherry-pick-of-#7760-upstream-release-3.4
Automated cherry pick of #7760: fix: scheduler aware policy
2020-09-04 16:20:40 +08:00
TangBin
24af17757d pex register add optional column mac_access 2020-09-04 15:57:38 +08:00
Qu Xuan
b4252c7c25 fix: valid update name and update dns recordset 2020-09-04 14:10:14 +08:00
Qiu Jian
4853883947 fix: scheduler aware policy 2020-09-04 11:10:36 +08:00
Zexi Li
82795f2daf Merge pull request #7752 from ioito/automated-cherry-pick-of-#7751-upstream-release-3.4
Automated cherry pick of #7751: fix: optimized cloudid
2020-09-04 10:33:20 +08:00
Zexi Li
cf056fe42a Merge pull request #7750 from rainzm/automated-cherry-pick-of-#7748-upstream-release-3.4
Automated cherry pick of #7748: feat(esxi): correctly judge whether inet is nil
2020-09-04 10:32:32 +08:00
Zexi Li
1aa16871eb Merge pull request #7755 from swordqiu/automated-cherry-pick-of-#7740-upstream-release-3.4
Automated cherry pick of #7740: fix: find correct esxi host access ip
2020-09-04 10:31:54 +08:00
Zexi Li
4dfd459b14 Merge pull request #7758 from swordqiu/automated-cherry-pick-of-#7757-upstream-release-3.4
Automated cherry pick of #7757: fix: support VirtualDiskRawDiskMappingVer1BackingInfo
2020-09-04 10:31:17 +08:00
Zexi Li
3d1bce5f51 Merge pull request #7754 from swordqiu/automated-cherry-pick-of-#7753-upstream-release-3.4
Automated cherry pick of #7753: fix: remove redundant auth cookie in sso login
2020-09-04 10:30:47 +08:00
Zexi Li
5ff14eb618 Merge pull request #7745 from wanyaoqi/automated-cherry-pick-of-#7744-upstream-release-3.4
Automated cherry pick of #7744: glance: check min disk size on update
2020-09-04 10:29:49 +08:00
Zexi Li
57c0706d9e Merge pull request #7742 from swordqiu/automated-cherry-pick-of-#7741-upstream-release-3.4
Automated cherry pick of #7741: fix: search by chs projectname or domainname
2020-09-04 10:29:00 +08:00
Zexi Li
4dfa6f8b19 Merge pull request #7736 from rainzm/automated-cherry-pick-of-#7735-upstream-release-3.4
Automated cherry pick of #7735: fix(compute): return InputParameterError while ValidateCreateData
2020-09-04 10:27:46 +08:00
Qiu Jian
0619da6f14 fix: support VirtualDiskRawDiskMappingVer1BackingInfo 2020-09-04 00:15:14 +08:00
yunion-ci-robot
f62912dd5b Merge pull request #7734 from rainzm/automated-cherry-pick-of-#7733-upstream-release-3.4
Automated cherry pick of #7733: Feature & Fix for Notify
2020-09-04 00:03:42 +08:00
Qiu Jian
29a3db9ff6 fix: find correct esxi host access ip 2020-09-03 23:56:30 +08:00
Qiu Jian
c50497090e fix: remove redundant auth cookie in sso login 2020-09-03 23:54:15 +08:00
yunion-ci-robot
47f5f9edc1 Merge pull request #7731 from swordqiu/automated-cherry-pick-of-#7730-upstream-release-3.4
Automated cherry pick of #7730: fix: compatiblity fixes with lenovo RD620 and huawei 2288 fix: compatiblity fixes with lenovo RD620 and huawei 2288
2020-09-03 21:54:51 +08:00
rainzm
ff52e00448 feat(notify): Allow use topic to filter notification 2020-09-03 21:25:05 +08:00
rainzm
7c6e053a08 feat(notify): Add TNotifyChannel const of robot 2020-09-03 21:25:05 +08:00
rainzm
8c6fdd1106 feat(notify): replace VerifiedContactTypes with VerifiedInfos in ReceiverDetails
VerifiedInfos will provide Note to display.
2020-09-03 21:25:05 +08:00
rainzm
beee6e2c9f feat(notify): Support trigger-verify for feishu, dingtalk and workwx 2020-09-03 21:25:04 +08:00
rainzm
60412cf7e8 feat(notify): Add VerifiedNote for SSubContact
VerifiedNote will be 'ok' if SSubContact verified successfully.
Otherwise, there will be there value for VerifiedNote:
1. no such mobile: mobile is not exist, change and try again.
2. incomplete config: tell admin to improve the configuration.
3. service exceptions: try again or connect to admin.
2020-09-03 21:25:04 +08:00
rainzm
90b84e995b feat(notify): break down error from UseridByMobile 2020-09-03 21:25:04 +08:00
rainzm
851b2d4bb7 fix(notify): Set default priority 'normal' when creating notification 2020-09-03 21:25:04 +08:00
rainzm
ab02e166e9 fix(notify): Mark verified not enabled in MarkContactTypeVerified 2020-09-03 21:25:04 +08:00
rainzm
10caff1d9c refactor(notify): hide SSunContact webconsole
Every receiver has webconsole type contact that is equal with
receiverid.
Now, make webconsole invisible, and it does exist.
2020-09-03 21:25:04 +08:00
rainzm
82b7e659ad fix(notify): Allow user list receivers 2020-09-03 21:25:04 +08:00
rainzm
9e1a7c5e12 fix(notify): use AfterSend for contact with succuessful sending 2020-09-03 21:25:04 +08:00
Qu Xuan
5cc25ae10a fix: optimzed sync 2020-09-03 21:18:30 +08:00
Qu Xuan
cfd76b23a3 fix: optimized cloudid 2020-09-03 21:18:30 +08:00
rainzm
65ca3ace74 feat(esxi): correctly judge whether inet is nil 2020-09-03 20:35:32 +08:00
wanyaoqi
00265fedda glance: check min disk size on update 2020-09-03 20:00:45 +08:00
Qiu Jian
976dbd7796 fix: search by chs projectname or domainname 2020-09-03 18:38:48 +08:00
rainzm
c050629ba2 fix(compute): return InputParameterError while ValidateCreateData 2020-09-03 15:24:03 +08:00
Qiu Jian
949e2ebed9 fix: compatiblity fixes with lenovo RD620 and huawei 2288 2020-09-03 11:50:00 +08:00
yunion-ci-robot
dc19a10323 Merge pull request #7728 from tb365/automated-cherry-pick-of-#7725-upstream-release-3.4
Automated cherry pick of #7725: create classic vpc fix
2020-09-03 10:32:41 +08:00
TangBin
612ad9286b create classic vpc fix 2020-09-02 18:26:16 +08:00
yunion-ci-robot
32bc9b45a1 Merge pull request #7721 from ioito/automated-cherry-pick-of-#7587-upstream-release-3.4
Automated cherry pick of #7587: feature: add dns interface
2020-09-02 18:00:06 +08:00
Qu Xuan
03456eaaa9 fix: avoid nil panic 2020-09-02 17:27:24 +08:00
Qu Xuan
d03fddcd7d fix: avoid policy value not save 2020-09-02 17:27:24 +08:00
Qu Xuan
893085a2c6 fix: climc params 2020-09-02 17:27:24 +08:00
Qu Xuan
a85a1aecd4 feature: add dns interface 2020-09-02 17:27:24 +08:00
yunion-ci-robot
c3d7168622 Merge pull request #7717 from zhaoxiangchun/automated-cherry-pick-of-#7716-upstream-release-3.4
Automated cherry pick of #7716: alert record bugfix
2020-09-02 16:33:42 +08:00
yunion-ci-robot
06c0ada74c Merge pull request #7719 from wanyaoqi/automated-cherry-pick-of-#7718-upstream-release-3.4
Automated cherry pick of #7718: vmware disk support deploy lvm partition
2020-09-02 16:31:45 +08:00
yunion-ci-robot
6e5f5b2ea3 Merge pull request #7723 from wanyaoqi/automated-cherry-pick-of-#7722-upstream-release-3.4
Automated cherry pick of #7722: update host status to unknown on host offline
2020-09-02 16:28:40 +08:00
Rain Zheng
eb9d794fab Automated cherry pick of #7714: Feature & Fix for Notify (#7715)
* feat(notify): Add 'get-types' action for ConfigManager

The List interface is only open to administrators,
because we don't want anyone other than administrators
to see the details of the notify configuration.
To let general user to kown available notification channels,
add 'get-types' actions of ConfigManager.

* feat(notify): Check the availability of contact type before creating notification

Creating notification with unconfigured contact type will fail at
sending message. Now, prevent creation in advance.

* feat(notify): Add workwx for NotifyNormal/Important/Critical

* feat(notify): Add Notify about robot in notifyclient

* fix(notify): Init ParentContactType for SSubContact

1. ParentContactType of SSubContact with webconsole type is empty.
2. ParentContactType of others SSubContact is mobile.

* fix(notify): Unverify SSubContact when ParentContactType match

* fix(notify): When no data is initialized, exit directly
2020-09-02 16:10:38 +08:00
wanyaoqi
20b949091e update host status to unknown on host offline 2020-09-02 13:09:24 +08:00
wanyaoqi
43ce3b5455 vmware disk support deploy lvm partition 2020-09-01 21:15:22 +08:00
zhaoxiangchun
d95e64e593 listfilter by alert_id 2020-09-01 20:47:18 +08:00
zhaoxiangchun
06bd735f0b alert record bugfix
1.return details fix
2020-09-01 20:47:18 +08:00
wanyaoqi
607e3d8fdc hostinfo: try create network add is_on_premise (#7707) 2020-09-01 20:10:37 +08:00
屈轩
800dd26c60 fix: add details for account delete (#7703)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2020-09-01 20:09:47 +08:00
Yousong Zhou
77a5c1ff85 Automated cherry pick of #7712: httperrors: support setting lang with X-Yunion-Lang (#7713)
* httperrors: support setting lang with X-Yunion-Lang

* mcclient: session: set lang
2020-09-01 19:52:38 +08:00
Yousong Zhou
bde5e1b96a httperrors: use existing details if id is not present (#7711) 2020-09-01 18:32:37 +08:00
Zexi Li
82942006b6 Merge pull request #7665 from ioito/automated-cherry-pick-of-#7664-upstream-release-3.4
Automated cherry pick of #7664: fix: avoid delete aws iam user failed
2020-09-01 12:19:25 +08:00
Jian Qiu
836151eee3 fix: vmware esxi host detects vnic portgroup info (#7660)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-09-01 10:51:41 +08:00
Jian Qiu
0566e1dec7 fix: apigateway user info add is_local attribtue (#7695)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-09-01 10:49:36 +08:00
Rain Zheng
b03c8ce506 Automated cherry pick of #7692: feat(notify): Support update for notify config (#7693)
* feat(notify): Support update for notify config

* fix(notify): Be compatible with the email configuration

Email config key text changed:
mail.username => username
mail.password => password
mail.smtp.hostname => hostname
mail.smtp.hostport => hostport

* fix(notify): Give users permission to operate receiver

* fix(notify): Allow negative update for receiver

Now, input.Email and input.Mobile can be empty which means
that do not update the corresponding field.

* feat(notify): Support for triggering validation on feishu, dingtalk and worwx

Triggering validation on these contact types means repulling a Contact about them.

* feat(notify): Adds validity period for verify

Verification beyond the expiration date will fail.

* fix(notify): SQuery of scopedomain in FilterByOwner
2020-09-01 10:48:37 +08:00
Rain Zheng
c914dafa75 Automated cherry pick of #7661: fix(host-deployer): Exit correctly after mounting (#7672)
* fix(esxi): Fetch full templates of datastoreImageCache

Datastore 和 DatastoreImageCache 是一对一的关系。
每一个 Datastore 可能有多个对应的 Host,所以 GetIIMages 里面获取
Templates 的逻辑应该尝试去获取所有 Host 的 Templates。

* fix(host-deployer): Exit correctly after mounting

MountRootfs的返回值为nil时,还是需要Umount的操作来正确退出(比如VDDK)。
VDDK的Mount分为两步,第一步会挂在remote
disk到fuse下,然后挂载fuse/xxx/flat
到块设备上。第一步成功,第二部失败也应该正确退出。

* fix(host-deployer): Kill process

* opt(host-deployer): Increase timeout of waiting mount

* opt(host-deployer): Add debug log print command to mount

* fix(esxi): Support multi agent in different zone
2020-09-01 10:47:39 +08:00
Zexi Li
6c30c1c789 Merge pull request #7681 from wanyaoqi/automated-cherry-pick-of-#7680-upstream-release-3.4
Automated cherry pick of #7680: snapshot list by guest
2020-09-01 10:47:14 +08:00
Zexi Li
adf8885a7a Merge pull request #7671 from zhaoxiangchun/automated-cherry-pick-of-#7667-upstream-release-3.4
Automated cherry pick of #7667: monitor commonalert bugfix
2020-09-01 10:46:24 +08:00
Jian Qiu
cca2267389 fix: server purge may fail (#7698)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-09-01 10:33:06 +08:00
Jian Qiu
538bc873a0 fix: http error limit request body length fix: http error limit request body length (#7700)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-09-01 10:18:36 +08:00
屈轩
9812864bce fix: 不限制openstack系统盘类型 (#7675)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2020-09-01 01:24:36 +08:00
wanyaoqi
4af4bcb963 fix host get guests (#7683) 2020-09-01 01:14:09 +08:00
wanyaoqi
b85fb98297 fix get storage capacity on init' (#7687) 2020-09-01 01:03:37 +08:00
Yousong Zhou
19ba4b9755 vpcagent: respect guest src check settings (#7678)
mac   ip    dhcp    ping    xipping    xmacping
  on    on    y       y       n          n
  on    off   y       y       y          n
  off   off   y       y       y          y

external access depends on source routing, changing ip address will
fail that

note dst mac address of reply packet when changing only mac address
with vpc ip remains the same
2020-08-31 16:39:37 +08:00
wanyaoqi
438c1ced5f snapshot list by guest 2020-08-31 15:27:27 +08:00
zhaoxiangchun
be5bf11ebe commonalert bugfix 2020-08-31 10:28:23 +08:00
zhaoxiangchun
6cea2883ab 统一监控查询面板保存 2020-08-31 10:28:23 +08:00
Jian Qiu
5647a6842d fix: cleanup logic for nics of pending_deleted guests (#7669)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-08-31 09:33:35 +08:00
Zexi Li
fba76c6392 Merge pull request #7663 from wanyaoqi/automated-cherry-pick-of-#7662-upstream-release-3.4
Automated cherry pick of #7662: update host deployer base image version
2020-08-28 20:36:42 +08:00
Qu Xuan
6ed3a48333 fix: avoid delete aws iam user failed 2020-08-28 20:24:53 +08:00
wanyaoqi
53a6c40a8a update host deployer base image version 2020-08-28 20:19:15 +08:00
wanyaoqi
eee193165e baremetal colloct isolated devices info (#7658) 2020-08-28 12:10:34 +08:00
Zexi Li
5987b56297 Merge pull request #7652 from tb365/automated-cherry-pick-of-#7650-upstream-release-3.4
Automated cherry pick of #7650: eip & vpc manager match fix
2020-08-28 12:09:20 +08:00
wanyaoqi
8e83ab4768 fix mount fetcher fs (#7657) 2020-08-28 12:08:35 +08:00
wanyaoqi
b977641336 remove backup metadata on delete backup (#7654) 2020-08-28 12:01:37 +08:00
TangBin
132c583790 eip & vpc manager match fix 2020-08-28 10:20:24 +08:00
wanyaoqi
557240155d fix build baremetal agent image (#7647) 2020-08-27 11:02:34 +08:00
屈轩
3243e5a035 fix: aovid truncated data (#7644)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2020-08-26 21:45:34 +08:00
Jian Qiu
e3fe66e8eb fix: add keystone sync user debug info (#7639)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-08-26 18:42:37 +08:00
Jian Qiu
de80f17053 fix: turn off some default project policies (#7637)
Co-authored-by: Qiu Jian <qiujian@yunionyun.com>
2020-08-26 18:41:35 +08:00
屈轩
aef249ea8e fix: avoid openstack image-list failed (#7641)
Co-authored-by: Qu Xuan <quxuan@yunionyun.com>
2020-08-26 18:33:33 +08:00
23505 changed files with 1202636 additions and 7547933 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.0-1
environment:
ONECLOUD_CI_BUILD: "1"
working_directory: /root/go/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.0-1
environment:
ONECLOUD_CI_BUILD: "1"
@@ -15,22 +26,59 @@ jobs:
#### expecting it in the form of
#### /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
working_directory: /root/go/onecloud
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 -j3 $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.0-1
environment:
GO111MODULE: "on"
working_directory: /root/go/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,7 +0,0 @@
_output/alpine-build/_cache
pkg
vendor
cmd
locales
docs
scripts

View File

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

View File

@@ -1,20 +1,21 @@
---
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**:
**What you expected to happen**:
- OS (e.g. `cat /etc/os-release`):
**How to reproduce it**:
**Anything else we need to know?**:
**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`):
-->
- Others:

View File

@@ -1,12 +0,0 @@
---
name: 文档问题/Document Request
about: 文档相关缺陷改进/Document request to this project
title: '[文档/Docs]'
labels:
- area/docs
- enhancement
assignees: ''
---
**What part of the document needs to be added**:

View File

@@ -1,10 +1,14 @@
---
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: ''
---
<!-- Please only use this template for submitting feature requests -->
**What would you like to be added**:
**Why is this needed**:

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

@@ -1,19 +1,15 @@
**What this PR does / why we need it**:
**这个 PR 实现什么功能/修复什么问题**:
<!--
- [ ] Smoke testing completed
- [ ] Unit test written
- [ ] 功能、bugfix描述
- [ ] 冒烟测试
- [ ] 单元测试编写
-->
**Does this PR need to be backport to the previous release branch?**:
**是否需要 backport 到之前的 release 分支**:
<!--
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
Take a look at "https://www.cloudpods.org/en/docs/contribute/contrib/" to learn how to submit a cherry-pick PR.
如果不需要,填写 "NONE".
如果需要,就以下面 item 的格式写 release 分支名,并提交对应的 cherry-pick PR:
- release/3.2
-->

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}}"

3
.gitignore vendored
View File

@@ -31,7 +31,6 @@ _output
/structargtest
.idea
.vscode
intellij.yaml
GPATH
GRTAGS
GTAGS
@@ -41,5 +40,3 @@ pkg/generated
# gotext extracted
out.gotext.json
pkg/notify/sender/email_test.go

View File

@@ -1,128 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
abuse@cloudpods.org.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

View File

@@ -1,51 +1,3 @@
# Contribution Guide
[English](CONTRIBUTING.md) | [中文](CONTRIBUTING_zh.md)
You can help to make Cloudpods better! There are many things you can do:
## Help others know Cloudpods
First of all, the easiest way to contribute to Cloudpods is to let more people know Cloudpods. To share your experience of Cloudpods. Hopefully Cloudpods may help resolve the issues in their daily jobs.
## Report Bugs
Cloudpods is an infrastructure management tool. Even though it has been thourougly tested and codes have been peer reviwed before merge, due to its complexity, you may still encounter bugs when using Cloudpods. This is frustrating. However, please do not hesitate to submit a issue at Github. The issue may help developers to improve the codes and make Cloudpods more and more robust. Meanwhile, the answer to the issues may also help others who have the similar bugs.
## Answer issues
You may answer issues at Github and help those who encounter issues when using Cloudpods. Sometimes, the issues are not due to bugs in codes but simplely because of misconfigurations, environment or misunderstandings.
## 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.
### Fix Issues
You may help solve bugs by submiting patches.
### New Features
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.
## Documentation
You may help improve documentations of Cloudpds by directly make pull request to documentations. Once the Pull Request is accepted and merged, the documentations will be updated immediately.
## Translation
You may help translate the UI texts or documents of Cloudpds to other languages. Currently, we support Simplified Chinese and English.
## Write articles
You are also welcome to write articles about Cloudpods and sharing your experience with others. The content of the articles may include the following but not be limited to:
* Your user experiences with Cloudpods
* Your opinion about the direction and area of Cloudpods
* Comparison with other cloud platforms
* Benchmarks
# 开发贡献参考
详情见文档 [开发贡献](https://docs.yunion.io/docs/contribute/)

View File

@@ -1,48 +0,0 @@
# 贡献指南
[English](CONTRIBUTING.md) | [中文](CONTRIBUTING_zh.md)
如果您对Cloudpods感兴趣并且愿意为Cloudpods贡献可以通过以下任意方式贡献您的力量使得Cloudpods变得更完善。
## 让别人知道Cloudpods
最简单的方式就是让更多的人知道Cloudpods向他们分享您对Cloudpds的看法和使用经验向他们推荐Cloudpods。很有可能在您的推荐下他们开始使用Cloudpods并解决了他们在工作中遇到的基础设施管理问题。
## 报告BUG
Cloudpods是一款开源的基础设施管理工具软件运行场景复杂。尽管在开发阶段开发者很有可能已经进行了详尽的测试但难免在实际运行中还会遇到各种意想不到的bug。遇到这种情况请不要犹豫在Github上提交一个issue。这能帮助开发者更好地改进代码逻辑使得Cloudpods越来越鲁棒。同时issue的解答记录也能帮助到遇到类似问题的其他人。
## 回答问题
有时候人们在使用Cloudpods中遇到的问题并不是因为Cloudpods软件缺陷造成的而是因为配置错误环境因素或者误会导致的。这样的问题也许只需要简单地一两句就能解答不需要代码的修改。您可以在Github回答issue或者社区群中回答提问帮助那些在使用Cloudpods中遇到问题的人。
## 贡献代码
我们非常欢迎和感谢开发者向项目提交代码PR流程细节请查看 [CONTRIBUTING](https://www.cloudpods.org/docs/development/contrib/).
### 修复BUG
您可以通过提交代码补丁来修复Cloudpods存在的BUG。
### 开发新的功能特性
不仅仅是修复BUG您也可以通过提交代码以改进Cloudpods包括但不限于
* 开发新的功能特性,您可以在[feature issues](https://github.com/yunionio/cloudpods/issues?q=is%3Aopen+is%3Aissue+label%3Afeature)查找需要的功能。
* 重构代码,使得代码更加简洁易读,更加低健壮,或者执行起来更加高效。
## 文档
您也可以通过给文档提交PR来改进Cloudpods的文档。一旦您的PR被接收并合并Cloudpods的在线文档就能及时地自动更新。
## 翻译
您也可以帮助翻译Cloudpods要么翻译UI界面的i18n配置文件要么翻译文档使得Cloudpods支持更多的语言。目前Cloudpods支持简体中文和英文。
## 写文章
另外欢迎您写关于Cloudpods的文章通过文字分享您使用Cloudpods的经验和技巧。文章可以包括但不限于如下内容
* 使用Cloudpods的体验
* Cloudpods技术领域的观点
* 和其他竞品的比较
* 性能评测

View File

@@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Copyright [2018] [Yunion Technology]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

180
Makefile
View File

@@ -6,11 +6,10 @@ ROOT_DIR := $(CURDIR)
BUILD_DIR := $(ROOT_DIR)/_output
BIN_DIR := $(BUILD_DIR)/bin
BUILD_SCRIPT := $(ROOT_DIR)/build/build.sh
DEB_BUILD_SCRIPT := $(ROOT_DIR)/build/build_deb.sh
ifeq ($(ONECLOUD_CI_BUILD),)
GIT_COMMIT := $(shell git rev-parse --short HEAD)
GIT_BRANCH := $(shell git branch -r --contains | head -1 | sed -E -e "s%(HEAD ->|origin|upstream)/?%%g" | xargs)
GIT_BRANCH := $(shell git name-rev --name-only HEAD)
GIT_VERSION := $(shell git describe --always --tags --abbrev=14 $(GIT_COMMIT)^{commit})
GIT_TREE_STATE := $(shell s=`git status --porcelain 2>/dev/null`; if [ -z "$$s" ]; then echo "clean"; else echo "dirty"; fi)
BUILD_DATE := $(shell date -u +'%Y-%m-%dT%H:%M:%SZ')
@@ -47,6 +46,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,9 +62,8 @@ 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)))
all: build
@@ -76,23 +79,20 @@ 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/%: 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) $*
deb/%: cmd/%
$(DEB_BUILD_SCRIPT) $*
pkg/%: prepare_dir
$(GO_INSTALL) $(REPO_PREFIX)/$@
@@ -102,9 +102,6 @@ build:
rpm:
$(MAKE) $(rpmTargets)
deb:
$(MAKE) $(debTargets)
rpmclean:
rm -fr $(BUILD_DIR)/rpms
@@ -129,11 +126,6 @@ clean:
fmt:
@git ls-files --exclude '*' '*.go' \
| grep -v '^vendor/' \
| while read f; do \
if ! grep -m1 -q '^// Code generated .* DO NOT EDIT\.$$' "$$f"; then \
echo "$$f"; \
fi ; \
done \
| xargs $(XARGS_FLAGS) gofmt -w
fmt-check: fmt
@@ -166,8 +158,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
@@ -177,69 +168,10 @@ vet-check:
./scripts/vet.sh chk
.PHONY: vet-check
comma:=,
space:=$(space) $(space)
# NOTE: keep y18n-packages in alphabetical order
y18n-src-lang := en-US
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 \
define y18n-gen
set -o errexit; \
set -o pipefail; \
export GO111MODULE=off; \
y18n \
-chdir $(CURDIR) \
-dir ./locales/ \
-out ./locales/locales.go \
-lang $(y18n-lang) \
$(y18n-packages) \
; \
$(foreach lang,$(filter-out $(y18n-src-lang),$(subst $(comma), ,$(y18n-lang))),cp ./locales/$(lang)/{out,messages}.gotext.json;) \
endef
y18n-gen:
$(y18n-gen)
$(y18n-gen)
.PHONY: y18n-gen
y18n-check:
$(y18n-gen)
if git status --short ./locales | sed 's/^/$@: /' | grep .; then \
echo "$@: Locales content needs care" >&2 ; \
false; \
fi
.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: y18n-check
check: goimports-check
check: vet-check
.PHONY: check
@@ -261,18 +193,82 @@ 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
DOCKER_CENTOS_BUILD_IMAGE?=registry.cn-beijing.aliyuncs.com/yunionio/centos-build:1.1-1
define dockerCentOSBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
cd /root/onecloud
export GOFLAGS=-mod=vendor
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
docker-centos-build: export dockerCentOSBuildCmd:=$(call dockerCentOSBuildCmd,$(F))
docker-centos-build:
docker rm --force onecloud-ci-build &>/dev/null || true
docker run \
--name onecloud-docker-centos-build \
--rm \
--volume $(CURDIR):/root/onecloud \
--volume $(CURDIR)/_output/_cache:/root/.cache \
$(DOCKER_CENTOS_BUILD_IMAGE) \
/bin/bash -c "$$dockerCentOSBuildCmd"
chown -R $$(id -u):$$(id -g) _output
ls -lh _output/bin
# NOTE we need a way to stop and remove the container started by docker-build.
# No --tty, --stop-signal won't work
docker-centos-build-stop:
docker stop --time 0 onecloud-docker-centos-build || true
.PHONY: docker-centos-build
.PHONY: docker-centos-build-stop
DOCKER_ALPINE_BUILD_IMAGE?=registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:1.0-3
define dockerAlpineBuildCmd
set -o xtrace
set -o errexit
set -o pipefail
cd /root/go/src/yunion.io/x/onecloud
export GOFLAGS=-mod=vendor
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
docker-alpine-build: export dockerAlpineBuildCmd:=$(call dockerAlpineBuildCmd,$(F))
docker-alpine-build:
docker rm --force onecloud-docker-alpine-build &>/dev/null || true
docker run --rm \
--name onecloud-docker-alpine-build \
-v $(CURDIR):/root/go/src/yunion.io/x/onecloud \
-v $(CURDIR)/_output/alpine-build:/root/go/src/yunion.io/x/onecloud/_output \
-v $(CURDIR)/_output/alpine-build/_cache:/root/.cache \
$(DOCKER_ALPINE_BUILD_IMAGE) \
/bin/sh -c "$$dockerAlpineBuildCmd"
ls -lh _output/alpine-build/bin
docker-alpine-build-stop:
docker stop --time 0 onecloud-docker-alpine-build || true
.PHONY: docker-alpine-build
.PHONY: docker-alpine-build-stop
define helpText
Build with docker
make docker-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
@@ -323,11 +319,5 @@ image:
.PHONY: image
image-telegraf-raid-plugin:
VERSION=v4.0-20260115.0 GOOS=linux ARCH=all make image telegraf-raid-plugin
%:
@:
ModName:=yunion.io/x/onecloud
include $(CURDIR)/Makefile.common.mk

View File

@@ -1,66 +0,0 @@
ifeq ($(__inc_Makefile_common_mk),)
__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
EnvIf=$(if $($(1)),$(1)=$($(1)))
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) \
$(call EnvIf,GOOS) \
$(call EnvIf,CGO_ENABLED) \
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
tmpName=$(ModBaseName)-$(shell date +"%Y%m%d.%H%M%S%3N")
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) \
$(call EnvIf,CGO_ENABLED) \
make $(1)
chown -R $(shell id -u):$(shell id -g) _output
endef
docker-alpine-build: export dockerAlpineBuildCmd:=$(call dockerAlpineBuildCmd,$(F))
docker-alpine-build:
docker rm --force docker-alpine-build-$(tmpName) &>/dev/null || true
docker run \
--rm \
--name docker-alpine-build-$(tmpName) \
-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 \
$(DockerImageAlpineBuild) \
/bin/sh -c "$$dockerAlpineBuildCmd"
ls -lh _output/alpine-build/bin
docker-alpine-build-stop:
docker stop --time 0 docker-alpine-build-$(tmpName) || true
.PHONY: docker-alpine-build
.PHONY: docker-alpine-build-stop
endif # __inc_Makefile_common_mk

13
OWNERS
View File

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

View File

@@ -1,122 +1,54 @@
# Cloudpods
# Yunion OneCloud (云联融合云)
[![CircleCI](https://circleci.com/gh/yunionio/cloudpods.svg?style=svg)](https://circleci.com/gh/yunionio/cloudpods)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/cloudpods)](https://goreportcard.com/report/github.com/yunionio/cloudpods)
[![CircleCI](https://circleci.com/gh/yunionio/onecloud.svg?style=svg)](https://circleci.com/gh/yunionio/onecloud)
[![Build Status](https://travis-ci.com/yunionio/onecloud.svg?branch=master)](https://travis-ci.org/yunionio/onecloud)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/onecloud)](https://goreportcard.com/report/github.com/yunionio/onecloud)
[简体中文](./README-CN.md) | [English](./README.md)
## 什么是云联融合云?
## Cloudpods是什么?
云联融合云Yunion OneCloud是一个开源的多云平台。融合云构建在用户分布于多云基础设施之上通过技术手段将分布于多云的异构IT资源统一管理将多底层多云的差异向用户屏蔽并通过网络和调度实现资源的融合与打通在多云之上进行抽象向用户呈现统一的使用界面和API接口让用户就像使用一个云平台一样使用分布于多云的资源实现一个统一的“云上之云”的云平台。
<img src="https://v1.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
鉴于企业IT基础设施的两个趋势1. 企业使用多云基础设施并且公有云是最主要的基础设施提供者2. 企业应用将逐步云原生化企业IT基础设施需要为Kubernetes优化。融合云为此架构而设计。一方面抽象管理底层的多云基础设施另一方面为多云Kubernetes提供运行环境。融合云为企业未来的的IT基础设施架构而设计。
Cloudpods是一个开源的Golang实现的云原生的融合多云/混合云的云平台也就是一个”云上之云”。Cloudpods不仅可以管理本地的虚拟机和物理机资源还可以管理多个云平台和云账号。Cloudpods隐藏了这些异构基础设施资源的数据模型和API的差异对外暴露了一套统一的API允许用户就像用一个云一样地访问多云。从而大大降低了访问多云的复杂度提升了管理多云的效率。
云联融合云具备以下功能特性:
Cloudpods还提供了 **AI 云**一个面向大语言模型LLM推理与 AI 容器应用的统一管理平台,帮助企业在同一平台完成 AI 工作负载的部署、调度与运维,与 Cloudpods 私有云/多云资源体系无缝集成。
- 多云资源统一管理
## 谁需要Cloudpods?
统一API、镜像、调度、账号体系、监控和计费等操作能够全面管理 On premises、 私有云、公有云资源。
* 将几台物理服务器虚拟化成一个私有云平台
* 需要一个紧凑而且功能相对完整的物理机全生命周期管理工具
* 将VMware vSphere虚拟化集群转换为一个可以自服务的私有云平台
* 在混合云的场景,能够在一个界面访问私有云和公有云
* 通过一个集中的入口访问分布在多个公有云平台上的多个账号
* 当前只使用一个公有云账号但希望将来使用多云的用户
* 需要部署和管理 LLM 推理服务及 AI 容器应用,并需要 GPU 调度支持的用户
- 内置私有云
## 功能
OneCloud内置完备的私有云实现提供对用户本地IDC的虚拟机、物理机和负载均衡等资源管理。
请访问[产品介绍](https://www.cloudpods.org/docs/introduction/)页面了解详细信息。
- 为多云Kubernetes提供运行环境
### AI 云
OneCloud自身为运行在Kubernetes的云原生应用并且能在多云环境部署运行Kubernetes集群。
* **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
### 支持的云平台
## 部署
* 公有云:
* AWS
* Azure
* Google Cloud Platform
* 阿里云
* 华为云
* 腾讯云
* UCloud
* 天翼云
* 移动云
* 京东云
* 火山引擎
* 百度云
* 金山云
* 青云
* Oracle Cloud
* 联通云
* 私有云:
* OpenStack
* ZStack
* Alibaba Cloud Apsara (阿里飞天)
* Huawei HCSO (华为HCSO)
* Nutanix
* BingoCloud
* OceanBase
* 本地基础设施资源:
* 基于 KVM 实现的轻量级私有云
* VMware vSphere vCenter/ESXi
* Proxmox VE
* 裸金属 (IPMI, Redfish API)
* 对象存储 (Minio, Ceph, XSky)
* NAS (Ceph)
请参考文档 [安装部署](https://docs.yunion.io/docs/setup/) 搭建 OneCloud 集群。
### 支持的云资源
* 服务器实例、磁盘、网卡、网络、VPC、存储、宿主机、二层网络、快照、快照策略、安全组、弹性 IP、SSH 密钥对、镜像
* 负载均衡实例、监听、后端服务器组、后端服务器、TLS 证书、访问控制
* 对象存储:存储桶、对象
* NAS文件系统、权限组、挂载点
* RDS实例、账号、备份、数据库、参数、权限
* 弹性缓存:实例、账号、备份、参数
* DNSDNS 区域、DNS 记录
* VPCVPC、VPC 对等连接、跨 VPC 网络、NAT 网关、DNAT/SNAT 规则、路由表、路由条目
## 安装部署
请参考文档[安装部署](https://www.cloudpods.org/docs/getting-started/)选择合适的场景部署。
## 文档
* [Cloudpods文档](https://www.cloudpods.org/zh)
- [文档中心](https://docs.yunion.io/)
* [Swagger API文档](https://www.cloudpods.org/zh/docs/swagger/)
- [Swagger API文档](https://docs.yunion.cn/api/)
## 谁在使用Cloudpods
请在[这里](https://github.com/yunionio/cloudpods/issues/11427)查看Cloudpods用户列表。如果你正在使用Cloudpods欢迎回复留下你的信息。谢谢对Cloudpods的支持
## 架构
## 联系我们
![architecture](./docs/architecture.svg)
* 请查看[联系我们](https://www.cloudpods.org/docs/contact/)。
* TG群: [cloudpods](https://t.me/cloudpods_org)
## 版本历史
请查看[发布日志](https://www.cloudpods.org/docs/release-notes/)和[Changelog](https://www.cloudpods.org/docs/development/changelog/)。
## 贡献
欢迎和感谢任何形式的贡献,不局限于贡献代码,流程细节请查看 [CONTRIBUTING](./CONTRIBUTING_zh.md)。
我们非常欢迎和感谢开发者向项目做贡献,流程细节请查看 [CONTRIBUTING.md](./CONTRIBUTING.md)
## License
Apache license 2.0详情请看 [LICENSE](./LICENSE)。
## AI生成文档
[DeepWiki](https://deepwiki.com/yunionio/cloudpods) 提供了对本项目代码详细和全面的AI解读可以参考。
OneCloud 使用 Apache license 2.0. 详情请看 [LICENSE](./LICENSE)

126
README.md
View File

@@ -1,123 +1,55 @@
# Cloudpods
# Yunion OneCloud
[![CircleCI](https://circleci.com/gh/yunionio/cloudpods.svg?style=svg)](https://circleci.com/gh/yunionio/cloudpods)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/cloudpods)](https://goreportcard.com/report/github.com/yunionio/cloudpods)
[![CircleCI](https://circleci.com/gh/yunionio/onecloud.svg?style=svg)](https://circleci.com/gh/yunionio/onecloud)
[![Build Status](https://travis-ci.com/yunionio/onecloud.svg?branch=master)](https://travis-ci.com/yunionio/onecloud/branches)
[![Go Report Card](https://goreportcard.com/badge/github.com/yunionio/onecloud)](https://goreportcard.com/report/github.com/yunionio/onecloud)
[English](./README.md) | [简体中文](./README-CN.md)
### [README in Chinese](./README-CN.md)
## What is Cloudpods?
## What is Yunion OneCloud?
<img src="https://v1.cloudpods.org/images/cloudpods_logo_green.png" alt="Cloudpods" height="100">
Yunion OneCloud is an open source unified-IaaS cloud platform.
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.
As its name sugguests, 'Yun' means 'cloud' in Chinese and 'Yunion OneCloud' means to unify many distinct clouds into the one that behaves like an integral cloud platform.
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.
As trends show, the enterprise IT infrastructure in the future would be unavoidably heterogeneous and the public clouds should be the major infrastructure providers for many enterprises. Further, the infrastructure would most likely be prepared for the cloud-native applications running on Kubernetes. Yunion OneCloud is built to provide the cloud architecture for this scenario such that it is the middle layer between the underlying cloud infrustructures and the overlay kubernetes clusters across many clouds.
## Who needs Cloudpods?
Many may consider Yunion OneCloud as a multi-cloud management platform (MCMP). Rather, we would view it as an IaaS platform as it does not only manage the resources and services from many clouds, but also hides the differences of underlying technologies and exposes one set of APIs that allow programatically interacting with the compute/storage/networking resources across many clouds.
* 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 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
Yunion OneCloud is working on abstracting APIs for the following resources:
## Features
* Compute, including virtual machines, images, etc.
* Storage, including disks, snapshots, object storages, etc.
* Networking, including load balancers, VPC, virtual networks, NAT gateways, security groups, etc.
* Accouting and billing, etc.
* ...
See [Introduction](https://www.cloudpods.org/docs/introduction/) for details.
over the following many cloud providers:
### AI Cloud
* On-premise IT resources, including kvm VM, baremetal, VMware vsphere/ESXi, etc.
* Private clouds, including OpenStack, etc.
* Public clouds, including Aliyun, AWS, Azure, Tencent Cloud, Huawei Cloud, etc.
* **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.
You are welcome to install and try Yunion OneCloud. Looking forward to your feedback.
Supported AI workloads:
* AI Inference: Ollama, vLLM, SGLang
* AI Applications: OpenClaw, Dify, ComfyUI, Hermes Agent
## Installation
### Supported cloud providers
* Public Clouds:
* AWS
* Azure
* Google Cloud Platform
* Alibaba Cloud
* Huawei Cloud
* Tencent Cloud
* UCloud
* 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
* On-premise resources:
* Lightweight private cloud built on KVM
* VMware vSphere vCenter/ESXi
* Proxmox VE
* Baremetals (IPMI, Redfish API)
* Object storages (Minio, Ceph, XSky)
* NAS (Ceph)
### 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
* 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
## Getting started
Please refer to the document [Getting Started](https://www.cloudpods.org/en/docs/getting-started/) to select the appropriate scenario for installation.
Please refers to [install & deployment](https://docs.yunion.io/docs/setup/) (currently in Chinese Only).
## Documentations
* [Cloudpods Documents](https://www.cloudpods.org/en)
- [Yunion OneCloud Documents](https://docs.yunion.io/)
* [Swagger API](https://www.cloudpods.org/en/docs/swagger/)
- [Swagger API](https://docs.yunion.cn/apiv2/)
## Architecture
## Who is using Cloudpods?
Please check this [issue](https://github.com/yunionio/cloudpods/issues/11427) for the user list of Cloudpods. If you are using Cloudpods, you are welcome to leave your information by responding the issue. Thank you for your support.
## Contact
* See [Contact Us](https://www.cloudpods.org/en/docs/contact/) for details.
* Telegram: [cloudpods](https://t.me/cloudpods_org)
## Changelog
See [Release Notes](https://www.cloudpods.org/en/docs/release-notes/) and [Changelog](https://www.cloudpods.org/en/docs/development/changelog/) for details.
![architecture](./docs/architecture.svg)
## Contribution
You are welcome to do any kind of contribution to the project. Please refer to [CONTRIBUTING](./CONTRIBUTING.md) for guidelines.
You are welcome to contribute to the project. Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.
## 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.
Apache License 2.0. See [LICENSE](./LICENSE)

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

@@ -1,175 +0,0 @@
#!/bin/bash
set -e
if [ -z "$ROOT_DIR" ]; then
pushd $(dirname $(readlink -f "$BASH_SOURCE")) > /dev/null
ROOT_DIR=$(cd .. && pwd)
popd > /dev/null
fi
SRC_BIN=$ROOT_DIR/_output/bin
SRC_BUILD=$ROOT_DIR/build
OUTPUT_DIR=$ROOT_DIR/_output/debs
PKG=$1
BIN_PATH=${2:-/opt/yunion/bin}
if [ -z "$PKG" ]; then
echo "Usage: $0 <package>"
exit 1
fi
BIN="$SRC_BIN/$PKG"
ROOT="$SRC_BUILD/$PKG"
if [ ! -x "$BIN" ]; then
echo "$BIN not exists"
exit 1
fi
if [ ! -x "$ROOT" ]; then
echo "$ROOT not exists"
exit 1
fi
. $ROOT/vars
case $(uname -m) in
x86_64)
CURRENT_ARCH=amd64
;;
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
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
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}/

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 +0,0 @@
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

@@ -0,0 +1,6 @@
# rbac for project owner, not allow for delete
roles:
- domain_admin
scope: domain
policy:
'*': allow

View File

@@ -1,10 +0,0 @@
policy:
'*':
'*':
'*': allow
create: deny
delete: deny
perform:
purge: deny
clone: deny
'*': allow

View File

@@ -0,0 +1,9 @@
# rbac for normal user, not allow for delete
scope: project
policy:
'*':
'*':
'*': allow
create: deny
update: deny
delete: deny

View File

@@ -1,2 +0,0 @@
policy:
'*': allow

View File

@@ -0,0 +1,6 @@
# rbac for project owner, not allow for delete
roles:
- project_owner
scope: project
policy:
'*': allow

View File

@@ -0,0 +1,8 @@
# rbac for sysadmin
projects:
- system
roles:
- admin
scope: system
policy:
'*': allow

View File

@@ -1,6 +0,0 @@
policy:
'*':
'*':
get: allow
list: allow
'*': deny

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,6 +0,0 @@
公有云子账号创建成功
主账号:{{ .account }}<br>
名称:{{ .name }}<br>
密码:{{ .password }}<br>
登录地址: {{ .iam_login_url }}<br>
资源ID: {{ .id }}<br>

View File

@@ -1,6 +0,0 @@
Clouduser has been created successfully
Root Account: {{ .account }}<br>
Name{{ .name }}<br>
Password{{ .password }}<br>
IAM Login URL: {{ .iam_login_url }}<br>
Resource ID: {{ .id }}<br>

View File

@@ -1 +0,0 @@
公有云子账号 {{ .name }} 创建成功

View File

@@ -1 +0,0 @@
The clouduser {{ .name }} created successfully

View File

@@ -1,60 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<EntityDescriptor xmlns="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport" ID="_1e55eaf7-5cb9-4601-b557-e322fdfb2baf" entityID="urn:federation:MicrosoftOnline">
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="#_1e55eaf7-5cb9-4601-b557-e322fdfb2baf">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>fA33hUaj24/8F8bArDIkH6CpX0k=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>p/rlVWxLRIYiHozzWUgsjmQ5ItMZ/ITeEOg/edeo50l7qU8wLM9JD55EHoLpVvxImBcCfY1CxKdq3s1o9Up1jvEcH9KjfYZea1q8hzTkQdt7F2XvxoqDFRLvVwyHHJjygaEvFRXXxml7IDgDx9ScSRhQeGUlTGhI9eAFSaGkChM/FPnmekZ3ngSwbVf4FsTLIArxMqEnV0lXNMTr5NHQ6VL5wZ/cHLNCkkBoY0qWyv2hnYiZiXa4TKjpAN+8QF5GDPv/0ExJwe+aoRAQhdBzhBUICQdQd+v3Rb5SuX++iVfmf4IPMqj8CK4uK7iYXNLCGEO8oFR2KlK/zBpHzw6yCQ==</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>MIIC/TCCAeWgAwIBAgIQF9xAVqfHt7dNSOnsMKYLDjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMTkwNjE4MDAwMDAwWhcNMjEwNjE4MDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLwL+mOk+zhgjHPFiZuDaU7coCOMkYyJyWS2B2KWYx7BMmy+SBSlFvvDHIiMXeLnv9DiUnQXtjClZXNqEo2amM/KdXfnCUlwdnqGa89TbB8kM6aBQKCh5Up7vejD+KRpPcOK7DqxWnm037zNKH+6liwRMUD/+lkBODoG1/ThuBVM0Kr1Oowfnkb4JYeF5xZk+2+ThR2dcQzdsz8dBW1GpGopdoM5G1amVhoRPBeNlYUqf0JUPE36Dx0iCmeXX00HTR2gd+/DJFVe34l/VxL4cqufmRcqWHy7axonbpt8svjAervGgueF5W/BVGcO4eVwFzFfnAz7bSaH/zbsNnQkFtAgMBAAGjITAfMB0GA1UdDgQWBBQlxmu/Hj1qB2A306p0Sz9up711AjANBgkqhkiG9w0BAQsFAAOCAQEAEhb+i+J69DvzCTfmC0Mn+uSGzBaW0ksMZNjM8/p/RFueytNo8/DY6TUb9W8l/HSVON782iGG7hIsG68RUIZ5q+/WAB9iBvKkKv5aGZ0bK/eD5boHwBwMa3udTjU68Vkai0A7naISEh22h+lQPvKiftCEzK1x9j2FoAXEMhACnpTwRrrj3SsJXCsMaOKcVw7sCmM4/4wD5I1+dfMSe85rSEzzUCDcCMEg67sBKdO2CFK1GoH21ttrz1CV+xt8Pn9a488kgsp2ZyU+yixS59CrM7onEzt1R4miXWAJAtydNHAmmbgKrTxqf67fEXFcrlFAHexi6vvINZWZPD6+J+q6xg==</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
<SPSSODescriptor WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
<KeyDescriptor use="signing">
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate>MIIC/TCCAeWgAwIBAgIQF9xAVqfHt7dNSOnsMKYLDjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMTkwNjE4MDAwMDAwWhcNMjEwNjE4MDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLwL+mOk+zhgjHPFiZuDaU7coCOMkYyJyWS2B2KWYx7BMmy+SBSlFvvDHIiMXeLnv9DiUnQXtjClZXNqEo2amM/KdXfnCUlwdnqGa89TbB8kM6aBQKCh5Up7vejD+KRpPcOK7DqxWnm037zNKH+6liwRMUD/+lkBODoG1/ThuBVM0Kr1Oowfnkb4JYeF5xZk+2+ThR2dcQzdsz8dBW1GpGopdoM5G1amVhoRPBeNlYUqf0JUPE36Dx0iCmeXX00HTR2gd+/DJFVe34l/VxL4cqufmRcqWHy7axonbpt8svjAervGgueF5W/BVGcO4eVwFzFfnAz7bSaH/zbsNnQkFtAgMBAAGjITAfMB0GA1UdDgQWBBQlxmu/Hj1qB2A306p0Sz9up711AjANBgkqhkiG9w0BAQsFAAOCAQEAEhb+i+J69DvzCTfmC0Mn+uSGzBaW0ksMZNjM8/p/RFueytNo8/DY6TUb9W8l/HSVON782iGG7hIsG68RUIZ5q+/WAB9iBvKkKv5aGZ0bK/eD5boHwBwMa3udTjU68Vkai0A7naISEh22h+lQPvKiftCEzK1x9j2FoAXEMhACnpTwRrrj3SsJXCsMaOKcVw7sCmM4/4wD5I1+dfMSe85rSEzzUCDcCMEg67sBKdO2CFK1GoH21ttrz1CV+xt8Pn9a488kgsp2ZyU+yixS59CrM7onEzt1R4miXWAJAtydNHAmmbgKrTxqf67fEXFcrlFAHexi6vvINZWZPD6+J+q6xg==</X509Certificate>
</X509Data>
</KeyInfo>
</KeyDescriptor>
<KeyDescriptor use="signing">
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate>MIIC/TCCAeWgAwIBAgIQbgDHfi3t1JNGVqwD5/7lmjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMjAxMjIxMDAwMDAwWhcNMjUxMjIxMDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDFT0/0/2qQurnYa0LbJHF9YYozhEH6r9mCxVDBYbewSG4tGgrWpsewQ/96pcczGMQctMvU+h2eX38Hx/f9JAIDbuRQzQlsPhQS7DDZ6WlTXU+t8d/g2C7fpSoLs4KVdJih4xyjLUWj+BK/ijsRjBt4Riw9VbJH/DdWKyoSMbECEiE+s1RtLP/eYoMmNfxyQGqWirCNqVNBTlqzYQp4dgF0foYy4ktoxwmQOVoTcIMFYp1I4pFPI7CxuMLkfK0X7aTbM7YGphvMfJxJkjrQdyI7G5d1t4DNi3zkEbBT7FGAr6qPt3Kn9ralpqJKHdpEBA9N0vNwQo5XTYIhUbPQ16IRAgMBAAGjITAfMB0GA1UdDgQWBBRs7tPmfkksSr67KtElHjYZbeaCTjANBgkqhkiG9w0BAQsFAAOCAQEAJqwMZSjQJ36x+1sty6EeLKQLQewQwPaEC47Zut+8bXed6Q8jMZ0bfa/MM7XquEcabaMZLQuKLft44YXwXXQOfQrI2qjQr3eToJFlDT9hR0rfp9wQqttDxd6Aa6RWwDTgo5oKUQCTKLHhEy8uWzScK0eGt2d7TWTaDXjRSwNq6tM7fRhZs07tKBV3xfi9EQy/mlavAMFRBVm86NSo7AsOG1IOMq03U3ooCWAXh9PdvvHNfHhH19futAnC/HeOjwRF1Qc527aBMphYFQLdiThfmfmiE/AhQqCwZ2oE7uCJhBtR+Kb1ZGhjI35pHfsSqGiFa7Kr+5ave822PDcke89Mvg==</X509Certificate>
</X509Data>
</KeyInfo>
</KeyDescriptor>
<KeyDescriptor use="signing">
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate>MIIC/TCCAeWgAwIBAgIQbgDHfi3t1JNGVqwD5/7lmjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwHhcNMjAxMjIxMDAwMDAwWhcNMjUxMjIxMDAwMDAwWjApMScwJQYDVQQDEx5MaXZlIElEIFNUUyBTaWduaW5nIFB1YmxpYyBLZXkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDFT0/0/2qQurnYa0LbJHF9YYozhEH6r9mCxVDBYbewSG4tGgrWpsewQ/96pcczGMQctMvU+h2eX38Hx/f9JAIDbuRQzQlsPhQS7DDZ6WlTXU+t8d/g2C7fpSoLs4KVdJih4xyjLUWj+BK/ijsRjBt4Riw9VbJH/DdWKyoSMbECEiE+s1RtLP/eYoMmNfxyQGqWirCNqVNBTlqzYQp4dgF0foYy4ktoxwmQOVoTcIMFYp1I4pFPI7CxuMLkfK0X7aTbM7YGphvMfJxJkjrQdyI7G5d1t4DNi3zkEbBT7FGAr6qPt3Kn9ralpqJKHdpEBA9N0vNwQo5XTYIhUbPQ16IRAgMBAAGjITAfMB0GA1UdDgQWBBRs7tPmfkksSr67KtElHjYZbeaCTjANBgkqhkiG9w0BAQsFAAOCAQEAJqwMZSjQJ36x+1sty6EeLKQLQewQwPaEC47Zut+8bXed6Q8jMZ0bfa/MM7XquEcabaMZLQuKLft44YXwXXQOfQrI2qjQr3eToJFlDT9hR0rfp9wQqttDxd6Aa6RWwDTgo5oKUQCTKLHhEy8uWzScK0eGt2d7TWTaDXjRSwNq6tM7fRhZs07tKBV3xfi9EQy/mlavAMFRBVm86NSo7AsOG1IOMq03U3ooCWAXh9PdvvHNfHhH19futAnC/HeOjwRF1Qc527aBMphYFQLdiThfmfmiE/AhQqCwZ2oE7uCJhBtR+Kb1ZGhjI35pHfsSqGiFa7Kr+5ave822PDcke89Mvg==</X509Certificate>
</X509Data>
</KeyInfo>
</KeyDescriptor>
<SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://login.microsoftonline.com/login.srf"/>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</NameIDFormat>
<NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</NameIDFormat>
<AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://login.microsoftonline.com/login.srf" index="0" isDefault="true"/>
<AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://login.microsoftonline.com/login.srf" index="1"/>
<AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:PAOS" Location="https://login.microsoftonline.com/login.srf" index="2"/>
</SPSSODescriptor>
<Extensions>
<alg:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<alg:SigningMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
</Extensions>
</EntityDescriptor>

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,23 +0,0 @@
#!/bin/bash
set -e
if [ -z "$ROOT_DIR" ]; then
ROOT_DIR=$(dirname $(dirname $(readlink -f "$BASH_SOURCE")))
fi
RPMS_DIR=$ROOT_DIR/_output/rpms
DEBS_DIR=$ROOT_DIR/_output/debs
case $(uname -m) in
x86_64)
CURRENT_ARCH=amd64
;;
aarch64)
CURRENT_ARCH=arm64
;;
esac
mkdir -p $DEBS_DIR && cd $DEBS_DIR
find $RPMS_DIR -type f -name *.rpm -exec alien --target=$CURRENT_ARCH {} \;

View File

@@ -1,3 +0,0 @@
INTERFACE=""
INTERFACE_IP=""
RELAY=""

View File

@@ -1,22 +0,0 @@
[Unit]
Description=Yunion Cloud DHCP Relay Agent
Documentation=https://docs.yunion.cn
After=network-online.target
Wants=network-online.target
After=network.target
[Service]
Type=simple
EnvironmentFile=-/etc/sysconfig/yunion_dhcprelay
User=root
Group=root
ExecStart=/opt/yunion/bin/dhcprelay --interface "$INTERFACE" --ip "$IP" --relay "$RELAY"
WorkingDirectory=/opt/yunion/bin
KillMode=process
Restart=always
RestartSec=30
LimitNOFILE=500000
LimitNPROC=500000
[Install]
WantedBy=multi-user.target

View File

@@ -1,2 +0,0 @@
DESCRIPTION="Yunion Tiny DHCP Relay Server"
SERVICE="yes"

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,3 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:3.22.2-0
# 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
FROM registry.cn-beijing.aliyuncs.com/yunionio/ansibleserver-base:v1.0.2
ADD ./_output/alpine-build/bin/ansibleserver /opt/yunion/bin/ansibleserver

View File

@@ -1,31 +1,12 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.2
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 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.2
ADD ./_output/alpine-build/bin/apigateway /opt/yunion/bin/apigateway
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,9 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:v0.3.9-20260724.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/baremetal-base:v0.2
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
RUN mkdir -p /opt/yunion/bin
ENV TZ="UTC"
ADD ./_output/alpine-build/bin/baremetal-agent /opt/yunion/bin/baremetal-agent
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

View File

@@ -1,89 +1,32 @@
#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 frolvlad/alpine-glibc:glibc-2.28
FROM registry.cn-beijing.aliyuncs.com/cloudpods/centos:8 as grub-stage
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 ./opt/cloud/yunion/baremetal/bootia32.efi /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/bootx64.efi /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/chain.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/initramfs /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/isolinux.bin /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/kernel /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/ldlinux.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/ldlinux.e32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/ldlinux.e64 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/libcom32.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/libutil.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/lpxelinux.0 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/menu.c32 /opt/cloud/yunion/baremetal
COPY ./opt/cloud/yunion/baremetal/pxelinux.0 /opt/cloud/yunion/baremetal

View File

@@ -1,7 +1,5 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/climc-base:3.22.2-2
FROM registry.cn-beijing.aliyuncs.com/yunionio/climc-base:20200820
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
ADD ./_output/alpine-build/bin/climc ./_output/alpine-build/bin/*cli /opt/yunion/bin/

View File

@@ -1,24 +1,16 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.3.5
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v0.2
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 && \
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.2
ADD ./_output/alpine-build/bin/cloudevent /opt/yunion/bin/cloudevent
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.2
COPY ./build/cloudid/root/opt/ /opt/
ADD ./_output/alpine-build/bin/cloudid /opt/yunion/bin/cloudid

View File

@@ -1,8 +0,0 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/onecloud-base:v3.22.2-0
LABEL maintainer="Zexi Li <lizexi@yunionyun.com>"
RUN mkdir -p /etc/yunion/data/
ADD ./_output/alpine-build/bin/cloudmon \
/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.2
ADD ./_output/alpine-build/bin/cloudnet /opt/yunion/bin/cloudnet
ADD ./_output/alpine-build/bin/cloudnet /opt/yunion/bin/cloudnet

View File

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

View File

@@ -1,9 +0,0 @@
# registry.cn-beijing.aliyuncs.com/yunionio/debian10-base:1.0
FROM debian:trixie
RUN apt update && apt install -y alien
RUN apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/{apt,dpkg,cache,log}/

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.2
ADD ./_output/alpine-build/bin/devtool /opt/yunion/bin/devtool
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.2
COPY ./build/esxi-agent/root/opt/ /opt/
ADD ./_output/alpine-build/bin/esxi-agent /opt/yunion/bin/esxi-agent

View File

@@ -1,5 +1,6 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/glance-base:3.22.2-0
FROM registry.cn-beijing.aliyuncs.com/yunionio/torrent:20200820
MAINTAINER "Zexi Li <lizexi@yunionyun.com>"
ENV TZ="UTC"
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/glance /opt/yunion/bin/glance
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,9 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.9.0
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-base:v0.3
LABEL maintainer="Yaoqi Wan wanyaoqi@yunionyun.com"
MAINTAINER "Yaoqi Wan wanyaoqi@yunionyun.com"
ENV TZ="UTC"
ENV TZ Asia/Shanghai
RUN apk add librados librbd
RUN mkdir -p /opt/yunion/bin
ADD ./_output/alpine-build/bin/host /opt/yunion/bin/host

View File

@@ -1,8 +1,8 @@
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base:1.5.11
FROM registry.cn-beijing.aliyuncs.com/yunionio/host-deployer-base:v0.5
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

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.2
ADD ./_output/alpine-build/bin/keystone /opt/yunion/bin/keystone
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.2
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.2
COPY ./build/monitor/root/opt/ /opt/
ADD ./_output/alpine-build/bin/monitor /opt/yunion/bin/monitor
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.2
COPY ./build/notify/root/opt/ /opt/
ADD ./_output/alpine-build/bin/notify /opt/yunion/bin/notify

View File

@@ -1,14 +1,13 @@
# TODO: use 3.14 will lead 'apk add qemu-img fail on arm64'
FROM alpine:3.22.1
FROM alpine:3.11
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.2
COPY ./build/region/root/opt/ /opt/
ADD ./_output/alpine-build/bin/region /opt/yunion/bin/region

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