This is an automated email from the ASF dual-hosted git repository.
rohit pushed a commit to branch 4.15
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/4.15 by this push:
new 21d7854 s2svpn: Set initial state as Connecting (#5327)
21d7854 is described below
commit 21d785427472c39b0ba15d4723afa0c842819d56
Author: davidjumani <[email protected]>
AuthorDate: Wed Aug 18 16:50:38 2021 +0530
s2svpn: Set initial state as Connecting (#5327)
* s2svpn: Set initial state as Connecting
* Fix comments
* Adding connecting elsewhere
---
api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java | 2 +-
.../cloud/network/router/VirtualNetworkApplianceManagerImpl.java | 5 +++--
.../main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java | 9 +++++----
test/integration/smoke/test_vpc_vpn.py | 6 +++---
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java
b/api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java
index cfc439a..994df87 100644
--- a/api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java
+++ b/api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java
@@ -24,7 +24,7 @@ import org.apache.cloudstack.api.InternalIdentity;
public interface Site2SiteVpnConnection extends ControlledEntity,
InternalIdentity, Displayable {
enum State {
- Pending, Connected, Disconnected, Error,
+ Pending, Connecting, Connected, Disconnected, Error,
}
@Override
diff --git
a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
index 28855db..28fff8e 100644
---
a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
+++
b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
@@ -817,7 +817,8 @@ Configurable, StateListener<VirtualMachine.State,
VirtualMachine.Event, VirtualM
}
final List<String> ipList = new ArrayList<String>();
for (final Site2SiteVpnConnectionVO conn : conns) {
- if (conn.getState() != Site2SiteVpnConnection.State.Connected
&& conn.getState() != Site2SiteVpnConnection.State.Disconnected) {
+ if (conn.getState() != Site2SiteVpnConnection.State.Connected
&& conn.getState() != Site2SiteVpnConnection.State.Disconnected
+ && conn.getState() !=
Site2SiteVpnConnection.State.Connecting) {
continue;
}
final Site2SiteCustomerGateway gw =
_s2sCustomerGatewayDao.findById(conn.getCustomerGatewayId());
@@ -853,7 +854,7 @@ Configurable, StateListener<VirtualMachine.State,
VirtualMachine.Event, VirtualM
throw new CloudRuntimeException("Unable to acquire
lock for site to site vpn connection id " + conn.getId());
}
try {
- if (conn.getState() !=
Site2SiteVpnConnection.State.Connected && conn.getState() !=
Site2SiteVpnConnection.State.Disconnected) {
+ if (conn.getState() !=
Site2SiteVpnConnection.State.Connected && conn.getState() !=
Site2SiteVpnConnection.State.Disconnected && conn.getState() !=
Site2SiteVpnConnection.State.Connecting) {
continue;
}
final Site2SiteVpnConnection.State oldState =
conn.getState();
diff --git
a/server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
b/server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
index 63fcacc..5b444c2 100644
--- a/server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
+++ b/server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java
@@ -347,7 +347,7 @@ public class Site2SiteVpnManagerImpl extends ManagerBase
implements Site2SiteVpn
if (conn.isPassive()) {
conn.setState(State.Disconnected);
} else {
- conn.setState(State.Connected);
+ conn.setState(State.Connecting);
}
_vpnConnectionDao.persist(conn);
return conn;
@@ -530,7 +530,7 @@ public class Site2SiteVpnManagerImpl extends ManagerBase
implements Site2SiteVpn
continue;
}
try {
- if (conn.getState() == State.Connected || conn.getState()
== State.Error) {
+ if (conn.getState() == State.Connected || conn.getState()
== State.Connecting || conn.getState() == State.Error) {
stopVpnConnection(conn.getId());
}
startVpnConnection(conn.getId());
@@ -608,7 +608,8 @@ public class Site2SiteVpnManagerImpl extends ManagerBase
implements Site2SiteVpn
if (conn.getState() == State.Pending) {
conn.setState(State.Disconnected);
}
- if (conn.getState() == State.Connected || conn.getState() ==
State.Error || conn.getState() == State.Disconnected) {
+ if (conn.getState() == State.Connected || conn.getState() ==
State.Error
+ || conn.getState() == State.Disconnected || conn.getState() ==
State.Connecting) {
stopVpnConnection(id);
}
startVpnConnection(id);
@@ -795,7 +796,7 @@ public class Site2SiteVpnManagerImpl extends ManagerBase
implements Site2SiteVpn
throw new CloudRuntimeException("Unable to acquire lock on " +
conn);
}
try {
- if (conn.getState() == Site2SiteVpnConnection.State.Connected)
{
+ if (conn.getState() == Site2SiteVpnConnection.State.Connected
|| conn.getState() == Site2SiteVpnConnection.State.Connecting) {
conn.setState(Site2SiteVpnConnection.State.Disconnected);
_vpnConnectionDao.persist(conn);
}
diff --git a/test/integration/smoke/test_vpc_vpn.py
b/test/integration/smoke/test_vpc_vpn.py
index 26b1daf..485aec6 100644
--- a/test/integration/smoke/test_vpc_vpn.py
+++ b/test/integration/smoke/test_vpc_vpn.py
@@ -618,7 +618,7 @@ class TestVpcSite2SiteVpn(cloudstackTestCase):
self.logger.debug("Network %s created in VPC %s" % (ntwk2.id, vpc2.id))
vm1 = None
- # Deploy a vm in network 2
+ # Deploy a vm in network 1
try:
vm1 = VirtualMachine.create(self.apiclient,
services=self.services["virtual_machine"],
templateid=self.template.id,
@@ -990,7 +990,7 @@ class TestRVPCSite2SiteVpn(cloudstackTestCase):
self.cleanup.append(ntwk2)
self.logger.debug("Network %s created in VPC %s" % (ntwk2.id, vpc2.id))
- # Deploy a vm in network 2
+ # Deploy a vm in network 1
vm1 = None
try:
vm1 = VirtualMachine.create(self.apiclient,
services=self.services["virtual_machine"],
@@ -1370,7 +1370,7 @@ class
TestVPCSite2SiteVPNMultipleOptions(cloudstackTestCase):
self.logger.debug("Network %s created in VPC %s" % (ntwk2.id, vpc2.id))
vm1 = None
- # Deploy a vm in network 2
+ # Deploy a vm in network 1
try:
vm1 = VirtualMachine.create(self.apiclient,
services=self.services["virtual_machine"],
templateid=self.template.id,