1 http://code.google.com/p/ganeti/issues/detail?id=444
3 --- ganeti-2.6.2/Makefile.am~ 2012-12-21 15:38:52.000000000 +0100
4 +++ ganeti-2.6.2/Makefile.am 2013-06-01 16:01:46.594026366 +0200
7 doc/examples/bash_completion \
8 doc/examples/bash_completion-debug \
9 + doc/examples/ganeti.target \
11 lib/_generated_rpc.py \
14 doc/examples/ganeti.cron \
15 doc/examples/ganeti.initd \
16 doc/examples/gnt-config-backup \
17 - doc/examples/hooks/ipsec
18 + doc/examples/hooks/ipsec \
19 + doc/examples/ganeti-confd.service \
20 + doc/examples/ganeti-masterd.service \
21 + doc/examples/ganeti-noded.service \
22 + doc/examples/ganeti-luxid.service \
23 + doc/examples/ganeti-mond.service \
24 + doc/examples/ganeti-rapi.service \
25 + doc/examples/ganeti.sudoers
27 nodist_pkgpython_PYTHON = \
28 $(BUILT_PYTHON_SOURCES)
29 --- ganeti-2.6.2/doc/examples.orig/ganeti-confd.service.in 1970-01-01 01:00:00.000000000 +0100
30 +++ ganeti-2.6.2/doc/examples/ganeti-confd.service.in 2013-06-01 15:55:37.594893846 +0200
33 +Description=Ganeti Confd
34 +Requires=ganeti-noded.service
35 +After=ganeti-rapi.service
36 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
40 +EnvironmentFile=-/etc/sysconfig/ganeti
41 +ExecStartPre=/usr/bin/sudo @PKGLIBDIR@/ensure-dirs
42 +ExecStart=@PREFIX@/sbin/ganeti-confd $CONFD_ARGS
44 +Group=@GNTCONFDGROUP@
45 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-confd.pid
49 +WantedBy=ganeti.target
50 --- ganeti-2.6.2/doc/examples.orig/ganeti-masterd.service.in 1970-01-01 01:00:00.000000000 +0100
51 +++ ganeti-2.6.2/doc/examples/ganeti-masterd.service.in 2013-06-01 15:55:37.611560663 +0200
54 +Description=Ganeti Masterd
55 +Requires=ganeti-noded.service
56 +After=ganeti-noded.service
57 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
61 +EnvironmentFile=-/etc/sysconfig/ganeti
62 +ExecStartPre=/bin/sh -c '[ "$(cat @LOCALSTATEDIR@/lib/ganeti/ssconf_master_node 2>/dev/null)" = "$(hostname -f 2>/dev/null)" ]'
63 +ExecStartPre=/usr/bin/sudo @PKGLIBDIR@/ensure-dirs
64 +ExecStart=@PREFIX@/sbin/ganeti-masterd $MASTERD_ARGS
66 +Group=@GNTMASTERDGROUP@
67 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-masterd.pid
68 +# TODO: Should KillMode be process?
69 +KillMode=control-group
72 +WantedBy=ganeti.target
73 --- ganeti-2.6.2/doc/examples.orig/ganeti-noded.service.in 1970-01-01 01:00:00.000000000 +0100
74 +++ ganeti-2.6.2/doc/examples/ganeti-noded.service.in 2013-06-01 15:55:37.631560853 +0200
77 +Description=Ganeti Noded
78 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
82 +EnvironmentFile=-/etc/sysconfig/ganeti
83 +ExecStartPre=@PKGLIBDIR@/ensure-dirs
84 +ExecStart=@PREFIX@/sbin/ganeti-noded $NODED_ARGS
86 +Group=@GNTDAEMONSGROUP@
87 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-noded.pid
88 +KillMode=control-group
91 +WantedBy=ganeti.target
92 --- ganeti-2.6.2/doc/examples.orig/ganeti-rapi.service.in 1970-01-01 01:00:00.000000000 +0100
93 +++ ganeti-2.6.2/doc/examples/ganeti-rapi.service.in 2013-06-01 15:55:37.644894309 +0200
96 +Description=Ganeti RAPI
97 +Requires=ganeti-noded.service ganeti-masterd.service
98 +After=ganeti-masterd.service
99 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
103 +EnvironmentFile=-/etc/sysconfig/ganeti
104 +ExecStartPre=/usr/bin/sudo @PKGLIBDIR@/ensure-dirs
105 +ExecStart=@PREFIX@/sbin/ganeti-rapi $RAPI_ARGS
107 +Group=@GNTRAPIGROUP@
108 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-rapi.pid
112 +WantedBy=ganeti.target
113 --- ganeti-2.6.2/doc/examples.orig/ganeti-luxid.service.in 1970-01-01 01:00:00.000000000 +0100
114 +++ ganeti-2.6.2/doc/examples/ganeti-luxid.service.in 2013-06-01 15:55:37.594893846 +0200
117 +Description=Ganeti luxid
118 +Requires=ganeti-noded.service ganeti-masterd.service ganeti-rapi.service
119 +After=ganeti-rapi.service
120 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
124 +EnvironmentFile=-/etc/sysconfig/ganeti
125 +ExecStartPre=/usr/bin/sudo @PKGLIBDIR@/ensure-dirs
126 +ExecStart=@PREFIX@/sbin/ganeti-luxid $LUXID_ARGS
128 +Group=@GNTLUXIDGROUP@
129 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-luxid.pid
133 +WantedBy=ganeti.target
134 --- ganeti-2.6.2/doc/examples.orig/ganeti-mond.service.in 1970-01-01 01:00:00.000000000 +0100
135 +++ ganeti-2.6.2/doc/examples/ganeti-mond.service.in 2013-06-01 15:55:37.594893846 +0200
138 +Description=Ganeti mond
139 +Requires=ganeti-noded.service
140 +After=ganeti-rapi.service ganeti-masterd.service
141 +ConditionPathExists=@LOCALSTATEDIR@/lib/ganeti/server.pem
145 +EnvironmentFile=-/etc/sysconfig/ganeti
146 +ExecStartPre=@PKGLIBDIR@/ensure-dirs
147 +ExecStart=@PREFIX@/sbin/ganeti-mond $MOND_ARGS
149 +Group=@GNTMONDGROUP@
150 +PIDFile=@LOCALSTATEDIR@/run/ganeti/ganeti-mond.pid
154 +WantedBy=ganeti.target
155 --- ganeti-2.6.2/doc/examples.orig/ganeti.target 1970-01-01 01:00:00.000000000 +0100
156 +++ ganeti-2.6.2/doc/examples/ganeti.target 2013-06-01 15:55:37.661561129 +0200
162 +WantedBy=multi-user.target
163 --- ganeti-2.6.2/doc/examples.orig/ganeti.sudoers.in 1970-01-01 01:00:00.000000000 +0100
164 +++ ganeti-2.6.2/doc/examples/ganeti.sudoers.in 2013-06-01 15:55:37.661561129 +0200
166 +User_Alias GANETI = @GNTCONFDUSER@, @GNTMASTERUSER@, @GNTRAPIUSER@, @GNTLUXIDUSER@
168 +GANETI ALL=(ALL) NOPASSWD: @PKGLIBDIR@/ensure-dirs
169 --- ganeti-2.6.2/doc/examples.orig/README.systemd 1970-01-01 01:00:00.000000000 +0100
170 +++ ganeti-2.6.2/doc/examples/README.systemd 2013-06-01 15:55:37.661561129 +0200
172 +To register the services with ganeti.target (order doesn't matter):
174 + systemctl enable ganeti-noded ganeti-masterd ganeti-rapi ganeti-mond
178 + systemctl enable ganeti-confd
180 +To signal to the ganeti target that it should start at boot:
182 + systemctl enable ganeti.target
184 +Note that the files aren't at all tested beyond just being able to start the
185 +daemons. I don't have Ganeti running yet, so I can't test stopping.