From 38e627673705dc2be11832fc3104e5e47e7b11d7 Mon Sep 17 00:00:00 2001 From: Paul Van Eck Date: Tue, 13 Jan 2015 15:14:42 -0800 Subject: [PATCH] Added the actual post request to upload Change-Id: I4297ec4c44c84c2c7b1fefe5f65eac55e5a6845e --- .gitignore | 3 +++ refstack_client/refstack_client.py | 15 ++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 526fc3c..66a72cb 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,6 @@ cover/* .project .pydevproject build +.tempest/ +.venv/ + diff --git a/refstack_client/refstack_client.py b/refstack_client/refstack_client.py index 6a5ccbb..36d482f 100755 --- a/refstack_client/refstack_client.py +++ b/refstack_client/refstack_client.py @@ -29,6 +29,7 @@ import ConfigParser import json import logging import os +import requests import subprocess import time @@ -93,7 +94,7 @@ class RefstackClient: if not os.path.isfile(self.args.file): self.logger.error("File not valid: %s" % self.args.file) exit(1) - self.logger.setLevel(logging.DEBUG) + self.upload_file = self.args.file def _get_next_stream_subunit_output_file(self, tempest_dir): @@ -164,11 +165,15 @@ class RefstackClient: def post_results(self, url, content): '''Post the combined results back to the server.''' + self.logger.debug('API request content: %s ' % content) + try: + url = '%s/v1/results/' % self.args.url - # TODO(cdiep): Post results once the API is available as outlined here: - # github.com/stackforge/refstack/blob/master/specs/approved/api-v1.md - json_content = json.dumps(content) - self.logger.debug('API request content: %s ' % json_content) + response = requests.post(url, data={'data': json.dumps(content)}) + self.logger.info(url + " Response: " + str(response.text)) + except Exception as e: + self.logger.critical('Failed to post %s - %s ' % (url, e)) + raise def test(self): '''Execute Tempest test against the cloud.'''