Merge pull request #66 from xclusv/feature-customize-service-name-and-status
Source install: Customize service name and status
This commit is contained in:
commit
89a30e31de
@ -24,6 +24,9 @@
|
|||||||
{% set without_items = nginx.get('without', []) -%}
|
{% set without_items = nginx.get('without', []) -%}
|
||||||
{% set make_flags = nginx.get('make_flags', nginx_map['make_flags']) -%}
|
{% set make_flags = nginx.get('make_flags', nginx_map['make_flags']) -%}
|
||||||
|
|
||||||
|
{% set service_name = nginx.get('service_name', 'nginx') %}
|
||||||
|
{% set service_enable = nginx.get('service_enable', True) %}
|
||||||
|
|
||||||
{% set nginx_package = source + '/nginx-' + version + '.tar.gz' -%}
|
{% set nginx_package = source + '/nginx-' + version + '.tar.gz' -%}
|
||||||
{% set nginx_source = source + "/nginx-" + version -%}
|
{% set nginx_source = source + "/nginx-" + version -%}
|
||||||
{% set nginx_modules_dir = source + "/nginx-modules" -%}
|
{% set nginx_modules_dir = source + "/nginx-modules" -%}
|
||||||
@ -78,7 +81,7 @@ get-nginx:
|
|||||||
- file: {{ nginx_modules_dir }}
|
- file: {{ nginx_modules_dir }}
|
||||||
cmd.wait:
|
cmd.wait:
|
||||||
- cwd: {{ source }}
|
- cwd: {{ source }}
|
||||||
- name: tar -zxf {{ nginx_package }}
|
- name: tar --transform "s,^$(tar --list -zf nginx-{{ version }}.tar.gz | head -n 1),nginx-{{ version }}/," -zxf {{ nginx_package }}
|
||||||
- require:
|
- require:
|
||||||
- pkg: get-nginx
|
- pkg: get-nginx
|
||||||
- file: get-nginx
|
- file: get-nginx
|
||||||
@ -114,12 +117,17 @@ get-ngx_devel_kit:
|
|||||||
- file: get-ngx_devel_kit
|
- file: get-ngx_devel_kit
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
nginx-source-modified:
|
is-nginx-source-modified:
|
||||||
cmd.run:
|
cmd.run:
|
||||||
- cwd: {{ nginx_source }}
|
- cwd: {{ source }}
|
||||||
- stateful: True
|
- stateful: True
|
||||||
- names:
|
- names:
|
||||||
- m=$(find . \! -name "build.*" -newer {{ sbin_dir }}/nginx -print -quit);
|
- if [ ! -d "nginx-{{ version }}" ]; then
|
||||||
|
echo "changed=yes comment='Tarball has not yet been extracted'";
|
||||||
|
exit 0;
|
||||||
|
fi;
|
||||||
|
cd "nginx-{{ version }}";
|
||||||
|
m=$(find . \! -name "build.*" -newer {{ sbin_dir }}/nginx -print -quit);
|
||||||
r=$?;
|
r=$?;
|
||||||
if [ x$r != x0 ]; then
|
if [ x$r != x0 ]; then
|
||||||
echo "changed=yes comment='binary file does not exist or other find error'";
|
echo "changed=yes comment='binary file does not exist or other find error'";
|
||||||
@ -132,7 +140,7 @@ nginx-source-modified:
|
|||||||
echo "changed=no comment='source files are older than binary'"
|
echo "changed=no comment='source files are older than binary'"
|
||||||
|
|
||||||
{% for name, module in nginx.get('modules', {}).items() -%}
|
{% for name, module in nginx.get('modules', {}).items() -%}
|
||||||
nginx-module-modified-{{name}}:
|
is-nginx-module-modified-{{name}}:
|
||||||
cmd.run:
|
cmd.run:
|
||||||
- cwd: {{ nginx_modules_dir }}/{{name}}
|
- cwd: {{ nginx_modules_dir }}/{{name}}
|
||||||
- stateful: True
|
- stateful: True
|
||||||
@ -193,9 +201,9 @@ nginx:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
- watch:
|
- watch:
|
||||||
- cmd: get-nginx
|
- cmd: get-nginx
|
||||||
- cmd: nginx-source-modified
|
- cmd: is-nginx-source-modified
|
||||||
{% for name, module in nginx.get('modules', {}).items() -%}
|
{% for name, module in nginx.get('modules', {}).items() -%}
|
||||||
- cmd: nginx-module-modified-{{name}}
|
- cmd: is-nginx-module-modified-{{name}}
|
||||||
- file: get-nginx-{{name}}
|
- file: get-nginx-{{name}}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% if use_sysvinit %}
|
{% if use_sysvinit %}
|
||||||
@ -210,23 +218,28 @@ nginx:
|
|||||||
{% for name, module in nginx.get('modules', {}).items() -%}
|
{% for name, module in nginx.get('modules', {}).items() -%}
|
||||||
- file: get-nginx-{{name}}
|
- file: get-nginx-{{name}}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
- require_in:
|
|
||||||
- service: nginx
|
|
||||||
file:
|
file:
|
||||||
- managed
|
- managed
|
||||||
- template: jinja
|
- template: jinja
|
||||||
- name: /etc/init.d/nginx
|
- name: /etc/init.d/{{ service_name }}
|
||||||
- source: salt://nginx/templates/nginx.init.jinja
|
- source: salt://nginx/templates/nginx.init.jinja
|
||||||
- user: root
|
- user: root
|
||||||
- group: root
|
- group: root
|
||||||
- mode: 0755
|
- mode: 0755
|
||||||
- context:
|
- context:
|
||||||
|
service_name: {{ service_name }}
|
||||||
sbin_dir: {{ sbin_dir }}
|
sbin_dir: {{ sbin_dir }}
|
||||||
pid_path: {{ pid_path }}
|
pid_path: {{ pid_path }}
|
||||||
service:
|
service:
|
||||||
|
{% if service_enable %}
|
||||||
- running
|
- running
|
||||||
- enable: True
|
- enable: True
|
||||||
- restart: True
|
- restart: True
|
||||||
|
{% else %}
|
||||||
|
- dead
|
||||||
|
- enable: False
|
||||||
|
{% endif %}
|
||||||
|
- name: {{ service_name }}
|
||||||
- watch:
|
- watch:
|
||||||
- cmd: nginx
|
- cmd: nginx
|
||||||
- file: {{ conf_dir }}/nginx.conf
|
- file: {{ conf_dir }}/nginx.conf
|
||||||
@ -238,19 +251,14 @@ nginx:
|
|||||||
{{ conf_dir }}/{{ file }}:
|
{{ conf_dir }}/{{ file }}:
|
||||||
file:
|
file:
|
||||||
- absent
|
- absent
|
||||||
watch:
|
- require_in:
|
||||||
- cmd: nginx
|
- service: nginx
|
||||||
{{ conf_dir }}/{{ file }}.default:
|
|
||||||
file:
|
|
||||||
- absent
|
|
||||||
watch:
|
|
||||||
- cmd: nginx
|
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
{% for file in nginx.get('delete_htdocs', []) %}
|
{% for file in nginx.get('delete_htdocs', []) %}
|
||||||
{{ install_prefix }}/html/{{ file }}:
|
{{ install_prefix }}/html/{{ file }}:
|
||||||
file:
|
file:
|
||||||
- absent
|
- absent
|
||||||
watch:
|
- require_in:
|
||||||
- cmd: nginx
|
- service: nginx
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
### BEGIN INIT INFO
|
### BEGIN INIT INFO
|
||||||
# Provides: nginx
|
# Provides: {{ service_name }}
|
||||||
# Required-Start: $local_fs $remote_fs $network $syslog
|
# Required-Start: $local_fs $remote_fs $network $syslog
|
||||||
# Required-Stop: $local_fs $remote_fs $network $syslog
|
# Required-Stop: $local_fs $remote_fs $network $syslog
|
||||||
# Default-Start: 2 3 4 5
|
# Default-Start: 2 3 4 5
|
||||||
# Default-Stop: 0 1 6
|
# Default-Stop: 0 1 6
|
||||||
# Short-Description: starts the nginx web server
|
# Short-Description: starts the {{ service_name }} web server
|
||||||
# Description: starts nginx using start-stop-daemon
|
# Description: starts {{ service_name }} using start-stop-daemon
|
||||||
### END INIT INFO
|
### END INIT INFO
|
||||||
|
|
||||||
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
DAEMON={{ sbin_dir }}/nginx
|
DAEMON={{ sbin_dir }}/nginx
|
||||||
NAME=nginx
|
NAME={{ service_name }}
|
||||||
DESC=nginx
|
DESC={{ service_name }}
|
||||||
|
|
||||||
# Include nginx defaults if available
|
# Include nginx defaults if available
|
||||||
if [ -f /etc/default/nginx ]; then
|
if [ -f /etc/default/$NAME ]; then
|
||||||
. /etc/default/nginx
|
. /etc/default/$NAME
|
||||||
fi
|
fi
|
||||||
|
|
||||||
test -x $DAEMON || exit 0
|
test -x $DAEMON || exit 0
|
||||||
|
Loading…
Reference in New Issue
Block a user