Skip to content

Commit bc0b55c

Browse files
committed
2 parents 5681a7f + 3e11a65 commit bc0b55c

File tree

147 files changed

+4309
-15130
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

147 files changed

+4309
-15130
lines changed

.gitignore

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,20 @@ terraform_load_balancer/load_balancer_rsa
1414
terraform_load_balancer/load_balancer_rsa.pub
1515
terraform_load_balancer/.terraform
1616

17+
ukcloud/providers.tf
18+
ukcloud/terraform.tfstate.backup
19+
ukcloud/terraform.tfstate.d/test/*.backup
20+
ukcloud/sequence_search_rsa
21+
ukcloud/sequence_search_rsa.pub
22+
ukcloud/.terraform
23+
ukcloud/current_state
24+
25+
ukcloud/load_balancer/providers.tf
26+
ukcloud/load_balancer/terraform.tfstate.backup
27+
ukcloud/load_balancer/load_balancer_rsa
28+
ukcloud/load_balancer/load_balancer_rsa.pub
29+
ukcloud/load_balancer/.terraform
30+
1731
__pycache__/
1832
.idea/
1933
*.pyc
@@ -28,5 +42,9 @@ sequence_search/consumer/hmmer-3.2.1/
2842
sequence_search/consumer/results
2943
sequence_search/consumer/queries
3044
sequence_search/consumer/databases
45+
sequence_search/consumer/infernal-*
46+
sequence_search/consumer/rfam
47+
sequence_search/consumer/tests/output
48+
sequence_search/consumer/cmsearch_tblout_deoverlap
3149
sequence_search/monitor/.conf-file
3250
sequence_search/monitor/test*

ansible/download-sequences.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
tasks:
88
- name: Download compressed archive from RNAcentral FTP
99
get_url:
10-
url: ftp://ftp.ebi.ac.uk/pub/databases/RNAcentral/current_release/sequences/.internal/sequence-database.fa.tar.gz
10+
url: ftp://ftp.ebi.ac.uk/pub/databases/RNAcentral/current_release/sequences/.internal/sequences-database.fa.tar.gz
1111
dest: /nfs/sequence-database.fa.tar.gz
1212

1313
- name: Uncompress the archive

ansible/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
- name: Drop the database and re-create it
1818
shell:
1919
chdir: /srv
20-
cmd: ENVIRONMENT=PRODUCTION python3 -m sequence_search.db
20+
cmd: ENVIRONMENT=PRODUCTION /usr/local/bin/python3.7 -m sequence_search.db
2121

2222

2323
- import_playbook: consumers.yml

ansible/postgres_restore.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,7 @@
99
tasks:
1010
- copy: src=producer_latest.dump dest=/tmp/producer_latest.dump mode=0777
1111
- shell: pg_restore -U docker -c -n public -n pg_catalog -d producer /tmp/producer_latest.dump
12+
- shell: psql -U docker producer -c 'update job_chunks set consumer = NULL;'
13+
- shell: psql -U docker producer -c 'update infernal_job set consumer = NULL;'
1214

1315
- import_playbook: consumers.yml

ansible/roles/consumer/tasks/main.yml

Lines changed: 103 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,30 +14,39 @@
1414
- name: Install yum dependencies
1515
yum:
1616
name:
17+
- bzip2-devel
1718
- curl
1819
- gcc
20+
- gcc-c++
1921
- git
2022
- libaio
23+
- libffi-devel
24+
- make
2125
- openssl
2226
- openssl-devel
27+
- postgresql.x86_64
2328
- tar
2429
- unzip
2530
- wget
2631
- zlib-devel
27-
- gcc-c++
28-
- make
29-
- python36
30-
- python36-devel
31-
- python36-setuptools
32-
- postgresql.x86_64
3332
tags: [ install-deps ]
3433

35-
- name: Install pip3
36-
shell: easy_install-3.6 pip
37-
args:
38-
creates: /usr/local/bin/pip
34+
- name: Install build tools
35+
yum:
36+
name: "@Development tools"
37+
state: present
3938
tags: [ install-deps ]
4039

40+
- name: Install Python 3.7
41+
shell: |
42+
curl -OL https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz
43+
tar -xzf Python-3.7.7.tgz
44+
cd Python-3.7.7
45+
./configure --enable-optimizations
46+
make altinstall
47+
args:
48+
creates: /usr/local/bin/python3.7
49+
tags: [ install-deps ]
4150

4251

4352
- name: Install nhmmer
@@ -52,6 +61,53 @@
5261
args:
5362
creates: /usr/local/bin/nhmmer
5463

64+
- name: Install Infernal
65+
shell: |
66+
curl -OL http://eddylab.org/infernal/infernal-1.1.3.tar.gz
67+
tar xf infernal-1.1.3.tar.gz
68+
cd infernal-1.1.3
69+
./configure --prefix /usr/local
70+
make
71+
make install
72+
73+
- name: Delete rfam directory
74+
file:
75+
path: /srv/sequence_search/consumer/rfam
76+
state: absent
77+
ignore_errors: yes
78+
tags: [ rfam ]
79+
80+
- name: Create rfam directory
81+
file:
82+
path: /srv/sequence_search/consumer/rfam
83+
state: directory
84+
owner: centos
85+
group: centos
86+
mode: 0755
87+
tags: [ rfam ]
88+
89+
- name: Install Rfam
90+
shell:
91+
chdir: /srv/sequence_search/consumer/rfam
92+
cmd: curl -OL ftp://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/Rfam.cm.gz && gunzip Rfam.cm.gz
93+
tags: [ rfam ]
94+
95+
- name: Create the cm binaries
96+
shell: /usr/local/bin/cmpress /srv/sequence_search/consumer/rfam/Rfam.cm
97+
tags: [ rfam ]
98+
99+
- name: Delete cmsearch_tblout_deoverlap directory
100+
file:
101+
path: /srv/sequence_search/consumer/cmsearch_tblout_deoverlap
102+
state: absent
103+
ignore_errors: yes
104+
tags: [ deoverlap ]
105+
106+
- name: Install cmsearch_tblout_deoverlap
107+
shell:
108+
chdir: /srv/sequence_search/consumer
109+
cmd: git clone https://github.com/nawrockie/cmsearch_tblout_deoverlap.git
110+
tags: [ deoverlap ]
55111

56112

57113
- name: Rsync aiohttp code
@@ -62,11 +118,14 @@
62118
- "--exclude=/sequence_search/consumer/databases"
63119
- "--exclude=/sequence_search/consumer/queries/*.fasta"
64120
- "--exclude=/sequence_search/consumer/results/*.fasta"
121+
- "--exclude=/sequence_search/consumer/infernal-queries"
122+
- "--exclude=/sequence_search/consumer/infernal-results"
123+
- "--exclude=/sequence_search/consumer/cmsearch_tblout_deoverlap"
124+
- "--exclude=/sequence_search/consumer/rfam"
65125
- "--exclude=/sequence_search/producer/static/node_modules"
66126
tags: [ rsync, quick ]
67127

68128

69-
70129
- name: Delete logs directory
71130
file:
72131
path: /var/log/gunicorn
@@ -84,7 +143,6 @@
84143
tags: [ logs ]
85144

86145

87-
88146
- name: Delete queries directory
89147
file:
90148
path: /srv/sequence_search/consumer/queries
@@ -101,7 +159,6 @@
101159
tags: [ queries, quick ]
102160

103161

104-
105162
- name: Delete results directory
106163
file:
107164
path: /srv/sequence_search/consumer/results
@@ -118,16 +175,37 @@
118175
tags: [ results, quick ]
119176

120177

121-
# Ansible chown is slow, cause it checks ownership before assigning it - so just run chown imperatively
122-
# https://groups.google.com/forum/#!topic/ansible-project/2O5u8GIZ5Rw
178+
- name: Delete infernal queries directory
179+
file:
180+
path: /srv/sequence_search/consumer/infernal-queries
181+
state: absent
182+
tags: [ infernal-queries, quick ]
183+
184+
- name: Create infernal queries directory
185+
file:
186+
path: /srv/sequence_search/consumer/infernal-queries
187+
state: directory
188+
owner: centos
189+
group: centos
190+
mode: 0755
191+
tags: [ infernal-queries, quick ]
192+
193+
194+
- name: Delete infernal results directory
195+
file:
196+
path: /srv/sequence_search/consumer/infernal-results
197+
state: absent
198+
tags: [ infernal-results, quick ]
199+
200+
- name: Create infernal results directory
201+
file:
202+
path: /srv/sequence_search/consumer/infernal-results
203+
state: directory
204+
owner: centos
205+
group: centos
206+
mode: 0755
207+
tags: [ infernal-results, quick ]
123208

124-
# Alternatively:
125-
# file:
126-
# path: /srv/sequence_search
127-
# owner: centos
128-
# group: centos
129-
# mode: 0755
130-
# recurse: yes
131209

132210
- name: Chown aiohttp code
133211
command: "chown -R centos:centos /srv/sequence_search"
@@ -140,9 +218,10 @@
140218

141219

142220
- name: Install pip3 requirements
143-
shell: /usr/local/bin/pip install -r requirements.txt
221+
shell: /usr/local/bin/pip3.7 install -r requirements.txt
144222
args:
145223
chdir: /srv/sequence_search
224+
tags: [ pip-requirements ]
146225

147226

148227
- name: Create a symbolic link to sequence databases
@@ -189,5 +268,5 @@
189268
shell:
190269
chdir: /srv
191270
# cmd: /usr/local/bin/gunicorn consumer.main:app --daemon --bind 0.0.0.0:8000 --worker-class aiohttp.worker.GunicornWebWorker --access-logfile /var/log/gunicorn/access_log --error-logfile /var/log/gunicorn/error_log --env ENVIRONMENT=PRODUCTION --log-level=DEBUG
192-
cmd: ENVIRONMENT=PRODUCTION nohup python3 -m sequence_search.consumer &> /var/log/gunicorn/access_log &
271+
cmd: ENVIRONMENT=PRODUCTION nohup /usr/local/bin/python3.7 -m sequence_search.consumer &> /var/log/gunicorn/access_log &
193272
tags: [ restart, quick ]

0 commit comments

Comments
 (0)