You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
systemvm-template: support on-demand download during setup and registration
Bundling all hypervisor SystemVM templates in release packages simplifies installs but inflates build time and artifact size. This change enables downloading templates on demand when they’re not found after package installation. The download path is wired into both cloud-setup-management and the existing SystemVM template registration flow.
For connected or mirrored environments, a repository URL prefix can be provided to support air-gapped setups: pass --systemvm-templates-repository <URL-prefix> to cloud-setup-management, or set system.vm.templates.download.repository=<URL-prefix> in server.properties for post-setup registration.
If templates are already present (bundled or preseeded), behavior is unchanged and no download is attempted.
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
print(f"ERROR: URL or filename not found for {template} System VM template in metadata.")
128
+
sys.exit(1)
129
+
else:
130
+
print(f"ERROR: No metadata found for {template} System VM template.")
131
+
sys.exit(1)
132
+
returntemplate_metadata_list
39
133
40
134
if__name__=='__main__':
41
135
initLoging("@MSLOGDIR@/setupManagement.log")
@@ -45,6 +139,16 @@ if __name__ == '__main__':
45
139
parser.add_option("--https", action="store_true", dest="https", help="Enable HTTPs connection of management server")
46
140
parser.add_option("--tomcat7", action="store_true", dest="tomcat7", help="Depreciated option, don't use it")
47
141
parser.add_option("--no-start", action="store_true", dest="nostart", help="Do not start management server after successful configuration")
142
+
parser.add_option(
143
+
"--systemvm-templates",
144
+
dest="systemvm_templates",
145
+
help="Specify System VM templates to download: all, kvm-aarch64, kvm-x86_64, xenserver, vmware or comma-separated list of hypervisor combinations (e.g., kvm-x86_64,xenserver). Default is kvm-x86_64.",
146
+
)
147
+
parser.add_option(
148
+
"--systemvm-templates-repository",
149
+
dest="systemvm_templates_repository",
150
+
help="Specify the URL to download System VM templates from."
print("Starting to configure CloudStack Management Server:")
@@ -68,9 +188,13 @@ if __name__ == '__main__':
68
188
print("CloudStack Management Server setup is Done!")
69
189
print("Please ensure ports 8080, 8250, 8443, and 9090 are opened and not firewalled for the management server and not in use by other processes on this host.")
Copy file name to clipboardExpand all lines: plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/provisioner/ExternalPathPayloadProvisioner.java
0 commit comments