Skip to content

Instantly share code, notes, and snippets.

@hamiltont
Created October 17, 2014 20:19
Show Gist options
  • Save hamiltont/4fe238dbff16288be851 to your computer and use it in GitHub Desktop.
Save hamiltont/4fe238dbff16288be851 to your computer and use it in GitHub Desktop.
-------------------- install.sh --------------------
#install both java7 and java8
fw_depends java resin maven java8
-------------------- benchmark_config --------------------
# adds a test for java8
{
"framework": "gemini",
"tests": [{
"default": {
"setup_file": "setup",
"json_url": "/",
"db_url": "/db",
"query_url": "/query?queries=",
"fortune_url": "/fortunes",
"update_url": "/update?queries=",
"plaintext_url": "/plaintext",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
"database": "MySQL",
"framework": "gemini",
"language": "Java",
"orm": "Micro",
"platform": "Servlet",
"webserver": "Resin",
"os": "Linux",
"database_os": "Linux",
"display_name": "gemini",
"notes": "",
"versus": "servlet"
},
"gemini-java8": {
"setup_file": "setup_java8",
"json_url": "/",
"db_url": "/db",
"query_url": "/query?queries=",
"fortune_url": "/fortunes",
"update_url": "/update?queries=",
"plaintext_url": "/plaintext",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
"database": "MySQL",
"framework": "gemini",
"language": "Java",
"orm": "Micro",
"platform": "Servlet",
"webserver": "Resin",
"os": "Linux",
"database_os": "Linux",
"display_name": "gemini",
"notes": "",
"versus": "servlet"
}
}]
}
-------------------- setup.py --------------------
no changes
-------------------- setup_java8.py --------------------
# sets up java_home before running stuff
import subprocess
import sys
import setup_util
from os.path import expanduser
def start(args, logfile, errfile):
setup_util.replace_text("gemini/Docroot/WEB-INF/GeminiHello.conf", "db.ConnectString = .*:3306", "db.ConnectString = " + args.database_host + ":3306")
setup_util.replace_text("gemini/Docroot/WEB-INF/resin.xml", "root-directory=\".*\/FrameworkBenchmarks/gemini", "root-directory=\"%s" % args.troot)
try:
subprocess.call("mkdir -p classes", shell=True, cwd="gemini/Docroot/WEB-INF", stderr=errfile, stdout=logfile)
subprocess.check_call("JAVA_HOME=/opt/java8 && ant compile", shell=True, cwd="gemini", stderr=errfile, stdout=logfile)
subprocess.check_call("JAVA_HOME=/opt/java8 && $RESIN_HOME/bin/resinctl -conf $TROOT/Docroot/WEB-INF/resin.xml start", shell=True, stderr=errfile, stdout=logfile)
return 0
except subprocess.CalledProcessError:
return 1
def stop(logfile, errfile):
try:
subprocess.check_call("JAVA_HOME=/opt/java8 && $RESIN_HOME/bin/resinctl shutdown", shell=True, stderr=errfile, stdout=logfile)
return 0
except subprocess.CalledProcessError:
return 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment