blob: 8d27533b3578c50e71b71aa032ed4865d4c23997 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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 os
import json
import sys
import requests
from requests import ConnectionError, HTTPError
def bootstrap():
asterix_host = "localhost"
asterix_port = 19002
# First, let's get the path to this script, we'll need it to configure the demo.
base = os.path.dirname(os.path.realpath(__file__))
print "Running AdmAQL101 from",base
# First, we bootstrap our request query
print "Loading TinySocial Dataset..."
query_statement = open("tinysocial/query.txt").read().split("load")
for i in range(1,5):
query_statement[i] = "load" + query_statement[i].replace("FULL_PATH",base + "/tinysocial")
ddl = {
'ddl': query_statement[0]
}
load = {
"statements" : "use dataverse TinySocial; " + "\n".join(query_statement[1:5])
}
http_header = {
'content-type': 'application/json'
}
# Now we run our query
print "Running query...\n"
ddl_url = "http://" + asterix_host + ":" + str(asterix_port) + "/ddl"
update_url = "http://" + asterix_host + ":" + str(asterix_port) + "/update"
try:
requests.get(ddl_url, params=ddl)
response = requests.get(update_url, params=load, headers=http_header)
except (ConnectionError, HTTPError):
print "Encountered connection error; stopping execution"
sys.exit(1)
return True