Mirror admin stuff, initial commit.
[mirror-admin] / doc / ftpsync / websync.conf.sample
1 ########################################################################
2 ########################################################################
3 ## This is a sample configuration file for the ftpsync mirror script. ##
4 ## Most of the values are commented out and just shown here for ##
5 ## completeness, together with their default value. ##
6 ########################################################################
7 ########################################################################
8
9 ## Mirrorname. This is used for things like the trace file and should always
10 ## be the full hostname of the mirror.
11 #MIRRORNAME=${MIRRORNAME:-`hostname -f`}
12
13 ## Destination of the mirrored files. Should be an empty directory.
14 ## CAREFUL, this directory will contain the mirror. Everything else
15 ## that might have happened to be in there WILL BE GONE after the mirror sync!
16 #TO=${TO:-"/org/www.debian.org/www"}
17
18 ## The upstream name of the rsync share.
19 #RSYNC_PATH="web.debian.org"
20
21 ## The host we mirror from
22 #RSYNC_HOST=www-master.debian.org
23
24 ## In case we need a user to access the rsync share at our upstream host
25 #RSYNC_USER=
26
27 ## If we need a user we also need a password
28 #RSYNC_PASSWORD=
29
30 ## In which directory should logfiles end up
31 ## Note that BASEDIR defaults to $HOME, but can be set before calling the
32 ## ftpsync script to any value you want (for example using pam_env)
33 #LOGDIR="${BASEDIR}/log"
34
35 ## Name of our own logfile.
36 ## Note that ${NAME} is set by the websync script
37 #LOG="${LOGDIR}/${NAME}.log"
38
39 ## The script can send logs (or error messages) to a mail address.
40 ## If this is unset it will default to the local root user unless it is run
41 ## on a .debian.org machine where it will default to the mirroradm people.
42 #MAILTO="root"
43
44 ## If you do want a mail about every single sync, set this to false
45 ## Everything else will only send mails if a mirror sync fails
46 #ERRORSONLY="true"
47
48 ## If you want the logs to also include output of rsync, set this to true.
49 ## Careful, the logs can get pretty big, especially if it is the first mirror
50 ## run
51 #FULLLOGS="false"
52
53 ## If you do want to exclude files from the mirror run, put --exclude statements here.
54 ## See rsync(1) for the exact syntax, these are passed to rsync as written here.
55 ## Please do not use this except for rare cases and after you talked to us.
56 ## For the sponsor logos see SITE_FILTER
57 #EXCLUDE=${EXCLUDE:-"--exclude ${HOSTNAME}"}
58
59 ## And site specific excludes, by default its the sponsor stuff that should be local to all
60 #SITE_FILTER=${SITE_FILTER:-"--include sponsor.deb.* --exclude sponsor_img.* --exclude sponsor.html --exclude sponsor.*.html --filter=protect_sponsor_img.* --filter=protect_sponsor.html --filter=protect_sponsor.*.html"}
61
62 ## Do we have leaf mirror to signal we are done and they should sync?
63 ## If so set it to true and make sure you configure runmirrors-websync.mirrors
64 ## and runmirrors-websync.conf for your need.
65 #HUB=false
66
67 ## We do create three logfiles for every run. To save space we rotate them, this
68 ## defines how many we keep
69 #LOGROTATE=14
70
71 ## Our own lockfile (only one sync should run at any time)
72 #LOCK="${TO}/Website-Update-in-Progress-${MIRRORNAME}"
73
74 ## The following file is used to make sure we will end up with a correctly
75 ## synced mirror even if we get multiple pushes in a short timeframe
76 #UPDATEREQUIRED="${TO}/Website-Update-Required-${MIRRORNAME}"
77
78 ## The trace file is used by a mirror check tool to see when we last
79 ## had a successful mirror sync. Make sure that it always ends up in
80 ## .project/trace and always shows the full hostname.
81 ## This is *relative* to ${TO}
82 #TRACE=".project/trace/${MIRRORNAME}"
83
84 ## We sync our mirror using rsync (everything else would be insane), so
85 ## we need a few options set.
86 ## The rsync program
87 #RSYNC=rsync
88
89 ## BE VERY CAREFUL WHEN YOU CHANGE THE RSYNC_OPTIONS! BETTER DON'T!
90 ## BE VERY CAREFUL WHEN YOU CHANGE THE RSYNC_OPTIONS! BETTER DON'T!
91 ## BE VERY CAREFUL WHEN YOU CHANGE THE RSYNC_OPTIONS! BETTER DON'T!
92 ## BE VERY CAREFUL WHEN YOU CHANGE THE RSYNC_OPTIONS! BETTER DON'T!
93
94 ## Default rsync options every rsync invocation sees.
95 #RSYNC_OPTIONS="-prltvHSB8192 --timeout 3600 --stats --exclude Archive-Update-in-Progress-${MIRRORNAME} --exclude ${TRACE} --exclude Archive-Update-Required-${MIRRORNAME}"
96
97 ## Default rsync options
98 #RSYNC_OPTIONS2=${RSYNC_OPTIONS2:-"--max-delete=40000 --delay-updates --delete --delete-after --delete-excluded"}
99
100 ## You may establish the connection via a web proxy by setting the environment
101 ## variable RSYNC_PROXY to a hostname:port pair pointing to your web proxy. Note
102 ## that your web proxy's configuration must support proxy connections to port 873.
103 # RSYNC_PROXY=
104
105 ## Hook scripts can be run at various places during the sync.
106 ## Leave them blank if you don't want any
107 ## Hook1: After lock is acquired, before first rsync
108 ## Hook2: After first rsync, if successful
109 ## Hook3: After second rsync, if successful
110 ## Hook4: Right before leaf mirror triggering
111 ## Hook5: After leaf mirror trigger, only if we have slave mirrors (HUB=true)
112 ##
113 ## Note that Hook3 and Hook4 are likely to be called directly after each other.
114 ## Difference is: Hook3 is called *every* time the second rsync was successful,
115 ## but even if the mirroring needs to re-run thanks to a second push.
116 ## Hook4 is only effective if we are done with mirroring.
117 #HOOK1=
118 #HOOK2=
119 #HOOK3=
120 #HOOK4=
121 #HOOK5=