Skip to content
This repository was archived by the owner on Jan 17, 2021. It is now read-only.

Commit 4e9991a

Browse files
committed
1 parent 91eb2d4 commit 4e9991a

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed

.travis.yml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
sudo: required
3+
4+
env:
5+
- distro: ubuntu1604
6+
init: /lib/systemd/systemd
7+
run_opts: "--privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:ro"
8+
- distro: ubuntu1404
9+
init: /sbin/init
10+
run_opts: ""
11+
- distro: centos7
12+
init: /usr/lib/systemd/systemd
13+
run_opts: "--privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:ro"
14+
- distro: centos6
15+
init: /sbin/init
16+
run_opts: ""
17+
18+
services:
19+
- docker
20+
21+
before_install:
22+
# Pull container.
23+
- 'sudo docker pull geerlingguy/docker-${distro}-ansible:latest'
24+
25+
script:
26+
- container_id=$(mktemp)
27+
# Run container in detached state.
28+
- 'sudo docker run --detach --volume="${PWD}":/etc/ansible/roles/seafile:ro ${run_opts} geerlingguy/docker-${distro}-ansible:latest "${init}" > "${container_id}"'
29+
30+
# Ansible show version
31+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm ansible --version'
32+
33+
# Ansible syntax check.
34+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm ansible-playbook /etc/ansible/roles/seafile/tests/test.yml --syntax-check'
35+
36+
# Test role.
37+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm ansible-playbook /etc/ansible/roles/seafile/tests/test.yml'
38+
39+
# Test role idempotence.
40+
- idempotence=$(mktemp)
41+
- sudo docker exec "$(cat ${container_id})" ansible-playbook /etc/ansible/roles/seafile/tests/test.yml | tee -a ${idempotence}
42+
- >
43+
tail ${idempotence}
44+
| grep -q 'changed=0.*failed=0'
45+
&& (echo 'Idempotence test: pass' && exit 0)
46+
|| (echo 'Idempotence test: fail' && exit 1)
47+
48+
# Ensure Seafile is installed.
49+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm pgrep -f manage.py'
50+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm pgrep -f seafile-controller'
51+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm pgrep -f ccnet-server'
52+
- 'sudo docker exec --tty "$(cat ${container_id})" env TERM=xterm pgrep -f seaf-server'
53+
54+
after_success:
55+
# Clean up.
56+
- 'sudo docker stop "$(cat ${container_id})"'
57+
58+
notifications:
59+
email: false
60+
webhooks: https://galaxy.ansible.com/api/v1/notifications/
61+

tests/test.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
- hosts: all
3+
4+
roles:
5+
- role: seafile
6+

0 commit comments

Comments
 (0)