Commit Graph

12 Commits

Author SHA1 Message Date
Gregory Szorc
cb927ab20b Bug 808336 - Part 1: Refactor mach command handler management; r=jhammel
Previously we were tighly coupled with MozbuildObject. This was not in
the spirit of mach being a generic tool. Now, instead of passing multiple
arguments to __init__ of the class providing the mach command we either
pass 0 or 1. The number of arguments is detected when processing the
@CommandProvider decorator. The optional argument is a named tuple
containing mach run-time state.

Capturing of mach command provider information is now captured in a
class (as opposed to an anoymous tuple). We also capture these in a rich
data structure which is passed as part of the run-time data to the
command provider class. This allows mach commands to inspect the mach
environment.

Mach decorators have been moved to mach.decorators. mach.base is
reserved for generic mach data/container classes.

Existing mach command classes derived from MozbuildObject have been
replaced with either object or mozbuild.base.MachCommandBase. This
latter class translates the mach context instance passed to __init__
into the constructor arguments for MozbuildObject.__init__.

Support for registering function handlers with mach has been removed.
All handlers must be inside classes.

--HG--
rename : python/mach/mach/base.py => python/mach/mach/decorators.py
2012-11-06 16:57:41 -08:00
Freddie F. Haddad
0a6b114f46 Bug 803990 - Add Gentoo to mozboot; r=gps
DONTBUILD (NPOTB)

--HG--
extra : rebase_source : f5c73f1942b71bd0f47a43241c13ef7d7a4fd8d4
2012-11-01 17:06:00 -07:00
Gregory Szorc
926d445c63 Bug 795769 - Add "bootstrap" command to mach; r=ted
The command is currently just a proxy into mozboot.

DONTBUILD (NPOTB)
2012-10-10 17:17:00 -07:00
Gregory Szorc
d57e43249a Bug 774109 - Fix typos in OS X mozboot backend; r=me DONTBUILD
Typos were trivial and weren't worth finding a reviewer for.

--HG--
extra : rebase_source : 40f039121aa5efd710449cff726ac5521f92b7fe
2012-09-18 16:55:20 -07:00
Gregory Szorc
d7252b5e0f Bug 792202 - Make mozboot work with Python 2.6.1; r=jhammel DONTBUILD
Python 2.6.1 is what ships on OS X 10.6 and we want to support mozboot
there.

We include 3 fixes:

1) optparse doesn't like unicode as its initial argument
2) __init__(**kwargs) doesn't like unicode keys
3) subprocess does not have check_output

We took the easy solution of removing unicode_literals. This should have
no significant consequences.
2012-09-18 14:45:21 -07:00
Gregory Szorc
3027826cff Bug 790995 - Part 2: Tie stdin to executed processes; r=me DONTBUILD 2012-09-13 17:51:01 -07:00
Landry Breuil
cd23d7e43b Bug 790750 - Add OpenBSD backend to mozboot; r=gps DONTBUILD 2012-09-13 17:22:13 -07:00
Gregory Szorc
3c702ea581 Bug 790995 - Change how root commands are executed; r=jhammel
os.system has been replaced with subprocess.check_call. We also check
the effective UID to determine whether to run via sudo.
2012-09-13 17:21:49 -07:00
Gregory Szorc
554188a49a Bug 774109 - Bootstrap support for OS X; r=rnewman DONTBUILD
This implements the OS X backend for the bootstrapper. It ensures that
the system is in the proper state to build Firefox by installing
required packages.

This was tested with a fresh install of OS X 10.8. Basic support for OS
X 10.6 and 10.7 is implemented, but not thorougly tested.
2012-09-12 21:29:20 -07:00
Gregory Szorc
684450a4d9 Bug 774112 - Part 2b: Add missing files to download manifest; r=me 2012-09-11 16:43:13 -07:00
kmm
243db6e106 Bug 774112 - Part 2: Implement bootstrap support for popular Linux distros; r=gps 2012-09-11 16:27:26 -07:00
Gregory Szorc
31798d11c9 Bug 774112 - Part 1: Skeleton for one-line system bootstrapping; r=jhammel 2012-09-11 16:27:20 -07:00