globaleaks / globaleaks-whistleblowing-software

GlobaLeaks is a free and open-source whistleblowing software enabling anyone to easily set up and maintain a secure reporting platform.
https://www.globaleaks.org
Other
1.25k stars 274 forks source link

Automate infrastructure-testing of installation of GlobaLeaks on multiple Linux Distribution #2104

Open fpietrosanti opened 7 years ago

fpietrosanti commented 7 years ago

Current behavior Currently GlobaLeaks is officially supported on Ubuntu 16.04 but we see multiple and many installation attempts on different distributions (being other Ubuntu version, Debian, Devuan, Linux Mint, etc).

A lot of those "could work" with the actual packages but does not work because of minor bugs, being of the installer, scripts, init scripts or dependency versions.

Expected behavior This ticket is to integrate in the automated testing of the GlobaLeaks software also the infrastructure testing of the entire installation process for multiple deb-based linux distribution, relying on existing or other cloud based infrastructures.

The expected results is to have GlobaLeaks to install and run successfully to the maximum numbers of deb based platform, knowing which specific problem exist on each new deb platform due to the automated testing of installation process.

While supporting officially only the LTS, we need an automated process to display which distribution installation process is working and which is not.

fpietrosanti commented 7 years ago

A possibility approach is to use the existing Travis-CI, using Ansible, establishing multiple Docker images where to effectively init the entire operating systems as documented on: https://www.jeffgeerling.com/blog/2016/how-i-test-ansible-configuration-on-7-different-oses-docker

This would also provide an on-commit testing of the actually released packages, being able to promptly detect for broken output.

fpietrosanti commented 7 years ago

Other solutions to be evaluated, such as OpenQA (https://github.com/os-autoinst/openQA/blob/master/docs/GettingStarted.asciidoc#architecture) but that would require moving to use OpenSuse Build platform. While that's super cool, it really need a certain learning curve and effort to make it part of the project, and didn't find a simple-quick how to trying setting up everything.

fpietrosanti commented 7 years ago

Volunteers needed!

evilaliv3 commented 7 years ago

@fpietrosanti: it is also important to say that currently the software is tested on travis only on Ubuntu 14.04 and that there is not any current plan to move the tests forward to 16.04.

fpietrosanti commented 7 years ago

@evilaliv3 As we would start infrastructure integration testing of entire installation process on Travis using Docket with multiple Linux Distro docker Images (as per https://www.jeffgeerling.com/blog/2016/how-i-test-ansible-configuration-on-7-different-oses-docker), it would then become also easy to run unit-test on those (btw before or later travis will move to ubuntu 16.04 as base platform, probably better to keep application specific unit testing there?)