Beispiel #1
0
def run_app(generate_module, build_to_run):
    '''Run a generated app on a device or emulator.
	
	:param generate_module: the :mod:`generate.generate` module
	:param build_to_run: a :class:`build.Build` instance
	'''

    if len(build_to_run.enabled_platforms) != 1:
        raise BASE_EXCEPTION("Expected to run exactly one platform at a time")

    build_to_run.add_steps(
        generate_module.customer_phases.migrate_to_plugins())

    target = list(build_to_run.enabled_platforms)[0]
    if target == 'firefox':
        build_to_run.add_steps(
            generate_module.customer_phases.run_firefox_phase(
                build_to_run.output_dir))
    elif target == 'chrome':
        build_to_run.add_steps(
            generate_module.customer_phases.run_chrome_phase())
    elif target == 'safari':
        build_to_run.add_steps(
            generate_module.customer_phases.run_safari_phase())
    elif target == 'ie':
        build_to_run.add_steps(generate_module.customer_phases.run_ie_phase())

    log_build(build_to_run, "run")
    build_to_run.run()
def run_app(generate_module, build_to_run):
	'''Run a generated app on a device or emulator.
	
	:param generate_module: the :mod:`generate.generate` module
	:param build_to_run: a :class:`build.Build` instance
	'''
	add_check_settings_steps(generate_module, build_to_run)

	if len(build_to_run.enabled_platforms) != 1:
		raise BASE_EXCEPTION("Expected to run exactly one platform at a time")

	target = list(build_to_run.enabled_platforms)[0]
	if target == 'android':
		interactive = build_to_run.tool_config.get('general.interactive', True)
		sdk = build_to_run.tool_config.get('android.sdk')
		device = build_to_run.tool_config.get('android.device')
		purge = build_to_run.tool_config.get('android.purge')

		build_to_run.add_steps(
			generate_module.customer_phases.run_android_phase(
				build_to_run.output_dir,
				sdk=sdk,
				device=device,
				interactive=interactive,
				purge=purge,
			)
		)
	elif target == 'ios':
		device = build_to_run.tool_config.get('ios.device')

		build_to_run.add_steps(
			generate_module.customer_phases.run_ios_phase(device)
		)
	elif target == 'firefox':
		build_to_run.add_steps(
			generate_module.customer_phases.run_firefox_phase(build_to_run.output_dir)
		)
	elif target == 'web':
		build_to_run.add_steps(
			generate_module.customer_phases.run_web_phase()
		)
	elif target == 'wp':
		device = build_to_run.tool_config.get('wp.device')

		build_to_run.add_steps(
			generate_module.customer_phases.run_wp_phase(device)
		)

	elif target == 'chrome':
		build_to_run.add_steps(
			generate_module.customer_phases.run_chrome_phase()
		)

	
	log_build(build_to_run, "run")
	build_to_run.run()
Beispiel #3
0
def package_app(generate_module, build_to_run):

	if len(build_to_run.enabled_platforms) != 1:
		raise BASE_EXCEPTION("Expected to package exactly one platform at a time")

	build_to_run.add_steps(
		generate_module.customer_phases.package(build_to_run.output_dir)
	)
	log_build(build_to_run, "package")
	build_to_run.run()
Beispiel #4
0
def lint_javascript(build):
    if build.forge_root is None:
        raise BASE_EXCEPTION("We don't know where the Forge tools are")

    log.info("Checking JavaScript files...")
    if sys.platform.startswith("linux"):
        if platform.architecture()[0] == '64bit':
            command = path.join(build.forge_root, "bin", "jsl-64")
        else:
            command = path.join(build.forge_root, "bin", "jsl")
    elif sys.platform.startswith("darwin"):
        command = path.join(build.forge_root, "bin", "jsl-mac")
    elif sys.platform.startswith("win"):
        command = path.join(build.forge_root, "bin", "jsl.exe")

    data = lib.PopenWithoutNewConsole([
        command, "-conf",
        path.join(build.forge_root, "jsl.conf"), "-process",
        path.join(os.getcwd(), "src", "*.js"), "-nologo", "-nofilelisting",
        "-nosummary"
    ],
                                      stdout=subprocess.PIPE).communicate()[0]
    map(log.warning, [line for line in data.split('\n') if line])
    log.info("JavaScript check complete")