Skip to content

Commit 24ad5e9

Browse files
committed
factor out test dependencies to reusable role
1 parent 4056f54 commit 24ad5e9

3 files changed

Lines changed: 69 additions & 68 deletions

File tree

ansible/ci.yml

Lines changed: 2 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -56,75 +56,9 @@
5656
ip6tables-save > /etc/iptables/rules.v6
5757
5858
- hosts: buildkite_agents
59-
tasks:
60-
- name: test dependencies (1/2)
61-
apt: { name: "{{ item }}", install_recommends: no, update_cache: yes, cache_valid_time: 3600 }
62-
with_items:
63-
- build-essential
64-
- cmake
65-
- curl
66-
- gdb
67-
- git
68-
- jq
69-
- libblas-dev
70-
- libbz2-dev
71-
- libcairo-dev
72-
- libclang-4.0-dev # dstep
73-
- libcurl4-gnutls-dev
74-
- libevent-dev
75-
- libgcrypt20-dev
76-
- libgpg-error-dev
77-
- libgtk-3-0
78-
- liblapack-dev
79-
- liblzo2-dev
80-
- libopenblas-dev
81-
- libreadline-dev
82-
- libssl-dev
83-
- libxml2-dev
84-
- libxslt1-dev
85-
- libzmq3-dev
86-
- llvm-3.9-dev # ldc
87-
- mongodb-server
88-
- moreutils # sponge et.al.
89-
- ninja-build # ldc
90-
- pkg-config
91-
- python-dev
92-
- python-yaml
93-
- python3-nose
94-
- redis-server
95-
- rsync
96-
- unzip
97-
tags: deps
98-
- name: test dependencies (2/2)
99-
apt: { deb: "{{ item }}", install_recommends: no }
100-
with_items:
101-
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=libebtree6_6.0.s7-rc5-xenial_amd64.deb
102-
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=libebtree6-dev_6.0.s7-rc5-xenial_amd64.deb
103-
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=d1to2fix_0.10.0-alpha1-xenial_amd64.deb
59+
roles:
60+
- role: test_deps
10461
tags: deps
105-
- name: disable mongodb journaling
106-
lineinfile: { dest: /etc/mongodb.conf, regexp: "^{{ item.key }} *=", line: "{{ item.key }} = {{ item.value }}" }
107-
with_dict:
108-
journal: 'false'
109-
nojournal: 'true'
110-
notify: restart mongodb
111-
- name: use ld.gold
112-
alternatives: { name: ld, link: /usr/bin/ld, path: /usr/bin/ld.gold }
113-
- name: add load_travis_script command
114-
copy:
115-
dest: /usr/local/bin/get_travis_test_script
116-
mode: 0555
117-
content: |
118-
#!/usr/bin/env python
119-
import sys, yaml
120-
121-
script = yaml.load(open('.travis.yml', 'r')).get('script', '')
122-
if isinstance(script, list):
123-
script = '\n'.join(script)
124-
print(script)
125-
handlers:
126-
- name: restart mongodb
127-
service: { name: mongodb, state: restarted }
12862

12963
- hosts: buildkite_agents
13064
vars_files:
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
- name: restart mongodb
3+
service: { name: mongodb, state: restarted }
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
- name: test dependencies (1/2)
3+
apt: { name: "{{ item }}", install_recommends: no, update_cache: yes, cache_valid_time: 3600 }
4+
with_items:
5+
- build-essential
6+
- cmake
7+
- curl
8+
- gdb
9+
- git
10+
- jq
11+
- libblas-dev
12+
- libbz2-dev
13+
- libcairo-dev
14+
- libclang-4.0-dev # dstep
15+
- libcurl4-gnutls-dev
16+
- libevent-dev
17+
- libgcrypt20-dev
18+
- libgpg-error-dev
19+
- libgtk-3-0
20+
- liblapack-dev
21+
- liblzo2-dev
22+
- libopenblas-dev
23+
- libreadline-dev
24+
- libssl-dev
25+
- libxml2-dev
26+
- libxslt1-dev
27+
- libzmq3-dev
28+
- llvm-3.9-dev # ldc
29+
- mongodb-server
30+
- moreutils # sponge et.al.
31+
- ninja-build # ldc
32+
- pkg-config
33+
- python-dev
34+
- python-yaml
35+
- python3-nose
36+
- redis-server
37+
- rsync
38+
- unzip
39+
- name: test dependencies (2/2)
40+
apt: { deb: "{{ item }}", install_recommends: no }
41+
with_items:
42+
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=libebtree6_6.0.s7-rc5-xenial_amd64.deb
43+
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=libebtree6-dev_6.0.s7-rc5-xenial_amd64.deb
44+
- https://bintray.com/sociomantic-tsunami/dlang/download_file?file_path=d1to2fix_0.10.0-alpha1-xenial_amd64.deb
45+
- name: disable mongodb journaling
46+
lineinfile: { dest: /etc/mongodb.conf, regexp: "^{{ item.key }} *=", line: "{{ item.key }} = {{ item.value }}" }
47+
with_dict:
48+
journal: 'false'
49+
nojournal: 'true'
50+
notify: restart mongodb
51+
- name: use ld.gold
52+
alternatives: { name: ld, link: /usr/bin/ld, path: /usr/bin/ld.gold }
53+
- name: add load_travis_script command
54+
copy:
55+
dest: /usr/local/bin/get_travis_test_script
56+
mode: 0555
57+
content: |
58+
#!/usr/bin/env python
59+
import sys, yaml
60+
61+
script = yaml.load(open('.travis.yml', 'r')).get('script', '')
62+
if isinstance(script, list):
63+
script = '\n'.join(script)
64+
print(script)

0 commit comments

Comments
 (0)