Skip to content

Commit 880e671

Browse files
committed
Merge branch 'dev'
2 parents b3b7a92 + 4b1ed22 commit 880e671

File tree

8 files changed

+394
-38
lines changed

8 files changed

+394
-38
lines changed

deploy/docker/with_data_in_container/Dockerfile

+1-2
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,6 @@ env MONGODB_DATABASE=
110110
# be overwritten if you chose HTTPS below #
111111
# #
112112
#############################################
113-
env USE_HTTPS=false
114113
env SERVER_PORT=9020
115114

116115

@@ -125,7 +124,7 @@ env SERVER_PORT=9020
125124
# You can override sever port here #
126125
# #
127126
#########################################################################
128-
#env USE_HTTPS=true
127+
env USE_HTTPS=false
129128
#env SERVER_PORT=8443
130129
#env HTTPS_SSL_KEY_STORE=matchbox_keystore
131130
#env HTTPS_SSL_KEY_STORE_PASSWORD=changeit

deploy/docker/with_data_in_container/entrypoint.sh

+38-11
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,21 @@ cd /matchbox_deployment
88

99
if $USE_HTTPS
1010
then
11-
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
11+
if [ "$MONGODB_USERNAME" = "" ];
12+
then
13+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
14+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
15+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
16+
-Dspring.data.mongodb.port=$MONGODB_PORT \
17+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
18+
-Dserver.port=$SERVER_PORT \
19+
-Dserver.ssl.key-store=$HTTPS_SSL_KEY_STORE \
20+
-Dserver.ssl.key-store-password=$HTTPS_SSL_KEY_STORE_PASSWORD \
21+
-Dserver.ssl.key-password=$HTTPS_SSL_KEY_PASSWORD \
22+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
23+
matchbox-0.1.0.jar &
24+
else
25+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
1226
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
1327
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
1428
-Dspring.data.mongodb.port=$MONGODB_PORT \
@@ -21,17 +35,30 @@ then
2135
-Dserver.ssl.key-password=$HTTPS_SSL_KEY_PASSWORD \
2236
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
2337
matchbox-0.1.0.jar &
38+
fi
2439
else
25-
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
26-
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
27-
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
28-
-Dspring.data.mongodb.port=$MONGODB_PORT \
29-
-Dspring.data.mongodb.username=$MONGODB_USERNAME \
30-
-Dspring.data.mongodb.password=$MONGODB_PASSWORD \
31-
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
32-
-Dserver.port=$SERVER_PORT \
33-
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
34-
matchbox-0.1.0.jar &
40+
if [ "$MONGODB_USERNAME" = "" ];
41+
then
42+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
43+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
44+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
45+
-Dspring.data.mongodb.port=$MONGODB_PORT \
46+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
47+
-Dserver.port=$SERVER_PORT \
48+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
49+
matchbox-0.1.0.jar &
50+
else
51+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
52+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
53+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
54+
-Dspring.data.mongodb.port=$MONGODB_PORT \
55+
-Dspring.data.mongodb.username=$MONGODB_USERNAME \
56+
-Dspring.data.mongodb.password=$MONGODB_PASSWORD \
57+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
58+
-Dserver.port=$SERVER_PORT \
59+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
60+
matchbox-0.1.0.jar &
61+
fi
3562
fi
3663

3764

deploy/docker/with_data_mounted_to_container/Dockerfile

+1-2
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ env MONGODB_DATABASE=
8181
# be overwritten if you chose HTTPS below #
8282
# #
8383
#############################################
84-
env USE_HTTPS=false
8584
env SERVER_PORT=9020
8685

8786

@@ -96,7 +95,7 @@ env SERVER_PORT=9020
9695
# You can override sever port here #
9796
# #
9897
#########################################################################
99-
#env USE_HTTPS=true
98+
env USE_HTTPS=false
10099
#env SERVER_PORT=8443
101100
#env HTTPS_SSL_KEY_STORE=matchbox_keystore
102101
#env HTTPS_SSL_KEY_STORE_PASSWORD=changeit

deploy/docker/with_data_mounted_to_container/entrypoint.sh

+41-14
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,47 @@ cd /matchbox_deployment
88

99
if $USE_HTTPS
1010
then
11-
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
12-
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
13-
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
14-
-Dspring.data.mongodb.port=$MONGODB_PORT \
15-
-Dspring.data.mongodb.username=$MONGODB_USERNAME \
16-
-Dspring.data.mongodb.password=$MONGODB_PASSWORD \
17-
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
18-
-Dserver.port=$SERVER_PORT \
19-
-Dserver.ssl.key-store=$HTTPS_SSL_KEY_STORE \
20-
-Dserver.ssl.key-store-password=$HTTPS_SSL_KEY_STORE_PASSWORD \
21-
-Dserver.ssl.key-password=$HTTPS_SSL_KEY_PASSWORD \
22-
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
23-
matchbox-0.1.0.jar &
11+
if [ "$MONGODB_USERNAME" = "" ];
12+
then
13+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
14+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
15+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
16+
-Dspring.data.mongodb.port=$MONGODB_PORT \
17+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
18+
-Dserver.port=$SERVER_PORT \
19+
-Dserver.ssl.key-store=$HTTPS_SSL_KEY_STORE \
20+
-Dserver.ssl.key-store-password=$HTTPS_SSL_KEY_STORE_PASSWORD \
21+
-Dserver.ssl.key-password=$HTTPS_SSL_KEY_PASSWORD \
22+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
23+
matchbox-0.1.0.jar &
24+
else
25+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
26+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
27+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
28+
-Dspring.data.mongodb.port=$MONGODB_PORT \
29+
-Dspring.data.mongodb.username=$MONGODB_USERNAME \
30+
-Dspring.data.mongodb.password=$MONGODB_PASSWORD \
31+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
32+
-Dserver.port=$SERVER_PORT \
33+
-Dserver.ssl.key-store=$HTTPS_SSL_KEY_STORE \
34+
-Dserver.ssl.key-store-password=$HTTPS_SSL_KEY_STORE_PASSWORD \
35+
-Dserver.ssl.key-password=$HTTPS_SSL_KEY_PASSWORD \
36+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
37+
matchbox-0.1.0.jar &
38+
fi
2439
else
25-
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
40+
if [ "$MONGODB_USERNAME" = "" ];
41+
then
42+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
43+
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
44+
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
45+
-Dspring.data.mongodb.port=$MONGODB_PORT \
46+
-Dspring.data.mongodb.database=$MONGODB_DATABASE \
47+
-Dserver.port=$SERVER_PORT \
48+
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
49+
matchbox-0.1.0.jar &
50+
else
51+
java -jar -Dallow.no-gene-in-common.matches=$ALLOW_NO_GENE_IN_COMMON_MATCHES \
2652
-Dexomiser.data-directory=$EXOMISER_DATA_DIR \
2753
-Dspring.data.mongodb.host=$MONGODB_HOSTNAME \
2854
-Dspring.data.mongodb.port=$MONGODB_PORT \
@@ -32,6 +58,7 @@ else
3258
-Dserver.port=$SERVER_PORT \
3359
-Dexomiser.phenotype.data-version=$EXOMISER_PHENOTYPE_DATA_VERSION \
3460
matchbox-0.1.0.jar &
61+
fi
3562
fi
3663

3764

regression-tests/README.md

+97-1
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,100 @@ Before using, please update the line,
77

88
ACCESS_TOKEN="abcd"
99

10-
with the appropriate token in regression_test.py
10+
with the appropriate token in regression_test.py
11+
12+
13+
14+
#Network Testing
15+
16+
##Objective
17+
18+
To start two instance of <i>matchbox</i> and prototype a Matchmaker Exchange (MME) network instance on your machine, so the two instances could mimic a real-time conversation between two instances across the network.
19+
20+
## To do this test, you will need:
21+
22+
1. Docker (https://www.docker.com/)
23+
24+
## The recipe
25+
26+
1. You will need two instances of MongoDB listening on two different ports to accurately mimic two MME nodes running in two distinct locations around the world. Since this is a test and proof of concept, we will use unauthenticated instances. When using a single instance in production, we strongly encourage password protected MongoDB instances.
27+
28+
i. Create two distinct data directories for the mongod instances
29+
```
30+
mkdir data18
31+
mkdir data19
32+
```
33+
34+
ii. Start two mongod instance containers listening on two different ports
35+
36+
```
37+
docker run --name mongo18 -d -p 27018:27017 -v data18:/data/db mongo
38+
docker run --name mongo19 -d -p 27019:27017 -v data19:/data/db mongo
39+
```
40+
41+
```
42+
Note: these can be brought down by first,
43+
docker container kill mongo18
44+
docker container rm mongo18
45+
docker container kill mongo19
46+
docker container rm mongo19
47+
48+
Verify that they are gone,
49+
docker container ls
50+
```
51+
52+
iii. Make two directories for the two distinct matchbox instances we will start up
53+
54+
```
55+
mkdir matchbox18
56+
mkdir matchbox19
57+
```
58+
59+
iv. Clone a <i>matchbox</i> Master branch into each
60+
61+
```
62+
git clone https://github.com/macarthur-lab/matchbox matchbox19
63+
git clone https://github.com/macarthur-lab/matchbox matchbox19
64+
```
65+
66+
67+
v. Update the following in each Dockerfile as below
68+
69+
```
70+
env MONGODB_HOSTNAME=localhost
71+
env MONGODB_PORT=27018
72+
env MONGODB_USERNAME=
73+
env MONGODB_PASSWORD=
74+
env MONGODB_DATABASE=
75+
```
76+
77+
```
78+
env MONGODB_HOSTNAME=localhost
79+
env MONGODB_PORT=27019
80+
env MONGODB_USERNAME=
81+
env MONGODB_PASSWORD=
82+
env MONGODB_DATABASE=
83+
```
84+
85+
Uncomment following to serve as HTTPS,
86+
87+
```
88+
env USE_HTTPS=true
89+
env SERVER_PORT=8443
90+
env HTTPS_SSL_KEY_STORE=matchbox_keystore
91+
env HTTPS_SSL_KEY_STORE_PASSWORD=changeit
92+
env HTTPS_SSL_KEY_PASSWORD=temp_ks_pwd__change_me!
93+
94+
RUN keytool -genkey -noprompt \
95+
-alias matchbox \
96+
-dname "CN=, OU=, O=, L=, S=, C=" \
97+
-keystore $HTTPS_SSL_KEY_STORE \
98+
-storepass $HTTPS_SSL_KEY_STORE_PASSWORD \
99+
-keypass $HTTPS_SSL_KEY_PASSWORD
100+
```
101+
102+
Build image
103+
104+
```
105+
docker build -t matchbox-docimg18 .
106+
```

0 commit comments

Comments
 (0)