chusiang.testlink
Rôle Ansible : TestLink
Un rôle Ansible pour déployer TestLink avec Nginx, PHP 7 (php-fpm) et MySQL 5.6+ sur Ubuntu et Debian.
Ubuntu 16.04 | Ubuntu 14.04 (EOL) | Debian 8 | |
---|---|---|---|
TestLink | 1.9.17 | 1.9.15 [^1] | 1.9.17 |
Nginx | 1.14.0 | 1.12.2 | 1.14.0 |
PHP | 7.0.29 | 7.0.29 | 7.0.29 |
MySQL | 5.7.21 | 5.6.33 | 5.6.39 [^2] |
Exigences
Si nous voulons utiliser ce rôle TestLink sur Debian 8, nous devons inclure tasks/pre_tasks.yml
dans pre_tasks
pour utiliser mysql-server-5.6.
pre_tasks:
- name: ajouter manuellement le dépôt mysql
include: tasks/pre_tasks.yml
roles:
- williamyeh.nginx
- chusiang.php7
- geerlingguy.mysql
Variables du rôle
Si vous avez un serveur de base de données autonome, vous pouvez définir setup_local_database
sur false
, il n'exécutera pas les tâches d'installation du serveur de base de données.
setup_local_database: true
# TestLink
testlink_tarball_version: '1.9.17'
testlink_tarball_url: 'https://downloads.sourceforge.net/project/testlink/TestLink%201.9/TestLink%201.9.17/testlink-1.9.17.tar.gz'
testlink_tarball_md5: '7183c30133fecc18c8074142016b6a44'
testlink_var_path: '/var/testlink'
testlink_db_name: 'testlinkdb'
testlink_db_user: 'testlinkdb'
testlink_db_password: 'cUv4UK6ardC6cMGL'
testlink_db_host: 'localhost'
# Nginx
nginx_user: 'www-data'
nginx_testlink_path: '/usr/share/nginx/testlink'
nginx_server_name: 'testlink.example.tw'
nginx_enable_ssl: false
# PHP-FPM
php_owner: '{{ nginx_user }}'
php_group: '{{ nginx_user }}'
php_max_execution_time: '3000'
php_session_gc_maxlifetime: '60000'
# MySQL 5.6.x
#
# - TestLink 1.9.15 a besoin de mysql-server 5.6.x
# - https://github.com/TestLinkOpenSourceTRMS/testlink-code
mysql_root_password: ''
mysql_root_password_update: 'no'
mysql_packages:
- 'mysql-server'
- 'mysql-client'
- 'python-mysqldb'
Dépendances
Une liste d'autres rôles hébergés sur Galaxy devrait être ici, ainsi que tous les détails concernant les paramètres qui pourraient devoir être définis pour d'autres rôles, ou des variables qui sont utilisées par d'autres rôles.
Au fait, si vous avez besoin de changer le miroir apt, vous pouvez utiliser le rôle chusiang.switch-apt-mirror.
Exemple de Playbook
Inclure un exemple sur la façon d'utiliser votre rôle (par exemple, avec des variables passées en tant que paramètres) est toujours appréciable pour les utilisateurs aussi :
- hosts: serveurs
roles:
- { role: chusiang.testlink }
Conteneur Docker
Ce dépôt contient une version Dockerisée d'Ansible, publiée sur le public Docker Hub via le mécanisme de construction automatisée.
Docker Hub: chusiang/testlink
Images
ubuntu-16.04
(dernière version)ubuntu-14.04
(EOL)debian-8
Utilisation
Exécuter le conteneur.
$ docker run --name=testlink -p 8080:80 -d chusiang/testlink 3bf486c1515b9c28499bbd48f1fe3d3164434108636a49585b1a7b4e3965293e
Vérifier le statut du conteneur.
$ docker ps ID CONTENEUR IMAGE COMMANDE CRÉÉ STATUT PORTS NOMS 3bf486c1515b chusiang/testlink "/run.sh" il y a 20 minutes En cours depuis 20 minutes 443/tcp, 0.0.0.0:8080->80/tcp testlink
Accéder à TestLink sur le web (http://localhost:8080).
Connectez-vous avec le compte administrateur par défaut, le nom et le mot de passe sont admin / admin.
Licence
Droit d'auteur (c) chusiang de 2016 à 2018 sous la licence MIT.
[^1]: TestLink 1.9.15 est basé sur PHP > 5.4 et MySQL 5.6.x, soyez prudent. (plus)
[^2]: Il n'y a que MySQL 5.5.x par défaut sur Debian 8, donc j'utilise le dépôt de développement officiel de mysql pour obtenir MySQL 5.6.x. (plus)
Deploy TestLink with Nginx, PHP 7 (php-fpm) and MySQL 5.6+ on Ubuntu and Debian.
ansible-galaxy install chusiang.testlink