Add an --only flag to disable features by default

Review Request #10181 — Created Sept. 25, 2018 and submitted — Latest diff uploaded

Information

Review Board
release-2.5.x
d39551f...

Reviewers

Our previous workflow for running a specific set of prepare-dev.py was
to to pass an argument for each section we did not want to run. e.g., to
run only the dependency installation, you would run:

./contrib/internal/prepare-dev.py --no-db --no-media.

That is, each action was enabled by default and you had to disable
everything you didn't want to run. As more features get added to
prepare-dev.py, it becomes less user friendly to force the user to
specify the complement of the features that they don't want to run.

Now we have an --only option which inverts our usual behaviour. In
other words, to run only the dependency installation as above, you
would run

./contrib/internal/prepare-dev.py --only --deps

This allows the user to more easily specify and run a minimal part of
prepare-dev.py's actions, as opposed to the old behaviour which
assumed you wanted to run a maximal part of its actions.

Ran ./contrib/internal/prepare-dev.py --only --deps and only deps
were installed.