From f6303c13fb4bf28afaaf9514afec3debf51588f8 Mon Sep 17 00:00:00 2001 From: Abhinandan Prateek Date: Wed, 3 Aug 2011 14:16:08 +0530 Subject: [PATCH] bug 10812: putting key in ZoneConfig and other nomenclature changes --- api/src/com/cloud/api/ApiConstants.java | 2 +- api/src/com/cloud/api/commands/UpdateZoneCmd.java | 8 ++++---- patches/systemvm/debian/config/etc/dnsmasq.conf | 3 --- .../systemvm/debian/config/etc/init.d/cloud-early-config | 9 +++++---- .../cloud/configuration/ConfigurationManagerImpl.java | 6 +++--- server/src/com/cloud/configuration/ZoneConfig.java | 3 ++- .../router/VirtualNetworkApplianceManagerImpl.java | 5 +++-- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/api/src/com/cloud/api/ApiConstants.java b/api/src/com/cloud/api/ApiConstants.java index 90ab1bc2d20..2106f2c68c2 100755 --- a/api/src/com/cloud/api/ApiConstants.java +++ b/api/src/com/cloud/api/ApiConstants.java @@ -33,7 +33,7 @@ public class ApiConstants { public static final String CERTIFICATE = "certificate"; public static final String PRIVATE_KEY = "privatekey"; public static final String DOMAIN_SUFFIX = "domainsuffix"; - public static final String DOMAIN_SUFFIX_LIST = "domainsuffixlist"; + public static final String DNS_SEARCH_ORDER = "dnssearchorder"; public static final String CIDR = "cidr"; public static final String CIDR_LIST = "cidrlist"; public static final String CLEANUP = "cleanup"; diff --git a/api/src/com/cloud/api/commands/UpdateZoneCmd.java b/api/src/com/cloud/api/commands/UpdateZoneCmd.java index 5459a7feed6..e7c33f2e394 100644 --- a/api/src/com/cloud/api/commands/UpdateZoneCmd.java +++ b/api/src/com/cloud/api/commands/UpdateZoneCmd.java @@ -81,8 +81,8 @@ public class UpdateZoneCmd extends BaseCmd { @Parameter(name=ApiConstants.DOMAIN, type=CommandType.STRING, description="Network domain name for the networks in the zone") private String domain; - @Parameter(name=ApiConstants.DOMAIN_SUFFIX_LIST, type=CommandType.LIST, collectionType = CommandType.STRING, description="the list of domain suffixes for dns") - private List domainSuffixList; + @Parameter(name=ApiConstants.DNS_SEARCH_ORDER, type=CommandType.LIST, collectionType = CommandType.STRING, description="the dns search order list") + private List dnsSearchOrder; ///////////////////////////////////////////////////// /////////////////// Accessors /////////////////////// @@ -140,8 +140,8 @@ public class UpdateZoneCmd extends BaseCmd { return domain; } - public List getDomainSuffixList() { - return domainSuffixList; + public List getDnsSearchOrder() { + return dnsSearchOrder; } ///////////////////////////////////////////////////// /////////////// API Implementation/////////////////// diff --git a/patches/systemvm/debian/config/etc/dnsmasq.conf b/patches/systemvm/debian/config/etc/dnsmasq.conf index 86e49e902fc..8f999a75cb1 100644 --- a/patches/systemvm/debian/config/etc/dnsmasq.conf +++ b/patches/systemvm/debian/config/etc/dnsmasq.conf @@ -252,9 +252,6 @@ dhcp-hostsfile=/etc/dhcphosts.txt # Set the domain dhcp-option=15,"2.vmops-test.vmops.com" -# Send RFC-3397 DNS domain search DHCP option. -#dhcp-option=119,"vmops.com" - # Send the etherboot magic flag and then etherboot options (a string). #dhcp-option=128,e4:45:74:68:00:00 #dhcp-option=129,NIC=eepro100 diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config index c1986b55eac..d2bd2257188 100755 --- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config +++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config @@ -267,9 +267,10 @@ setup_dnsmasq() { echo "dhcp-option=6,$GUEST_GW" >> /etc/dnsmasq.conf fi - if [ -n "$DOMAIN_SUFFIX" ] + if [ -n "$DNS_SEARCH_ORDER" ] then - sed -i s/[#]*dhcp-option=119.*$/dhcp-option=119,\"$DOMAIN_SUFFIX\"/ /etc/dnsmasq.conf + sed -i -e "/^[#]*dhcp-option=119.*$/d" /etc/dnsmasq.conf + echo "dhcp-option=119,$DNS_SEARCH_ORDER" >> /etc/dnsmasq.conf fi if [ "$USE_EXTERNAL_DNS" == "true" ] @@ -550,8 +551,8 @@ for i in $CMDLINE domain) DOMAIN=$VALUE ;; - domainsuffix) - DOMAIN_SUFFIX=$VALUE + dnssearchorder) + DNS_SEARCH_ORDER=$VALUE ;; useextdns) USE_EXTERNAL_DNS=$VALUE diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index 7bcbebb0114..8668ca291ce 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -1156,7 +1156,7 @@ public class ConfigurationManagerImpl implements ConfigurationManager, Configura String internalDns2 = cmd.getInternalDns2(); String vnetRange = cmd.getVlan(); String guestCidr = cmd.getGuestCidrAddress(); - List domainSuffixList = cmd.getDomainSuffixList(); + List dnsSearchOrder = cmd.getDnsSearchOrder(); Long userId = UserContext.current().getCallerUserId(); int startVnetRange = 0; int stopVnetRange = 0; @@ -1186,8 +1186,8 @@ public class ConfigurationManagerImpl implements ConfigurationManager, Configura } // add the domain prefix list to details if not null - if (domainSuffixList != null){ - newDetails.put("dns.suffixes", StringUtils.join(domainSuffixList, ",")); + if (dnsSearchOrder != null){ + newDetails.put(ZoneConfig.DnsSearchOrder.getName(), StringUtils.join(dnsSearchOrder, ",")); } if (userId == null) { diff --git a/server/src/com/cloud/configuration/ZoneConfig.java b/server/src/com/cloud/configuration/ZoneConfig.java index 80400c70434..98e3cc41f27 100644 --- a/server/src/com/cloud/configuration/ZoneConfig.java +++ b/server/src/com/cloud/configuration/ZoneConfig.java @@ -28,7 +28,8 @@ public enum ZoneConfig { MaxVirtualMachines( Long.class, "max.vms", null, "Maximum number of VMs the Zone can have", null), ZoneMode( String.class, "zone.mode", null, "Mode of the Zone", "Free,Basic,Advanced"), HasNoPublicIp(Boolean.class, "has.no.public.ip", "false", "True if Zone has no public IP", null), - DhcpStrategy(String.class, "zone.dhcp.strategy", "cloudstack-systemvm", "Who controls DHCP", "cloudstack-systemvm,cloudstack-external,external"); + DhcpStrategy(String.class, "zone.dhcp.strategy", "cloudstack-systemvm", "Who controls DHCP", "cloudstack-systemvm,cloudstack-external,external"), + DnsSearchOrder(String.class, "network.guestnetwork.dns.search.order", null, "Domains list to be used for domain search order", null); private final Class _type; diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java index 62669fac4c9..63f40b88ce6 100755 --- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java +++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java @@ -67,6 +67,7 @@ import com.cloud.capacity.dao.CapacityDao; import com.cloud.cluster.ManagementServerNode; import com.cloud.configuration.Config; import com.cloud.configuration.ConfigurationManager; +import com.cloud.configuration.ZoneConfig; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.configuration.dao.ResourceLimitDao; import com.cloud.dc.DataCenter; @@ -1232,9 +1233,9 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian if (domain != null) { buf.append(" domain=" + domain); } - String domain_suffix = dcVO.getDetail("dns.suffixes"); + String domain_suffix = dcVO.getDetail(ZoneConfig.DnsSearchOrder.getName()); if (domain_suffix != null) { - buf.append(" domainsuffix=").append(domain_suffix); + buf.append(" dnssearchorder=").append(domain_suffix); }