Skip to content

Commit

Permalink
debian: Fixup 'systemctl restart quagga'
Browse files Browse the repository at this point in the history
The ability to restart was just restarting all daemons.
Modify code so that only daemons running *or* enabled are
started.

Ticket: CM-9384
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
  • Loading branch information
donaldsharp committed Feb 21, 2016
1 parent 3e66be2 commit cbf98b0
Show file tree
Hide file tree
Showing 11 changed files with 36 additions and 7 deletions.
1 change: 1 addition & 0 deletions debian/bgpd.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/bgpd $BGPD_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/usr/bin/touch /var/run/quagga/bgpd.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/isisd.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/isisd $ISISD_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/bin/touch /var/run/quagga/isisd.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/ospf6d.service
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,6 @@ RestartSec=5
Restart=on-abnormal
ExecStart=/usr/lib/quagga/ospf6d $OSPF6D_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/usr/bin/touch /var/run/quagga/ospf6d.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/ospfd.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/ospfd $OSPFD_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/usr/bin/touch /var/run/quagga/ospfd.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/ospfd@.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/ospfd $OSPFD_OPTIONS -n %I
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/bin/touch /var/run/quagga/ospfd.%I.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/quagga.install
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ usr/bin/vtysh
usr/include/quagga/
usr/lib/
tools/quagga-reload.py usr/lib/quagga/
tools/startup usr/lib/quagga/
usr/share/doc/quagga/
usr/share/man/man1/vtysh.1
usr/share/man/man8
Expand Down
14 changes: 7 additions & 7 deletions debian/quagga.service
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ Type=simple
RemainAfterExit=yes
TimeoutSec=2m30s
TimeoutStopSec=1m
ExecStartPre=-/bin/systemctl start zebra.service
ExecStartPre=-/bin/systemctl start bgpd.service
ExecStartPre=-/bin/systemctl start isisd.service
ExecStartPre=-/bin/systemctl start ospfd.service
ExecStartPre=-/bin/systemctl start ospf6d.service
ExecStartPre=-/bin/systemctl start ripd.service
ExecStartPre=-/bin/systemctl start ripngd.service
ExecStartPre=-/usr/lib/quagga/startup zebra
ExecStartPre=-/usr/lib/quagga/startup bgpd
ExecStartPre=-/usr/lib/quagga/startup isisd
ExecStartPre=-/usr/lib/quagga/startup ospfd
ExecStartPre=-/usr/lib/quagga/startup ospf6d
ExecStartPre=-/usr/lib/quagga/startup ripd
ExecStartPre=-/usr/lib/quagga/startup ripngd
ExecStartPost=-/usr/bin/vtysh -b -n
#
ExecReload=/usr/lib/quagga/quagga-reload.py --reload /etc/quagga/Quagga.conf
Expand Down
1 change: 1 addition & 0 deletions debian/ripd.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/ripd $RIPD_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/usr/bin/touch /var/run/quagga/ripd.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/ripngd.service
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/ripngd $RIPNGD_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/bin/touch /var/run/quagga/ripngd.was_running
[Install]
WantedBy=network-online.target
1 change: 1 addition & 0 deletions debian/zebra.service
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,6 @@ Restart=on-abnormal
LimitNOFILE=1024
ExecStart=/usr/lib/quagga/zebra $ZEBRA_OPTIONS
ExecStartPost=/usr/bin/vtysh -b -n
ExecStopPost=/usr/bin/touch /var/run/quagga/zebra.was_running
[Install]
WantedBy=network-online.target
20 changes: 20 additions & 0 deletions tools/startup
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/bin/bash
# Script to see if we should startup the particular
# daemon as part of systemd initialization
# If the daemon was running (set by the ExecStopPost
# action in the Unit file ) or if the daemon
# is enabled start it up
FILE="/var/run/quagga/$1.was_running"
if [ -e $FILE ]
then
rm $FILE
systemctl start $1
fi

systemctl is-enabled $1 > /dev/null
if [ $? -eq 0 ]
then
systemctl start $1
fi

exit 0

0 comments on commit cbf98b0

Please sign in to comment.