예제 #1
0
    def test_console_ssl_disabled(self, mock_config):
        config = {
            'console-ssl-cert': 'LS0tLS1CRUdJTiBDRV',
            'console-ssl-key': 'LS0tLS1CRUdJTiBQUk'
        }
        mock_config.side_effect = lambda key: config.get(key)

        ctxt = context.ConsoleSSLContext()()
        self.assertEqual(ctxt, {})

        config = {'console-ssl-cert': None, 'console-ssl-key': None}
        mock_config.side_effect = lambda key: config.get(key)

        ctxt = context.ConsoleSSLContext()()
        self.assertEqual(ctxt, {})

        config = {
            'console-access-protocol': 'novnc',
            'console-ssl-cert': None,
            'console-ssl-key': None
        }
        mock_config.side_effect = lambda key: config.get(key)

        ctxt = context.ConsoleSSLContext()()
        self.assertEqual(ctxt, {})
예제 #2
0
    def test_spice_html5_ssl_enabled_no_cluster(self, mock_b64decode,
                                                mock_resolve_address,
                                                mock_is_clustered,
                                                mock_unit_get, mock_config,
                                                mock_exists, mock_open):
        config = {
            'console-ssl-cert': 'LS0tLS1CRUdJTiBDRV',
            'console-ssl-key': 'LS0tLS1CRUdJTiBQUk',
            'console-access-protocol': 'spice'
        }
        mock_config.side_effect = lambda key: config.get(key)
        mock_exists.return_value = True
        mock_unit_get.return_value = '10.5.0.1'
        mock_is_clustered.return_value = False
        mock_b64decode.return_value = 'decode_success'

        mock_open.return_value.__enter__ = lambda s: s
        mock_open.return_value.__exit__ = mock.Mock()

        ctxt = context.ConsoleSSLContext()()
        self.assertTrue(ctxt['ssl_only'])
        self.assertEqual(ctxt['ssl_cert'], '/etc/nova/ssl/nova_cert.pem')
        self.assertEqual(ctxt['ssl_key'], '/etc/nova/ssl/nova_key.pem')
        self.assertEqual(ctxt['html5proxy_base_url'],
                         'https://10.5.0.1:6082/spice_auto.html')
예제 #3
0
                                          service='nova',
                                          config_file=NOVA_CONF),
         nova_cc_context.NovaCellContext(),
         context.SyslogContext(),
         context.LogLevelContext(),
         nova_cc_context.HAProxyContext(),
         nova_cc_context.IdentityServiceContext(service='nova',
                                                service_user='******'),
         nova_cc_context.VolumeServiceContext(),
         context.ZeroMQContext(),
         context.NotificationDriverContext(),
         nova_cc_context.NovaIPv6Context(),
         nova_cc_context.NeutronCCContext(),
         nova_cc_context.NovaConfigContext(),
         nova_cc_context.InstanceConsoleContext(),
         nova_cc_context.ConsoleSSLContext(),
         nova_cc_context.CloudComputeContext(),
         context.InternalEndpointContext('nova-common'),
         nova_cc_context.NeutronAPIContext(),
         nova_cc_context.SerialConsoleContext(),
         context.MemcacheContext()
     ],
 }),
 (NOVA_API_PASTE, {
     'services': [s for s in resolve_services() if 'api' in s],
     'contexts': [
         nova_cc_context.IdentityServiceContext(),
         nova_cc_context.APIRateLimitingContext()
     ],
 }),
 (HAPROXY_CONF, {