Skip to content
  • Cleber Rosa's avatar
    6fd52d67
    Acceptance test: add "boot_linux" tests · 6fd52d67
    Cleber Rosa authored
    
    
    This acceptance test, validates that a full blown Linux guest can
    successfully boot in QEMU.  In this specific case, the guest chosen is
    Fedora version 31.
    
     * x86_64, pc-i440fx and pc-q35 machine types, with TCG and KVM as
       accelerators
    
     * aarch64 and virt machine type, with TCG and KVM as accelerators
    
     * ppc64 and pseries machine type with TCG as accelerator
    
     * s390x and s390-ccw-virtio machine type with TCG as accelerator
    
    The Avocado vmimage utils library is used to download and cache the
    Linux guest images, and from those images a snapshot image is created
    and given to QEMU.  If a qemu-img binary is available in the build
    directory, it's used to create the snapshot image, so that matching
    qemu-system-* and qemu-img are used in the same test run.  If qemu-img
    is not available in the build tree, one is attempted to be found
    installed system-wide (in the $PATH).  If qemu-img is not found in the
    build dir or in the $PATH, the test is canceled.
    
    The method for checking the successful boot is based on "cloudinit"
    and its "phone home" feature.  The guest is given an ISO image with
    the location of the phone home server, and the information to post
    (the instance ID).  Upon receiving the correct information, from the
    guest, the test is considered to have PASSed.
    
    This test is currently limited to user mode networking only, and
    instructs the guest to connect to the "router" address that is hard
    coded in QEMU.
    
    To create the cloudinit ISO image that will be used to configure the
    guest, the pycdlib library is also required and has been added as
    requirement to the virtual environment created by "check-venv".
    
    The console output is read by a separate thread, by means of the
    Avocado datadrainer utility module.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    Reviewed-by: default avatarWainer dos Santos Moschetta <wainersm@redhat.com>
    Reviewed-by: default avatarWillian Rampazzo <willianr@redhat.com>
    Tested-by: default avatarWillian Rampazzo <willianr@redhat.com>
    Message-Id: <20200317141654.29355-3-crosa@redhat.com>
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    6fd52d67
    Acceptance test: add "boot_linux" tests
    Cleber Rosa authored
    
    
    This acceptance test, validates that a full blown Linux guest can
    successfully boot in QEMU.  In this specific case, the guest chosen is
    Fedora version 31.
    
     * x86_64, pc-i440fx and pc-q35 machine types, with TCG and KVM as
       accelerators
    
     * aarch64 and virt machine type, with TCG and KVM as accelerators
    
     * ppc64 and pseries machine type with TCG as accelerator
    
     * s390x and s390-ccw-virtio machine type with TCG as accelerator
    
    The Avocado vmimage utils library is used to download and cache the
    Linux guest images, and from those images a snapshot image is created
    and given to QEMU.  If a qemu-img binary is available in the build
    directory, it's used to create the snapshot image, so that matching
    qemu-system-* and qemu-img are used in the same test run.  If qemu-img
    is not available in the build tree, one is attempted to be found
    installed system-wide (in the $PATH).  If qemu-img is not found in the
    build dir or in the $PATH, the test is canceled.
    
    The method for checking the successful boot is based on "cloudinit"
    and its "phone home" feature.  The guest is given an ISO image with
    the location of the phone home server, and the information to post
    (the instance ID).  Upon receiving the correct information, from the
    guest, the test is considered to have PASSed.
    
    This test is currently limited to user mode networking only, and
    instructs the guest to connect to the "router" address that is hard
    coded in QEMU.
    
    To create the cloudinit ISO image that will be used to configure the
    guest, the pycdlib library is also required and has been added as
    requirement to the virtual environment created by "check-venv".
    
    The console output is read by a separate thread, by means of the
    Avocado datadrainer utility module.
    
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
    Reviewed-by: default avatarWainer dos Santos Moschetta <wainersm@redhat.com>
    Reviewed-by: default avatarWillian Rampazzo <willianr@redhat.com>
    Tested-by: default avatarWillian Rampazzo <willianr@redhat.com>
    Message-Id: <20200317141654.29355-3-crosa@redhat.com>
    Signed-off-by: default avatarCleber Rosa <crosa@redhat.com>
Loading