You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by je...@apache.org on 2013/02/21 00:14:03 UTC
git commit: refs/heads/master - CLOUDSTACK-1343: cloudstack UI -
baremetal - enable baremetal providers who are selected in the network
offering.
Updated Branches:
refs/heads/master b176654b1 -> 48ec4395b
CLOUDSTACK-1343: cloudstack UI - baremetal - enable baremetal providers who are selected in the network offering.
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/48ec4395
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/48ec4395
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/48ec4395
Branch: refs/heads/master
Commit: 48ec4395bd6c681bdaba548ea9956c652759adc0
Parents: b176654
Author: Jessica Wang <je...@citrix.com>
Authored: Wed Feb 20 15:13:46 2013 -0800
Committer: Jessica Wang <je...@citrix.com>
Committed: Wed Feb 20 15:13:46 2013 -0800
----------------------------------------------------------------------
ui/scripts/installWizard.js | 1 +
ui/scripts/zoneWizard.js | 84 +++++++++++++++++++++++++++++++++-----
2 files changed, 75 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/48ec4395/ui/scripts/installWizard.js
----------------------------------------------------------------------
diff --git a/ui/scripts/installWizard.js b/ui/scripts/installWizard.js
index dff12a0..a5e13b8 100644
--- a/ui/scripts/installWizard.js
+++ b/ui/scripts/installWizard.js
@@ -278,6 +278,7 @@
},
pluginFrom: {
name: 'installWizard',
+ selectedNetworkOffering: selectedNetworkOffering,
selectedNetworkOfferingHavingSG: true
}
},
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/48ec4395/ui/scripts/zoneWizard.js
----------------------------------------------------------------------
diff --git a/ui/scripts/zoneWizard.js b/ui/scripts/zoneWizard.js
index 60656e0..8b5171b 100755
--- a/ui/scripts/zoneWizard.js
+++ b/ui/scripts/zoneWizard.js
@@ -23,7 +23,10 @@
var returnedPublicVlanIpRanges = []; //public VlanIpRanges returned by API
var configurationUseLocalStorage = false;
var skipGuestTrafficStep = false;
-
+ var selectedNetworkOfferingObj = {};
+ var baremetalProviders = ["BaremetalDhcpProvider", "BaremetalPxeProvider", "BaremetaUserdataProvider"];
+ var selectedBaremetalProviders = [];
+
// Makes URL string for traffic label
var trafficLabelParam = function(trafficTypeID, data, physicalNetworkID) {
var zoneType = data.zone.networkType;
@@ -441,14 +444,16 @@
var thisNetworkOffering = this;
$(this.service).each(function(){
var thisService = this;
-
+
$(thisService.provider).each(function(){
if(this.name == "Netscaler") {
- thisNetworkOffering.havingNetscaler = true;
- return false; //break each loop
+ thisNetworkOffering.havingNetscaler = true;
+ }
+ else if($.inArray(this.name, baremetalProviders) != -1) {
+ selectedBaremetalProviders.push(this.name);
}
- });
-
+ });
+
if(thisService.name == "SecurityGroup") {
thisNetworkOffering.havingSG = true;
}
@@ -1787,10 +1792,19 @@
if (result.jobstatus == 1) {
//alert("configureVirtualRouterElement succeeded.");
-
+
+ if(args.data.pluginFrom != null && args.data.pluginFrom.name == "installWizard") {
+ selectedNetworkOfferingObj = args.data.pluginFrom.selectedNetworkOffering;
+ }
+
+ var data = {
+ id: virtualRouterProviderId,
+ state: 'Enabled'
+ };
+
$.ajax({
- url: createURL("updateNetworkServiceProvider&state=Enabled&id=" + virtualRouterProviderId),
- dataType: "json",
+ url: createURL("updateNetworkServiceProvider"),
+ data: data,
async: false,
success: function(json) {
var enableVirtualRouterProviderIntervalID = setInterval(function() {
@@ -1806,7 +1820,57 @@
clearInterval(enableVirtualRouterProviderIntervalID);
if (result.jobstatus == 1) {
- //alert("Virtual Router Provider is enabled");
+ //alert("Virtual Router Provider is enabled");
+ for(var i = 0; i < selectedBaremetalProviders.length; i++) {
+ $.ajax({
+ url: createURL("listNetworkServiceProviders"),
+ data: {
+ name: selectedBaremetalProviders[i],
+ physicalNetworkId: args.data.returnedBasicPhysicalNetwork.id
+ },
+ async: false,
+ success: function(json) {
+ var items = json.listnetworkserviceprovidersresponse.networkserviceprovider;
+ if(items != null && items.length > 0) {
+ var providerId = items[0].id;
+ $.ajax({
+ url: createURL("updateNetworkServiceProvider"),
+ data: {
+ id: providerId,
+ state: 'Enabled'
+ },
+ async: false,
+ success: function(json) {
+ var updateNetworkServiceProviderIntervalID = setInterval(function() {
+ $.ajax({
+ url: createURL("queryAsyncJobResult&jobId=" + json.updatenetworkserviceproviderresponse.jobid),
+ dataType: "json",
+ success: function(json) {
+ var result = json.queryasyncjobresultresponse;
+ if (result.jobstatus == 0) {
+ return; //Job has not completed
+ }
+ else {
+ clearInterval(updateNetworkServiceProviderIntervalID);
+ if (result.jobstatus == 1) { //baremetal provider has been enabled successfully
+
+ }
+ else if (result.jobstatus == 2) {
+ alert(_s(result.jobresult.errortext));
+ }
+ }
+ },
+ error: function(XMLHttpResponse) {
+ alert(parseXMLHttpResponse(XMLHttpResponse));
+ }
+ });
+ }, g_queryAsyncJobResultInterval);
+ }
+ });
+ }
+ }
+ });
+ }
if(args.data.pluginFrom != null && args.data.pluginFrom.name == "installWizard") {
selectedNetworkOfferingHavingSG = args.data.pluginFrom.selectedNetworkOfferingHavingSG;