tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

platforms.rst (7778B)


      1 Platforms in the CI
      2 ===================
      3 
      4 
      5 .. https://raw.githubusercontent.com/mozilla/treeherder/HEAD/ui/helpers/constants.js
      6   awk -e /thPlatformMap = {/,/};/ constants.js |grep ""|cut -d: -f2|sed -e s/^/   /|sed -e "s/$/ ,, /g"
      7   TODO:
      8      * Leverage verify_docs - https://bugzilla.mozilla.org/show_bug.cgi?id=1636400
      9      * Add a new column (when executed ? ie always, rarely, etc)
     10      * asan reporter isn't listed for mac os x
     11 
     12 Build Platforms
     13 ---------------
     14 
     15 .. csv-table::
     16   :header: "Platform", "Owner", "Why?"
     17   :widths: 40, 20, 40
     18 
     19   Linux, ,
     20   Linux DevEdition, ,
     21   Linux shippable, ,
     22   Linux x64, ,
     23   Linux x64 addon, ,
     24   Linux x64 DevEdition, ,
     25   Linux x64 WebRender Shippable, Jeff Muizelaar, Build with WebRender
     26   Linux x64 WebRender, Jeff Muizelaar, Build with WebRender
     27   Linux x64 shippable, , "| What we ship to our users.
     28   | Builds with PGO"
     29   Linux x64 NoOpt, , "| Developer build - Disable optimizations, enable debug options
     30   | Only runs on m-c"
     31   Linux AArch64, ,
     32   OS X 10.14, ,
     33   OS X Cross Compiled, ,
     34   OS X 10.14 shippable, ,
     35   OS X Cross Compiled shippable, , What we ship to our users
     36   OS X Cross Compiled NoOpt, , "| Developer build - Disable optimizations, enable debug options
     37   | Only runs on m-c"
     38   OS X Cross Compiled addon, ,
     39   OS X Cross Compiled DevEdition, ,
     40   OS X 10.14, ,
     41   OS X 10.14 WebRender, Jeff Muizelaar, Build with WebRender
     42   OS X 10.14 Shippable, ,
     43   OS X 10.14 WebRender Shippable, Jeff Muizelaar, Build with WebRender
     44   OS X 10.14 DevEdition, ,
     45   Windows 2012, ,
     46   Windows 2012 shippable, , What we ship to our users
     47   Windows 2012 addon, ,
     48   Windows 2012 NoOpt, , "| Developer build - Disable optimizations, enable debug options
     49   | Only runs on m-c"
     50   Windows 2012 DevEdition, ,
     51   Windows 2012 x64, ,
     52   Windows 2012 x64 shippable, ,
     53   Windows 2012 AArch64, ,
     54   Windows 2012 AArch64 Shippable, ,
     55   Windows 2012 AArch64 DevEdition, ,
     56   Windows 2012 x64 addon, ,
     57   Windows 2012 x64 NoOpt, , "| Developer build - Disable optimizations, enable debug options
     58   | Only runs on m-c"
     59   Windows 2012 x64 DevEdition, ,
     60   Windows MinGW, Tom Ritter, "| the Tor project uses MinGW; make sure we test that for them
     61   | Only runs on autoland, m-c and m-esr"
     62   Android 4.1 API16+, , "| All Android jobs are for GeckoView. Fenix nightly uses m-c, Fenix beta => m-b, Fenix release => m-r and Focus uses m-r.
     63   | We run these tests in the CI to make sure that GeckoView tests do not regress."
     64   Android 4.1 API16+ Beta, Agi Sferro, To ship/test Android 4.1 on arm v7 CPU
     65   Android 4.1 API16+ Release, , To ship/test Android 4.1 on arm v7 CPU
     66   Android 4.1 API16+ GeckoView multi-arch fat AAR, ,
     67   Android 5.0 AArch64, ,
     68   Android 5.0 AArch64 Beta, ,
     69   Android 5.0 AArch64 Release, ,
     70   Android 5.0 x86-64, ,
     71   Android 5.0 x86-64 Beta, ,
     72   Android 5.0 x86-64 Release, ,
     73   Android 7.0 x86, ,
     74   Android 7.0 x86 Beta, ,
     75   Android 7.0 x86 Release, ,
     76   Android 7.0 x86-64, ,
     77   Android 7.0 x86-64 WebRender, Kris Taeleman, Build and test GeckoView with WebRender
     78   Android 7.0 x86-64 Beta, ,
     79   Android 7.0 x86-64 Release, ,
     80   Android 11.0 Samsung A51 AArch64 WebRender, ,
     81   Android 13.0 Pixel6 AArch64 WebRender, ,
     82   Android 13.0 Pixel6 AArch64 WebRender, ,
     83   Android 13.0 Samsung S21 AArch64 WebRender, ,
     84   Android, ,
     85 
     86 Testing configurations
     87 ----------------------
     88 
     89 We have some platforms used to run the tests to make sure they run correctly on different versions of the operating systems.
     90 
     91 .. csv-table::
     92   :header: "Platform", "Owner", "Why?"
     93   :widths: 40, 20, 40
     94 
     95   Linux 18.04 shippable, ,
     96   Linux 18.04 x64, ,
     97   Linux 18.04 x64 DevEdition, ,
     98   Linux 18.04 x64 WebRender Shippable, Jeff Muizelaar, Build with WebRender for testing
     99   Linux 18.04 x64 WebRender, Jeff Muizelaar, Build with WebRender for testing
    100   Linux 18.04 x64 shippable, ,
    101   Linux 18.04 x64 Stylo-Seq, ,
    102   Windows 7, ,
    103   Windows 7 DevEdition, ,
    104   Windows 7 Shippable, ,
    105   Windows 7 MinGW, Tom Ritter, "| the Tor project uses MinGW; make sure we test that for them
    106   | Only runs on autoland, m-c and m-esr"
    107   Windows 10 x64, ,
    108   Windows 10 x64 DevEdition, ,
    109   Windows 10 x64 Shippable, ,
    110   Windows 10 x64 WebRender Shippable, Jeff Muizelaar, Build with WebRender for testing
    111   Windows 10 x64 WebRender, Jeff Muizelaar, Build with WebRender for testing
    112   Windows 10 x64 2017 Ref HW, ,
    113   Windows 10 x64 MinGW, Tom Ritter, "| the Tor project uses MinGW; make sure we test that for them
    114   | Only runs on autoland, m-c and m-esr"
    115   Windows 10 AArch64, ,
    116 
    117 
    118 Quality platforms
    119 -----------------
    120 
    121 We have many platforms used to run various quality tools. They aren't directly focussing on user quality but on code quality,
    122 or prevening some classes of errors (memory, threading, etc).
    123 
    124 .. csv-table::
    125   :header: "Platform", "Owner", "Why?"
    126   :widths: 40, 20, 40
    127 
    128   Linux 18.04 x64 tsan, Christian Holler, Identify threading issues with :ref:`ThreadSanitizer <Thread Sanitizer>`
    129   Linux x64 asan, "| Christian Holler
    130   | Tyson Smith (ubsan)", "| Identify memory issues with :ref:`Address Sanitizer`.
    131   | Also includes the UndefinedBehaviorSanitizer"
    132   Linux x64 WebRender asan, "| Christian Holler
    133   | Tyson Smith (ubsan)", "| Identify memory issues with :ref:`Address Sanitizer`.
    134   | Also includes the UndefinedBehaviorSanitizer"
    135   Linux x64 asan reporter, Christian Holler, Generate :ref:`ASan Nightly Project <ASan Nightly>` builds
    136   Linux x64 CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    137   Linux 18.04 x64 asan, "| Christian Holler
    138   | Tyson Smith (ubsan)", "| Identify memory issues with :ref:`Address Sanitizer`.
    139   | Also includes the UndefinedBehaviorSanitizer"
    140   Linux 18.04 x64 WebRender asan, "| Christian Holler
    141   | Tyson Smith (ubsan)", "| Identify memory issues with :ref:`Address Sanitizer`.
    142   | Also includes the UndefinedBehaviorSanitizer"
    143   Linux 18.04 x64 CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    144   OS X Cross Compiled CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    145   OS X 10.14 Cross Compiled CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    146   Windows 2012 x64 asan reporter, Christian Holler, Generate :ref:`ASan Nightly Project <ASan Nightly>` builds
    147   Windows 10 x64 CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    148   Android 4.0 API16+ CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    149   Android 4.3 API16+ CCov, Marco Castelluccio , Collect :ref:`Code coverage` information to identify what is tested (or not)
    150   Diffoscope, Mike Hommey, Make sure the build remains reproducible
    151   Linting, "| Sylvestre Ledru
    152   | Andrew Halberstadt", "| Identify :ref:`code quality` earlier
    153   | Also contains some Bugzilla
    154   | Run on all branches (except the Bugzilla task)"
    155   Documentation, "| Sylvestre Ledru
    156   | Andrew Halberstadt", "| :ref:`Documentation jobs <Managing Documentation>`
    157   | integration repository plus mozilla-central"
    158 
    159 
    160 
    161 Infrastructure tasks
    162 --------------------
    163 
    164 The decision tasks responsible for creating the task graph.
    165 
    166 .. csv-table::
    167   :header: "Task", "Owner", "Why?"
    168   :widths: 40, 20, 40
    169 
    170   Gecko Decision Task, , Define the tasks to run and their order
    171   Firefox Release Tasks, ,
    172   Devedition Release Tasks, ,
    173   Fennec Beta Tasks, ,
    174   Fennec Release Tasks, ,
    175   Thunderbird Release Tasks, ,
    176 
    177 
    178 Others
    179 ------
    180 
    181 .. csv-table::
    182   :header: "Platform", "Owner", "Why?"
    183   :widths: 40, 20, 40
    184 
    185   Docker Images, ,
    186   Fetch, ,
    187   Packages, ,
    188   Toolchains, ,
    189   Other, ,