add upgrade path to "cloud.dns.name" global config value.

fail creating GSLB rule if DNS name is not confiugred


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/2b939698
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/2b939698
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/2b939698

Branch: refs/heads/vmware-storage-motion
Commit: 2b9396982323e17116515806836cd2f615968557
Parents: e3a104a
Author: Murali Reddy <muralimmre...@gmail.com>
Authored: Wed May 29 15:48:13 2013 +0530
Committer: Murali Reddy <muralimmre...@gmail.com>
Committed: Wed May 29 18:54:35 2013 +0530

----------------------------------------------------------------------
 server/src/com/cloud/configuration/Config.java     |    2 +-
 .../gslb/GlobalLoadBalancingRulesServiceImpl.java  |    3 ++-
 setup/db/db/schema-410to420.sql                    |    2 ++
 3 files changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2b939698/server/src/com/cloud/configuration/Config.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/Config.java 
b/server/src/com/cloud/configuration/Config.java
index e1d3751..7c88aae 100755
--- a/server/src/com/cloud/configuration/Config.java
+++ b/server/src/com/cloud/configuration/Config.java
@@ -408,7 +408,7 @@ public enum Config {
     VMSnapshotMax("Advanced", VMSnapshotManager.class, Integer.class, 
"vmsnapshot.max", "10", "Maximum vm snapshots for a vm", null),
     VMSnapshotCreateWait("Advanced", VMSnapshotManager.class, Integer.class, 
"vmsnapshot.create.wait", "1800", "In second, timeout for create vm snapshot", 
null),
 
-    CloudDnsName("Advanced", ManagementServer.class, String.class, 
"cloud.dns.name", "default", " DNS name of the cloud", null),
+    CloudDnsName("Advanced", ManagementServer.class, String.class, 
"cloud.dns.name", null, "DNS name of the cloud for the GSLB service", null),
        
     BlacklistedRoutes("Advanced", VpcManager.class, String.class, 
"blacklisted.routes", null, "Routes that are blacklisted, can not be used for 
Static Routes creation for the VPC Private Gateway",
                   "routes", ConfigurationParameterScope.zone.toString()),

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2b939698/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java
----------------------------------------------------------------------
diff --git 
a/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java
 
b/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java
index a1865c6..a803f9f 100644
--- 
a/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java
+++ 
b/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java
@@ -126,7 +126,8 @@ public class GlobalLoadBalancingRulesServiceImpl implements 
GlobalLoadBalancingR
             throw new InvalidParameterValueException("Invalid region ID: " + 
regionId);
         }
 
-        if (!region.checkIfServiceEnabled(Region.Service.Gslb)) {
+        String providerDnsName = 
_globalConfigDao.getValue(Config.CloudDnsName.key());
+        if (!region.checkIfServiceEnabled(Region.Service.Gslb) || 
(providerDnsName == null)) {
             throw new CloudRuntimeException("GSLB service is not enabled in 
region : " + region.getName());
         }
 

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/2b939698/setup/db/db/schema-410to420.sql
----------------------------------------------------------------------
diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql
index cf4e98d..ec79237 100644
--- a/setup/db/db/schema-410to420.sql
+++ b/setup/db/db/schema-410to420.sql
@@ -332,6 +332,8 @@ CREATE TABLE `cloud`.`global_load_balancer_lb_rule_map` (
   CONSTRAINT `fk_lb_rule_id` FOREIGN KEY(`lb_rule_id`) REFERENCES 
`load_balancing_rules`(`id`) ON DELETE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
+INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Advanced', 'DEFAULT', 
'management-server', 'cloud.dns.name', null, 'DNS name of the cloud for the 
GSLB service');
+
 INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Account Defaults', 
'DEFAULT', 'management-server', 'max.account.cpus', '40', 'The default maximum 
number of cpu cores that can be used for an account');
 INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Account Defaults', 
'DEFAULT', 'management-server', 'max.account.memory', '40960', 'The default 
maximum memory (in MiB) that can be used for an account');
 INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Account Defaults', 
'DEFAULT', 'management-server', 'max.account.primary.storage', '200', 'The 
default maximum primary storage space (in GiB) that can be used for an 
account');

Reply via email to