diff --git a/defaults/main.yml b/defaults/main.yml index 81950b9..366abef 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,4 +1,20 @@ --- # defaults file for nodejs-nginx-supervisor -app_name: "nodejs_app" +web_root: /srv/www + +nodejs_app_name: "nodejs_app" +nodejs_app_port: 3000 +nodejs_app_script: "src/index.js" + +nodejs_app_root_path: "{{ web_root }}/{{ nodejs_app_name }}" +nodejs_app_nginx_hostname: localhost + +nodejs_app_supervisor_command: "PORT={{ nodejs_app_port }} node {{ nodejs_app_root }}/{{ nodejs_app_script }}" + +nodejs_version_family: "5.x" +# Other valid value is 4.x +nodejs_app_global_install: + - browserify + - babel-cli + - less diff --git a/handlers/main.yml b/handlers/main.yml deleted file mode 100644 index c2868f4..0000000 --- a/handlers/main.yml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# handlers file for nodejs-nginx-supervisor diff --git a/meta/main.yml b/meta/main.yml index 66e5cee..4fdced7 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -22,17 +22,14 @@ galaxy_info: dependencies: # - role: "git+https://bitbucket.org/dorianpula/ansible-nginx-uwsgi-supervisor,,nginx-uwsgi-supervisor" - role: "nginx-supervisor" - nsbase_app_name: "{{ app_name }}" - nsbase_app_root_path: "{{ app_root_path }}" - nsbase_app_nginx_hostname: "{{ app_nginx_hostname }}" + nsbase_app_name: "{{ nodejs_app_name }}" + nsbase_app_root_path: "{{ nodejs_app_root_path }}" + nsbase_app_nginx_hostname: "{{ nodejs_app_nginx_hostname }}" nsbase_app_service_name: "{{ nodejs_app_service_name }}" - nsbase_app_service_command: "{{ nodejs_supervisor_app_command }}" + nsbase_app_service_command: "{{ nodejs_app_supervisor_command }}" nsbase_app_service_stop_signal: QUIT - nsbase_nginx_app_config: "{{ nodejs_nginx_app_config }}" + nsbase_nginx_app_config: "{{ nodejs_app_nginx_config }}" # - role: "git+https://bitbucket.org/dorianpula/ansible-nodejs,,nodejs" - role: "nodejs" - node_version_family: "5.x" - globally_installed_tools: - - browserify - - babel-cli - - less + node_version_family: "{{ nodejs_version_family }}" + globally_installed_tools: nodejs_app_global_install diff --git a/tasks/main.yml b/tasks/main.yml index 0e8fb58..f0bbe08 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,2 +1,12 @@ --- -# tasks file for nodejs-nginx-supervisor +- name: configure nginx app with nodejs specific block. + blockinfile: + dest: /etc/nginx/sites-available/{{ nodejs_app_nginx_config }} + insertafter: "# Include your setup to connect to the webapp setup here." + marker: "# -- {mark} NodeJS App config for {{ nodejs_app_name }} --" + block: | + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header Host $host; + proxy_pass 127.0.0.1:{{ nodejs_app_port }}; + sudo: yes + notify: restart nginx diff --git a/vars/main.yml b/vars/main.yml index 9d563b4..12e72df 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -1,2 +1,4 @@ --- # vars file for nodejs-nginx-supervisor +nodejs_app_nginx_config: "{{ app_name }}_nodejs_nginx.conf" +nodejs_app_service_name: "{{ app_name }}_nodejs"