Skip to content

Commit 4084fe5

Browse files
author
Bryan Kendall
committed
new eru information for deployment
1 parent a036fc0 commit 4084fe5

8 files changed

Lines changed: 169 additions & 24 deletions

File tree

ansible/delta-hosts/variables

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,16 @@ drake_http_rollbar_token=52ad749ddb8e47b2a8e15312b6b300fb
2727
drake_worker_rollbar_token=14152b8572034943b714da27ca607698
2828

2929
[eru:vars]
30+
eru_subdomain=eru
3031
eru_github_id=46a23f5f99f0aa9460f8
3132
eru_github_secret=a0336d72e3d540fb9fbbed2c123a81e1cb329dab
33+
eru_aws_access_key_id=AKIAIFCVEISSC5JMPWDA
34+
eru_aws_secret_access_key=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
35+
eru_aws_environment=delta
36+
eru_mongodb_database=delta
37+
eru_mongodb_password=tilde-rawboned-lotus-hideaway-diastole
38+
eru_mongodb_username=eru
39+
eru_mongodb_replset=delta-rs0
3240

3341
[khronos:vars]
3442
intercom_api_key=14771f14efb617900724a16345e57beb55ba9beb

ansible/epsilon-hosts/variables

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,16 @@ drake_http_rollbar_token=52ad749ddb8e47b2a8e15312b6b300fb
2626
drake_worker_rollbar_token=14152b8572034943b714da27ca607698
2727

2828
[eru:vars]
29-
eru_github_id=8abb08f83f6d1c52bd1a
30-
eru_github_secret=74a23ee56486d57b14f292283cb04625f600917c
29+
eru_subdomain=eru
30+
eru_github_id=1834e6be0811db20d219
31+
eru_github_secret=dda712ce9bdb92cd9187b14c0897319e90dd5462
32+
eru_aws_access_key_id=AKIAIFCVEISSC5JMPWDA
33+
eru_aws_secret_access_key=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
34+
eru_aws_environment=epsilon
35+
eru_mongodb_database=epsilon
36+
eru_mongodb_password=success-nan-europium-rerun-sheep
37+
eru_mongodb_username=eru
38+
eru_mongodb_replset=epsilon-rs0
3139

3240
[khronos:vars]
3341
khronos_mongo_auth=api:3f5210b8-8fe3-11e5-8e62-07b6eff19ecb

ansible/eru.yml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
---
2-
- hosts: redis
32
- hosts: consul
3+
- hosts: mongodb
4+
- hosts: redis
45

56
- hosts: eru
67
vars_files:
7-
- "group_vars/alpha-eru.yml"
8+
- group_vars/alpha-eru.yml
9+
roles:
10+
- { role: notify, tags: [ notify ] }
11+
- { role: builder, tags: [ build ] }
12+
- role: container_start
13+
14+
- hosts: socket-server-proxy
15+
vars_files:
16+
- group_vars/alpha-eru.yml
817
roles:
9-
- { role: notify, tags: "notify" }
10-
- { role: redis_key, tags: ["setup", "redis_key"] }
11-
- { role: builder, tags: "build" }
12-
- { role: container_kill_start }
18+
- role: eru

ansible/gamma-hosts/variables

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,16 @@ drake_http_rollbar_token=52ad749ddb8e47b2a8e15312b6b300fb
2626
drake_worker_rollbar_token=14152b8572034943b714da27ca607698
2727

2828
[eru:vars]
29+
eru_subdomain=eru
2930
eru_github_id=8abb08f83f6d1c52bd1a
3031
eru_github_secret=74a23ee56486d57b14f292283cb04625f600917c
32+
eru_aws_access_key_id=AKIAIFCVEISSC5JMPWDA
33+
eru_aws_secret_access_key=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
34+
eru_aws_environment=gamma
35+
eru_mongodb_database=gamma
36+
eru_mongodb_password=success-nan-europium-rerun-sheep
37+
eru_mongodb_username=eru
38+
eru_mongodb_replset=gamma-rs0
3139

3240
[khronos:vars]
3341
khronos_mongo_auth=api:3f5210b8-8fe3-11e5-8e62-07b6eff19ecb

ansible/group_vars/all.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,6 @@ aws_access_key: "AKIAIB3IJCCJZQWQMVSQ"
9595
aws_secret_key: "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"
9696

9797
# eru
98-
eru_port: 57831
99-
eru_hostname: admin.{{ domain }}
10098

10199
# filibuster
102100
filibuster_port: 3112

ansible/group_vars/alpha-eru.yml

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,40 @@
1+
---
12
name: eru
23

34
container_image: registry.runnable.com/runnable/{{ name }}
45
container_tag: "{{ git_branch }}"
56
repo: git@github.com:CodeNow/{{ name }}.git
6-
hosted_ports: ["{{ eru_port }}"]
7-
node_version: "0.12.0"
8-
npm_version: "2.1.18"
7+
hosted_ports: [ "5501", "5502" ]
8+
node_version: lts
9+
npm_version: 2
10+
has_shrinkwrap: true
911

10-
# for redis
11-
redis_key: frontend:{{ eru_hostname }}
12-
is_redis_update_required: yes
12+
dockerfile_post_install_commands:
13+
- apt-get update && apt-get install -y supervisor
14+
- npm run build
1315

14-
container_envs: >
15-
-e ADMIN_DOMAIN={{ eru_hostname }}
16-
-e ADMIN_GITHUB_ID={{ eru_github_id }}
17-
-e ADMIN_GITHUB_SECRET={{ eru_github_secret }}
18-
-e API_URL={{ api_url }}
19-
-e RUNNABLE_HOST={{ domain }}
20-
-e PORT={{ hosted_ports[0] }}
16+
container_envs: >-
17+
-e AWS_ACCESS_KEY={{ eru_aws_access_key_id }}
18+
-e AWS_ENVIRONMENT={{ eru_aws_environment }}
19+
-e AWS_SECRET_KEY={{ eru_aws_secret_access_key }}
20+
-e DOMAIN={{ eru_subdomain }}.{{ domain }}
21+
-e GITHUB_CLIENT_ID={{ eru_github_id }}
22+
-e GITHUB_CLIENT_SECRET={{ eru_github_secret }}
23+
-e MONGODB_DATABASE={{ eru_mongodb_database }}
24+
-e MONGODB_PASSWORD={{ eru_mongodb_password }}
25+
-e MONGODB_HOSTS={{ mongo_hosts }}
26+
-e MONGODB_REPLSET={{ eru_mongodb_replset }}
27+
-e MONGODB_USERNAME={{ eru_mongodb_username }}
28+
-e NODE_ENV=production
29+
-e REDIS_HOSTNAME={{ redis_host_address }}
30+
-e REDIS_PORT={{ redis_port }}
31+
-e RUNNABLE_DOMAIN={{ domain }}
2132
2233
container_run_opts: >
2334
-h {{ name }}
2435
-d
25-
-p {{ hosted_ports[0] }}:{{ hosted_ports[0] }}
36+
-P
37+
-v /var/log:/var/log:rw
2638
{{ container_envs }}
39+
40+
container_run_args: supervisord --configuration supervisord.conf --nodaemon

ansible/roles/eru/tasks/main.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
- name: get ports from eru
3+
delegate_to: "{{ groups['eru'][0] }}"
4+
tags: [ config, deploy ]
5+
become: true
6+
shell: |
7+
for c in $(docker ps | awk '/eru/{ print $1 }'); do
8+
docker port $c 5501 | cut -d ':' -f 2
9+
docker port $c 5502 | cut -d ':' -f 2
10+
done
11+
args:
12+
executable: /bin/bash
13+
register: ports
14+
15+
- name: register IP as variable
16+
tags: [ config, deploy ]
17+
set_fact:
18+
eru_server_hostname: "{{ hostvars[groups['eru'][0]].ansible_default_ipv4.address }}"
19+
20+
- name: make nginx config directory
21+
tags: [ config, deploy ]
22+
become: yes
23+
file:
24+
state: directory
25+
dest: /etc/nginx
26+
27+
- name: put configuration in place
28+
tags: [ config, deploy ]
29+
become: yes
30+
template:
31+
src: "{{ item }}"
32+
dest: /etc/nginx/sites-available/{{ item }}
33+
with_items:
34+
- 11-eru-server.conf
35+
36+
- name: link configuration
37+
tags: [ config, deploy ]
38+
become: yes
39+
file:
40+
state: link
41+
dest: /etc/nginx/sites-enabled/{{ item }}
42+
src: /etc/nginx/sites-available/{{ item }}
43+
with_items:
44+
- 11-eru-server.conf
45+
46+
- name: reload nginx
47+
tags: [ config, deploy ]
48+
become: yes
49+
shell: docker ps | awk '/nginx/{ print $1 }' | xargs -n 1 docker kill --signal SIGHUP
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
server {
2+
listen 80;
3+
server_name eru.{{ domain }};
4+
5+
return 301 https://$server_name$request_uri;
6+
}
7+
8+
server {
9+
listen 443 ssl;
10+
server_name eru.{{ domain }};
11+
gzip off;
12+
13+
ssl on;
14+
ssl_certificate /etc/ssl/certs/{{ domain }}/{{ domain }}.chained.crt;
15+
ssl_certificate_key /etc/ssl/private/{{ domain }}.key;
16+
ssl_trusted_certificate /etc/ssl/certs/{{ domain }}/ca.pem;
17+
18+
ssl_session_cache shared:SSL:10m;
19+
ssl_session_timeout 10m;
20+
21+
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
22+
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
23+
ssl_prefer_server_ciphers on;
24+
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
25+
26+
add_header Strict-Transport-Security "max-age=15724800; includeSubdomains; preload";
27+
add_header X-Frame-Options "DENY";
28+
29+
ssl_stapling on;
30+
ssl_stapling_verify on;
31+
resolver 8.8.8.8 8.8.4.4 valid=300s;
32+
resolver_timeout 5s;
33+
34+
rewrite ^/app\/.+ /app/;
35+
36+
location / {
37+
expires 300;
38+
proxy_pass http://{{ eru_server_hostname }}:{{ ports.stdout_lines[0] | trim }};
39+
proxy_set_header Host $host;
40+
proxy_set_header x-real-ip $remote_addr;
41+
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
42+
proxy_set_header x-forwarded-protocol 'https';
43+
proxy_set_header x-forwarded-proto 'https';
44+
}
45+
46+
location /graphql {
47+
proxy_pass http://{{ eru_server_hostname }}:{{ ports.stdout_lines[1] | trim }};
48+
proxy_set_header Host $host;
49+
proxy_set_header x-real-ip $remote_addr;
50+
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
51+
proxy_set_header x-forwarded-protocol 'https';
52+
proxy_set_header x-forwarded-proto 'https';
53+
}
54+
}

0 commit comments

Comments
 (0)