-
Notifications
You must be signed in to change notification settings - Fork 6
/
quick-fedora-mirror.conf
174 lines (148 loc) · 7.28 KB
/
quick-fedora-mirror.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
# Configuration file for quick-fedora-mirror
# This file is sourced by the shell and must be in valid sh syntax.
# Maintaince note: DESTD and TIMEFILE is essentially ignored because they are specified by command line arguments in fedora.py
#### Required settings
# Required: The the directory holding your copy of all of the modules you
# **Ignored** if --destination-dir is specified.
# mirror. Does not include any module name
DESTD=/mirrors
# Required: The file in which to store the last mirror time.
# **Ignored** if --timefile is specified.
# Note: this really should not be in the repository itself.
TIMEFILE=/mirrors/logs/quick-fedora-mirror.timefile
# Other settings
# The remote host to rsync from, not including a module name
# REMOTE=rsync://dl.fedoraproject.org/
# The master module, which holds the other modules
# MASTERMODULE=fedora-buffet
# Tier 1 Fedora mirrors should uncomment the following to get the proper
# pre-bitflip content.
# MASTERMODULE=fedora-buffet0
# PREBITFLIP=1
# Define if the entire repository (all modules under fedora-buffet) should be
# mirrored. If set, MODULES (below) is ignored
# MIRRORBUFFET=
# An array containing the modules to be mirrored
MODULES=(fedora-enchilada fedora-epel)
# The name of the file holding the file list on the mirror host Note: the
# string '$mdir' will be replaced with the name of the current module directory
# in context, and so the '$' must be escaped or the string quoted.
# FILELIST='fullfiletimelist-$mdir'
# An array of extra file lists to be transferred. They won't be processed, but
# will implicitly be included in every transfer because file lists can't be
# included in the file lists. '$mdir' is substituted as above.
# Note that if you change this, you will want to do a run with -a to pick up
# those extra files even in unchanged modules.
# EXTRAFILES=(fullfilelist imagelist-\$mdir)
# Mapping of MODULES to directory names, as an associative array
MODULEMAPPING=(fedora-enchilada fedora fedora-epel epel)
# rsync binary
# RSYNC=/usr/bin/rsync
# curl binary (only if MirrorManager checkins are enabled; see below).
# CURL=/usr/bin/curl
# Array of default options to pass to rsync
# Will be modified automatically according to VERBOSITY level; no need to set
# -q, -v or --info here.
# You can add excludes here, but the script will always detect those files as
# missing and will add them back to the file list. This may generate
# complaints from rsync, but should not cause any problems.
# Note that some of these options may be required for proper operation of the
# script.
# RSYNCOPTS=(-aSH -f 'R .~tmp~' --stats --preallocate --delay-updates --out-format='@ %i %n%L')
# By default quick-fedora-mirror will try to detect and recover from an aborted
# rsync run by moving any already downloaded files into place before
# processing, Define NORSYNCRECOVERY (to anything) to prevent this.
# NORSYNCRECOVERY=
# Define KEEPDIRTIMES (to anything) to make a third rsync call which restores
# the timestamps of any directories which were modified after file removal.
# This won't ensure that timestamps are always up to date, but its good enough
# if you don't modify your repository locally. Maintaining directory
# timestamps isn't important for mirroring in any case.
# KEEPDIRTIMES=
# DEFINE CHECKIN_SITE and CHECKIN_PASSWORD to perform a mirrormanager checkin
# at the completion of the run if rsync succeeded without error.
# CHECKIN_HOST will default to the output of the hostname command. Set it if necessary.
# This requires that "curl" be installed; see CURL above if it's not in /usr/bin.
# CHECKIN_SITE=
# CHECKIN_PASSWORD=
# CHECKIN_HOST=
# If you have configured multiple mirrormanager hostnames to and virtually
# spread the modules/categories you mirror between them, then you can configure
# per-module checkin hosts as follows. If you don't, then the CHECKIN_HOST you
# set above, or the default, will apply. Note that the module name is used,
# not the mirrormanager category, and that '-' in the module name is replaced
# by '_' to make a legal variable name.
# CHECKIN_HOST_fedora_archive
# CHECKIN_HOST_fedora_alt
# Verbosity levels - info sent to stdout; usually this gets mailed to root when
# being run by cron
# 0 - quiet
# 1 - quiet if no changes, otherwise basic transfer info
# 2 - no -q to rsync
# 3 - very slightly more verbosity
# 4 - One -v to rsync
# 5 - Another -v to rsync
# 6 - Output of all settings
# 7 - Add --progress to rsync
# 8 - Shell script trace
VERBOSE=7
# Define (to anything) to enable logging to the systemd journal (via
# systemd-cat). the identifier "quick-fedora-mirror" is used, so logs can be
# retrieved with: journalctl -t quick-fedora-mirror
# LOGJOURNAL=
# Define to a full path to enable logging to that file.
# The provided file must already exist and be writable.
# Is only considered if LOGJOURNAL above is not defined.
# LOGFILE=
# Logging fields - Each character selects a piece of information to log.
# @ - Absolutely everything.
# a - aborted run recovery
# A - each recovered file from an aborted run
# c - rsync calls
# C - rsync call completions
# d - File/directory deletion start/end
# D - all file/directory deletes
# e - minor errors
# E - serious errors
# F - all transferred files (not impl)
# g - file list generation start/end
# k - lock contention
# l - per-module local file list generation (recursive find) start/end
# m - mirrormanager checkin
# M - mirrormanager checkin detail
# n - lack of updates in a run
# N - lack of updates in a module
# o - remote file list download start/end
# p - module processing start/end
# p - per-module module processing start/end
# r - run start
# R - run end
# s - Basic transfer statistics
# S - Detailed transfer statistics
# t - directory time updates (not impl)
# LOGITEMS=aeElrRs
# When q-f-m fails to run becuse it is already running, it checks the time
# since the last successful run. If that is larger than this value, it logs a
# serious error. Thid helps to detect a hung run or issues with slow
# transfers.
# WARNDELAY=$((60 * 60 * 24)) # One day
# When q-f-m encounters an error calling rsync, it may (depending on the error)
# sleep and retry. It will always sleep with exponential backup. Set
# MAXRETRIES to limit the number of times it retries.
# MAXRETRIES=10
# mktemp will be called after this file is sourced to make a temporary
# directory. This directory can contain a large amount of data, and that data
# is specified by the server. If your /tmp is small and you are concerned
# about the server potentially sending extra-huge files and filling things up,
# you can set TMPDIR here.
# TMPDIR=
# A regular expression used to filter the file lists. It must be quoted (or
# very carefully escaped). Entries matching this expression will not be synced
# and are expected not to be present locally. They will also be ignored by
# quick-fedora-hardlink. Cannot contain commas. Run against the file list that
# includes sizes (by quick-fedora-mirror) and the fullfiletimelist (by
# quick-fedora-hardlink), so don't use expressions that would match those
# metadata (which are digit strings and single characters). Example is a heavy
# filter which gives you an x86_64-only mirror with source packages, debuginfo
# packages, Alpha and Beta releases, and most image files excluded.
# FILTEREXP='(/i386|/armhfp|/source|/SRPMS|/debug/|\.iso|\.img|\.qcow2|\.raw\.xz|\.box|/releases/test)'