Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
configuration
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
configuration
Commits
5bc2c072
Commit
5bc2c072
authored
Jun 21, 2016
by
Arbab Nazar
Committed by
GitHub
Jun 21, 2016
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #3150 from edx/arbab/supervisor-rewrite
writing ansible tasks using YAML syntax
parents
af760deb
d434fb99
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
84 additions
and
92 deletions
+84
-92
playbooks/roles/supervisor/tasks/main.yml
+84
-92
No files found.
playbooks/roles/supervisor/tasks/main.yml
View file @
5bc2c072
...
...
@@ -50,58 +50,40 @@
# supervisor_service: upstart-service-name
#
---
-
name
:
create application user
user
:
>
name="{{ supervisor_user }}"
createhome=no
shell=/bin/false
tags
:
-
install
-
install:base
-
name
:
create supervisor service user
user
:
>
name="{{ supervisor_service_user }}"
createhome=no
shell=/bin/false
-
name
:
Create application and supervisor service user
user
:
name
:
"
{{
item
}}"
createhome
:
no
shell
:
/bin/false
with_items
:
-
"
{{
supervisor_user
}}"
-
"
{{
supervisor_service_user
}}"
tags
:
-
install
-
install:base
-
name
:
create supervisor
directories
file
:
>
name={{ item }}
state
=
directory
owner
={{ supervisor_user }}
group
={{ supervisor_service_user }}
mode
="
755"
-
name
:
Create supervisor and service user accessible
directories
file
:
path
:
"
{{
item
}}"
state
:
directory
owner
:
"
{{
supervisor_user
}}"
group
:
"
{{
supervisor_service_user
}}"
mode
:
"
0
755"
with_items
:
-
"
{{
supervisor_app_dir
}}"
-
"
{{
supervisor_venv_dir
}}"
tags
:
-
install
-
install:base
-
name
:
create service user accessible dirs
file
:
>
name={{ item }}
state=directory
owner={{ supervisor_user }}
group={{ supervisor_service_user }}
mode="775"
with_items
:
-
"
{{
supervisor_cfg_dir
}}"
-
"
{{
supervisor_available_dir
}}"
tags
:
-
install
-
install:base
-
name
:
c
reate supervisor directories
file
:
>
name={{ item }}
state
=
directory
owner
={{ supervisor_service_user }}
group
={{ supervisor_user }}
-
name
:
C
reate supervisor directories
file
:
path
:
"
{{
item
}}"
state
:
directory
owner
:
"
{{
supervisor_service_user
}}"
group
:
"
{{
supervisor_user
}}"
with_items
:
-
"
{{
supervisor_data_dir
}}"
-
"
{{
supervisor_log_dir
}}"
...
...
@@ -109,7 +91,7 @@
-
install
-
install:base
-
name
:
i
nstall supervisor in its venv
-
name
:
I
nstall supervisor in its venv
pip
:
name
:
supervisor
version
:
"
{{
supervisor_version
}}"
...
...
@@ -121,20 +103,24 @@
-
install
-
install:base
-
name
:
install supervisor in its venv
pip
:
>
name={{ item }} virtualenv="{{ supervisor_venv_dir }}" state=present
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
-
name
:
Install supervisor in its venv
pip
:
name
:
"
{{
item
}}"
virtualenv
:
"
{{
supervisor_venv_dir
}}"
state
:
present
extra_args
:
"
-i
{{
COMMON_PYPI_MIRROR_URL
}}"
become_user
:
"
{{
supervisor_user
}}"
with_items
:
supervisor_pip_pkgs
with_items
:
"
{{
supervisor_pip_pkgs
}}"
tags
:
-
install
-
install:base
-
name
:
create supervisor upstart job
template
:
>
src=etc/init/supervisor-upstart.conf.j2 dest=/etc/init/{{ supervisor_service }}.conf
owner=root group=root
-
name
:
Create supervisor upstart job
template
:
src
:
"
etc/init/supervisor-upstart.conf.j2"
dest
:
"
/etc/init/{{
supervisor_service
}}.conf"
owner
:
root
group
:
root
tags
:
-
install
-
install:base
...
...
@@ -143,75 +129,79 @@
# tags and enables services based on the 'services' tag
# on instance startup.
-
name
:
create pre_supervisor upstart job
template
:
>
src=etc/init/pre_supervisor.conf.j2 dest=/etc/init/pre_supervisor.conf
owner=root group=root
template
:
src
:
"
etc/init/pre_supervisor.conf.j2"
dest
:
"
/etc/init/pre_supervisor.conf"
owner
:
root
group
:
root
when
:
supervisor_service == "supervisor" and disable_edx_services and not devstack
tags
:
-
to-remove
-
aws-specfic
-
name
:
w
rite the pre_suprevisor python script
copy
:
>
src
=
pre_supervisor_checks.py
dest
={{ supervisor_app_dir }}/pre_supervisor_checks.py
mode=0750
owner={{ supervisor_user }}
group={{ supervisor_service_user }}
-
name
:
W
rite the pre_suprevisor python script
copy
:
src
:
pre_supervisor_checks.py
dest
:
"
{{
supervisor_app_dir
}}/pre_supervisor_checks.py"
owner
:
"
{{
supervisor_user
}}"
group
:
"
{{
supervisor_service_user
}}"
mode
:
"
0750"
when
:
disable_edx_services
tags
:
-
to-remove
-
aws-specfic
-
name
:
create supervisor master config
template
:
>
src=edx/app/supervisor/supervisord.conf.j2 dest={{ supervisor_cfg }}
owner={{ supervisor_user }} group={{ supervisor_service_user }}
mode=0644
-
name
:
Create supervisor master config
template
:
src
:
"
edx/app/supervisor/supervisord.conf.j2"
dest
:
"
{{
supervisor_cfg
}}"
owner
:
"
{{
supervisor_user
}}"
group
:
"
{{
supervisor_service_user
}}"
mode
:
"
0644"
tags
:
-
install
-
install:config
-
name
:
create a symlink for supervisortctl
# these links are deprecated in favor of the shell wrapper
file
:
>
src
={{ supervisor_ctl }}
dest
={{ COMMON_BIN_DIR }}/{{ supervisor_ctl|basename }}
state
=
absent
# this link is deprecated in favor of the shell wrapper
-
name
:
Remove a symlink for supervisortctl
file
:
src
:
"
{{
supervisor_ctl
}}"
dest
:
"
{{
COMMON_BIN_DIR
}}/{{
supervisor_ctl
|
basename
}}"
state
:
absent
when
:
supervisor_service == "supervisor"
tags
:
-
install
-
install:config
-
name
:
create a symlink for supervisor cfg
# these links are deprecated in favor of the shell wrapper
file
:
>
src
={{ item }}
dest
={{ COMMON_CFG_DIR }}/{{ item|basename }}
state
=
absent
# these links are deprecated in favor of the shell wrapper
-
name
:
Remove symlink for supervisor cfg
file
:
src
:
"
{{
item
}}"
dest
:
"
{{
COMMON_CFG_DIR
}}/{{
item
|
basename
}}"
state
:
absent
when
:
supervisor_service == "supervisor"
with_items
:
-
"
{{
supervisor_cfg
}}"
-
"
{{
supervisor_cfg_dir
}}"
-
"
{{
supervisor_cfg
}}"
-
"
{{
supervisor_cfg_dir
}}"
tags
:
-
install
-
install:config
-
name
:
c
reate helper script for running supervisor
template
:
>
src
=edx/bin/supervisorctl.j2
dest
={{ COMMON_BIN_DIR }}/supervisorctl
owner
={{ supervisor_service_user }}
mode
=0755
-
name
:
C
reate helper script for running supervisor
template
:
src
:
"
edx/bin/supervisorctl.j2"
dest
:
"
{{
COMMON_BIN_DIR
}}/supervisorctl"
owner
:
"
{{
supervisor_service_user
}}"
mode
:
"
0755"
when
:
supervisor_service == "supervisor"
tags
:
-
install
-
install:config
-
name
:
s
tart supervisor
service
:
>
name
={{ supervisor_service }}
state
=
started
-
name
:
S
tart supervisor
service
:
name
:
"
{{
supervisor_service
}}"
state
:
started
register
:
start_supervisor
tags
:
-
manage
...
...
@@ -219,8 +209,10 @@
# calling update on supervisor too soon after it
# starts will result in an errror.
-
name
:
wait for web port to be available
wait_for
:
port={{ supervisor_http_bind_port }} timeout=5
-
name
:
Wait for web port to be available
wait_for
:
port
:
"
{{
supervisor_http_bind_port
}}"
timeout
:
5
when
:
start_supervisor.changed
tags
:
-
manage
...
...
@@ -232,7 +224,7 @@
# we don't use notifications for supervisor because
# they don't work well with parameterized roles.
# See https://github.com/ansible/ansible/issues/4853
-
name
:
u
pdate supervisor configuration
-
name
:
U
pdate supervisor configuration
shell
:
"
{{
supervisor_ctl
}}
-c
{{
supervisor_cfg
}}
update"
register
:
supervisor_update
changed_when
:
supervisor_update.stdout is defined and supervisor_update.stdout != ""
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment