chiark / gitweb /
Mirror admin stuff, initial commit.
[mirror-admin] / doc / ftpsync / runmirrors.mirror.sample
CommitLineData
db2c5b8b
MW
1# Definition of mirror hosts we push.
2# One mirror per line, with the following fields defined.
3#
4# Type ShortName HostName User SSHProtocol SSHKeyFile
5#
6# ALTERNATIVELY the line may look like
7#
8# Type ShortName HostName User -$SOMESSHOPTION
9#
10# The fields Type, ShortName, HostName and User are *mandantory*.
11#
12# Type is either all, staged or mhop, meaning:
13# all - do a "normal" push. Trigger them, go on.
14# staged - do a two-stage push, waiting for them after stage 2(and all others that
15# are staged) before doing stage2
16# mhop - send a multi-hop staged push. This will tell the mirror to initiate
17# a mhop/stage1 push to its staged/mhop mirrors and then exit.
18# When all mhop got back we then send the stage2 through to them.
19#
20# ShortName will be used as a shorthand in logfile outputs and for the logfile
21# where every ssh output gets redirected to.
22#
23# If no SSHKeyFile is given, the default from the config file applies.
24# If SSHProtocol is empty, it will default to 2, but if you want to
25# define a keyfile you HAVE TO set protocol too!
26#
27# With the ALTERNATIVE syntax you are able to use any special ssh option
28# you want just for one special mirror. The option after the username
29# then MUST start with a -, in which case the whole rest of the line is taken
30# as a set of options to give to ssh, it is passed through without doing
31# anything with it.
32#
33# There is one caveat here: Should you want to use the -i option to give
34# another ssh key to use, keep in mind that the master keyfile will
35# always be presented too! That is, ssh will show both keys to the other
36# side and the first one presented wins. Which might not be the key you
37# want. There is currently no way around this, as that would mean
38# dropping backward compatibility.
39#
40# Backwards compatibility:
41# An older runmirrors script will NOT run with a newer runmirrors.mirror file, but
42# a new runmirrors can run with an old runmirrors.mirror file. This should make updates
43# painless.
44#
45# Examples:
46# all eu.puccini puccini.debian.org archvsync 2
47#
48# -> will push puccini.debian.org, user archvsync, using ssh protocol 2
49# and the globally configured ssh key.
50#
51# all eu.puccini puccini.debian.org archvsync -p 2222
52#
53# -> will do the same as above, but use port 2222 to connect to.
54#
55# staged eu.puccini puccini.debian.org archvsync
56# staged eu.powell powell.debian.org archvsync
57#
58# -> will push both puccini and powell in stage1, waiting for both to
59# finish stage1 before stage2 gets pushed. The username will be archvsync.
60#
61# staged eu.puccini puccini.debian.org archvsync
62# mhop eu.powell powell.debian.org archvsync
63#
64# -> will do the same as above, but powell gets told about mhop and can then
65# push its own staged/mhop mirrors before returning. When both returned
66# then stage2 is sent to both.
67#
68# One special value is allowed: DELAY
69# This word has to be on a line itself, followed by a space and a number.
70# nothing else, not even whitespace. It will trigger a pause of $number
71# seconds between the two mirrors. If no number is given it defaults to
72# 600 seconds.