Mirror admin stuff, initial commit.
[mirror-admin] / doc / ftpsync / runmirrors.mirror.sample
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.