You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ra...@apache.org on 2017/04/20 14:03:02 UTC

[cloudstack] branch 49-to-master created (now 9cc3ae8)

This is an automated email from the ASF dual-hosted git repository.

rajani pushed a change to branch 49-to-master
in repository https://gitbox.apache.org/repos/asf/cloudstack.git.

        at  9cc3ae8   Merge release branch 4.9 to master

This branch includes the following new commits:

       new  9cc3ae8   Merge release branch 4.9 to master

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


-- 
To stop receiving notification emails like this one, please contact
['"commits@cloudstack.apache.org" <co...@cloudstack.apache.org>'].

[cloudstack] 01/01: Merge release branch 4.9 to master

Posted by ra...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rajani pushed a commit to branch 49-to-master
in repository https://gitbox.apache.org/repos/asf/cloudstack.git

commit 9cc3ae8a942122ba3384b348376c6a948a2a74cc
Merge: 53b1c5b 5fcf648
Author: Rajani Karuturi <ra...@accelerite.com>
AuthorDate: Thu Apr 20 19:32:20 2017 +0530

    Merge release branch 4.9 to master
    
    * 4.9:
      CLOUDSTACK-9857: With this change if agent dies the systemd will catch it properly and show process as exited
      CLOUDSTACK-9805: Display VR list in network details
      CLOUDSTACK-9356: FIX Cannot add users in VPC VPN

 packaging/centos63/cloud-agent.rc                       |  1 +
 packaging/centos7/cloud-agent.rc                        |  1 +
 packaging/fedora20/cloud-agent.rc                       |  1 +
 packaging/fedora21/cloud-agent.rc                       |  1 +
 .../cloud/network/vpn/RemoteAccessVpnManagerImpl.java   | 15 ++++++++++-----
 ui/index.html                                           |  2 +-
 ui/scripts/network.js                                   | 17 ++++++++++++++++-
 ui/scripts/system.js                                    | 10 ++++++++++
 8 files changed, 41 insertions(+), 7 deletions(-)

diff --cc server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
index 2e23474,2a84714..5f15c07
--- a/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
+++ b/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java
@@@ -529,16 -528,20 +529,21 @@@ public class RemoteAccessVpnManagerImp
                  try {
                      String[] results = element.applyVpnUsers(vpn, users);
                      if (results != null) {
+                         int indexUser = -1;
                          for (int i = 0; i < results.length; i++) {
-                             s_logger.debug("VPN User " + users.get(i) + (results[i] == null ? " is set on " : (" couldn't be set due to " + results[i]) + " on ") + vpn);
+                             indexUser ++;
+                             if (indexUser == users.size()) {
+                                 indexUser = 0; // results on multiple VPC routers are combined in commit 13eb789, reset user index if one VR is done.
+                             }
+                             s_logger.debug("VPN User " + users.get(indexUser) + (results[i] == null ? " is set on " : (" couldn't be set due to " + results[i]) + " on ") + vpn.getUuid());
                              if (results[i] == null) {
-                                 if (!finals[i]) {
-                                     finals[i] = true;
+                                 if (finals[indexUser] == null) {
+                                     finals[indexUser] = true;
                                  }
                              } else {
-                                 finals[i] = false;
+                                 finals[indexUser] = false;
                                  success = false;
 +                                vpnTemp = vpn;
                              }
                          }
                      }
diff --cc ui/scripts/network.js
index d370536,569e31d..1f85a63
--- a/ui/scripts/network.js
+++ b/ui/scripts/network.js
@@@ -1615,6 -1661,246 +1619,11 @@@
                                          }
                                      });
                                  }
+                             },
+ 
 -                            addloadBalancer: { // EIP/ELB Basic zone: Add Load Balancer tab in network detailView
 -                                title: 'label.add.load.balancer',
 -                                custom: function(args) {
 -                                    var context = args.context;
 -
 -                                    return $('<div>').addClass('loadBalancer').multiEdit({
 -                                        context: context,
 -                                        listView: $.extend(true, {}, cloudStack.sections.instances, {
 -                                            listView: {
 -                                                filters: false,
 -
 -                                                dataProvider: function(args) {
 -                                                    var data = {
 -                                                        page: args.page,
 -                                                        pageSize: pageSize,
 -                                                        domainid: g_domainid,
 -                                                        account: g_account,
 -                                                        networkid: args.context.networks[0].id,
 -                                                        listAll: true
 -                                                    };
 -
 -                                                    $.ajax({
 -                                                        url: createURL('listVirtualMachines'),
 -                                                        data: data,
 -                                                        dataType: 'json',
 -                                                        async: true,
 -                                                        success: function(data) {
 -                                                            args.response.success({
 -                                                                data: $.grep(
 -                                                                    data.listvirtualmachinesresponse.virtualmachine ?
 -                                                                    data.listvirtualmachinesresponse.virtualmachine : [],
 -                                                                    function(instance) {
 -                                                                        var nonAutoScale = 0;
 -                                                                        if (instance.displayname == null)
 -                                                                            nonAutoScale = 1;
 -                                                                        else {
 -                                                                            if (instance.displayname.match(/AutoScale-LB-/) == null)
 -                                                                                nonAutoScale = 1;
 -                                                                            else {
 -                                                                                if (instance.displayname.match(/AutoScale-LB-/).length)
 -                                                                                    nonAutoScale = 0;
 -                                                                            }
 -                                                                        }
 -                                                                        var isActiveState = $.inArray(instance.state, ['Destroyed', 'Expunging']) == -1;
 -                                                                        return nonAutoScale && isActiveState;
 -                                                                    }
 -                                                                )
 -                                                            });
 -                                                        },
 -                                                        error: function(data) {
 -                                                            args.response.error(parseXMLHttpResponse(data));
 -                                                        }
 -                                                    });
 -                                                }
 -                                            }
 -                                        }),
 -                                        multipleAdd: true,
 -                                        fields: {
 -                                            'name': {
 -                                                edit: true,
 -                                                label: 'label.name'
 -                                            },
 -                                            'publicport': {
 -                                                edit: true,
 -                                                label: 'label.public.port'
 -                                            },
 -                                            'privateport': {
 -                                                edit: true,
 -                                                label: 'label.private.port'
 -                                            },
 -                                            'algorithm': {
 -                                                label: 'label.algorithm',
 -                                                select: function(args) {
 -                                                    var data = [{
 -                                                            id: 'roundrobin',
 -                                                            name: 'roundrobin',
 -                                                            description: _l('label.lb.algorithm.roundrobin')
 -                                                        }, {
 -                                                            id: 'leastconn',
 -                                                            name: 'leastconn',
 -                                                            description: _l('label.lb.algorithm.leastconn')
 -                                                        }, {
 -                                                            id: 'source',
 -                                                            name: 'source',
 -                                                            description: _l('label.lb.algorithm.source')
 -                                                        }];
 -                                                    if (typeof args.context != 'undefined') {
 -                                                        var lbAlgs = getLBAlgorithms(args.context.networks[0]);
 -                                                        data = (lbAlgs.length == 0) ? data : lbAlgs;
 -                                                    }
 -                                                    args.response.success({
 -                                                        data: data
 -                                                    });
 -                                                }
 -                                            },
 -                                            'sticky': {
 -                                                label: 'label.stickiness',
 -                                                custom: {
 -                                                    buttonLabel: 'label.configure',
 -                                                    action: cloudStack.lbStickyPolicy.dialog()
 -                                                }
 -                                            },
 -                                            'autoScale': {
 -                                                label: 'label.autoscale',
 -                                                custom: {
 -                                                    requireValidation: true,
 -                                                    buttonLabel: 'label.configure',
 -                                                    action: cloudStack.uiCustom.autoscaler(cloudStack.autoscaler)
 -                                                }
 -                                            },
 -                                            'add-vm': {
 -                                                label: 'label.add.vms',
 -                                                addButton: true
 -                                            },
 -                                            'state' : {
 -                                                edit: 'ignore',
 -                                                label: 'label.state'
 -                                            }
 -                                        },
 -
 -                                        add: { //basic zone - elastic IP - Add Load Balancer tab - Add VMs button
 -                                            label: 'label.add.vms',
 -                                            action: function(args) {
 -                                                var data = {
 -                                                    algorithm: args.data.algorithm,
 -                                                    name: args.data.name,
 -                                                    privateport: args.data.privateport,
 -                                                    publicport: args.data.publicport,
 -                                                    openfirewall: false,
 -                                                    domainid: g_domainid,
 -                                                    account: g_account
 -                                                };
 -
 -                                                if ('vpc' in args.context) { //from VPC section
 -                                                    if (args.data.tier == null) {
 -                                                        args.response.error('Tier is required');
 -                                                        return;
 -                                                    }
 -                                                    $.extend(data, {
 -                                                        networkid: args.data.tier
 -                                                    });
 -                                                } else { //from Guest Network section
 -                                                    $.extend(data, {
 -                                                        networkid: args.context.networks[0].id
 -                                                    });
 -                                                }
 -
 -                                                var stickyData = $.extend(true, {}, args.data.sticky);
 -
 -                                                $.ajax({
 -                                                    url: createURL('createLoadBalancerRule'),
 -                                                    data: data,
 -                                                    dataType: 'json',
 -                                                    async: true,
 -                                                    success: function(data) {
 -                                                        var itemData = args.itemData;
 -                                                        //var jobID = data.createloadbalancerruleresponse.jobid; //CS-16964: use jobid from assignToLoadBalancerRule instead of createLoadBalancerRule
 -
 -                                                        $.ajax({
 -                                                            url: createURL('assignToLoadBalancerRule'),
 -                                                            data: {
 -                                                                id: data.createloadbalancerruleresponse.id,
 -                                                                virtualmachineids: $.map(itemData, function(elem) {
 -                                                                    return elem.id;
 -                                                                }).join(',')
 -                                                            },
 -                                                            dataType: 'json',
 -                                                            async: true,
 -                                                            success: function(data) {
 -                                                                var jobID = data.assigntoloadbalancerruleresponse.jobid; //CS-16964: use jobid from assignToLoadBalancerRule instead of createLoadBalancerRule
 -                                                                var lbCreationComplete = false;
 -
 -                                                                args.response.success({
 -                                                                    _custom: {
 -                                                                        jobId: jobID
 -                                                                    },
 -                                                                    notification: {
 -                                                                        label: 'label.add.load.balancer',
 -                                                                        poll: function(args) {
 -                                                                            var complete = args.complete;
 -                                                                            var error = args.error;
 -
 -                                                                            pollAsyncJobResult({
 -                                                                                _custom: args._custom,
 -                                                                                complete: function(args) {
 -                                                                                    if (lbCreationComplete) {
 -                                                                                        return;
 -                                                                                    }
 -
 -                                                                                    lbCreationComplete = true;
 -                                                                                    cloudStack.dialog.notice({
 -                                                                                        message: _l('message.add.load.balancer.under.ip') + args.data.loadbalancer.publicip
 -                                                                                    });
 -
 -                                                                                    if (stickyData &&
 -                                                                                        stickyData.methodname &&
 -                                                                                        stickyData.methodname != 'None') {
 -                                                                                        cloudStack.lbStickyPolicy.actions.add(
 -                                                                                            args.data.loadbalancer.id,
 -                                                                                            stickyData,
 -                                                                                            complete, // Complete
 -                                                                                            complete // Error
 -                                                                                        );
 -                                                                                    } else {
 -                                                                                        complete();
 -                                                                                    }
 -                                                                                },
 -                                                                                error: error
 -                                                                            });
 -                                                                        }
 -                                                                    }
 -                                                                });
 -                                                            },
 -                                                            error: function(data) {
 -                                                                args.response.error(parseXMLHttpResponse(data));
 -                                                            }
 -                                                        });
 -                                                    },
 -                                                    error: function(data) {
 -                                                        args.response.error(parseXMLHttpResponse(data));
 -                                                    }
 -                                                });
 -                                            }
 -                                        },
 -
 -
 -                                        dataProvider: function(args) {
 -                                            args.response.success({ //no LB listing in AddLoadBalancer tab
 -                                                data: []
 -                                            });
 -                                        }
 -                                    });
 -                                }
 -                            },
 -
+                             virtualRouters: {
+                                 title: "label.virtual.appliances",
+                                 listView: cloudStack.sections.system.subsections.virtualRouters.sections.routerNoGroup.listView
                              }
                          }
                      }

-- 
To stop receiving notification emails like this one, please contact
"commits@cloudstack.apache.org" <co...@cloudstack.apache.org>.