Enable EDP on private neutron networks

The changes here enable the execution of EDP jobs via private net
IPs rather than public IPs.  Some key points:

- The changes still support the use of public IPs (clusters
leveraging public IPs were tested as well)
- Information required to establish neutron-based connections
(HTTP and SSH) are stored as part of the job configuration in order
to support the periodic job execution lookup tasks (which do not
have the context to retrieve this informatoin via the neutron client)

Fixes: bug #1261541

Change-Id: I48b49882e910886bf9407b82feab7eb27272fa79
This commit is contained in:
Jon Maron
2013-12-20 15:50:14 -05:00
parent a30ba3fcf8
commit c0dae696ed
19 changed files with 227 additions and 38 deletions

View File

@@ -0,0 +1,21 @@
# Copyright (c) 2013 Hortonworks, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import six
class HashableDict(dict):
def __hash__(self):
return hash((frozenset(self), frozenset(six.itervalues(self))))