mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Allow configkey to set 'cloud-name' cloud-init metadata (#7964)
* Allow configkey to set 'cloud-name' cloud-init metadata * Update engine/api/src/main/java/com/cloud/vm/VirtualMachineManager.java Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com> * Update server/src/main/java/com/cloud/network/NetworkModelImpl.java Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com> * Update server/src/main/java/com/cloud/network/router/CommandSetupHelper.java Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com> * Revert "Update server/src/main/java/com/cloud/network/router/CommandSetupHelper.java" This reverts commit 8abc3e38c4f973227e77253a8bcf3c94827d187f. * Revert "Update server/src/main/java/com/cloud/network/NetworkModelImpl.java" This reverts commit 7f239be919112913d764b141e943acca4473f755. * Rework/Fix review code suggestions --------- Co-authored-by: Marcus Sorensen <mls@apple.com> Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com>
This commit is contained in:
parent
30e34ef310
commit
155a30748c
@ -73,6 +73,7 @@ public interface NetworkModel {
|
||||
String HYPERVISOR_HOST_NAME_FILE = "hypervisor-host-name";
|
||||
String CLOUD_DOMAIN_FILE = "cloud-domain";
|
||||
String CLOUD_DOMAIN_ID_FILE = "cloud-domain-id";
|
||||
String CLOUD_NAME_FILE = "cloud-name";
|
||||
int CONFIGDATA_DIR = 0;
|
||||
int CONFIGDATA_FILE = 1;
|
||||
int CONFIGDATA_CONTENT = 2;
|
||||
@ -83,11 +84,12 @@ public interface NetworkModel {
|
||||
.put(PUBLIC_HOSTNAME_FILE, "name")
|
||||
.put(CLOUD_DOMAIN_FILE, CLOUD_DOMAIN_FILE)
|
||||
.put(CLOUD_DOMAIN_ID_FILE, CLOUD_DOMAIN_ID_FILE)
|
||||
.put(CLOUD_NAME_FILE, CLOUD_NAME_FILE)
|
||||
.put(HYPERVISOR_HOST_NAME_FILE, HYPERVISOR_HOST_NAME_FILE)
|
||||
.build();
|
||||
|
||||
List<String> metadataFileNames = new ArrayList<>(Arrays.asList(SERVICE_OFFERING_FILE, AVAILABILITY_ZONE_FILE, LOCAL_HOSTNAME_FILE, LOCAL_IPV4_FILE, PUBLIC_HOSTNAME_FILE, PUBLIC_IPV4_FILE,
|
||||
INSTANCE_ID_FILE, VM_ID_FILE, PUBLIC_KEYS_FILE, CLOUD_IDENTIFIER_FILE, HYPERVISOR_HOST_NAME_FILE));
|
||||
INSTANCE_ID_FILE, VM_ID_FILE, PUBLIC_KEYS_FILE, CLOUD_IDENTIFIER_FILE, CLOUD_NAME_FILE, HYPERVISOR_HOST_NAME_FILE));
|
||||
|
||||
static final ConfigKey<Integer> MACIdentifier = new ConfigKey<>("Advanced",Integer.class, "mac.identifier", "0",
|
||||
"This value will be used while generating the mac addresses for isolated and shared networks. The hexadecimal equivalent value will be present at the 2nd octet of the mac address. Default value is zero (0) which means that the DB id of the zone will be used.", true, ConfigKey.Scope.Zone);
|
||||
|
||||
@ -83,6 +83,9 @@ public interface VirtualMachineManager extends Manager {
|
||||
ConfigKey<Boolean> AllowExposeDomainInMetadata = new ConfigKey<>("Advanced", Boolean.class, "metadata.allow.expose.domain",
|
||||
"false", "If set to true, it allows the VM's domain to be seen in metadata.", true, ConfigKey.Scope.Domain);
|
||||
|
||||
ConfigKey<String> MetadataCustomCloudName = new ConfigKey<>("Advanced", String.class, "metadata.custom.cloud.name", "",
|
||||
"If provided, a custom cloud-name in cloud-init metadata", true, ConfigKey.Scope.Zone);
|
||||
|
||||
interface Topics {
|
||||
String VM_POWER_STATE = "vm.powerstate";
|
||||
}
|
||||
|
||||
@ -4709,7 +4709,7 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac
|
||||
VmOpLockStateRetry, VmOpWaitInterval, ExecuteInSequence, VmJobCheckInterval, VmJobTimeout, VmJobStateReportInterval,
|
||||
VmConfigDriveLabel, VmConfigDriveOnPrimaryPool, VmConfigDriveForceHostCacheUse, VmConfigDriveUseHostCacheOnUnsupportedPool,
|
||||
HaVmRestartHostUp, ResourceCountRunningVMsonly, AllowExposeHypervisorHostname, AllowExposeHypervisorHostnameAccountLevel, SystemVmRootDiskSize,
|
||||
AllowExposeDomainInMetadata
|
||||
AllowExposeDomainInMetadata, MetadataCustomCloudName
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@ -2673,6 +2673,11 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel, Confi
|
||||
vmData.add(new String[]{METATDATA_DIR, CLOUD_DOMAIN_ID_FILE, domain.getUuid()});
|
||||
}
|
||||
|
||||
String customCloudName = VirtualMachineManager.MetadataCustomCloudName.valueIn(datacenterId);
|
||||
if (org.apache.commons.lang3.StringUtils.isNotBlank(customCloudName)) {
|
||||
vmData.add(new String[]{METATDATA_DIR, CLOUD_NAME_FILE, customCloudName});
|
||||
}
|
||||
|
||||
return vmData;
|
||||
}
|
||||
|
||||
|
||||
@ -231,6 +231,11 @@ public class CommandSetupHelper {
|
||||
vmDataCommand.addVmData(NetworkModel.METATDATA_DIR, NetworkModel.CLOUD_DOMAIN_ID_FILE, domain.getUuid());
|
||||
}
|
||||
|
||||
String customCloudName = VirtualMachineManager.MetadataCustomCloudName.valueIn(vm.getDataCenterId());
|
||||
if (org.apache.commons.lang3.StringUtils.isNotBlank(customCloudName)) {
|
||||
vmDataCommand.addVmData(NetworkModel.METATDATA_DIR, NetworkModel.CLOUD_NAME_FILE, customCloudName);
|
||||
}
|
||||
|
||||
cmds.addCommand("vmdata", vmDataCommand);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user