[Pkg-ganeti-devel] [ganeti] 05/29: control: adjust for 2.10

Apollon Oikonomopoulos apoikos at moszumanska.debian.org
Fri Mar 7 10:15:04 UTC 2014


This is an automated email from the git hooks/post-receive script.

apoikos pushed a commit to branch master
in repository ganeti.

commit ca8cbc5eaf5c13c43b41897923649a84ee3de272
Author: Apollon Oikonomopoulos <apoikos at debian.org>
Date:   Thu Feb 27 15:51:24 2014 +0200

    control: adjust for 2.10
    
     • Introduce versioned packages for ganeti, ganeti-haskell and
       ganeti-htools:
    
        + ganeti-VER: ships all arch-all data specific to VER
        + ganeti-haskell-VER: ships the haskell daemons of VER
        + ganeti-htools-VER: ships the htools of VER
    
       ganeti will depend on all three of them (yes, htools is no longer a
       recommends, as this makes things a bit easier) and will manage the
       version symlinks under /etc/ganeti/{lib,share}. ganeti will also
       include all symlinks to htools binaries, in order to completely
       manage version upgrades in a consistent way.
    
       ganeti-htools will depend on ganeti-htools-VER and will provide its
       own links from /usr/bin directly to /usr/lib/ganeti/VER and not via
       /etc/ganeti. This is intentional and ganeti-htools is now meant to be
       installed on stand-alone machines. For cluster machines, ganeti
       already offers the necessary symlinks.
    
     • Generate debian/control from the debian/control.in template.
---
 debian/control                 | 104 ++++++++++++++++++++++++++++++-----------
 debian/{control => control.in} | 104 ++++++++++++++++++++++++++++++-----------
 debian/rules                   |   7 ++-
 3 files changed, 158 insertions(+), 57 deletions(-)

diff --git a/debian/control b/debian/control
index cc15f34..6465c4d 100644
--- a/debian/control
+++ b/debian/control
@@ -21,22 +21,28 @@ Homepage: http://code.google.com/p/ganeti/
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ganeti/ganeti.git
 Vcs-Git: git://anonscm.debian.org/pkg-ganeti/ganeti.git
 
+Package: ganeti2
+Architecture: all
+Depends: ganeti, ${misc:Depends}
+Description: transitional dummy package
+ This is a transitional dummy package for ganeti. It can safely be removed.
+
 Package: ganeti
 Architecture: all
-Breaks: ganeti2 (<< 2.7.0-2), ganeti-htools (<< ${source:Version}),
- ganeti-htools (>= ${source:Version}.1~)
-Replaces: ganeti2 (<< 2.7.0-2)
-Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, lvm2,
- openssh-client, openssh-server, bridge-utils, iproute2 | iproute,
- iputils-arping, openssl, python-simplejson, python-pyparsing, python-openssl,
- python-pyinotify, python-pycurl, python-paramiko, python-bitarray,
- python-ipaddr, socat, fping, ganeti-haskell (>= ${source:Version}),
- ganeti-haskell (<< ${source:Version}.1~), adduser
+Breaks: ganeti2 (<< 2.7.0-2), ganeti-haskell
+Replaces: ganeti2 (<< 2.7.0-2), ganeti-haskell, ganeti-htools
+Depends: ganeti-2.10 (= ${source:Version}),
+ ganeti-haskell-2.10 (>= ${source:Version}),
+ ganeti-haskell-2.10 (<< ${source:Version}.1~),
+ ganeti-htools-2.10 (>= ${source:Version}),
+ ganeti-htools-2.10 (<< ${source:Version}.1~),
+ adduser, ${misc:Depends}
 Recommends: drbd8-utils (>= 8.0.7), qemu-kvm |
  xen-linux-system-amd64 | xen-linux-system-686-pae,
- ganeti-instance-debootstrap, ndisc6, ganeti-htools
+ ganeti-instance-debootstrap, ndisc6
 Suggests: ganeti-doc, blktap-dkms
-Provides: ${python:Provides}
+Conflicts: ganeti-htools
+Provides: ${python:Provides}, ganeti-htools
 Description: Cluster-based virtualization management software
  Ganeti is a virtual server cluster management software tool built on top
  of the Xen and KVM virtualization technologies and other Free Software. After
@@ -51,18 +57,37 @@ Description: Cluster-based virtualization management software
  management, operating system installation (in cooperation with OS-specific
  install scripts), startup, shutdown, failover of instances between physical
  systems.
+ .
+ This package installs the complete Ganeti system.
 
-Package: ganeti2
+Package: ganeti-2.10
 Architecture: all
-Depends: ganeti, ${misc:Depends}
-Description: transitional dummy package
- This is a transitional dummy package for ganeti. It can safely be removed.
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, lvm2,
+ openssh-client, openssh-server, bridge-utils, iproute2 | iproute,
+ iputils-arping, openssl, python-simplejson, python-pyparsing, python-openssl,
+ python-pyinotify, python-pycurl, python-paramiko, python-bitarray,
+ python-ipaddr, socat, fping, adduser
+Provides: ${python:Provides}
+Description: Cluster-based virtualization management software - Python components
+ Ganeti is a virtual server cluster management software tool built on top
+ of the Xen and KVM virtualization technologies and other Free Software. After
+ setting it up it will provide you with an automated environment to
+ manage highly available virtual machine instances.
+ .
+ It has been designed to facilitate cluster management of virtual servers
+ and to provide fast and simple recovery after physical failures using
+ commodity hardware.
+ .
+ It will take care of operations such as redundant disk creation and
+ management, operating system installation (in cooperation with OS-specific
+ install scripts), startup, shutdown, failover of instances between physical
+ systems.
+ .
+ This package contains all architecture-independent components of Ganeti 2.10.
 
-Package: ganeti-haskell
+Package: ganeti-haskell-2.10
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Replaces: ganeti2 (<< 2.7.0-2)
-Breaks: ganeti2 (<< 2.7.0-2)
 Description: Cluster-based virtualization management software - Haskell components
  Ganeti is a virtual server cluster management software tool built on top
  of the Xen and KVM virtualization technologies and other Free Software. After
@@ -78,23 +103,46 @@ Description: Cluster-based virtualization management software - Haskell componen
  install scripts), startup, shutdown, failover of instances between physical
  systems.
  .
- This package contains the architecture-dependent components of Ganeti written
- in Haskell.
+ This package contains the architecture-dependent components of Ganeti 2.10
+ written in Haskell.
 
 Package: ganeti-htools
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, ganeti-htools-2.10
+Breaks: ganeti2 (<< 2.4)
+Description: Cluster allocation tools for Ganeti - stand-alone version
+ Additional tools used for enhanced allocation, maintenance and capacity
+ calculation on Ganeti clusters.
+ .
+ The tools provided are:
+   - hail: advanced instance allocator
+   - harep: tool for automatically repairing Ganeti clusters
+   - hbal: automatic cluster balancing tool
+   - hinfo: print cluster information
+   - hroller: rolling maintenance/reboot scheduler for Ganeti nodes
+   - hscan: used to gather cluster files for offline use in hbal/hspace
+   - hspace: cluster capacity calculator
+ .
+ This package is intended for stand-alone systems that are not part of a Ganeti
+ cluster.
+
+Package: ganeti-htools-2.10
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Breaks: ganeti2 (<< 2.4)
-Description: Cluster allocation tools for Ganeti
- These are additional tools used for enhanced allocation and capacity
+Description: Cluster allocation tools for Ganeti 2.10
+ Additional tools used for enhanced allocation, maintenance and capacity
  calculation on Ganeti clusters.
  .
  The tools provided are:
-   - hail, an iallocator script for ganeti
-   - hbal, used to redistribute instances on the cluster
-   - hspace, used for capacity calculation
-   - hscan, used to gather cluster files for offline use in hbal/hspace
-   - hroller, used to calculate rolling maintenances
+   - hail: advanced instance allocator
+   - harep: tool for automatically repairing Ganeti clusters
+   - hbal: automatic cluster balancing tool
+   - hinfo: print cluster information
+   - hroller: rolling maintenance/reboot scheduler for Ganeti nodes
+   - hscan: used to gather cluster files for offline use in hbal/hspace
+   - hspace: cluster capacity calculator
+ .
+ For use in non-cluster systems, install ganeti-htools instead of this package.
 
 Package: ganeti-doc
 Architecture: all
diff --git a/debian/control b/debian/control.in
similarity index 66%
copy from debian/control
copy to debian/control.in
index cc15f34..9ea572a 100644
--- a/debian/control
+++ b/debian/control.in
@@ -21,22 +21,28 @@ Homepage: http://code.google.com/p/ganeti/
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ganeti/ganeti.git
 Vcs-Git: git://anonscm.debian.org/pkg-ganeti/ganeti.git
 
+Package: ganeti2
+Architecture: all
+Depends: ganeti, ${misc:Depends}
+Description: transitional dummy package
+ This is a transitional dummy package for ganeti. It can safely be removed.
+
 Package: ganeti
 Architecture: all
-Breaks: ganeti2 (<< 2.7.0-2), ganeti-htools (<< ${source:Version}),
- ganeti-htools (>= ${source:Version}.1~)
-Replaces: ganeti2 (<< 2.7.0-2)
-Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, lvm2,
- openssh-client, openssh-server, bridge-utils, iproute2 | iproute,
- iputils-arping, openssl, python-simplejson, python-pyparsing, python-openssl,
- python-pyinotify, python-pycurl, python-paramiko, python-bitarray,
- python-ipaddr, socat, fping, ganeti-haskell (>= ${source:Version}),
- ganeti-haskell (<< ${source:Version}.1~), adduser
+Breaks: ganeti2 (<< 2.7.0-2), ganeti-haskell
+Replaces: ganeti2 (<< 2.7.0-2), ganeti-haskell, ganeti-htools
+Depends: ganeti-#VER# (= ${source:Version}),
+ ganeti-haskell-#VER# (>= ${source:Version}),
+ ganeti-haskell-#VER# (<< ${source:Version}.1~),
+ ganeti-htools-#VER# (>= ${source:Version}),
+ ganeti-htools-#VER# (<< ${source:Version}.1~),
+ adduser, ${misc:Depends}
 Recommends: drbd8-utils (>= 8.0.7), qemu-kvm |
  xen-linux-system-amd64 | xen-linux-system-686-pae,
- ganeti-instance-debootstrap, ndisc6, ganeti-htools
+ ganeti-instance-debootstrap, ndisc6
 Suggests: ganeti-doc, blktap-dkms
-Provides: ${python:Provides}
+Conflicts: ganeti-htools
+Provides: ${python:Provides}, ganeti-htools
 Description: Cluster-based virtualization management software
  Ganeti is a virtual server cluster management software tool built on top
  of the Xen and KVM virtualization technologies and other Free Software. After
@@ -51,18 +57,37 @@ Description: Cluster-based virtualization management software
  management, operating system installation (in cooperation with OS-specific
  install scripts), startup, shutdown, failover of instances between physical
  systems.
+ .
+ This package installs the complete Ganeti system.
 
-Package: ganeti2
+Package: ganeti-#VER#
 Architecture: all
-Depends: ganeti, ${misc:Depends}
-Description: transitional dummy package
- This is a transitional dummy package for ganeti. It can safely be removed.
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, lvm2,
+ openssh-client, openssh-server, bridge-utils, iproute2 | iproute,
+ iputils-arping, openssl, python-simplejson, python-pyparsing, python-openssl,
+ python-pyinotify, python-pycurl, python-paramiko, python-bitarray,
+ python-ipaddr, socat, fping, adduser
+Provides: ${python:Provides}
+Description: Cluster-based virtualization management software - Python components
+ Ganeti is a virtual server cluster management software tool built on top
+ of the Xen and KVM virtualization technologies and other Free Software. After
+ setting it up it will provide you with an automated environment to
+ manage highly available virtual machine instances.
+ .
+ It has been designed to facilitate cluster management of virtual servers
+ and to provide fast and simple recovery after physical failures using
+ commodity hardware.
+ .
+ It will take care of operations such as redundant disk creation and
+ management, operating system installation (in cooperation with OS-specific
+ install scripts), startup, shutdown, failover of instances between physical
+ systems.
+ .
+ This package contains all architecture-independent components of Ganeti #VER#.
 
-Package: ganeti-haskell
+Package: ganeti-haskell-#VER#
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Replaces: ganeti2 (<< 2.7.0-2)
-Breaks: ganeti2 (<< 2.7.0-2)
 Description: Cluster-based virtualization management software - Haskell components
  Ganeti is a virtual server cluster management software tool built on top
  of the Xen and KVM virtualization technologies and other Free Software. After
@@ -78,23 +103,46 @@ Description: Cluster-based virtualization management software - Haskell componen
  install scripts), startup, shutdown, failover of instances between physical
  systems.
  .
- This package contains the architecture-dependent components of Ganeti written
- in Haskell.
+ This package contains the architecture-dependent components of Ganeti #VER#
+ written in Haskell.
 
 Package: ganeti-htools
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, ganeti-htools-#VER#
+Breaks: ganeti2 (<< 2.4)
+Description: Cluster allocation tools for Ganeti - stand-alone version
+ Additional tools used for enhanced allocation, maintenance and capacity
+ calculation on Ganeti clusters.
+ .
+ The tools provided are:
+   - hail: advanced instance allocator
+   - harep: tool for automatically repairing Ganeti clusters
+   - hbal: automatic cluster balancing tool
+   - hinfo: print cluster information
+   - hroller: rolling maintenance/reboot scheduler for Ganeti nodes
+   - hscan: used to gather cluster files for offline use in hbal/hspace
+   - hspace: cluster capacity calculator
+ .
+ This package is intended for stand-alone systems that are not part of a Ganeti
+ cluster.
+
+Package: ganeti-htools-#VER#
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Breaks: ganeti2 (<< 2.4)
-Description: Cluster allocation tools for Ganeti
- These are additional tools used for enhanced allocation and capacity
+Description: Cluster allocation tools for Ganeti #VER#
+ Additional tools used for enhanced allocation, maintenance and capacity
  calculation on Ganeti clusters.
  .
  The tools provided are:
-   - hail, an iallocator script for ganeti
-   - hbal, used to redistribute instances on the cluster
-   - hspace, used for capacity calculation
-   - hscan, used to gather cluster files for offline use in hbal/hspace
-   - hroller, used to calculate rolling maintenances
+   - hail: advanced instance allocator
+   - harep: tool for automatically repairing Ganeti clusters
+   - hbal: automatic cluster balancing tool
+   - hinfo: print cluster information
+   - hroller: rolling maintenance/reboot scheduler for Ganeti nodes
+   - hscan: used to gather cluster files for offline use in hbal/hspace
+   - hspace: cluster capacity calculator
+ .
+ For use in non-cluster systems, install ganeti-htools instead of this package.
 
 Package: ganeti-doc
 Architecture: all
diff --git a/debian/rules b/debian/rules
index bff0251..7e15ba9 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,12 +3,17 @@
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
+VER = $(shell cat vcs-version | sed -r 's/v([0-9]+\.[0-9]+)(\..*)/\1/')
+
 GNT_USERGROUP_PREFIX="gnt-"
 
 %:
 	dh $@ --with python2,sphinxdoc,bash_completion
 
-override_dh_auto_configure:
+debian/control: debian/control.in vcs-version
+	sed -s 's/#VER#/$(VER)/g' debian/control.in > debian/control
+
+override_dh_auto_configure: genfiles
 	./configure \
 	  --prefix=/usr \
 	  --localstatedir=/var \

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ganeti/ganeti.git



More information about the Pkg-ganeti-devel mailing list