=====
Usage
=====

This file provides the debmirror sample pillars configurations for different
use cases.

See debmirror/schemas/*.yaml for all possible options
A sample of one debmirror mirror configuration (Ubuntu):

.. code-block:: yaml

    parameters:
      debmirror:
        client:
          enabled: true
          mirrors:
            target01:
              enabled: true
              fetch_retry: 3
              http_proxy : "url"
              https_proxy: "url"
              ftp_proxy: "url"
              rsync_proxy: "url"
              force: False
              lock_target: True
              extra_flags: [ '--verbose', '--progress', '--nosource', '--no-check-gpg', '--rsync-extra=none' ]
              method: "rsync" # string
              arch: [ 'amd64' ]
              mirror_host: "mirror.mirantis.com" # rsync
              mirror_root: ':mirror/nightly/ubuntu/'
              cache_dir: "/var/www/mirror/.cache/ubuntu"
              target_dir: "/var/www/mirror/ubuntu/"
              log_file: "/var/www/mirror/target01_log.log"
              dist: [ xenial ] #, xenial-security, xenial-updates ]
              section: [ main ] #, multiverse, restricted, universe ]
              exclude_deb_section: [ 'games', gnome, Xfce, sound, electronics, graphics, hamradio , doc, localization, kde, video ]
              filter:
                00: "--exclude=/"
                01: "--exclude='/android*'"
                02: "--exclude='/firefox*'"
                03: "--exclude='/chromium-browser*'"
                04: "--exclude='/ceph*'"
                05: "--exclude='/*-wallpapers*'"
                06: "--exclude='/language-pack-(?!en)'"
                07: "--include='/main(.*)manpages'"
                08: "--include='/main(.*)python-(.*)doc'"
                09: "--include='/main(.*)python-(.*)network'"

Parameter `force` is optional and can be used to force update repo even it is
already was updated before. It ignores file ${target_dir}/.lockmirror which
used to detect repo status.

Parameter `cache_dir` is optional and can be used to avoid extra disk space
usage for repos, which can have same packages, by using hardlinks to files.
File ${cache_dir}/.ready detects cache readiness status and contains
directories which are using current cache. By removing this file you will flush
cache and lead to update all repos during next state run.

Set of `X_proxy` parameters could be set to empty line to overwrite proxy
settings defined in environment variables. This serves like NO_PROXY setting
which is not supported by debmirror.
