Skip to content

Commit

Permalink
Address comments
Browse files Browse the repository at this point in the history
  • Loading branch information
simonepelosi committed Mar 22, 2024
1 parent ebc8fea commit 726bdc4
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions reference/services/git-hosting.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ Launchpad has direct Git hosting support alongside its existing Bazaar hosting s
The major subsystems involved are:

* The git client
* Hosting service
* Hosting service (turnip)
* The underlying object model
* The web application
* Repository source code browser
* The web application (Launchpad)
* Repository source code browser (cgit)

Git client
----------
Expand All @@ -31,18 +31,20 @@ The outside world connects to the Git hosting service using one of several proto
The Git "dumb" HTTP transport will not be supported, as it has largely been considered
deprecated since the provision of "smart" HTTP transport in Git v1.6.6 (released January, 2010).

SSL is terminated by haproxy for HTTPS, and all the other protocols also pass through
haproxy for load balancing (although at the moment we only have a single backend).
SSL is terminated by haproxy (haproxy has two units haproxy/1* and haproxy/0) for HTTPS, and all the other
protocols also pass through haproxy for load balancing (although at the moment we only have a single backend).
See the full charm configuration at `launchpad-mojo-specs <https://code.launchpad.net/launchpad-mojo-specs>_`.

The underlying protocol endpoints live in `lp:turnip <https://code.launchpad.net/turnip>`_,
which invokes ``git upload-pack`` and ``git receive-pack`` to implement the git protocol itself.

``turnip`` also provides an internal API used by the Launchpad web application to manipulate and inspect repositories;
and in turn the Launchpad web application provides an internal XML-RPC interface used by ``turnip`` to translate logical
repository paths to filesystem paths and to notify Launchpad of repository changes.

``turnip`` is deployed using Juju, using the `turnip charm <https://git.launchpad.net/turnip/tree/charm>`_.
``turnip`` is deployed using Juju, using the `turnip charms <https://git.launchpad.net/turnip/tree/charm>`_.

See more at `turnip documentation <https://turnip.readthedocs.io/en/latest/index.html>`_
For more details, see the `turnip documentation <https://turnip.readthedocs.io/en/latest/index.html>`_

The web application
-------------------
Expand All @@ -52,7 +54,7 @@ Code that is executed as part of the Launchpad web application. Major features:
* general information
* listings for various registry objects - people, teams, projects, packages
* default repositories for projects and packages
* privacy
* privacy settings

Repository source code browser
------------------------------
Expand All @@ -77,8 +79,8 @@ Production
* ``rless turnip-pack-{1,2,3,4}.lp.internal::turnip-logs/turnip-pack-frontend-ssh.log``
* ``rless turnip-pack-{1,2,3,4}.lp.internal::turnip-logs/turnip-pack-virt.log``

Staging
~~~~~~~
Qastaging
~~~~~~~~~

* ``rless turnip-pack-{1,2}.qastaging.lp.internal::turnip-logs/turnip-access.log``
* ``rless turnip-pack-{1,2}.qastaging.lp.internal::turnip-logs/turnip-api-access.log``
Expand Down

0 comments on commit 726bdc4

Please sign in to comment.