Automatic tests of Yunohost deployment and features
Shell HTML Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Automatic tests of Yunohost deployment and features


You'll need a server with Ubuntu 16.10.

(This doesn't work with Debian Jessie or Ubuntu 14.04)

# Upgrade your system
apt-get update -y
apt-get upgrade -y

# Install lxc/lxd stuff
apt install -y lxc lxd distro-info python3-pip python3-yaml git

# Clone lxctest somewhere
git clone

For web-stuff

apt install -y python3-pip
pip3 install ansi2html

Configure the web stuff

I work with a symlink like :

ln -s /path/to/bicyclette/www /var/www/bicyclette

Install nginx and add the following configuration (replace with your domain name) :

    listen 80;
    listen [::]:80;

    access_log /var/log/nginx/;
    error_log /var/log/nginx/;

    location / 
        alias /var/www/bicyclette/;
        index index.html;

        try_files $uri $uri/ index.html;

    location /logs 
            alias /var/www/bicyclette/logs/;
            autoindex on;

            text/plain sh err log;

Reload nginx, and try to access your domain (after you ran at least one test)


Check the config at the beginning of is okay, then :

./ test-name

Publishing to the web site is done automatically at the end of If you want to manually re-publish, just run :


Adding / configuring tests

All files related to a given test should be in a dedicated folder. The main file describing the steps of your test should be test.yaml. You can push files to the container, execute commands, pull files (e.g. logs) and use scripts to analyze them and produce reports.

Cron job

0,15,30,45 * * * * root /home/bicyclette/