[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #12622 [Tor bundles/installation]: Automate update package distribution for TBB updater
#12622: Automate update package distribution for TBB updater
------------------------------------------+-------------------
Reporter: gk | Owner: erinn
Type: defect | Status: new
Priority: normal | Milestone:
Component: Tor bundles/installation | Version:
Resolution: | Keywords:
Actual Points: | Parent ID: #4234
Points: |
------------------------------------------+-------------------
Comment (by mcs):
I attached a sample XML response that shows the kind of information the
server will need to return. The format must match what the Firefox
updater code expects to see. Some background information:
While Kathy Brade and I could write the update responder script, there are
probably other Tor Project people who could do the job better and more
quickly. Python might be a good choice for implementation.
A sketch of the required functionality follows.
The Tor Browser will periodically perform an HTTP GET request to check for
updates (e.g., twice per day). At a high level, what is needed is a
script that responds to an HTTPS GET request and returns an XML update
manifest. No user-facing interface is required (that is, no HTML). We
can decide what the GET URL looks like; maybe something like:
https://torproject.org/tbupdate/4.0a1/Darwin_x86_64-gcc3-u-i386-x86_64/en-
US/release/Darwin%2012.5.0/
The browser will create the request URL by using string substitution to
fill in various things such as browser version, platform, locale, and
update channel (e.g., release vs. beta). The responder script will need
to have access to information about the current recommended versions
(e.g., the data that is in
https://check.torproject.org/RecommendedTBBVersions) as well as file names
and file hashes for the available updates. The responder script will then
need to construct an XML response and return it.
One option would be to adapt the system Mozilla uses to meet our needs.
But it seems like overkill, and it will probably not be easy to port to
torproject.org's infrastructure (Mozilla is almost certainly the only
organization that uses it). There is more info available here:
ÂÂÂ https://wiki.mozilla.org/Balrog
ÂÂÂ https://github.com/mozilla/balrog
Until recently, Kathy and I thought we could solve this entire problem
using static XML files that we would create during the TBB build and
release process. That could probably be done, but since we want to
support incremental updates we would need a lot of XML files, and we would
also need to update each XML file when we publish a new release of TBB.
Therefore, a script that consults a config file, a small database, or one
that caches info about available updates (gleaned from the file system)
seems like the best solution.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12622#comment:2>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs