Commit Graph

38206 Commits

Author SHA1 Message Date
Vishesh 3159fa7d84
noVNC: make show dot configurable (#11741) 2025-09-29 16:18:42 +02:00
Wei Zhou 9cc88b8dcc
CKS: fix control plane endpoint IP (#11720) 2025-09-29 09:10:56 +02:00
Abhishek Kumar 2c1aad4db8
Merge remote-tracking branch 'apache/4.20' 2025-09-27 09:00:45 +05:30
Abhishek Kumar 928972f767
extension/proxmox: add console access for instances (#11601)
This PR introduces console access support for instances deployed using Orchestrator Extensions, available via either VNC or a direct URL.

- CloudStack queries the extension using the getconsole action.
- For VNC-based access, the extension must return host/port/ticket details. CloudStack then forwards these to the Console Proxy VM (CPVM) in the instance’s zone. It is assumed that the CPVM can reach the specified host and port.
- For direct URL access, the extension returns a console URL with the protocol set to `direct`. The URL is then provided directly to the user.
- The built-in Proxmox Orchestrator Extension now supports console access via VNC. The extension calls the Proxmox API to fetch console details and returns them in the required format.

Also, adds changes to send caller details to the extension payload.
```
# cat /var/lib/cloudstack/management/extensions/Proxmox/02b650f6-bb98-49cb-8cac-82b7a78f43a2.json | jq
{
  "caller": {
    "roleid": "6b86674b-7e61-11f0-ba77-1e00c8000158",
    "rolename": "Root Admin",
    "name": "admin",
    "roletype": "Admin",
    "id": "93567ed9-7e61-11f0-ba77-1e00c8000158",
    "type": "ADMIN"
  },
  "virtualmachineid": "126f4562-1f0f-4313-875e-6150cabeb72f",
  ...
```

Documentation PR: https://github.com/apache/cloudstack-documentation/pull/560

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-27 08:54:27 +05:30
Wei Zhou 5dfeb79c63
systemvm: fix failed to get script version when patch system vm or router (#10962)
This is a regression of #9900

prior to this PR
```
2025-06-05 12:28:53,992 DEBUG [cloud.agent.Agent] (AgentRequest-Handler-1:[]) (logid:) Processing command: com.cloud.agent.api.PatchSystemVmCommand
2025-06-05 12:29:25,959 DEBUG [resource.wrapper.LibvirtPatchSystemVmCommandWrapper] (AgentRequest-Handler-1:[]) (logid:) Patch result of systemVM s-368-VM: /root
2025-06-05 12:29:25,961 WARN  [resource.wrapper.LibvirtPatchSystemVmCommandWrapper] (AgentRequest-Handler-1:[]) (logid:) Failed to get the latest script version
2025-06-05 12:29:25,962 DEBUG [cloud.agent.Agent] (AgentRequest-Handler-1:[]) (logid:) Seq 2-7450361158554357406:  { Ans: , MgmtId: 32986204472275, via: 2, Ver: v1, Flags: 10, [{"com.cloud.agent.api.PatchSystemVmAnswer":{"templateVersion":"Cloudstack Release 4.20.1 Wed May 14 05:22:13 PM UTC 2025","scriptsVersion":"5ebc6ded1a3880732363c1cdbbd54cfb
```

with this PR
```
2025-06-05 12:42:46,219 DEBUG [cloud.agent.Agent] (AgentRequest-Handler-2:[]) (logid:) Request:Seq 2-7450361158554357463:  { Cmd , MgmtId: 32986204472275, via: 2, Ver: v1, Flags: 100011, [{"com.cloud.agent.api.PatchSystemVmCommand":{"forced":"true","accessDetails":{"router.ip":"169.254.151.188","router.name":"s-368-VM"},"wait":"0","bypassHostMaintenance":"false"}}] }
2025-06-05 12:42:46,220 DEBUG [cloud.agent.Agent] (AgentRequest-Handler-2:[]) (logid:) Processing command: com.cloud.agent.api.PatchSystemVmCommand
2025-06-05 12:43:18,083 DEBUG [resource.wrapper.LibvirtPatchSystemVmCommandWrapper] (AgentRequest-Handler-2:[]) (logid:) Patch result of systemVM s-368-VM: /root
2025-06-05 12:43:18,083 DEBUG [cloud.agent.Agent] (AgentRequest-Handler-2:[]) (logid:) Seq 2-7450361158554357463:  { Ans: , MgmtId: 32986204472275, via: 2, Ver: v1, Flags: 10, [{"com.cloud.agent.api.PatchSystemVmAnswer":{"templateVersion":"Cloudstack Release 4.20.1 Wed May 14 05:22:13 PM UTC 2025","scriptsVersion":"5ebc6ded1a3880732363c1cdbbd54cfb","result":"true","details":"Successfully patched systemVM s-368-VM ","wait":"0","bypassHostMaintenance":"false"}}] }
```
2025-09-27 01:36:36 +02:00
Wei Zhou 318a4f2b6e
server: set download volume format to qcow2 for KVM volumes (#11198) 2025-09-26 20:25:11 +02:00
Vishesh ec533cd24d
Add support EL10 (#11546) 2025-09-25 15:37:45 +05:30
Abhisar Sinha 23c9e83047
Create Instance from backup on another Zone (DRaaS use case) (#11560)
* draas initial changes

* Added option to enable disaster recovery on a backup respository. Added UpdateBackupRepositoryCmd api.

* Added timeout for mount operation in backup restore configurable via global setting

* Addressed review comments

* fix for simulator test failures

* Added UT for coverage

* Fix create instance from backup ui for other providers

* Added events to add/update backup repository

* Fix race in fetchZones

* One more fix in fetchZones in DeployVMFromBackup.vue

* Fix zone selection in createNetwork via Create Instance from backup form.

* Allow template/iso selection in create instance from backup ui

* rename draasenabled to crosszoneinstancecreation

* Added Cross-zone instance creation in test_backup_recovery_nas.py

* Added UT in BackupManagerTest and UserVmManagerImplTest

* Integration test added for Cross-zone instance creation in test_backup_recovery_nas.py
2025-09-25 13:28:29 +05:30
Abhishek Kumar b0c7719006
ui: do not show admin only options to users while registering template (#11702) 2025-09-24 17:42:28 +02:00
Wei Zhou 36cfd76ce1
KVM: fix delete vm snapshot if it does not exist with a Stopped vm (#11687)
* KVM: fix delete vm snapshot if it does not exist with a Stopped vm

* update 11687
2025-09-24 13:53:27 +02:00
dahn c24d2b88f6
LDAP: honour nested groups for MSAD (#11696) 2025-09-24 11:30:04 +02:00
Manoj Kumar 96992d3d64
server: Fix vpclimit count for listAcccount API response (#11686) 2025-09-24 10:28:24 +02:00
Wei Zhou e78b5cc3cc
Merge remote-tracking branch 'apache/4.20' 2025-09-24 09:27:08 +02:00
Abhishek Kumar 98b9af2904
server: set VirtualMachineTO arch from template if present (#11530)
* server: set VirtualMachineTO arch from template if present

Fixes #11529

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* refactor

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-09-24 09:21:40 +02:00
Manoj Kumar a18b5514e6
kvm: honor templateId passed in importVM API (#11640) 2025-09-24 08:34:18 +02:00
Suresh Kumar Anaparti a749206eb8
storage: Mount disabled pools by default when host is booted (#11666) 2025-09-24 08:22:49 +02:00
Abhishek Kumar 4884f52c90
ui: allow provisioning backups during instance deploy (#11612)
* ui: allow assigning backup offring during instance deploy

Add backup offering selection to Deploy VM wizard and assign selected backup offering to the VM after successful deployment. This enables users to choose a backup offering during VM creation, and the VM is automatically associated with the selected offering post-deployment.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* changes for schedules

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* Update ui/public/locales/pt_BR.json

* Update ui/src/views/compute/wizard/DeployInstanceBackupSelection.vue

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* address review

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

* allow only one schdeule per interval type

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* show message same internaltype schedule

* show backup step only when zone has offering

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-23 14:51:42 +05:30
Nicolas Vazquez 1a223fd2ba
server: Fix VM import DB sequence issue on import failure (#11659)
* Fix VM import DB sequence issue on import failure

* Remove ununsed imports

* Refactor to avoid duplicating the next ID for VM sequence
2025-09-23 08:48:18 +02:00
Suresh Kumar Anaparti 40dec99659
server: Cleanup allocated snapshots / vm snapshots, and update pending ones to Error on MS start (#8452)
* Remove allocated snapshots / vm snapshots on start

* Check and Cleanup snapshots / vm snapshots on MS start

* rebase fixes

* Update volume state (from Snapshotting) on MS start when its snapshot job not finished and snapshot in Creating state
2025-09-23 08:37:10 +02:00
Rohit Yadav d9abc078cf
ui: fix build on latest Ubuntu and macOS (#11259)
* ui: fix build on latest Ubuntu and macOS

This fixes UI build, so it can build against nodejs 20.x/LTS.

Signed-off-by: Rohit Yadav <rohit@yadav.cloud>

* Update ui/package.json

---------

Signed-off-by: Rohit Yadav <rohit@yadav.cloud>
2025-09-23 09:37:43 +05:30
Wei Zhou 22bf8fd5d1
Merge remote-tracking branch 'apache/4.20' 2025-09-22 16:31:01 +02:00
Suresh Kumar Anaparti 12513e18fa
server: Update gson date format for serializing/deserializing Date in MS stats (#11506)
* Update gson date format for serializing/deserializing Date in MS stats (across multiple management servers)

* review

* review comments, and unit tests

* added unit test with different date format

* Use separate Gson for MS stats serialization/deserialization
2025-09-22 12:22:50 +02:00
Wei Zhou 69998f7c40
api,server: support templatetype when upload template from local (#11682) 2025-09-22 10:46:43 +02:00
Wei Zhou 393b5d2b77
VR: consider NICs for remote access VPN when apply dhcp entry (#11681) 2025-09-22 10:25:21 +02:00
dahn aca8732102
[router] make a distinction between fatal errors, warnings and unknown as healthcheck result (#10710)
* [routers] distiction between fatal failure and warning or unknown on healthchecks

* UI status for router health checks

* status from scripts varied

* automation signalled errors

* revert removal of update sql

* upgradeversion

* move config item and further cleanup

* handling services better

* backwards compatible response

---------

Co-authored-by: Daan Hoogland <dahn@apache.org>
2025-09-22 11:39:05 +05:30
Harikrishna 3ef2556900
Fix scaleKubernetesCluster API (#11652)
* Fix scaleKubernetesCluster

* Added more state transitions
2025-09-20 17:57:45 +05:30
vanzan01 e6c7a71d40
Add yamllint pre-commit hook for YAML file standardization (#11017)
* Add yamllint pre-commit hook for YAML file standardization

Add yamllint hook to .pre-commit-config.yaml to standardize YAML files
across the project. Created .yamllint.yml configuration with relaxed
rules to accommodate existing files. Fixed colon spacing in .asf.yaml
to pass yamllint checks.

Closes #10974

Signed-off-by: vanzan01 <vanzan.1250@gmail.com>

* Add extra eol to .yamllint.yml

Address review comment from DaanHoogland

Signed-off-by: vanzan01 <vanzan.1250@gmail.com>

* Move .yamllint.yml to .github/linters/ and improve file pattern

- Move .yamllint.yml to .github/linters/ directory for better organization
- Update pre-commit config to point to new location
- Change file pattern to \.ya?ml$ as suggested

Address review feedback from jbampton

Signed-off-by: vanzan01 <vanzan.1250@gmail.com>

* Update .pre-commit-config.yaml

Co-authored-by: John Bampton <jbampton@users.noreply.github.com>

* Make yamllint more forgiving and exclude only k8s templates

- Remove extensive file exclusions, keep only k8s templates
- Increase line length limit to 400 chars (GitHub Actions friendly)
- Allow flexible colon spacing (max-spaces-after: -1)
- Disable document-start requirement

This provides linting value while handling infrastructure patterns.

Signed-off-by: vanzan01 <vanzan.1250@gmail.com>

* Update .pre-commit-config.yaml

Co-authored-by: John Bampton <jbampton@users.noreply.github.com>

---------

Signed-off-by: vanzan01 <vanzan.1250@gmail.com>
Co-authored-by: John Bampton <jbampton@users.noreply.github.com>
2025-09-20 03:16:00 +10:00
julien-vaz a466750d3b
Add cleanup for tiers dropdown on assignVIrtualMachine API form (#11464)
Co-authored-by: Julien Hervot de Mattos Vaz <julien.vaz@scclouds.com.br>
2025-09-19 15:46:20 +02:00
John Bampton a452dc6543
chore(markdown): use https on links (#11676) 2025-09-19 15:20:40 +02:00
Vishesh 9167cd3b72
server: use /prod/stat to get uptime instead of the uptime command (#11670) 2025-09-19 14:08:12 +02:00
Pearl Dsilva 8eb6ddd920
Fix inactive VPCs deletion (#11618)
Co-authored-by: Nicolas Vazquez <nicovazquez90@gmail.com>
2025-09-18 08:25:48 -03:00
John Bampton 0526ec0d82
PULL_REQUEST_TEMPLATE standardize case of types of changes (#11663) 2025-09-18 10:01:24 +02:00
John Bampton 0108ffd1b0
java: fix one typo in many files (#11284) 2025-09-17 22:05:38 +05:30
John Bampton 6eb27da5e4
Fix spelling in Java and Python files; update the ignored words list `codespell.txt` (#11285)
Co-authored-by: dahn <daan.hoogland@gmail.com>
2025-09-17 17:24:04 +02:00
John Bampton 33cfedee46
pre-commit add hook `check-shebang-scripts-are-executable` for Shell (#10150) 2025-09-17 14:22:28 +02:00
John Bampton f9a72de500
misc: pre-commit auto remove unneeded trailing whitespace (#11289) 2025-09-17 14:21:56 +02:00
Pearl Dsilva e7015cbc4c
Move console proxy related global settings to Zone level (#11415) 2025-09-17 14:06:00 +02:00
CodeBleu 273ae03274
Allow updating of Load Balancer source CIDR list (#11568) 2025-09-17 13:49:46 +02:00
John Bampton 57309314a1
pre-commit: clean up Python flake8 excludes with black (#9793) 2025-09-17 12:40:56 +02:00
John Bampton 0d9c5065de
Add CodeQL Analysis for GitHub Actions (#11300) 2025-09-17 12:33:08 +02:00
vishesh92 ada750e391
Merge branch '4.20' 2025-09-17 14:26:06 +05:30
Pearl Dsilva 96ccd7e6c5
Filter netris vNets only by VPC ID as filter by site isn't working as expected on netris end (#11617) 2025-09-16 09:13:10 -03:00
Nicolas Vazquez 96cabf7e43
[KVM] Allow passing the OS type machine for KVM XML domains through VM setting (#11569)
* [KVM] Allow passing OS type machine to XML domains
2025-09-16 15:49:20 +05:30
Pearl Dsilva 23a53e213e
Add LB service to Custom Netris VPC/Network offerings (#11410)
* Add LB service to Custom VPC/Network offerings

* fix offering

* externalize common checks to a utility file

* remove trailing spaces
2025-09-16 09:40:33 +05:30
StepBee 0cbebbdddd
kvm: Fix for No VMs start after Renew Host Security Keys due to wrong qemu group reading (#11632)
* fix getting qemu group from config

* Update scripts/util/keystore-cert-import

Simplify and correct qemu group extraction from configfile

Co-authored-by: Wei Zhou <weizhou@apache.org>

---------

Co-authored-by: Wei Zhou <weizhou@apache.org>
2025-09-15 14:23:06 +02:00
Manoj Kumar 1948f90c2c
[UI] Fix group disable action for compute and disk offering (#11602) 2025-09-15 11:57:59 +02:00
Abhishek Kumar 6a145358a9
ui: fix tab name in query params (#11590) 2025-09-15 11:32:10 +02:00
Wei Zhou 7c7497c624
Merge remote-tracking branch 'apache/4.19' into 4.20 2025-09-15 10:19:27 +02:00
Suresh Kumar Anaparti cd69f2ce16
server: Fix NPE during VM IP fetch for shared networks (#11389)
* Fix NPE during VM IP fetch for shared networks

* PR 11389: add missing import org.apache.commons.lang3.ObjectUtils

---------

Co-authored-by: Wei Zhou <weizhou@apache.org>
2025-09-15 10:14:06 +02:00
Abhishek Kumar 7c76a3c12a
ui: searchview change should only remove related query params (#11576) 2025-09-15 10:01:02 +02:00