Update client session to use requests.session
DrydockSession will handle the base Drydock URL and authentication. Also use requests.session to more efficiently use TCP connection pooling
This commit is contained in:
parent
282349680f
commit
397e9e9769
@ -11,16 +11,25 @@
|
||||
# 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 requests
|
||||
|
||||
class DrydockSession(object)
|
||||
class DrydockSession(object):
|
||||
"""
|
||||
A session to the Drydock API maintaining credentials and API options
|
||||
|
||||
:param string host: The Drydock server hostname or IP
|
||||
:param int port: The service port, defaults to 9000
|
||||
:param string token: Auth token
|
||||
:param string marker: (optional) external context marker
|
||||
"""
|
||||
|
||||
def __init__(self, token=None, marker=None):
|
||||
def __init__(self, host=None, port=9000, token=None, marker=None):
|
||||
self.__session = requests.Session()
|
||||
self.__session.headers.update({'X-Auth-Token': token, 'X-Context-Marker': marker})
|
||||
self.host = host
|
||||
self.port = port
|
||||
self.base_url = "http://%s:%d/api/" % (host, port)
|
||||
self.token = token
|
||||
self.marker = marker
|
||||
|
||||
# TODO Add keystone authentication to produce a token for this session
|
||||
|
Loading…
x
Reference in New Issue
Block a user