Bug 1839315: part 4) Link from `SheetLoadData::mWasAlternate` to spec. r=emilio DONTBUILD
[gecko.git] / tools / tryselect / docs / index.rst
blob0a741dc825a317c08c52e29ed0271324dac98aea
1 Pushing to Try
2 ==============
4 "Pushing to Try" allows developers to build and test their changes on Mozilla's automation servers
5 without requiring their code to be reviewed and landed.
7 First, :doc:`ensure that you can push to Try <configuration>`.
8 Try knows how to run tasks that are defined in-tree,
9 such as ``build-linux64/opt`` (build Firefox for Linux). To manually select some tasks for
10 Try to process, run the following command:
12 .. code-block:: shell
14     ./mach try fuzzy
16 After submitting your requested tasks, you'll be given a link to your "push" in Treeherder.
17 It may take a few minutes for your push to appear in Treeherder! Be patient, and it will automatically
18 update when Try begins processing your work.
20 Another very useful Try command is ``./mach try auto``, which will automatically select the tasks
21 that are mostly likely to be affected by your changes.
22 See the :doc:`selectors page <selectors/index>` to view all the other ways to select which tasks to push.
24 Resolving "<Try build> is damaged and can't be opened" error
25 ------------------------------------------------------------
27 To run a try build on macOS, you need to get around Apple's restrictions on downloaded applications.
29 These restrictions differ based on your hardware: Apple Silicon machines (M1 etc.) are much stricter.
31 For Apple Silicon machines, you will need to download the target.dmg artifact from the
32 "repackage-macosx64-shippable/opt" job.
33 This is a universal build (i.e. it contains both x86_64 and arm64 code), and it is signed but not notarized.
34 You can trigger this job using ``./mach try fuzzy --full``.
36 On Intel Macs, you can run unsigned builds, once you get around the quarantining (see below),
37 so you can just download the "target.dmg" from a regular opt build.
39 Regardless of hardware, you need to make sure that there is no quarantining attribute on
40 the downloaded dmg file before you attempt to run it:
41 Apple automatically quarantines apps that are downloaded with a browser from an untrusted
42 location. This "quarantine status" can be cleared by doing ``xattr -c <Try build>`` after
43 downloading. You can avoid this "quarantine status" by downloading the build from the command
44 line instead, such as by using ``curl``:
46 .. code-block:: shell
48     curl -L <artifact-url> -o <file-name>
50 .. _attach-job-review:
52 Adding Try jobs to a Phabricator patch
53 --------------------------------------
55 For every patch submitted for review in Phabricator, a new Try run is automatically created.
56 A link called ``Treeherder Jobs`` can be found in the ``Diff Detail`` section of the review in
57 Phabricator.
59 .. image:: img/phab-treeherder-link.png
61 This run is created for static analysis, linting and other tasks. Attaching new jobs to the run is
62 easy and doesn't require more actions from the developer.
63 Click on the down-arrow to access the actions menu, select the relevant jobs
64 and, click on ``Trigger X new jobs`` (located on the top of the job).
66 .. image:: img/add-new-jobs.png
68 Table of Contents
69 -----------------
71 .. toctree::
72   :maxdepth: 2
74   configuration
75   selectors/index
76   presets
77   tasks
80 Indices and tables
81 ------------------
83 * :ref:`genindex`
84 * :ref:`modindex`
85 * :ref:`search`