public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Lucas Meneghel Rodrigues <lmr@redhat.com>
To: Qingtang Zhou <qzhou@redhat.com>
Cc: autotest@test.kernel.org, kvm@vger.kernel.org
Subject: Re: [Autotest] [PATCH 1/3] KVM-Test: kickstart script: Add pre-installation script for dumping anaconda log
Date: Tue, 05 Jul 2011 12:54:34 -0300	[thread overview]
Message-ID: <1309881276.6594.33.camel@freedom> (raw)
In-Reply-To: <1309254299-30095-1-git-send-email-qzhou@redhat.com>

On Tue, 2011-06-28 at 17:44 +0800, Qingtang Zhou wrote:
> Anaconda log will help us to analyse failure of installation.

Hi Qingtang, I have verified the code, have a couple of comments on one
of the patches. We have a problem though:

I did test it in my laptop, with both the default atbr0 bridge and
virbr0, and the side effect of the patchset is that the guest can't
signal the host the installation has ended. I can't commit the patchset
in this state, since it brings a major regression. I spend some time
looking and thinking about it, but the problem is not immediately
apparent.

So, would you take the time to fix my comments and test on a setup,
using the default autotest bridge, figure out the problem and send me an
updated version? I need to work on other stuff, but if you have any
problems let me know.

Cheers,

Lucas

> 
> Signed-off-by: Qingtang Zhou <qzhou@redhat.com>
> ---
>  client/tests/kvm/unattended/Fedora-10.ks     |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-11.ks     |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-12.ks     |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-13.ks     |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-14.ks     |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-8.ks      |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/Fedora-9.ks      |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/RHEL-3-series.ks |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/RHEL-4-series.ks |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/RHEL-5-series.ks |   35 ++++++++++++++++++++++++++
>  client/tests/kvm/unattended/RHEL-6-series.ks |   35 ++++++++++++++++++++++++++
>  11 files changed, 385 insertions(+), 0 deletions(-)
> 
> diff --git a/client/tests/kvm/unattended/Fedora-10.ks b/client/tests/kvm/unattended/Fedora-10.ks
> index 081d41a..49bdfbb 100644
> --- a/client/tests/kvm/unattended/Fedora-10.ks
> +++ b/client/tests/kvm/unattended/Fedora-10.ks
> @@ -24,6 +24,41 @@ poweroff
>  @development-tools
>  ntpdate
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-11.ks b/client/tests/kvm/unattended/Fedora-11.ks
> index c339220..17c5721 100644
> --- a/client/tests/kvm/unattended/Fedora-11.ks
> +++ b/client/tests/kvm/unattended/Fedora-11.ks
> @@ -24,6 +24,41 @@ autopart
>  ntpdate
>  %end
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-12.ks b/client/tests/kvm/unattended/Fedora-12.ks
> index c339220..17c5721 100644
> --- a/client/tests/kvm/unattended/Fedora-12.ks
> +++ b/client/tests/kvm/unattended/Fedora-12.ks
> @@ -24,6 +24,41 @@ autopart
>  ntpdate
>  %end
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-13.ks b/client/tests/kvm/unattended/Fedora-13.ks
> index c339220..17c5721 100644
> --- a/client/tests/kvm/unattended/Fedora-13.ks
> +++ b/client/tests/kvm/unattended/Fedora-13.ks
> @@ -24,6 +24,41 @@ autopart
>  ntpdate
>  %end
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-14.ks b/client/tests/kvm/unattended/Fedora-14.ks
> index e1323cd..f9fa144 100644
> --- a/client/tests/kvm/unattended/Fedora-14.ks
> +++ b/client/tests/kvm/unattended/Fedora-14.ks
> @@ -25,6 +25,41 @@ ntpdate
>  dmidecode
>  %end
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-8.ks b/client/tests/kvm/unattended/Fedora-8.ks
> index 9403191..1f45699 100644
> --- a/client/tests/kvm/unattended/Fedora-8.ks
> +++ b/client/tests/kvm/unattended/Fedora-8.ks
> @@ -23,6 +23,41 @@ reboot
>  @development-tools
>  ntpdate
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/Fedora-9.ks b/client/tests/kvm/unattended/Fedora-9.ks
> index a7d5399..a325657 100644
> --- a/client/tests/kvm/unattended/Fedora-9.ks
> +++ b/client/tests/kvm/unattended/Fedora-9.ks
> @@ -24,6 +24,41 @@ poweroff
>  @development-tools
>  ntpdate
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/RHEL-3-series.ks b/client/tests/kvm/unattended/RHEL-3-series.ks
> index 0c6d334..5012000 100644
> --- a/client/tests/kvm/unattended/RHEL-3-series.ks
> +++ b/client/tests/kvm/unattended/RHEL-3-series.ks
> @@ -23,6 +23,41 @@ skipx
>  @ development-tools
>  ntp
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('/sbin/ifconfig eth0 10.0.2.15 netmask 255.255.255.0 up')
> diff --git a/client/tests/kvm/unattended/RHEL-4-series.ks b/client/tests/kvm/unattended/RHEL-4-series.ks
> index 83ae918..9760f57 100644
> --- a/client/tests/kvm/unattended/RHEL-4-series.ks
> +++ b/client/tests/kvm/unattended/RHEL-4-series.ks
> @@ -23,6 +23,41 @@ poweroff
>  @ development-tools
>  ntp
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/RHEL-5-series.ks b/client/tests/kvm/unattended/RHEL-5-series.ks
> index 7ffd19f..cbfb171 100644
> --- a/client/tests/kvm/unattended/RHEL-5-series.ks
> +++ b/client/tests/kvm/unattended/RHEL-5-series.ks
> @@ -25,6 +25,41 @@ kexec-tools
>  watchdog
>  ntp
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')
> diff --git a/client/tests/kvm/unattended/RHEL-6-series.ks b/client/tests/kvm/unattended/RHEL-6-series.ks
> index 166c499..4b0629a 100644
> --- a/client/tests/kvm/unattended/RHEL-6-series.ks
> +++ b/client/tests/kvm/unattended/RHEL-6-series.ks
> @@ -28,6 +28,41 @@ NetworkManager
>  ntpdate
>  watchdog
>  
> +%pre --interpreter /usr/bin/python
> +import socket, os, sys
> +
> +try:
> +    pid = os.fork()
> +except OSError, e:
> +    sys.exit(1)
> +
> +if pid > 0:
> +    sys.exit(0)
> +
> +f = open("/tmp/anaconda.log", 'r')
> +sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> +
> +os.close(sys.stderr.fileno())
> +os.close(sys.stdout.fileno())
> +
> +sock.bind(('', 12322))
> +sock.listen(1)
> +
> +buf = ""
> +while True:
> +    client, addr = sock.accept()
> +    o = f.readlines(1024)
> +    o = "".join(o)
> +    if buf or o:
> +        client.send(o)
> +        data = client.recv(64)
> +        if "ok" in data:
> +            buf = ""
> +        else:
> +            buf += o
> +    client.close()
> +%end
> +
>  %post --interpreter /usr/bin/python
>  import socket, os
>  os.system('dhclient')



  parent reply	other threads:[~2011-07-05 15:54 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-28  9:44 [PATCH 1/3] KVM-Test: kickstart script: Add pre-installation script for dumping anaconda log Qingtang Zhou
2011-06-28  9:45 ` [PATCH 2/3] KVM-Test: unattended_install.py: Get anaconda log and save it to log file Qingtang Zhou
2011-07-05 15:56   ` Lucas Meneghel Rodrigues
2011-06-28  9:45 ` [PATCH 3/3] KVM Test: Add get anaconda log config in config file Qingtang Zhou
2011-07-05 15:54 ` Lucas Meneghel Rodrigues [this message]
2011-07-07  5:50   ` [Autotest] [PATCH 1/3] KVM-Test: kickstart script: Add pre-installation script for dumping anaconda log Qingtang Zhou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1309881276.6594.33.camel@freedom \
    --to=lmr@redhat.com \
    --cc=autotest@test.kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=qzhou@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox