Allow to connect to SSH server using an intermediate SSH server
For debugging purposes it could be handy to execute tests
on your workstation and connect test instances via SSH passing
throw an intermediate SSH server.
This allow to configure in tempest.conf an intermediate
SSH client connection to be used from tests to create SSH
connections to VMs.
Example of configuration in tempest.conf:
[neutron_plugin_options]
ssh_proxy_jump_host = some.ssh.server
ssh_proxy_jump_username = root
# ssh_proxy_jump_password = # better using keys
proxy_jump_keyfile = ~/.ssh/id_rsa
proxy_jump_port = 22
Change-Id: Icae73c2cddbdcd8da2b4cdb07a7027791642c6a8
diff --git a/neutron_tempest_plugin/config.py b/neutron_tempest_plugin/config.py
index fc07e81..e15748d 100644
--- a/neutron_tempest_plugin/config.py
+++ b/neutron_tempest_plugin/config.py
@@ -56,7 +56,25 @@
'"provider:network_type":<TYPE> - string '
'"mtu":<MTU> - integer '
'"cidr"<SUBNET/MASK> - string '
- '"provider:segmentation_id":<VLAN_ID> - integer')
+ '"provider:segmentation_id":<VLAN_ID> - integer'),
+
+ # Option for feature to connect via SSH to VMs using an intermediate SSH
+ # server
+ cfg.StrOpt('ssh_proxy_jump_host',
+ default=None,
+ help='Proxy jump host used to connect via SSH to VMs..'),
+ cfg.StrOpt('ssh_proxy_jump_username',
+ default='root',
+ help='User name used to connect to "ssh_proxy_jump_host".'),
+ cfg.StrOpt('ssh_proxy_jump_password',
+ default=None,
+ help='Password used to connect to "ssh_proxy_jump_host".'),
+ cfg.StrOpt('ssh_proxy_jump_keyfile',
+ default=None,
+ help='Keyfile used to connect to "ssh_proxy_jump_host".'),
+ cfg.IntOpt('ssh_proxy_jump_port',
+ default=22,
+ help='Port used to connect to "ssh_proxy_jump_host".'),
]
# TODO(amuller): Redo configuration options registration as part of the planned