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
OpenEdx
configuration
Commits
7dceecde
Commit
7dceecde
authored
Jul 29, 2013
by
John Jarvis
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #180 from edx/jarv/forum-cleanup
forum role cleanup
parents
ccf3521b
6b136f80
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
195 additions
and
51 deletions
+195
-51
playbooks/edx-east/edx_sandbox.yml
+29
-0
playbooks/roles/edxapp/vars/main.yml
+2
-2
playbooks/roles/edxlocal/tasks/main.yml
+8
-1
playbooks/roles/elasticsearch/tasks/main.yml
+23
-16
playbooks/roles/elasticsearch/vars/main.yml
+2
-3
playbooks/roles/forum/handlers/main.yml
+2
-0
playbooks/roles/forum/tasks/deploy.yml
+13
-3
playbooks/roles/forum/tasks/main.yml
+21
-5
playbooks/roles/forum/tasks/test.yml
+1
-1
playbooks/roles/forum/vars/main.yml
+4
-3
playbooks/roles/oraclejdk/tasks/main.yml
+24
-2
playbooks/roles/rbenv/tasks/main.yml
+66
-15
No files found.
playbooks/edx-east/edx_sandbox.yml
0 → 100644
View file @
7dceecde
---
# This playbook is to configuration
# the official edX sandbox instance
# sandbox.edx.org
-
name
:
Configure instance(s)
hosts
:
tag_Name_edx-sandbox
sudo
:
True
gather_facts
:
True
vars
:
migrate_db
:
True
mysql5_workaround
:
True
vars_files
:
-
"
{{
secure_dir
}}/vars/edx_sandbox.yml"
roles
:
-
common
-
nginx
-
edxlocal
# - edxapp
# - rabbitmq
# - oraclejdk
# - elasticsearch
# - { role: 'edxapp', celery_worker: True }
-
role
:
rbenv
rbenv_user
:
"
{{
forum_user
}}"
rbenv_user_home
:
"
{{
forum_home
}}"
rbenv_ruby_version
:
"
{{
forum_ruby_version
}}"
-
forum
playbooks/roles/edxapp/vars/main.yml
View file @
7dceecde
...
@@ -116,10 +116,10 @@ generic_env_config: &edxapp_generic_env
...
@@ -116,10 +116,10 @@ generic_env_config: &edxapp_generic_env
'
KEY_PREFIX'
:
'
integration_celery'
'
KEY_PREFIX'
:
'
integration_celery'
'
CELERY_BROKER_TRANSPORT'
:
'
amqp'
'
CELERY_BROKER_TRANSPORT'
:
'
amqp'
'
CELERY_BROKER_HOSTNAME'
:
'
'
'
CELERY_BROKER_HOSTNAME'
:
'
'
'
COMMENTS_SERVICE_URL'
:
'
'
'
COMMENTS_SERVICE_URL'
:
'
http://localhost:4567
'
'
LOGGING_ENV'
:
'
sandbox'
'
LOGGING_ENV'
:
'
sandbox'
'
SESSION_COOKIE_DOMAIN'
:
!!null
'
SESSION_COOKIE_DOMAIN'
:
!!null
'
COMMENTS_SERVICE_KEY'
:
'
'
'
COMMENTS_SERVICE_KEY'
:
'
password
'
'
SEGMENT_IO_LMS'
:
true
'
SEGMENT_IO_LMS'
:
true
'
CODE_JAIL'
:
'
CODE_JAIL'
:
'
limits'
:
'
limits'
:
...
...
playbooks/roles/edxlocal/tasks/main.yml
View file @
7dceecde
...
@@ -56,12 +56,19 @@
...
@@ -56,12 +56,19 @@
-
name
:
wait for mongo server to start
-
name
:
wait for mongo server to start
wait_for
:
port=27017 delay=2
wait_for
:
port=27017 delay=2
-
name
:
create a mongodb user
-
name
:
create a mongodb user
for edxapp
mongodb_user
:
>
mongodb_user
:
>
database=edxapp
database=edxapp
name=edxapp
name=edxapp
password=password
password=password
state=present
state=present
-
name
:
create a mongodb user for forums
mongodb_user
:
>
database=cs_comments_service
name=cs_comments_service
password=password
state=present
-
name
:
install memcached
-
name
:
install memcached
apt
:
pkg=memcached state=present
apt
:
pkg=memcached state=present
playbooks/roles/elasticsearch/tasks/main.yml
View file @
7dceecde
-
name
:
elasticsearch | check for elasticsearch
---
command
:
test -f /var/tmp/elasticsearch-${elasticsearch_version}.deb
ignore_errors
:
true
register
:
elasticsearch_present
-
name
:
elasticsearch | download elasticsearch
# elasticsearch
get_url
:
url={{ elasticsearch_url }} dest=/var/tmp/{{ elasticsearch_file }}
#
when
:
elasticsearch_present|failed
# Dependencies:
tags
:
#
-
elasticsearch
# * common
-
install
# * oraclejdk
#
# Example play:
#
# roles:
# - common
# - oraclejdk
# - elasticsearch
-
name
:
elasticsearch | check elasticsearch version
-
name
:
elasticsearch | download elasticsearch
shell
:
test -n "$(dpkg --list elasticsearch | grep {{ elasticsearch_version }})"
get_url
:
>
ignore_errors
:
true
url={{ elasticsearch_url }}
register
:
elasticsearch_installed
dest=/var/tmp/{{ elasticsearch_file }}
force=no
-
name
:
elasticsearch | install elasticsearch from local package
-
name
:
elasticsearch | install elasticsearch from local package
shell
:
executable=/bin/bash dpkg -i /var/tmp/elasticsearch-${elasticsearch_version}.deb
shell
:
>
when
:
elasticsearch_installed|failed
dpkg -i /var/tmp/elasticsearch-{{ elasticsearch_version }}.deb
executable=/bin/bash
creates=/usr/share/elasticsearch/bin/elasticsearch
tags
:
tags
:
-
elasticsearch
-
elasticsearch
-
install
-
install
playbooks/roles/elasticsearch/vars/main.yml
View file @
7dceecde
...
@@ -2,5 +2,5 @@
...
@@ -2,5 +2,5 @@
elasticsearch_version
:
"
0.90.2"
elasticsearch_version
:
"
0.90.2"
elasticsearch_sha
:
"
397227ce37f616734f39f6e93539c9eaa82bec9"
elasticsearch_sha
:
"
397227ce37f616734f39f6e93539c9eaa82bec9"
elasticsearch_file
:
"
elasticsearch-${elastic_search_version}.deb"
elasticsearch_file
:
"
elasticsearch-{{
elasticsearch_version
}}.deb"
elasticsearch_url
:
"
https://download.elasticsearch.org/elasticsearch/elasticsearch/{{
elastic_search_file
}}"
elasticsearch_url
:
"
https://download.elasticsearch.org/elasticsearch/elasticsearch/{{
elasticsearch_file
}}"
\ No newline at end of file
playbooks/roles/forum/handlers/main.yml
View file @
7dceecde
---
-
name
:
forum | restart the forum service
-
name
:
forum | restart the forum service
service
:
name=cs_comments_service state=restarted
service
:
name=cs_comments_service state=restarted
playbooks/roles/forum/tasks/deploy.yml
View file @
7dceecde
---
-
name
:
forum | stop the forum service
service
:
name=cs_comments_service state=stopped
tags
:
-
deploy
-
name
:
forum | git checkout forum repo into {{ forum_code_dir }}
-
name
:
forum | git checkout forum repo into {{ forum_code_dir }}
git
:
dest={{ forum_code_dir }} repo={{ forum_source_repo }} version={{ forum_version }}
git
:
dest={{ forum_code_dir }} repo={{ forum_source_repo }} version={{ forum_version }}
sudo
:
yes
sudo
:
yes
sudo_user
:
"
{{
forum_user
}}
"
sudo_user
:
"
{{
forum_user
}}"
notify
:
notify
:
-
forum | restart the forum service
-
forum | restart the forum service
tags
:
tags
:
...
@@ -12,8 +19,11 @@
...
@@ -12,8 +19,11 @@
shell
:
executable=/bin/bash {{ forum_home }}/.rbenv/shims/bundle install chdir={{ forum_code_dir }}
shell
:
executable=/bin/bash {{ forum_home }}/.rbenv/shims/bundle install chdir={{ forum_code_dir }}
sudo
:
yes
sudo
:
yes
sudo_user
:
"
{{
forum_user
}}"
sudo_user
:
"
{{
forum_user
}}"
notify
:
-
forum | restart the forum service
tags
:
tags
:
-
forum
-
forum
-
deploy
-
deploy
-
name
:
forum | restart the forum service
service
:
name=cs_comments_service state=restarted
tags
:
-
deploy
playbooks/roles/forum/tasks/main.yml
View file @
7dceecde
---
---
# forum
#
#
# This role depends upon the rbenv role which needs to
# Dependencies:
# be included in the same playbook prior to this role.
#
#
# * common
# * elasticsearch
# * oraclejdk
# * rbenv
#
#
# Example play:
# roles:
# - common
# - oraclejdk
# - elasticsearch
# - role: rbenv
# rbenv_user: "{{ forum_user }}"
# rbenv_user_home: "{{ forum_rbenv_dir }}"
# rbenv_ruby_version: "{{ forum_ruby_version }}"
# - forum
-
name
:
forum | setup the forum env
-
name
:
forum | setup the forum env
template
:
src=forum_env.j2 dest={{ forum_home }}/forum_env owner={{ forum_user }} group={{ forum_user }}
template
:
src=forum_env.j2 dest={{ forum_home }}/forum_env owner={{ forum_user }} group={{ forum_user }}
...
@@ -40,17 +56,17 @@
...
@@ -40,17 +56,17 @@
tags
:
tags
:
-
forum
-
forum
-
install
-
install
only_if
:
"
'${ansible_distribution}'
==
'Debian'"
when
:
ansible_distribution == 'Debian'
-
name
:
forum | copy cs_comments_service upstart script
-
name
:
forum | copy cs_comments_service upstart script
template
:
src=cs_comments_service.conf.j2 dest=/etc/init/cs_comments_service.conf owner=root group=root mode=
750
template
:
src=cs_comments_service.conf.j2 dest=/etc/init/cs_comments_service.conf owner=root group=root mode=
644
notify
:
notify
:
-
forum | restart the forum service
-
forum | restart the forum service
tags
:
tags
:
-
forum
-
forum
-
install
-
install
only_if
:
"
'${ansible_distribution}'
==
'Ubuntu'"
when
:
ansible_distribution == 'Ubuntu'
-
include
:
deploy.yml
-
include
:
deploy.yml
-
include
:
test.yml
-
include
:
test.yml
playbooks/roles/forum/tasks/test.yml
View file @
7dceecde
---
---
-
name
:
forum | test that the required service are listening
-
name
:
forum | test that the required service are listening
wait_for
:
port={{ item.port }} timeout=1
wait_for
:
port={{ item.port }} timeout=1
0
with_items
:
"
{{
forum_services
}}"
with_items
:
"
{{
forum_services
}}"
tags
:
tags
:
-
forum
-
forum
...
...
playbooks/roles/forum/vars/main.yml
View file @
7dceecde
---
---
forum_user
:
"
forum"
forum_user
:
"
forum"
forum_home
:
"
/opt/forum"
forum_home
:
"
/opt/
wwc/
forum"
forum_ruby_version
:
"
1.9.3-p448"
forum_ruby_version
:
"
1.9.3-p448"
forum_code_dir
:
"
{{
forum_home
}}/cs_comments_service"
forum_code_dir
:
"
{{
forum_home
}}/cs_comments_service"
forum_source_repo
:
"
https://github.com/edx/cs_comments_service.git"
forum_source_repo
:
"
https://github.com/edx/cs_comments_service.git"
...
@@ -10,10 +10,11 @@ forum_mongo_user: "cs_comments_service"
...
@@ -10,10 +10,11 @@ forum_mongo_user: "cs_comments_service"
forum_mongo_password
:
"
password"
forum_mongo_password
:
"
password"
forum_mongo_host
:
"
localhost"
forum_mongo_host
:
"
localhost"
forum_mongo_port
:
"
27010"
forum_mongo_port
:
"
27010"
forum_mongo_url
:
"
mongodb://{{
forum_mongo_user
}}:{{
forum_mongo_password
}}@{{
formum_mongo_host
}}:{{
forum_mongo_port
}}/{{
forum_mongo_database
}}"
forum_mongo_database
:
"
cs_comments_service"
forum_mongo_url
:
"
mongodb://{{
forum_mongo_user
}}:{{
forum_mongo_password
}}@{{
forum_mongo_host
}}:{{
forum_mongo_port
}}/{{
forum_mongo_database
}}"
forum_rack_env
:
"
development"
forum_rack_env
:
"
development"
forum_sinatra_env
:
"
development"
forum_sinatra_env
:
"
development"
forum_api_
id
:
"
tX5Dslg1y3OsCpFzRq
"
forum_api_
key
:
"
password
"
forum_elasticsearch_host
:
"
localhost"
forum_elasticsearch_host
:
"
localhost"
forum_elasticsearch_port
:
"
9200"
forum_elasticsearch_port
:
"
9200"
forum_elasticsearch_url
:
"
http://{{
forum_elasticsearch_host
}}:{{
forum_elasticsearch_port
}}"
forum_elasticsearch_url
:
"
http://{{
forum_elasticsearch_host
}}:{{
forum_elasticsearch_port
}}"
...
...
playbooks/roles/oraclejdk/tasks/main.yml
View file @
7dceecde
---
# oraclejdk
#
# Dependencies:
#
# * common
#
# Example play:
#
# roles:
# - common
# - oraclejdk
-
name
:
oraclejdk | check for Oracle Java version {{ oraclejdk_base }}
-
name
:
oraclejdk | check for Oracle Java version {{ oraclejdk_base }}
command
:
test -d /usr/lib/jvm/{{ oraclejdk_base }}
command
:
test -d /usr/lib/jvm/{{ oraclejdk_base }}
ignore_errors
:
true
ignore_errors
:
true
...
@@ -7,11 +21,19 @@
...
@@ -7,11 +21,19 @@
-
install
-
install
-
name
:
oraclejdk | download Oracle Java
-
name
:
oraclejdk | download Oracle Java
shell
:
executable="/bin/bash curl -b gpw_e24=http%3A%2F%2Fwww.oracle.com -O -L {{ oraclejdk_url }} chdir=/var/tmp" creates="/var/tmp/{ oraclejdk_file }"
shell
:
>
curl -b gpw_e24=http%3A%2F%2Fwww.oracle.com -O -L {{ oraclejdk_url }}
executable=/bin/bash
chdir=/var/tmp
creates=/var/tmp/{{ oraclejdk_file }}
when
:
oraclejdk_present|failed
when
:
oraclejdk_present|failed
-
name
:
oraclejdk | install Oracle Java
-
name
:
oraclejdk | install Oracle Java
shell
:
exectuable=/bin/bash mkdir -p /usr/lib/jvm && tar -C /usr/lib/jvm -zxvf /var/tmp/{{ oraclejdk_file }} creates="/usr/lib/jvm/{{ oraclejdk_base }}"
shell
:
>
mkdir -p /usr/lib/jvm && tar -C /usr/lib/jvm -zxvf /var/tmp/{{ oraclejdk_file }}
creates=/usr/lib/jvm/{{ oraclejdk_base }}
exectuable=/bin/bash
sudo
:
true
sudo
:
true
when
:
oraclejdk_present|failed
when
:
oraclejdk_present|failed
tags
:
tags
:
...
...
playbooks/roles/rbenv/tasks/main.yml
View file @
7dceecde
---
# rbenv
#
# Dependencies:
#
# * common
#
# Example play:
#
# roles:
# - common
# - role: rbenv
# rbenv_user: "{{ forum_user }}"
# rbenv_user_home: "{{ forum_rbenv_dir }}"
# rbenv_ruby_version: "{{ forum_ruby_version }}"
#
# Parameters:
#
# * rbenv_user
# * rbenv_user_home
# * rbenv_ruby_version
#
#
# cribbed from https://github.com/mmoya/ansible-playbooks/blob/master/rbenv/main.yml
# cribbed from https://github.com/mmoya/ansible-playbooks/blob/master/rbenv/main.yml
# with a number of changes.
# with a number of changes.
...
@@ -12,21 +34,35 @@
...
@@ -12,21 +34,35 @@
-
fail
:
rbenv_ruby_version required for role
-
fail
:
rbenv_ruby_version required for role
when
:
rbenv_ruby_version is not defined
when
:
rbenv_ruby_version is not defined
#
-
name
:
rbenv | create {{ rbenv_user_home }}
# It's unfortunate that this needs to happen here,
# workaround for the case where the parent
# but the rbenv needs to exist when the service
# directory doesn't exist
# that relies on it is provisioned and the service
file
:
>
# user and it's home needs to exist for rbenv to
path={{ rbenv_user_home }}
# install into.
state=directory
#
-
name
:
rbenv | create rbenv owner $forum_user
-
name
:
rbenv | create rbenv user {{ rbenv_user }}
user
:
name=$forum_user state=present shell=/bin/bash home=$forum_home
user
:
>
name={{ rbenv_user }}
state=present
shell=/bin/bash
home={{ rbenv_user_home }}
createhome=yes
tags
:
tags
:
-
forum
-
forum
-
update
-
update
-
name
:
rbenv | ensure homedir permissions {{ rbenv_user_home }}
# workaround for the case where the parent
# directory doesn't exist
file
:
>
path={{ rbenv_user_home }}
owner={{ rbenv_user }}
group={{ rbenv_user }}
state=directory
-
name
:
rbenv | install build depends
-
name
:
rbenv | install build depends
apt
:
pkg=
$item
state=present install_recommends=no
apt
:
pkg=
{{ item }}
state=present install_recommends=no
with_items
:
with_items
:
-
build-essential
-
build-essential
-
git
-
git
...
@@ -42,7 +78,10 @@
...
@@ -42,7 +78,10 @@
-
install
-
install
-
name
:
rbenv | update rbenv repo
-
name
:
rbenv | update rbenv repo
git
:
repo=https://github.com/sstephenson/rbenv.git dest={{ rbenv_user_home }}/.rbenv version={{ rbenv_version }}
git
:
>
repo=https://github.com/sstephenson/rbenv.git
dest={{ rbenv_user_home }}/.rbenv
version={{ rbenv_version }}
sudo
:
true
sudo
:
true
sudo_user
:
"
{{
rbenv_user
}}"
sudo_user
:
"
{{
rbenv_user
}}"
tags
:
tags
:
...
@@ -58,11 +97,19 @@
...
@@ -58,11 +97,19 @@
-
update
-
update
-
name
:
rbenv | drop a bash_profile
-
name
:
rbenv | drop a bash_profile
copy
:
src=../../common/files/bash_profile dest={{ rbenv_user_home }}/.bash_profile owner={{ rbenv_user }} group={{ rbenv_user }}
copy
:
>
src=../../common/files/bash_profile
dest={{ rbenv_user_home }}/.bash_profile
owner={{ rbenv_user }}
group={{ rbenv_user }}
-
name
:
rbenv | ensure ruby_env exists
-
name
:
rbenv | ensure ruby_env exists
template
:
src=ruby_env.j2 dest={{ rbenv_user_home }}/ruby_env owner={{ rbenv_user }} group={{ rbenv_user }}
template
:
>
src=ruby_env.j2
dest={{ rbenv_user_home }}/ruby_env
owner={{ rbenv_user }}
group={{ rbenv_user }}
tags
:
tags
:
-
ruby
-
ruby
-
update
-
update
...
@@ -74,7 +121,11 @@
...
@@ -74,7 +121,11 @@
line='. {{ rbenv_user_home }}/ruby_env'
line='. {{ rbenv_user_home }}/ruby_env'
-
name
:
rbenv | drop a bash_profile
-
name
:
rbenv | drop a bash_profile
copy
:
src=../../common/files/bash_profile dest={{ rbenv_user_home }}/.bash_profile owner={{ rbenv_user }} group={{ rbenv_user }}
copy
:
>
src=../../common/files/bash_profile
dest={{ rbenv_user_home }}/.bash_profile
owner={{ rbenv_user }}
group={{ rbenv_user }}
-
name
:
rbenv | check ruby-build installed
-
name
:
rbenv | check ruby-build installed
command
:
test -x /usr/local/bin/ruby-build
command
:
test -x /usr/local/bin/ruby-build
...
@@ -95,7 +146,7 @@
...
@@ -95,7 +146,7 @@
-
install
-
install
-
name
:
rbenv | clone ruby-build repo
-
name
:
rbenv | clone ruby-build repo
git
:
repo=https://github.com/sstephenson/ruby-build.git dest=
${tempdir.stdout
}/ruby-build
git
:
repo=https://github.com/sstephenson/ruby-build.git dest=
{{ tempdir.stdout }
}/ruby-build
when
:
rbuild_present|failed
when
:
rbuild_present|failed
sudo
:
true
sudo
:
true
sudo_user
:
"
{{
rbenv_user
}}"
sudo_user
:
"
{{
rbenv_user
}}"
...
...
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