zuul-jobs/doc/source/mirror.rst

170 lines
4.5 KiB
ReStructuredText

Mirror Configuration
====================
.. note:: This is a work in progress, the zuul-jobs required changes are not implemented yet.
Many roles in `zuul-jobs` can be made aware of local mirrors of
Internet services. If site mirrors are present, they expect to find a
variable named ``mirror_info``, or ``zuul_site_mirror_info`` if that
is not defined. This variable is a dictionary which holds keys for
each type of mirror that one or more roles in `zuul-jobs` can work
with.
.. note:: The following example defines a local variable
``zuul_site_local_mirror_host`` for convenience, but it is
not part of the API -- it is only used in defining the
mirror info dictionary.
For example:
.. code-block:: yaml
zuul_site_local_mirror_host: "mirror.{{ nodepool.region | lower }}.{{ nodepool.cloud | lower }}.example.org"
zuul_site_mirror_info:
pypi:
url: https://{{ zuul_site_local_mirror_host }}/pypi/simple
wheel:
url: https://{{ zuul_site_local_mirror_host }}/wheel
fedora:
url: https://{{ zuul_site_local_mirror_host }}/fedora
opensuse:
url: https://{{ zuul_site_local_mirror_host }}/opensuse
debian:
- type: deb
options:
trusted: true
url: https://{{ zuul_site_local_mirror_host }}/debian
suites: ['stretch', 'buster']
components: ['main']
- type: deb
options:
trusted: true
url: https://{{ zuul_site_local_mirror_host }}/debian-security
suites: ['stretch/updates', 'buster/updates']
components: ['main']
ubuntu:
- type: deb
options:
trusted: true
url: https://{{ zuul_site_local_mirror_host }}/ubuntu
suites: ['xenial', 'bionic']
components: ['main', 'universe']
- type: deb
options:
trusted: true
url: https://{{ zuul_site_local_mirror_host }}/ubuntu
suites: ['xenial-security', 'bionic-security']
components: ['main', 'universe']
dockerhub:
url: https://{{ zuul_site_local_mirror_host }}:8082/
.. zuul:rolevar:: mirror_info
A dictionary which contains information about the various mirrors
available. Each type of mirror is a key in this dictionary; if it
is not present, then the site does not have that mirror.
.. zuul:rolevar:: pypi
.. zuul:rolevar:: url
The URL for a PyPI mirror.
.. zuul:rolevar:: wheel
.. zuul:rolevar:: url
The URL for a Python wheel mirror.
.. zuul:rolevar:: fedora
.. zuul:rolevar:: url
The URL for a Fedora mirror.
.. zuul:rolevar:: epel
.. zuul:rolevar:: url
The URL for an EPEL mirror.
.. zuul:rolevar:: opensuse
.. zuul:rolevar:: url
The URL for an openSUSE mirror.
.. zuul:rolevar:: debian
:type: list
A list of dictionaries, one for each Debian mirror URL. This
accomodates mirror systems which may have a security mirror at a
different URL.
.. zuul:rolevar:: type
The type for a Debian mirror (usually either ``deb`` or
``deb-src``).
.. zuul:rolevar:: options
:type: dict
Mirror options, for example add ``trusted: yes`` in order
to trust unsigned APT mirrors.
.. zuul:rolevar:: url
The URL for a Debian mirror.
.. zuul:rolevar:: suites
:type: list
The list of suites for a Debian mirror.
.. zuul:rolevar:: components
:type: list
A list of components available in this mirror (e.g.,
``main``, ``contrib``).
.. zuul:rolevar:: ubuntu
:type: list
A list of dictionaries, one for each Ubuntu mirror URL. This
accomodates mirror systems which may have a security mirror at a
different URL.
.. zuul:rolevar:: type
The type for an Ubuntu mirror (usually either ``deb`` or
``deb-src``).
.. zuul:rolevar:: options
:type: dict
Mirror options, for example add ``trusted: yes`` in order
to trust unsigned APT mirrors.
.. zuul:rolevar:: url
The URL for an Ubuntu mirror.
.. zuul:rolevar:: suites
:type: list
The list of suites for an Ubuntu mirror.
.. zuul:rolevar:: components
:type: list
A list of components available in this mirror (e.g.,
``main``, ``contrib``).
.. zuul:rolevar:: dockerhub
.. zuul:rolevar:: url
The URL for a Docker Hub mirror.