Re: [Xen-devel] [PATCH OSSTEST v3 02/11] mg-debian-installer-update: updates to better handle Jessie onwards.

2015-06-19 Thread Ian Campbell
On Wed, 2015-06-17 at 14:06 +0100, Wei Liu wrote:
 +case $suite_$arch in

Sorry, this is buggy, it looks for a variable named suite_ which
doesn't exist and so nothing matches. It needs this:

diff --git a/mg-debian-installer-update b/mg-debian-installer-update
index b9b1146..6a26675 100755
--- a/mg-debian-installer-update
+++ b/mg-debian-installer-update
@@ -102,7 +102,7 @@ done
 # Some platforms require a newer kernel than is in Debian. Construct
 # something suitable from the latest kernel ($bpok=flavour) in
 # backports.
-case $suite_$arch in
+case ${suite}_${arch} in
 wheezy_armhf) bpok=armmp; need_initramfs=y;;
 esac
 if [ x$bpok != x ]; then

Ian.


___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH OSSTEST v3 02/11] mg-debian-installer-update: updates to better handle Jessie onwards.

2015-06-19 Thread Ian Jackson
Wei Liu writes ([PATCH OSSTEST v3 02/11] mg-debian-installer-update: updates 
to better handle Jessie onwards.):
 From: Ian Campbell ian.campb...@citrix.com
 
 In mg-debian-installer-update:
 
   - Expand the list of (suite,arch) combinations which don't exist and
 move it to the top.
...
 -# Newer kernel often needs a newer initramfs-tools. Make that available
 -echo 2 collecting backports initramfs-tools
 -pkgfile=`zcat Packages.gz | grep-dctrl -PX initramfs-tools -nsFilename | 
 sort -n -r | head -n1`
 -rc=$?
 -set -e
 -if [ $rc != 0 ]; then fail initramfs-tools package not found; fi
 -fetch $site/$pkgfile initramfs-tools.deb
 +if [ x$need_initramfs = xy ]; then
 +# Newer kernel often needs a newer initramfs-tools. Make that
 +# available
 +echo 2 collecting backports initramfs-tools
 +pkgfile=`zcat Packages.gz \
 + | grep-dctrl -PX initramfs-tools -nsFilename \
 + | sort -n -r | head -n1`

That looks much like this:

 -pkgfile=`zcat Packages.gz | grep-dctrl -S linux | grep-dctrl -Pe 
 ^linux-image-.*-armmp$ -nsFilename | sort -n -r | head -n1`
 +pkgfile=`zcat Packages.gz | grep-dctrl -S linux \
 + | grep-dctrl -Pe ^linux-image-.*-${bpok}$ -nsFilename \
 + | sort -n -r | head -n1`

But since it was duplicated before I won't ask you to break it out.

Acked-by: Ian Jackson ian.jack...@eu.citrix.com

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


Re: [Xen-devel] [PATCH OSSTEST v3 02/11] mg-debian-installer-update: updates to better handle Jessie onwards.

2015-06-19 Thread Wei Liu
On Fri, Jun 19, 2015 at 02:50:34PM +0100, Ian Campbell wrote:
 On Wed, 2015-06-17 at 14:06 +0100, Wei Liu wrote:
  +case $suite_$arch in
 
 Sorry, this is buggy, it looks for a variable named suite_ which
 doesn't exist and so nothing matches. It needs this:
 
 diff --git a/mg-debian-installer-update b/mg-debian-installer-update
 index b9b1146..6a26675 100755
 --- a/mg-debian-installer-update
 +++ b/mg-debian-installer-update
 @@ -102,7 +102,7 @@ done
  # Some platforms require a newer kernel than is in Debian. Construct
  # something suitable from the latest kernel ($bpok=flavour) in
  # backports.
 -case $suite_$arch in
 +case ${suite}_${arch} in
  wheezy_armhf) bpok=armmp; need_initramfs=y;;
  esac
  if [ x$bpok != x ]; then
 

I folded this in.

Wei.

 Ian.

___
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel


[Xen-devel] [PATCH OSSTEST v3 02/11] mg-debian-installer-update: updates to better handle Jessie onwards.

2015-06-17 Thread Wei Liu
From: Ian Campbell ian.campb...@citrix.com

In mg-debian-installer-update:

  - Expand the list of (suite,arch) combinations which don't exist and
move it to the top.

  - Tweak the backports.org handling to allow it to be specified on a
per (suite,arch) basis, and specify it only for (wheezy,armhf)
since it is not currently needed for jessie. Make the
initramfs-tools fetching conditional too.

  - Only extract backports-dtbs if they are present in the package.

  - Handle arm64.

  - Collect the correct armhf kernel for Jessie onwards (vexpress
removed from path).

Have mg-debian-installer-update-all fetch arm64 too.

Signed-off-by: Ian Campbell ian.campb...@citrix.com
[wei: wrap lines]
Signed-off-by: Wei Liu wei.l...@citrix.com
---
 Osstest/Debian.pm  |  2 +-
 mg-debian-installer-update | 67 --
 mg-debian-installer-update-all |  2 +-
 ts-host-install|  4 +--
 4 files changed, 49 insertions(+), 26 deletions(-)

diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 7c652f7..26363af 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -862,7 +862,7 @@ END
 foreach my $kp (keys %{ $ho-{Flags} }) {
# Backwards compatibility
$kp = need-kernel-deb-wheezy-backports if $kp eq 
need-kernel-deb-armmp;
-   $kp =~ s/need-kernel-deb-$ho-{Suite}// or next;
+   $kp =~ s/need-kernel-deb-$ho-{Suite}-// or next;
 
my $kern = $d_i/$kp.deb;
my $kurl = create_webfile($ho, kernel, sub {
diff --git a/mg-debian-installer-update b/mg-debian-installer-update
index f21f216..750258d 100755
--- a/mg-debian-installer-update
+++ b/mg-debian-installer-update
@@ -38,20 +38,29 @@ fetch () {
 }
 
 case ${suite}_${arch} in
+lenny_armhf|squeeze_armhf|lenny_arm64|squeeze_arm64|wheezy_arm64)
+# No such thing.
+exit 0
+;;
 *_i386|*_amd64)
 src=$sbase/main/installer-$arch/current/images/netboot/
 files=debian-installer/$arch/initrd.gz:initrd.gz 
debian-installer/$arch/linux:linux xen/vmlinuz:vmlinuz-xen 
xen/initrd.gz:initrd.gz-xen
 ;;
-lenny_armhf|squeeze_armhf)
-# No such thing.
-exit 0
+*_arm64)
+src=$sbase/main/installer-$arch/current/images/netboot/
+files=debian-installer/$arch/initrd.gz:initrd.gz \
+   debian-installer/$arch/linux:linux
 ;;
-*_armhf)
+wheezy_armhf)
 # Use the vexpress image, we are going to bash in our own
 # kernel+modules anyway.
 src=$sbase/main/installer-$arch/current/images/vexpress/netboot
 files='initrd.gz' # no kernel -- needs a newer kernel
 ;;
+*_armhf)
+src=$sbase/main/installer-$arch/current/images/netboot
+files='vmlinuz initrd.gz'
+   ;;
 esac
 
 pfile=$sbase/non-free/binary-$arch/Packages.gz
@@ -89,28 +98,40 @@ for p in $packages; do
 rm -rf x
 done
 
-# armhf requires a newer kernel than was in Wheezy for most
-# platforms. Construct something suitable from the latest kernel in
-# wheezy-backports.
-if [ $arch = armhf ]; then
+# Some platforms require a newer kernel than is in Debian. Construct
+# something suitable from the latest kernel ($bpok=flavour) in
+# backports.
+case $suite_$arch in
+wheezy_armhf) bpok=armmp; need_initramfs=y;;
+esac
+if [ x$bpok != x ]; then
 bp=$sbase-backports
-pfile=$bp/main/binary-armhf/Packages.gz
+pfile=$bp/main/binary-$arch/Packages.gz
 
 fetch $pfile Packages.gz
 
-# Newer kernel often needs a newer initramfs-tools. Make that available
-echo 2 collecting backports initramfs-tools
-pkgfile=`zcat Packages.gz | grep-dctrl -PX initramfs-tools -nsFilename | 
sort -n -r | head -n1`
-rc=$?
-set -e
-if [ $rc != 0 ]; then fail initramfs-tools package not found; fi
-fetch $site/$pkgfile initramfs-tools.deb
+if [ x$need_initramfs = xy ]; then
+# Newer kernel often needs a newer initramfs-tools. Make that
+# available
+echo 2 collecting backports initramfs-tools
+pkgfile=`zcat Packages.gz \
+ | grep-dctrl -PX initramfs-tools -nsFilename \
+ | sort -n -r | head -n1`
+rc=$?
+set -e
+if [ $rc -ne 0 ] || [ x$pkgfile = x ]; then
+   fail initramfs-tools package not found;
+   fi
+fetch $site/$pkgfile initramfs-tools.deb
+fi
 
 set +e
 echo 2 collecting backports kernel
 # Be careful to pickup the actual kernel package from the 'linux'
 # source and not a meta package from 'linux-latest'
-pkgfile=`zcat Packages.gz | grep-dctrl -S linux | grep-dctrl -Pe 
^linux-image-.*-armmp$ -nsFilename | sort -n -r | head -n1`
+pkgfile=`zcat Packages.gz | grep-dctrl -S linux \
+ | grep-dctrl -Pe ^linux-image-.*-${bpok}$ -nsFilename \
+ | sort -n -r | head -n1`
 rc=$?
 set -e
 if [ $rc != 0 ]; then fail backports kernel package not found; fi
@@