Skip to content

Commit

Permalink
correctly parse docker output from z debian systems
Browse files Browse the repository at this point in the history
  • Loading branch information
tuand27613 committed May 13, 2016
1 parent 82064af commit 2fcaf07
Showing 1 changed file with 22 additions and 12 deletions.
34 changes: 22 additions & 12 deletions bddtests/steps/peer_basic_impl.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,16 @@ def parseComposeOutput(context):
containerNamePrefix = os.path.basename(os.getcwd()) + "_"
containerNames = []
for l in context.compose_error.splitlines():
print(l.split())
containerNames.append(l.split()[1])

tokens = l.split()
print(tokens)
if 1 < len(tokens):
thisContainer = tokens[1]
if containerNamePrefix not in thisContainer:
thisContainer = containerNamePrefix + thisContainer + "_1"
if thisContainer not in containerNames:
containerNames.append(thisContainer)

print("Containers started: ")
print(containerNames)
# Now get the Network Address for each name, and set the ContainerData onto the context.
containerDataList = []
Expand Down Expand Up @@ -101,6 +108,9 @@ def buildUrl(context, ipAddress, path):
schema = "https"
return "{0}://{1}:{2}{3}".format(schema, ipAddress, CORE_REST_PORT, path)

def currentTime():
return time.strftime("%H:%M:%S")

def getDockerComposeFileArgsFromYamlFile(compose_yaml):
parts = compose_yaml.split()
args = []
Expand Down Expand Up @@ -240,7 +250,7 @@ def invokeChaincode(context, devopsFunc, functionName, containerName):
}
ipAddress = ipFromContainerNamePart(containerName, context.compose_containers)
request_url = buildUrl(context, ipAddress, "/devops/{0}".format(devopsFunc))
print("POSTing path = {0}".format(request_url))
print("{0} POSTing path = {1}".format(currentTime(), request_url))

resp = requests.post(request_url, headers={'Content-type': 'application/json'}, data=json.dumps(chaincodeInvocationSpec), verify=False)
assert resp.status_code == 200, "Failed to POST to %s: %s" %(request_url, resp.text)
Expand All @@ -266,7 +276,7 @@ def step_impl(context, seconds, containerName):
assert 'transactionID' in context, "transactionID not found in context"
ipAddress = ipFromContainerNamePart(containerName, context.compose_containers)
request_url = buildUrl(context, ipAddress, "/transactions/{0}".format(context.transactionID))
print("GETing path = {0}".format(request_url))
print("{0} GETing path = {1}".format(currentTime(), request_url))

resp = requests.get(request_url, headers={'Accept': 'application/json'}, verify=False)
assert resp.status_code == 200, "Failed to POST to %s: %s" %(request_url, resp.text)
Expand All @@ -284,7 +294,7 @@ def multiRequest(context, seconds, containerDataList, pathBuilderFunc):

# Loop unless failure or time exceeded
while (datetime.now() < maxTime):
print("GETing path = {0}".format(request_url))
print("{0} GETing path = {1}".format(currentTime(), request_url))
resp = requests.get(request_url, headers={'Accept': 'application/json'}, verify=False)
respMap[container.containerName] = resp
else:
Expand All @@ -306,7 +316,7 @@ def step_impl(context, seconds):

# Loop unless failure or time exceeded
while (datetime.now() < maxTime):
print("GETing path = {0}".format(request_url))
print("{0} GETing path = {1}".format(currentTime(), request_url))
resp = requests.get(request_url, headers={'Accept': 'application/json'}, verify=False)
if resp.status_code == 404:
# Pause then try again
Expand Down Expand Up @@ -357,7 +367,7 @@ def step_impl(context, seconds):

# Loop unless failure or time exceeded
while (datetime.now() < maxTime):
print("GETing path = {0}".format(request_url))
print("{0} GETing path = {1}".format(currentTime(), request_url))
resp = requests.get(request_url, headers={'Accept': 'application/json'}, verify=False)
if resp.status_code == 404:
# Pause then try again
Expand Down Expand Up @@ -395,7 +405,7 @@ def step_impl(context, chaincodeName, functionName):
responses = []
for container in context.compose_containers:
request_url = buildUrl(context, container.ipAddress, "/devops/{0}".format(functionName))
print("POSTing path = {0}".format(request_url))
print("{0} POSTing path = {1}".format(currentTime(), request_url))
resp = requests.post(request_url, headers={'Content-type': 'application/json'}, data=json.dumps(chaincodeInvocationSpec), verify=False)
assert resp.status_code == 200, "Failed to POST to %s: %s" %(request_url, resp.text)
responses.append(resp)
Expand Down Expand Up @@ -426,7 +436,7 @@ def step_impl(context, chaincodeName, functionName, value):
chaincodeInvocationSpec['chaincodeSpec']["secureContext"] = context.peerToSecretMessage[container.composeService]['enrollId']
print("Container {0} enrollID = {1}".format(container.containerName, container.getEnv("CORE_SECURITY_ENROLLID")))
request_url = buildUrl(context, container.ipAddress, "/devops/{0}".format(functionName))
print("POSTing path = {0}".format(request_url))
print("{0} POSTing path = {1}".format(currentTime(), request_url))
resp = requests.post(request_url, headers={'Content-type': 'application/json'}, data=json.dumps(chaincodeInvocationSpec), timeout=30, verify=False)
assert resp.status_code == 200, "Failed to POST to %s: %s" %(request_url, resp.text)
print("RESULT from {0} of chaincode from peer {1}".format(functionName, container.containerName))
Expand Down Expand Up @@ -473,7 +483,7 @@ def step_impl(context, userName, secret):
# Login to each container specified
for ipAddress in ipAddressList:
request_url = buildUrl(context, ipAddress, "/registrar")
print("POSTing path = {0}".format(request_url))
print("{0} POSTing path = {1}".format(currentTime(), request_url))

resp = requests.post(request_url, headers={'Content-type': 'application/json'}, data=json.dumps(secretMsg), verify=False)
assert resp.status_code == 200, "Failed to POST to %s: %s" %(request_url, resp.text)
Expand Down Expand Up @@ -527,7 +537,7 @@ def step_impl(context):
assert context.compose_returncode == 0, "docker-compose failed to stop {0}".format(service)
#remove from the containerDataList
context.compose_containers = [containerData for containerData in context.compose_containers if containerData.composeService != service]
print("After stopping, the container serive list is = {0}".format([containerData.composeService for containerData in context.compose_containers]))
print("After stopping, the container service list is = {0}".format([containerData.composeService for containerData in context.compose_containers]))

@given(u'I start peers')
def step_impl(context):
Expand Down

0 comments on commit 2fcaf07

Please sign in to comment.