Hello community,

here is the log from the commit of package rebootmgr for openSUSE:Factory 
checked in at 2017-03-16 09:43:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rebootmgr (Old)
 and      /work/SRC/openSUSE:Factory/.rebootmgr.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rebootmgr"

Thu Mar 16 09:43:18 2017 rev:4 rq:479606 version:0.13

Changes:
--------
--- /work/SRC/openSUSE:Factory/rebootmgr/rebootmgr.changes      2017-03-04 
16:40:21.437088149 +0100
+++ /work/SRC/openSUSE:Factory/.rebootmgr.new/rebootmgr.changes 2017-03-16 
09:51:55.282509086 +0100
@@ -1,0 +2,7 @@
+Wed Mar 15 13:13:14 CET 2017 - ku...@suse.de
+
+- Update to version 0.13
+  - Don't reboot outside maintenance window if getting the etcd
+    lock takes too long [bsc#1028060]
+
+-------------------------------------------------------------------

Old:
----
  rebootmgr-0.12.tar.bz2

New:
----
  rebootmgr-0.13.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rebootmgr.spec ++++++
--- /var/tmp/diff_new_pack.LIhetR/_old  2017-03-16 09:51:55.770439986 +0100
+++ /var/tmp/diff_new_pack.LIhetR/_new  2017-03-16 09:51:55.774439419 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           rebootmgr
-Version:        0.12
+Version:        0.13
 Release:        0
 Summary:        Automatic controlled reboot during a maintenance window
 License:        GPL-2.0 and LGPL-2.1+

++++++ rebootmgr-0.12.tar.bz2 -> rebootmgr-0.13.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/NEWS new/rebootmgr-0.13/NEWS
--- old/rebootmgr-0.12/NEWS     2017-03-03 16:40:10.000000000 +0100
+++ new/rebootmgr-0.13/NEWS     2017-03-15 13:11:58.000000000 +0100
@@ -2,6 +2,10 @@
 
 Copyright (C) 2016, 2017 Thorsten Kukuk
 
+Version 0.13
+* Cancel reboot if we run out of the maintenance window with etcd-lock
+  [bsc#1028060]
+
 Version 0.12
 * Rewrote reboot code to not block dbus if we wait for etcd locks [bsc#1026298]
 * Fix rebootmgr.service dependencies
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/configure new/rebootmgr-0.13/configure
--- old/rebootmgr-0.12/configure        2017-03-03 16:40:19.000000000 +0100
+++ new/rebootmgr-0.13/configure        2017-03-15 13:12:08.000000000 +0100
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for rebootmgr 0.12.
+# Generated by GNU Autoconf 2.69 for rebootmgr 0.13.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -577,8 +577,8 @@
 # Identity of this package.
 PACKAGE_NAME='rebootmgr'
 PACKAGE_TARNAME='rebootmgr'
-PACKAGE_VERSION='0.12'
-PACKAGE_STRING='rebootmgr 0.12'
+PACKAGE_VERSION='0.13'
+PACKAGE_STRING='rebootmgr 0.13'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1326,7 +1326,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures rebootmgr 0.12 to adapt to many kinds of systems.
+\`configure' configures rebootmgr 0.13 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1396,7 +1396,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of rebootmgr 0.12:";;
+     short | recursive ) echo "Configuration of rebootmgr 0.13:";;
    esac
   cat <<\_ACEOF
 
@@ -1511,7 +1511,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-rebootmgr configure 0.12
+rebootmgr configure 0.13
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1876,7 +1876,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by rebootmgr $as_me 0.12, which was
+It was created by rebootmgr $as_me 0.13, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2740,7 +2740,7 @@
 
 # Define the identity of the package.
  PACKAGE='rebootmgr'
- VERSION='0.12'
+ VERSION='0.13'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -8627,7 +8627,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by rebootmgr $as_me 0.12, which was
+This file was extended by rebootmgr $as_me 0.13, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -8693,7 +8693,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-rebootmgr config.status 0.12
+rebootmgr config.status 0.13
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/configure.ac 
new/rebootmgr-0.13/configure.ac
--- old/rebootmgr-0.12/configure.ac     2017-03-03 16:37:38.000000000 +0100
+++ new/rebootmgr-0.13/configure.ac     2017-03-15 13:10:38.000000000 +0100
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT(rebootmgr, 0.12)
+AC_INIT(rebootmgr, 0.13)
 AM_INIT_AUTOMAKE
 AC_CONFIG_SRCDIR([src/rebootmgrd.c])
 AM_CONFIG_HEADER(config.h)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rebootmgr-0.12/man/org.opensuse.RebootMgr.conf.8.html 
new/rebootmgr-0.13/man/org.opensuse.RebootMgr.conf.8.html
--- old/rebootmgr-0.12/man/org.opensuse.RebootMgr.conf.8.html   2017-03-01 
11:10:41.000000000 +0100
+++ new/rebootmgr-0.13/man/org.opensuse.RebootMgr.conf.8.html   2017-03-15 
13:09:22.000000000 +0100
@@ -15,7 +15,7 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
     reboot at the same there, <span 
class="emphasis"><em>rebootmgrd</em></span> reboots
     the machine following configured policies.</p><div class="refsect2"><a 
name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot 
Strategies<a class="headerlink" title="Permalink to this headline" 
href="#Reboot%20Strategies">¶</a></h3><p>
        rebootmgr supports different strategies, when a reboot should be done:
@@ -29,7 +29,9 @@
          </p></dd><dt id="etcd-lock"><span class="term">etcd-lock</span><a 
class="headerlink" title="Permalink to this term" 
href="#etcd-lock">¶</a></dt><dd><p>
            Acquire a lock at etcd for the specified lock-group before
            reboot. If a maintenance window is specified, acquire the lock
-           only during this window.
+           only during this window. If taking the lock takes longer than the
+           duration of the maitnenance window, the reboot is canceld and an
+           error logged.
          </p></dd><dt id="best-effort"><span class="term">best-effort</span><a 
class="headerlink" title="Permalink to this term" 
href="#best-effort">¶</a></dt><dd><p>
            This is the default. If etcd is running, use etcd-lock. If no etcd
            is running, but a maintenance window is specified, use
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgr.conf.5 
new/rebootmgr-0.13/man/rebootmgr.conf.5
--- old/rebootmgr-0.12/man/rebootmgr.conf.5     2017-03-01 11:10:41.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgr.conf.5     2017-03-03 16:41:44.000000000 
+0100
@@ -2,12 +2,12 @@
 .\"     Title: rebootmgr.conf
 .\"    Author: Thorsten Kukuk <ku...@suse.com>
 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\"      Date: 03/01/2017
+.\"      Date: 03/03/2017
 .\"    Manual: resolved.conf
 .\"    Source: rebootmgr
 .\"  Language: English
 .\"
-.TH "REBOOTMGR\&.CONF" "5" "03/01/2017" "rebootmgr" "resolved.conf"
+.TH "REBOOTMGR\&.CONF" "5" "03/03/2017" "rebootmgr" "resolved.conf"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgr.conf.5.html 
new/rebootmgr-0.13/man/rebootmgr.conf.5.html
--- old/rebootmgr-0.12/man/rebootmgr.conf.5.html        2017-03-01 
11:10:41.000000000 +0100
+++ new/rebootmgr-0.13/man/rebootmgr.conf.5.html        2017-03-03 
16:41:45.000000000 +0100
@@ -15,7 +15,7 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgr.conf.5"></a><div class="titlepage"></div><div 
class="refnamediv"><h2>Name</h2><p>rebootmgr.conf — Reboot Manager 
configuration files</p></div><div 
class="refsynopsisdiv"><h2>Synopsis</h2><p><code 
class="filename">/etc/rebootmgr.conf</code></p></div><div class="refsect1"><a 
name="id-1.5"></a><h2 id="Description">Description<a class="headerlink" 
title="Permalink to this headline" href="#Description">¶</a></h2><p>These 
configuration file controls and defines the reboot policy for
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgr.conf.5"></a><div class="titlepage"></div><div 
class="refnamediv"><h2>Name</h2><p>rebootmgr.conf — Reboot Manager 
configuration files</p></div><div 
class="refsynopsisdiv"><h2>Synopsis</h2><p><code 
class="filename">/etc/rebootmgr.conf</code></p></div><div class="refsect1"><a 
name="id-1.5"></a><h2 id="Description">Description<a class="headerlink" 
title="Permalink to this headline" href="#Description">¶</a></h2><p>These 
configuration file controls and defines the reboot policy for
     <a href="rebootmgrd.8.html"><span class="citerefentry"><span 
class="refentrytitle">rebootmgrd</span>(8)</span></a>.</p></div><div 
class="refsect1"><a name="id-1.6"></a><h2 id="Options">Options<a 
class="headerlink" title="Permalink to this headline" 
href="#Options">¶</a></h2><p>The following options are available in the "<code 
class="literal">rebootmgr</code>"
     section:</p><div class="variablelist"><dl class="variablelist"><dt 
id="window-start="><span class="term"><code 
class="varname">window-start=</code></span><a class="headerlink" 
title="Permalink to this term" href="#window-start=">¶</a></dt><dd><p>
            The format of <code class="varname">window-start</code> is the same 
as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgr.index.html 
new/rebootmgr-0.13/man/rebootmgr.index.html
--- old/rebootmgr-0.12/man/rebootmgr.index.html 2017-03-01 11:10:42.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgr.index.html 2017-03-15 13:09:22.000000000 
+0100
@@ -15,4 +15,4 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgr.index"></a><div class="titlepage"></div><div 
class="refnamediv"><h2>Name</h2><p>rebootmgr.index — List all manpages from the 
rebootmgr project</p></div><div class="refsect1"><a name="id-1.4"></a><h2 
id="O">O<a class="headerlink" title="Permalink to this headline" 
href="#O">¶</a></h2><p><a href="org.opensuse.RebootMgr.conf.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">org.opensuse.RebootMgr.conf</span>(8)</span></a> -- 
Reboot the machine during a maintenance window.<br></p></div><div 
class="refsect1"><a name="id-1.5"></a><h2 id="R">R<a class="headerlink" 
title="Permalink to this headline" href="#R">¶</a></h2><p><a 
href="rebootmgr.conf.5.html"><span class="citerefentry"><span 
class="refentrytitle">rebootmgr.conf</span>(5)</span></a> -- Reboot Manager 
configuration files<br><a href="rebootmgr.service.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgr.service</span>(8)</span></a> -- Reboot the 
machine during a maintenance window.<br><a href="rebootmgrctl.1.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgrctl</span>(1)</span></a> -- Tool to control and 
configure the reboot manager daemon.<br><a href="rebootmgrd.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgrd</span>(8)</span></a> -- Reboot the machine 
during a maintenance window.<br></p></div><div class="refsect1"><a 
name="id-1.6"></a><p><a name="counts"></a>This index contains 5 entries, 
referring to 3 individual manual pages.</p></div></div></body></html>
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgr.index"></a><div class="titlepage"></div><div 
class="refnamediv"><h2>Name</h2><p>rebootmgr.index — List all manpages from the 
rebootmgr project</p></div><div class="refsect1"><a name="id-1.4"></a><h2 
id="O">O<a class="headerlink" title="Permalink to this headline" 
href="#O">¶</a></h2><p><a href="org.opensuse.RebootMgr.conf.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">org.opensuse.RebootMgr.conf</span>(8)</span></a> -- 
Reboot the machine during a maintenance window.<br></p></div><div 
class="refsect1"><a name="id-1.5"></a><h2 id="R">R<a class="headerlink" 
title="Permalink to this headline" href="#R">¶</a></h2><p><a 
href="rebootmgr.conf.5.html"><span class="citerefentry"><span 
class="refentrytitle">rebootmgr.conf</span>(5)</span></a> -- Reboot Manager 
configuration files<br><a href="rebootmgr.service.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgr.service</span>(8)</span></a> -- Reboot the 
machine during a maintenance window.<br><a href="rebootmgrctl.1.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgrctl</span>(1)</span></a> -- Tool to control and 
configure the reboot manager daemon.<br><a href="rebootmgrd.8.html"><span 
class="citerefentry"><span 
class="refentrytitle">rebootmgrd</span>(8)</span></a> -- Reboot the machine 
during a maintenance window.<br></p></div><div class="refsect1"><a 
name="id-1.6"></a><p><a name="counts"></a>This index contains 5 entries, 
referring to 3 individual manual pages.</p></div></div></body></html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgr.service.8.html 
new/rebootmgr-0.13/man/rebootmgr.service.8.html
--- old/rebootmgr-0.12/man/rebootmgr.service.8.html     2017-03-01 
11:10:41.000000000 +0100
+++ new/rebootmgr-0.13/man/rebootmgr.service.8.html     2017-03-15 
13:09:22.000000000 +0100
@@ -15,7 +15,7 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
     reboot at the same there, <span 
class="emphasis"><em>rebootmgrd</em></span> reboots
     the machine following configured policies.</p><div class="refsect2"><a 
name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot 
Strategies<a class="headerlink" title="Permalink to this headline" 
href="#Reboot%20Strategies">¶</a></h3><p>
        rebootmgr supports different strategies, when a reboot should be done:
@@ -29,7 +29,9 @@
          </p></dd><dt id="etcd-lock"><span class="term">etcd-lock</span><a 
class="headerlink" title="Permalink to this term" 
href="#etcd-lock">¶</a></dt><dd><p>
            Acquire a lock at etcd for the specified lock-group before
            reboot. If a maintenance window is specified, acquire the lock
-           only during this window.
+           only during this window. If taking the lock takes longer than the
+           duration of the maitnenance window, the reboot is canceld and an
+           error logged.
          </p></dd><dt id="best-effort"><span class="term">best-effort</span><a 
class="headerlink" title="Permalink to this term" 
href="#best-effort">¶</a></dt><dd><p>
            This is the default. If etcd is running, use etcd-lock. If no etcd
            is running, but a maintenance window is specified, use
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgrctl.1 
new/rebootmgr-0.13/man/rebootmgrctl.1
--- old/rebootmgr-0.12/man/rebootmgrctl.1       2017-03-01 11:10:41.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgrctl.1       2017-03-03 16:41:44.000000000 
+0100
@@ -2,12 +2,12 @@
 .\"     Title: rebootmgrctl
 .\"    Author: Thorsten Kukuk <ku...@suse.de>
 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\"      Date: 03/01/2017
+.\"      Date: 03/03/2017
 .\"    Manual: rebootmgrctl
 .\"    Source: rebootmgr
 .\"  Language: English
 .\"
-.TH "REBOOTMGRCTL" "1" "03/01/2017" "rebootmgr" "rebootmgrctl"
+.TH "REBOOTMGRCTL" "1" "03/03/2017" "rebootmgr" "rebootmgrctl"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgrctl.1.html 
new/rebootmgr-0.13/man/rebootmgrctl.1.html
--- old/rebootmgr-0.12/man/rebootmgrctl.1.html  2017-03-01 11:10:41.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgrctl.1.html  2017-03-03 16:41:45.000000000 
+0100
@@ -15,7 +15,7 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgrctl.1"></a><div class="titlepage"></div><div 
class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrctl — Tool to 
control and configure the reboot manager daemon.</p></div><div 
class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>  [ --help  |   
--version ]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   is-active  [--quiet]</p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   reboot  [ 
fast  |   now ]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   cancel </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   status  
[--quiet]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   set-strategy    best-effort  |   
etcd-lock  |   maint-window  |   instantly  |   off  </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-strategy 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-group   <em class="replaceable"><code>group</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-group 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-window   <em class="replaceable"><code>time</code></em>   <em 
class="replaceable"><code>duration</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-window 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-max  [--group <em class="replaceable"><code>group</code></em>]  <em 
class="replaceable"><code>number</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   lock  
[--group <em class="replaceable"><code>group</code></em>] [<em 
class="replaceable"><code>machine-id</code></em>]</p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   unlock  
[--group <em class="replaceable"><code>group</code></em>] [<em 
class="replaceable"><code>machine-id</code></em>]</p></div></div><div 
class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p><span 
class="emphasis"><em>rebootmgrctl</em></span> is used to
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgrctl.1"></a><div class="titlepage"></div><div 
class="refnamediv"><a name="name"></a><h2>Name</h2><p>rebootmgrctl — Tool to 
control and configure the reboot manager daemon.</p></div><div 
class="refsynopsisdiv"><a name="synopsis"></a><h2>Synopsis</h2><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>  [ --help  |   
--version ]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   is-active  [--quiet]</p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   reboot  [ 
fast  |   now ]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   cancel </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   status  
[--quiet]</p></div><div class="cmdsynopsis"><p><code 
class="command">rebootmgrctl</code>   set-strategy    best-effort  |   
etcd-lock  |   maint-window  |   instantly  |   off  </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-strategy 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-group   <em class="replaceable"><code>group</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-group 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-window   <em class="replaceable"><code>time</code></em>   <em 
class="replaceable"><code>duration</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   get-window 
</p></div><div class="cmdsynopsis"><p><code class="command">rebootmgrctl</code> 
  set-max  [--group <em class="replaceable"><code>group</code></em>]  <em 
class="replaceable"><code>number</code></em> </p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   lock  
[--group <em class="replaceable"><code>group</code></em>] [<em 
class="replaceable"><code>machine-id</code></em>]</p></div><div 
class="cmdsynopsis"><p><code class="command">rebootmgrctl</code>   unlock  
[--group <em class="replaceable"><code>group</code></em>] [<em 
class="replaceable"><code>machine-id</code></em>]</p></div></div><div 
class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p><span 
class="emphasis"><em>rebootmgrctl</em></span> is used to
   query and configure the
   <a href="rebootmgrd.8.html"><span class="citerefentry"><span 
class="refentrytitle">rebootmgrd</span>(8)</span></a>
   process.</p></div><div class="refsect1"><a name="options"></a><h2 
id="Options">Options<a class="headerlink" title="Permalink to this headline" 
href="#Options">¶</a></h2><div class="variablelist"><dl 
class="variablelist"><dt id="--help"><span class="term"><code 
class="option">--help</code></span><a class="headerlink" title="Permalink to 
this term" href="#--help">¶</a></dt><dd><p>display help text and 
exit</p></dd><dt id="--version"><span class="term"><code 
class="option">--version</code></span><a class="headerlink" title="Permalink to 
this term" href="#--version">¶</a></dt><dd><p>output version information and 
exit</p></dd><dt id="cancel"><span class="term"><code 
class="option">cancel</code></span><a class="headerlink" title="Permalink to 
this term" href="#cancel">¶</a></dt><dd><p>Cancels an already running 
reboot.</p></dd><dt id="is-active --quiet"><span class="term"><code 
class="option">is-active</code> [<span 
class="optional">--quiet</span>]</span><a class="headerlink" title="Permalink 
to this term" href="#is-active%20--quiet">¶</a></dt><dd><p>Prints if the 
rebootmgrd is running and active or not. With the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgrd.8 
new/rebootmgr-0.13/man/rebootmgrd.8
--- old/rebootmgr-0.12/man/rebootmgrd.8 2017-03-01 11:10:40.000000000 +0100
+++ new/rebootmgr-0.13/man/rebootmgrd.8 2017-03-15 13:09:22.000000000 +0100
@@ -2,12 +2,12 @@
 .\"     Title: rebootmgrd
 .\"    Author: Thorsten Kukuk <ku...@suse.de>
 .\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
-.\"      Date: 03/01/2017
+.\"      Date: 03/15/2017
 .\"    Manual: rebootmgrd
 .\"    Source: rebootmgr
 .\"  Language: English
 .\"
-.TH "REBOOTMGRD" "8" "03/01/2017" "rebootmgr" "rebootmgrd"
+.TH "REBOOTMGRD" "8" "03/15/2017" "rebootmgr" "rebootmgrd"
 .\" -----------------------------------------------------------------
 .\" * Define some portability stuff
 .\" -----------------------------------------------------------------
@@ -57,7 +57,7 @@
 .PP
 etcd\-lock
 .RS 4
-Acquire a lock at etcd for the specified lock\-group before reboot\&. If a 
maintenance window is specified, acquire the lock only during this window\&.
+Acquire a lock at etcd for the specified lock\-group before reboot\&. If a 
maintenance window is specified, acquire the lock only during this window\&. If 
taking the lock takes longer than the duration of the maitnenance window, the 
reboot is canceld and an error logged\&.
 .RE
 .PP
 best\-effort
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgrd.8.html 
new/rebootmgr-0.13/man/rebootmgrd.8.html
--- old/rebootmgr-0.12/man/rebootmgrd.8.html    2017-03-01 11:10:41.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgrd.8.html    2017-03-15 13:09:22.000000000 
+0100
@@ -15,7 +15,7 @@
     h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, 
dt:hover > a.headerlink {
       visibility: visible;
     }
-  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.11</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
+  </style><a href="rebootmgr.index.html">Index </a><span 
style="float:right">rebootmgr 0.12</span><hr><div class="refentry"><a 
name="rebootmgrd.8"></a><div class="titlepage"></div><div class="refnamediv"><a 
name="name"></a><h2>Name</h2><p>rebootmgrd, rebootmgr.service, 
org.opensuse.RebootMgr.conf — Reboot the machine during a maintenance 
window.</p></div><div class="refsynopsisdiv"><a 
name="synopsis"></a><h2>Synopsis</h2><div class="cmdsynopsis"><p><code 
class="command">/usr/sbin/rebootmgrd</code>  [ --debug  |   --help  |   
--version ]</p></div><p><code 
class="filename">/usr/lib/systemd/system/rebootmgr.service</code></p><p><code 
class="filename">/etc/dbus-1/system.d/org.opensuse.RebootMgr.conf</code></p></div><div
 class="refsect1"><a name="description"></a><h2 id="Description">Description<a 
class="headerlink" title="Permalink to this headline" 
href="#Description">¶</a></h2><p>To avoid that a whole cluster or a set of 
machines with the same task
     reboot at the same there, <span 
class="emphasis"><em>rebootmgrd</em></span> reboots
     the machine following configured policies.</p><div class="refsect2"><a 
name="reboot_strategy_options"></a><h3 id="Reboot Strategies">Reboot 
Strategies<a class="headerlink" title="Permalink to this headline" 
href="#Reboot%20Strategies">¶</a></h3><p>
        rebootmgr supports different strategies, when a reboot should be done:
@@ -29,7 +29,9 @@
          </p></dd><dt id="etcd-lock"><span class="term">etcd-lock</span><a 
class="headerlink" title="Permalink to this term" 
href="#etcd-lock">¶</a></dt><dd><p>
            Acquire a lock at etcd for the specified lock-group before
            reboot. If a maintenance window is specified, acquire the lock
-           only during this window.
+           only during this window. If taking the lock takes longer than the
+           duration of the maitnenance window, the reboot is canceld and an
+           error logged.
          </p></dd><dt id="best-effort"><span class="term">best-effort</span><a 
class="headerlink" title="Permalink to this term" 
href="#best-effort">¶</a></dt><dd><p>
            This is the default. If etcd is running, use etcd-lock. If no etcd
            is running, but a maintenance window is specified, use
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/man/rebootmgrd.8.xml 
new/rebootmgr-0.13/man/rebootmgrd.8.xml
--- old/rebootmgr-0.12/man/rebootmgrd.8.xml     2017-02-16 12:39:35.000000000 
+0100
+++ new/rebootmgr-0.13/man/rebootmgrd.8.xml     2017-03-15 13:05:08.000000000 
+0100
@@ -95,7 +95,9 @@
          <para>
            Acquire a lock at etcd for the specified lock-group before
            reboot. If a maintenance window is specified, acquire the lock
-           only during this window.
+           only during this window. If taking the lock takes longer than the
+           duration of the maitnenance window, the reboot is canceld and an
+           error logged.
          </para>
        </listitem>
        </varlistentry>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rebootmgr-0.12/src/rebootmgrd.c 
new/rebootmgr-0.13/src/rebootmgrd.c
--- old/rebootmgr-0.12/src/rebootmgrd.c 2017-03-02 17:28:47.000000000 +0100
+++ new/rebootmgr-0.13/src/rebootmgrd.c 2017-03-15 12:45:04.000000000 +0100
@@ -130,6 +130,37 @@
       ctx->reboot_status = RM_REBOOTSTATUS_NOT_REQUESTED;
       return NULL;
     }
+
+  /* check, if we are still inside the maintenance window. Else
+     cancel reboot */
+  if (ctx->maint_window_start != NULL)
+    {
+      int r;
+      usec_t curr = now(CLOCK_REALTIME);
+      usec_t next;
+      usec_t duration = ctx->maint_window_duration * USEC_PER_SEC;
+
+      /* Check, if we are inside the maintenance window. If yes, reboot now */
+      r = calendar_spec_next_usec (ctx->maint_window_start,
+                                  curr - duration, &next);
+      if (r < 0)
+       {
+         log_msg (LOG_ERR, "ERROR: Internal error converting the timer: %s",
+                  g_strerror (-r));
+         ctx->reboot_status = RM_REBOOTSTATUS_NOT_REQUESTED;
+         return NULL;
+       }
+
+      if (curr < next || curr > next + duration)
+       {
+         /* we are outside the maintenance window, cancel */
+         log_msg (LOG_ERR,
+                  "ERROR: getting etcd lock took too long, reboot canceld");
+         ctx->reboot_status = RM_REBOOTSTATUS_NOT_REQUESTED;
+         return NULL;
+       }
+    }
+
   reboot_now (ctx);
   /* if we end here, reboot was canceld */
   if (etcd_release_lock (ctx->lock_group, NULL) != 0)


Reply via email to