(→Connection parameters) |
(→Connection parameters) |
||
| Line 184: | Line 184: | ||
; Use password for SSH authentication | ; Use password for SSH authentication | ||
| - | : Choose using password if there is SSH public-key authentication on target host. But in this case there is no possibility to use Testrunner-lite for testing in host-based mode. | + | : Choose using password if there is no SSH public-key authentication on target host. But in this case there is no possibility to use Testrunner-lite for testing in host-based mode. |
; Password | ; Password | ||
: Specify password for SSH authentication. | : Specify password for SSH authentication. | ||
Contents |
MeeGo Fast Feedback Testing (MeeGo-FFT) intends for getting results of source code changing before it is submitted to be built on OBS or to be tested on target HW (e.g. Handset) on OTS.
MeeGo-FFT represents a specific fast reactions on changes in source code manager (e.g. GIT). Fast in this context refers to 2-10 minutes delay. After source code is committed or/and tagged, such actions can be performed:
Commits and tags are different source code manager (SCM) states for MeeGo-FFT. It allows to execute different sets of actions with various parameters depending on new commit or new tag. For example, it's possible to build for Intel architecture when new commit appears and for ARM when sources are tagged. For more details see further information about execute condition.
MeeGo Fast Feedback Testing is realized as Hudson plugin, therefore Hudson is needed to be installed on developer workstation as well as QEMU, OSC and Testrunner-lite.
Below is placed instructions about Fast Feedback Testing environment setup for Ubuntu 10.04 and user manual for MeeGo-FFT Hudson plugin.
~$ deb http://repo.meego.com/MeeGo/tools/repos/ubuntu/10.04/ /
Install needed keys:
~$ gpg --keyserver subkeys.pgp.net --recv 0BC7BEC479FC1F8A ~$ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
Update repository information:
~$ sudo apt-get update
Run following command:
~$ sudo apt-get install osc meego-osc-plugins build qemu-arm-static
OSC is used for local and remote building by means of MeeGo OBS server using packages from specified OBS repository. So it's needed to create empty package in OBS home project.
After that checkout home project somewhere before using Hudson and choose “trust the server certificate permanently”:
~$ osc co home:<osc_username>
Then edit the ~/.oscrc file:
~$ gedit ~/.oscrc
and do these changes:
su-wrapper = sudo
user = <your_osc_username> pass = <your_osc_password>
trusted_prj=Trunk:Testing
Append the following to the end of the sudoers config file (/etc/sudoers):
<your_username> ALL=NOPASSWD: /usr/bin/build
Remember to edit sudoers with root rights.
~$ wget -O /tmp/key http://hudson-ci.org/debian/hudson-ci.org.key ~$ sudo apt-key add /tmp/key ~$ wget -O /tmp/hudson.deb http://hudson-ci.org/latest/debian/hudson.deb ~$ sudo dpkg --install /tmp/hudson.deb
If hudson didn't installed because not all depended packages are installed you can use next commannd for resolve dependences.
~$ sudo apt-get -f install
Stop the hudson server:
~$ sudo /etc/init.d/hudson stop
Change user for hudson:
~$ gedit /etc/default/hudson change line: HUDSON_USER=<your_user_name>
Give access rights of hudson home directory to user. It can be done in two ways:
~$ sudo chown <your_user_name> /var/lib/hudson/ -R
or
~$ gedit /etc/default/hudson change line: HUDSON_HOME=/home/<your_user_name>/hudson
Start the hudson server:
~$ sudo /etc/init.d/hudson start
Open Hudson in browser:
http://localhost:8080
Add needed plugins to Hudson:
Create new job, choose free-style software project and specify:
Specify local or remote repository with your project.
Choose poll SCM only if you want to make Hudson checking repository periodically (minimal interval is 1 minute) for new commits. Note that Hudson doesn't detect tags itself.
Meego FFT plugin can recognize commits and tags. But it needs to start building manually in Hudson UI. See more details in MeeGo-FFT Hudson plugin manual.
This plugin is made in the form of Hudson build step. It's possible to add several instances of Meego FFT. Description of plugin parameters can be found below.
This condition defines the case when current MeeGo-FFT step is executed. If execute condition isn't matched, this MeeGo-FFT step does nothing. There are three possible conditions:
It's possible to add several MeeGo-FFT steps with different execute conditions and various build, deploy and test parameters.
These parameters intend for setup building on MeeGo OBS server. OBS allows to build for different architectures locally or remotely against various contents.
Setup of deploying and/or running application on device through SSH connection.
Setup of running Testrunner-lite for testing.
These parameters intend for setting up SSH connection to the remote device or local host where application will be deployed and tested.