mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 08:45:46 +00:00
ef888e008b
I went with gradle instead of gradlew because it's more likely to be what users consider. And mach helpfully fixes up the uncommon typo. This is a little hard-coded right now but I don't think it's likely any other Gradle consumer will arise in the short term. --HG-- extra : source : 67ce3d7591f944fa458758d97f443651f0e40dac extra : amend_source : d10846e845deda5d368bdfdbb5b3d68706038992 extra : histedit_source : fb30750f389444a9619778d4c690d7de5e5fcbc1
37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
from __future__ import print_function, unicode_literals
|
|
|
|
import argparse
|
|
import logging
|
|
import mozpack.path as mozpath
|
|
|
|
from mozbuild.base import (
|
|
MachCommandBase,
|
|
MachCommandConditions as conditions,
|
|
)
|
|
|
|
from mach.decorators import (
|
|
CommandArgument,
|
|
CommandProvider,
|
|
Command,
|
|
)
|
|
|
|
|
|
@CommandProvider
|
|
class MachCommands(MachCommandBase):
|
|
@Command('gradle', category='devenv',
|
|
description='Run gradle.',
|
|
conditions=[conditions.is_android])
|
|
@CommandArgument('args', nargs=argparse.REMAINDER)
|
|
def gradle(self, args):
|
|
# Avoid logging the command
|
|
self.log_manager.terminal_handler.setLevel(logging.CRITICAL)
|
|
|
|
return self.run_process(['./gradlew'] + args,
|
|
pass_thru=True, # Allow user to run gradle interactively.
|
|
ensure_exit_code=False, # Don't throw on non-zero exit code.
|
|
cwd=mozpath.join(self.topobjdir, 'mobile', 'android', 'gradle'))
|