def runSimulation(jobconf):
    console = Context.console
    console.info("Running Simulation...")

    argv    = []
    javaBin = "java"
    javaClassPath = "-cp"
    argv.extend((javaBin, javaClassPath))

    configClassPath = jobconf.get("simulate/java-classpath", [])
    qxSeleniumPath = jobconf.get("simulate/qxselenium-path", False)
    if qxSeleniumPath:
        configClassPath.append(qxSeleniumPath)

    classPathSeparator = ":"
    if util.getPlatformInfo()[0] == "Windows":
        classPathSeparator = ";"

    configClassPath = classPathSeparator.join(configClassPath)

    if "CYGWIN" in util.getPlatformInfo()[0]:
        configClassPath = "`cygpath -wp " + configClassPath + "`"

    argv.append(configClassPath)

    rhinoClass = jobconf.get("simulate/rhino-class", "org.mozilla.javascript.tools.shell.Main")
    runnerScript = jobconf.get("simulate/simulator-script")
    argv.extend((rhinoClass, runnerScript))

    cmd = " ".join(textutil.quoteCommandArgs(argv))

    settings = jobconf.get("environment", None)
    for key in settings:
        if type(settings[key]) == unicode:
            settings[key] = settings[key].replace(" ", "$")
    if settings:
        settings = json.dumps(settings, separators=(",", ":"))
        settings = settings.replace('"','\\"').replace("{", "\{").replace("}", "\}")
        settings = "settings=" + settings
        cmd += " " + settings

    console.debug("Selenium start command: " + cmd)
    shell = ShellCmd()
    shell.execute_logged(cmd, console, True)
Beispiel #2
0
def runCollectEnvironmentInfo(jobconfig, confObj):
    letConfig = jobconfig.get('let',{})
    console = Context.console
    cache = Context.cache

    console.info("Environment information")
    console.indent()

    platformInfo = util.getPlatformInfo()
    console.info("Platform: %s %s" % (platformInfo[0], platformInfo[1]))

    console.info("Python version: %s" % sys.version)

    if 'QOOXDOO_PATH' in letConfig:
        qxPath = confObj.absPath(letConfig['QOOXDOO_PATH'])
        console.info("qooxdoo path: %s" % qxPath)

        versionFile = open(os.path.join(qxPath, "version.txt"))
        version = versionFile.read()
        console.info("Framework version: %s" % version.strip())

        #TODO: Improve this check
        classFile = os.path.join(qxPath, "framework", "source", "class", "qx", "Class.js")
        console.info("Kit looks OK: %s" % os.path.isfile(classFile) )

    console.info("Looking for generated versions...")
    console.indent()
    try:
        expandedjobs = confObj.resolveExtendsAndRuns(["build-script", "source-script"])
        confObj.includeSystemDefaults(expandedjobs)
        confObj.resolveMacros(expandedjobs)
    except Exception:
        console.outdent()  # TODO: clean-up from the try block; fix this where the exception occurrs
        expandedjobs = []

    if expandedjobs:
        # make sure we're working with Job() objects (bug#5896)
        expandedjobs = [confObj.getJob(x) for x in expandedjobs]

        # check for build loader
        buildScriptFile =  expandedjobs[0].get("compile-options/paths/file", None)
        if buildScriptFile:
            buildScriptFilePath = confObj.absPath(buildScriptFile)
            console.info("Build version generated: %s" % os.path.isfile(buildScriptFilePath) )

        # check for source loader
        sourceScriptFile =  expandedjobs[1].get("compile-options/paths/file", None)
        if sourceScriptFile:
            sourceScriptFilePath = confObj.absPath(sourceScriptFile)
            console.info("Source version generated: %s" % os.path.isfile(sourceScriptFilePath) )
    else:
        console.info("nope")
    console.outdent()

    # check cache path
    cacheCfg = jobconfig.get("cache", None)
    if cacheCfg:
        console.info("Cache settings")
        console.indent()
        if 'compile' in cacheCfg:
            compDir = confObj.absPath(cacheCfg['compile'])
            console.info("Compile cache path is: %s" % compDir )
            console.indent()
            isDir = os.path.isdir(compDir)
            console.info("Existing directory: %s" % isDir)
            if isDir:
                console.info("Cache file revision: %d" % cache.getCacheFileVersion())
                console.info("Elements in cache: %d" % len(os.listdir(compDir)))
            console.outdent()
        if 'downloads' in cacheCfg:
            downDir = confObj.absPath(cacheCfg['downloads'])
            console.info("Download cache path is: %s" % downDir )
            console.indent()
            isDir = os.path.isdir(downDir)
            console.info("Existing directory: %s" % isDir)
            if isDir:
                console.info("Elements in cache: %d" % len(os.listdir(downDir)))
            console.outdent()
        console.outdent()

    console.outdent()
Beispiel #3
0
def runCollectEnvironmentInfo(jobconfig, confObj):
    letConfig = jobconfig.get('let', {})
    console = Context.console
    cache = Context.cache

    console.info("Environment information")
    console.indent()

    platformInfo = util.getPlatformInfo()
    console.info("Platform: %s %s" % (platformInfo[0], platformInfo[1]))

    console.info("Python version: %s" % sys.version)

    if 'QOOXDOO_PATH' in letConfig:
        qxPath = confObj.absPath(letConfig['QOOXDOO_PATH'])
        console.info("qooxdoo path: %s" % qxPath)

        versionFile = open(os.path.join(qxPath, "version.txt"))
        version = versionFile.read()
        console.info("Framework version: %s" % version.strip())

        #TODO: Improve this check
        classFile = os.path.join(qxPath, "framework", "source", "class", "qx",
                                 "Class.js")
        console.info("Kit looks OK: %s" % os.path.isfile(classFile))

    console.info("Looking for generated versions...")
    console.indent()
    try:
        expandedjobs = confObj.resolveExtendsAndRuns(
            ["build-script", "source-script"])
        confObj.includeSystemDefaults(expandedjobs)
        confObj.resolveMacros(expandedjobs)
    except Exception:
        console.outdent(
        )  # TODO: clean-up from the try block; fix this where the exception occurrs
        expandedjobs = []

    if expandedjobs:
        # make sure we're working with Job() objects (bug#5896)
        expandedjobs = [confObj.getJob(x) for x in expandedjobs]

        # check for build loader
        buildScriptFile = expandedjobs[0].get("compile-options/paths/file",
                                              None)
        if buildScriptFile:
            buildScriptFilePath = confObj.absPath(buildScriptFile)
            console.info("Build version generated: %s" %
                         os.path.isfile(buildScriptFilePath))

        # check for source loader
        sourceScriptFile = expandedjobs[1].get("compile-options/paths/file",
                                               None)
        if sourceScriptFile:
            sourceScriptFilePath = confObj.absPath(sourceScriptFile)
            console.info("Source version generated: %s" %
                         os.path.isfile(sourceScriptFilePath))
    else:
        console.info("nope")
    console.outdent()

    # check cache path
    cacheCfg = jobconfig.get("cache", None)
    if cacheCfg:
        console.info("Cache settings")
        console.indent()
        if 'compile' in cacheCfg:
            compDir = confObj.absPath(cacheCfg['compile'])
            console.info("Compile cache path is: %s" % compDir)
            console.indent()
            isDir = os.path.isdir(compDir)
            console.info("Existing directory: %s" % isDir)
            if isDir:
                console.info("Cache file revision: %d" %
                             cache.getCacheFileVersion())
                console.info("Elements in cache: %d" %
                             len(os.listdir(compDir)))
            console.outdent()
        if 'downloads' in cacheCfg:
            downDir = confObj.absPath(cacheCfg['downloads'])
            console.info("Download cache path is: %s" % downDir)
            console.indent()
            isDir = os.path.isdir(downDir)
            console.info("Existing directory: %s" % isDir)
            if isDir:
                console.info("Elements in cache: %d" %
                             len(os.listdir(downDir)))
            console.outdent()
        console.outdent()

    console.outdent()