[ooni-dev] Fwd: Ooni Release / M-Lab Deployment Specifications

Arturo Filastò art at torproject.org
Sat Jul 12 14:02:07 UTC 2014


Forwarding this email to the public ooni-dev mailing list for posterity.


-------- Original Message --------
Subject: Ooni Release / M-Lab Deployment Specifications
Date: Thu, 10 Jul 2014 08:59:47 -0700
From: Nathan Wilcox <nathan at leastauthority.com>
To: Liz Pruszko Steininger <steiningerl at rfa.org>, Dan Meredith
<meredithd at rfa.org>, Adam Lynn <lynna at rfa.org>,  Roger Dingledine
<arma at mit.edu>, Arturo Filastò <art at torproject.org>,  Meredith Whittaker
<meredithrachel at google.com>, Will Hawkins
<hawkinsw at opentechinstitute.org>,  Jordan McCarthy
<mccarthy at opentechinstitute.org>
CC: consultancy at leastauthority.com <consultancy at leastauthority.com>,
Taylor Hornby <taylor at leastauthority.com>, Zooko Wilcox-OHearn
<zooko at leastauthority.com>,  Jessica Augustus <jessica at leastauthority.com>

(Note: There's an attached pdf which has the same content as the
following message, in case the inline markup is too cumbersome for
your taste.)

Dearest OTFundies, Torish Ooniites, and M-Labysians,

Summary
=======

We've finished `Milestone B` of our `Ooni Release Engineering`
contract with `Open Technology Fund`_, which is concerned with
spelling out a clear release and deployment process for both M-Lab
people and Tor people.  This is the second out of six milestones.

.. _`Open Technology Fund`: https://www.opentechfund.org/

Release & Deployment Documentation
==================================

The heart of the work is in `our ooni-support README.md edits`_ to
`the official ooni-support repository`_ (see `ooni-support Pull
Request 36`_).  Our hope is that someone new to the project who *does
not interact closely* with the Ooni dev team can still deploy
successfully on the M-Lab slice, which we believe makes the overall
deployment more robust and flexible.

.. _`our ooni-support README.md edits`:
https://github.com/LeastAuthority/ooni-support/blob/improve-readme-add-ooni-release-procedure-link/README.md
.. _`the official ooni-support repository`:
https://github.com/m-lab-tools/ooni-support/
.. _`ooni-support Pull Request 36`:
https://github.com/m-lab-tools/ooni-support/pull/36

We were glad to see that there is already a well written `Ooni Release
Procedure`_ for distributing well tested and packaged Ooni releases.
This specification includes a link to test coverage, package signing,
and target platforms.  We've suggested two improvements in a
`versioning specification ticket`_ and a `release planning
specification ticket`_.  Additionally, this document alludes to M-Lab
acceptance criteria but there is no link, so we've documented that
need in `a ticket for M-Lab acceptance criteria`_.

.. _`Ooni Release Procedure`:
https://github.com/TheTorProject/ooni-spec/blob/master/Release-Procedure.md
.. _`versioning specification ticket`:
https://trac.torproject.org/projects/tor/ticket/12586#ticket
.. _`release planning specification ticket`:
https://trac.torproject.org/projects/tor/ticket/12587#ticket
.. _`a ticket for M-Lab acceptance criteria`:
https://github.com/m-lab-tools/ooni-support/issues/33


Collaboration
=============

All of our effort for this `Milestone B` is embodied in issue tickets
or pull requests in these places:

* the main Tor issue tracker `Ooni component tickets`_, and a narrower
query for `only issues filed by Least Authority`_, and
* and `the official ooni-support repository`_.


.. _`Ooni component tickets`:
https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=closed&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&component=Ooni&col=id&col=summary&col=status&col=type&col=priority&col=milestone&col=component&order=priority

.. _`only issues filed by Least Authority`:
https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=closed&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&component=Ooni&reporter=~nathan-at-least&or&status=accepted&status=assigned&status=closed&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&component=Ooni&reporter=~earthrise&col=id&col=summary&col=component&col=status&col=type&col=priority&col=milestone&order=priority

For example, here are `the tickets in ooni-support for Milestone B`_
which this email summarizes.

.. _`the tickets in ooni-support for Milestone B`:
https://github.com/m-lab-tools/ooni-support/issues?labels=LeastAuthority+B&page=1&state=closed

Ticketing Conventions
---------------------

We've adopted several conventions in `the official ooni-support
repository`_ issue tracker which the M-Lab and Ooni engineers should
be aware of.  We've added labels for our contractual milestones of the
form ``LeastAuthority X`` where X is ``A - F``, such as `the tickets
in ooni-support for Milestone B`_.  It's important to distinguish the
Least Authority contractual milestones, which these labels are
associated with, from the `Github Milestone` feature.  We use the
latter for general engineering goals or topical areas, as seen in `the
ooni-support github milestone list`_.

.. _`the ooni-support github milestone list`:
https://github.com/m-lab-tools/ooni-support/issues/milestones

We've just started adding labels to indicate requests or blocking on
M-Lab or Ooni input.  Currently there is only `the M-Lab label`_ but
we have not yet updated older tickets with this new convention.  The
``LA - Close Me`` label is for our own (internal) review process.

.. _`the M-Lab label`:
https://github.com/m-lab-tools/ooni-support/issues?labels=M-Lab&milestone=&page=1&state=open


Let us know if you have any suggestions, concerns, or questions.



More information about the ooni-dev mailing list