AutoQA Development

From FedoraProject

Jump to: navigation, search

This page will help you set up an environment for AutoQA development. This guide documents approaches that we have found convenient, but of course you can do anything differently, as you like.

Contents

Introduction

When developing tests for AutoQA (or AutoQA itself), there are a few things to consider:

This guide will therefore help you dive into AutoQA development while using three machines:

Local machine
the bare metal machine you have in front of you, used for coding (i.e. you have all your favorite IDEs and environment variables)
AutoQA server
(virtual) machine that will serve as a server or a standalone test execution machine (if something gets broken your local machine is not influenced)
AutoQA client
(virtual) machine that will serve as a client for your server (useful for testing the scheduler, etc)

Checkout the code

On your local machine, checkout the source code:

$ git clone git://git.fedorahosted.org/autoqa.git 

You will do all the coding here, with your favorite tools.

Share the code

In order to have your latest code available also on the AutoQA server and the AutoQA client, you will export your development directory over NFS and mount it on those machines.

# yum install nfs-utils
# chkconfig nfs on
/home/joe/autoqa    *(rw,all_squash,anonuid=500,anongid=500)

Replace the path with the correct one, replace UID and GID numbers with your UID and GID numbers, and optionally replace the star with a network subset definition for better security (e.g. 192.168.1.0/24 if your server and client are on that network subset).

# service nfs restart
Important.png
Watch for SELinux and firewall configuration
Fedora has SELinux and firewall enabled by default. While setting up network services on your machines you must also configure SELinux and firewall accordingly, or disable them completely. SELinux can be disabled in /etc/selinux/config and firewall by setting chkconfig iptables off.

Install AutoQA server

# yum install nfs-utils
# mkdir /autoqa
# echo "192.168.1.1:/home/joe/autoqa  /autoqa  nfs  defaults,soft,intr  0 0" >> /etc/fstab
# mount -a
# cd /autoqa
# make install-requires
# make clean install
# service autotestd restart

Install AutoQA client

The workflow

# cd /autoqa
# make clean install && service autotestd restart