start to rewrite mirrorring specs (using DNS approach)

This commit is contained in:
Tarek Ziadé 2009-03-29 21:37:27 +00:00
parent 64d3e73864
commit f2cb34d7a7
1 changed files with 17 additions and 39 deletions

View File

@ -19,8 +19,8 @@ This PEP describes a mirroring infrastructure for PyPI.
Rationale Rationale
========= =========
PyPI is hosting over 4000 projects and is used on a daily basis by PyPI is hosting over 6000 projects and is used on a daily basis
people to build applications. Especially systems like `easy_install` by people to build applications. Especially systems like `easy_install`
and `zc.buildout` make intensive usage of PyPI. and `zc.buildout` make intensive usage of PyPI.
For people making intensive use of PyPI, it can act as a single point For people making intensive use of PyPI, it can act as a single point
@ -41,48 +41,26 @@ In order to make the system more reliable, this PEP describes:
Mirror listing and registering Mirror listing and registering
============================== ==============================
A new text page will be added at http://pypi.python.org/mirrors that People that wants to mirror PyPI make a proposal on catalog-SIG.
can be browsed like the simple index. This page gives a list of the When a mirror is proposed on the mailing list, it is manually
mirrors through a list of links. added in a mirror list in the PyPI application after it
has been checked to be compliant with the mirroring rules.
These links are the URL of the simple index of each mirror. The page A mirror has to be a hostname. For example:
will look like this::
# PyPI mirrors - http://pypi.my-company.com
# - http://mirror-pypi.somewhere.org
# If you want to register a new mirror, send an email
# to the catalog-SIG@python.org with:
#
# - The urls of your mirror:
# - the root of the server
# - the index page
# - the last modified page
# - the local stats page
# - the global stats page
# - the mirrors page
#
# - The name and email of the maintainer.
#
# The registering is done manually and to become a
# mirror, you need to strictly follow the mirror protocol
# described here:
#
# http://wiki.python.org/PEP_374
#
# root,index,last-modified,local-stats,stats,mirrors
http://example.com/pypi,index,last-modified,local-stats,stats,mirrors
http://example2.com/pypi,index,last-modified,local-stats,stats,mirrors
When a mirror is proposed on the mailing list, it is manually added in The mirror list is handled by a DNS entry for this hostname:
the mirror list in the PyPI application after it has been checked to
be compliant with the mirroring rules.
The mirror list page is a simple text page that can be browsed by any mirrors.pypi.python.org
tool that wants to get a list of registered mirrors. Other package
indexes that are not mirrors of PyPI are not added in the mirror list
in PyPI, although they can provide themselve the same mirroring list
mechanism for their own mirrors.
When a mirror is added into the DNS, it becomes an official
IP for `mirrors.pypi.python.org`.
The new mirror also appears at `http://pypi.python.org/mirrors`
which is a human-readable page that gives the list of mirrors.
This page also explains how to register a new mirror.
Special pages a mirror needs to provide Special pages a mirror needs to provide
======================================= =======================================