Commit 11d2dd89 by John Jarvis

renaming ansible->edx_ansible

parent bf6a000f
...@@ -8,13 +8,13 @@ ...@@ -8,13 +8,13 @@
# license: https://github.com/edx/configuration/blob/master/LICENSE.TXT # license: https://github.com/edx/configuration/blob/master/LICENSE.TXT
# #
## ##
# Defaults for role ansible, an ansible role to install ansible # Defaults for role edx_ansible, an edx_ansible role to install edx_ansible
# #
# #
# OS packages # OS packages
# #
ansible_debian_pkgs: edx_ansible_debian_pkgs:
- python-pip - python-pip
- python-apt - python-apt
- git-core - git-core
...@@ -23,12 +23,12 @@ ansible_debian_pkgs: ...@@ -23,12 +23,12 @@ ansible_debian_pkgs:
- libxml2-dev - libxml2-dev
- libxslt-dev - libxslt-dev
- curl - curl
ansible_app_dir: "{{ COMMON_APP_DIR }}/ansible" edx_ansible_app_dir: "{{ COMMON_APP_DIR }}/edx_ansible"
ansible_code_dir: "{{ ansible_app_dir }}/ansible" edx_ansible_code_dir: "{{ edx_ansible_app_dir }}/edx_ansible"
ansible_data_dir: "{{ COMMON_DATA_DIR }}/ansible" edx_ansible_data_dir: "{{ COMMON_DATA_DIR }}/edx_ansible"
ansible_venvs_dir: "{{ ansible_app_dir }}/venvs" edx_ansible_venvs_dir: "{{ edx_ansible_app_dir }}/venvs"
ansible_venv_dir: "{{ ansible_venvs_dir }}/ansible" edx_ansible_venv_dir: "{{ edx_ansible_venvs_dir }}/edx_ansible"
ansible_venv_bin: "{{ ansible_venv_dir }}/bin" edx_ansible_venv_bin: "{{ edx_ansible_venv_dir }}/bin"
ansible_user: "ansible" edx_ansible_user: "edx_ansible"
ansible_source_repo: https://github.com/ansible/ansible.git edx_ansible_source_repo: https://github.com/edx/configuration.git
...@@ -8,6 +8,6 @@ ...@@ -8,6 +8,6 @@
# license: https://github.com/edx/configuration/blob/master/LICENSE.TXT # license: https://github.com/edx/configuration/blob/master/LICENSE.TXT
# #
## ##
# Role includes for role ansible # Role includes for role edx_ansible
dependencies: dependencies:
- supervisor - supervisor
...@@ -8,56 +8,56 @@ ...@@ -8,56 +8,56 @@
# license: https://github.com/edx/configuration/blob/master/LICENSE.TXT # license: https://github.com/edx/configuration/blob/master/LICENSE.TXT
# #
# #
# Tasks for role ansible # Tasks for role edx_ansible
# #
# Overview: # Overview:
# #
# This is an ansible role that installs ansible :) # This is an edx_ansible role that installs edx_ansible :)
# The purpose is to install ansible on a server so # The purpose is to install edx_ansible on a server so
# that it can be updated locally. # that it can be updated locally.
# #
# This role will also drop some helper scripts that # This role will also drop some helper scripts that
# for running ansible tasks # for running edx_ansible tasks
# #
# Example play: # Example play:
# #
# #
# #
- name: ansible | create application user - name: edx_ansible | create application user
user: > user: >
name="{{ ansible_user }}" name="{{ edx_ansible_user }}"
home="{{ ansible_app_dir }}" home="{{ edx_ansible_app_dir }}"
createhome=no createhome=no
shell=/bin/false shell=/bin/false
- name: ansible | create ansible app and venv dir - name: edx_ansible | create edx_ansible app and venv dir
file: > file: >
path="{{ item }}" path="{{ item }}"
state=directory state=directory
owner="{{ ansible_user }}" owner="{{ edx_ansible_user }}"
group="{{ common_web_group }}" group="{{ common_web_group }}"
with_items: with_items:
- "{{ ansible_app_dir }}" - "{{ edx_ansible_app_dir }}"
- "{{ ansible_venvs_dir }}" - "{{ edx_ansible_venvs_dir }}"
- name: ansible | install a bunch of system packages on which ansible relies - name: edx_ansible | install a bunch of system packages on which edx_ansible relies
apt: pkg={{','.join(ansible_debian_pkgs)}} state=present apt: pkg={{','.join(edx_ansible_debian_pkgs)}} state=present
- name: ansible | git checkout ansible repo into ansible_code_dir - name: edx_ansible | git checkout edx_ansible repo into edx_ansible_code_dir
git: dest={{ ansible_code_dir }} repo={{ ansible_source_repo }} version={{ ansible_version }} git: dest={{ edx_ansible_code_dir }} repo={{ edx_ansible_source_repo }} version={{ edx_ansible_version }}
sudo_user: "{{ ansible_user }}" sudo_user: "{{ edx_ansible_user }}"
- name : ansible | install ansible venv requirements - name : edx_ansible | install edx_ansible venv requirements
pip: requirements="{{ ansible_requirements_file }}" virtualenv="{{ ansible_venv_dir }}" state=present pip: requirements="{{ edx_ansible_requirements_file }}" virtualenv="{{ edx_ansible_venv_dir }}" state=present
sudo_user: "{{ ansible_user }}" sudo_user: "{{ edx_ansible_user }}"
- name: ansible | create update script - name: edx_ansible | create update script
template: > template: >
dest={{ ansible_app_dir}}/update dest={{ edx_ansible_app_dir}}/update
src=update owner=ansible group=ansible mode=755 src=update owner=edx_ansible group=edx_ansible mode=755
- name: edxapp | create a symlink for update.sh - name: edxapp | create a symlink for update.sh
file: > file: >
src={{ ansible_app_dir }}/update src={{ edx_ansible_app_dir }}/update
dest={{ COMMON_BIN_DIR }}/update dest={{ COMMON_BIN_DIR }}/update
state=link state=link
#!/usr/bin/env bash #!/usr/bin/env bash
# This script runs ansible locally # This script runs edx_ansible locally
set -e set -e
usage() { usage() {
...@@ -9,7 +9,7 @@ IFS="," ...@@ -9,7 +9,7 @@ IFS=","
cat<<EO cat<<EO
Usage: $PROG <repo> <version> Usage: $PROG <repo> <version>
-v add verbosity to ansible run -v add verbosity to edx_ansible run
-h this -h this
<repo> - must be one of [${!repos_to_cmd[*]}] <repo> - must be one of [${!repos_to_cmd[*]}]
...@@ -20,14 +20,14 @@ IFS=$SAVE_IFS ...@@ -20,14 +20,14 @@ IFS=$SAVE_IFS
} }
declare -A repos_to_cmd declare -A repos_to_cmd
ansible_cmd="ansible-playbook -c local -vvvv --tags deploy" edx_ansible_cmd="edx_ansible-playbook -c local -vvvv --tags deploy"
repos_to_cmd["edx-platform"]="$ansible_cmd edxapp.yml -e 'edx_platform_version=$2'" repos_to_cmd["edx-platform"]="$edx_ansible_cmd edxapp.yml -e 'edx_platform_version=$2'"
repos_to_cmd["xqueue"]="$ansible_cmd xqueue.yml -e 'xqueue_version=$2'" repos_to_cmd["xqueue"]="$edx_ansible_cmd xqueue.yml -e 'xqueue_version=$2'"
repos_to_cmd["forums"]="$ansible_cmd forums.yml -e 'forum_version=$2'" repos_to_cmd["forums"]="$edx_ansible_cmd forums.yml -e 'forum_version=$2'"
repos_to_cmd["xserver"]="$ansible_cmd forums.yml -e 'xserver_version=$2'" repos_to_cmd["xserver"]="$edx_ansible_cmd forums.yml -e 'xserver_version=$2'"
repos_to_cmd["ease"]="$ansible_cmd discern.yml -e 'discern_ease_version=$2' && $ansible_cmd ora.yml -e 'ora_ease_version=$2'" repos_to_cmd["ease"]="$edx_ansible_cmd discern.yml -e 'discern_ease_version=$2' && $edx_ansible_cmd ora.yml -e 'ora_ease_version=$2'"
repos_to_cmd["discern"]="$ansible_cmd discern.yml -e 'discern_version=$2'" repos_to_cmd["discern"]="$edx_ansible_cmd discern.yml -e 'discern_version=$2'"
repos_to_cmd["edx-ora"]="$ansible_cmd ora.yml -e 'ora_version=$2'" repos_to_cmd["edx-ora"]="$edx_ansible_cmd ora.yml -e 'ora_version=$2'"
PROG=${0##*/} PROG=${0##*/}
while getopts "vh" opt; do while getopts "vh" opt; do
...@@ -57,5 +57,5 @@ if [[ -z $2 ]]; then ...@@ -57,5 +57,5 @@ if [[ -z $2 ]]; then
exit 1 exit 1
fi fi
cd {{ ansible_code_dir }}/playbooks/edx-east cd {{ edx_ansible_code_dir }}/playbooks/edx-east
eval "sudo ${repos_to_cmd["$1"]} $verbose" eval "sudo ${repos_to_cmd["$1"]} $verbose"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment