Commit 1430d035 by e0d

changes to support parameterized role for rbenv

parent cc4c66bf
- name: forum | git checkout forum repo into {{forum_code_dir}}
git: dest={{forum_code_dir}} repo={{forum_source_repo}} version={{forum_version}}
- name: forum | git checkout forum repo into {{ forum_code_dir }}
git: dest={{ forum_code_dir }} repo={{ forum_source_repo }} version={{ forum_version }}
sudo: yes
sudo_user: ${forum_user}
sudo_user: "{{ forum_user }} "
notify:
- forum | restart the forum service
tags:
......@@ -9,9 +9,9 @@
- deploy
- name: forum | install comments service bundle
shell: executable=/bin/bash {{ rbenv_root }}/shims/bundle install chdir={{ forum_code_dir }}
shell: executable=/bin/bash {{ forum_home }}/.rbenv/shims/bundle install chdir={{ forum_code_dir }}
sudo: yes
sudo_user: ${forum_user}
sudo_user: "{{ forum_user }}"
notify:
- forum | restart the forum service
tags:
......
......@@ -3,30 +3,28 @@
- name: forum | create $forum_user user
user: name=$forum_user state=present shell=/bin/bash home=$forum_home
tags:
- ruby
- forum
- update
- include: ../../rbenv/tasks/main.yml
- name: forum | setup the forum env
template: src=forum_env.j2 dest={{ ruby_base }}/forum_env owner={{ rbenv_user }} group={{ rbenv_user }}
template: src=forum_env.j2 dest={{ forum_home }}/forum_env owner={{ forum_user }} group={{ forum_user }}
tags:
- forum
- update
- name: rbenv | ensure .bashrc exists
shell: touch $ruby_base/.bashrc
- name: forum | ensure .bashrc exists
shell: touch {{ forum_home }}/.bashrc
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ forum_user }}"
tags:
- ruby
- forum
- update
- name: rebenv | add source of ruby_env to .bashrc
- name: forum | add source of ruby_env to .bashrc
lineinfile:
dest=$ruby_base/.bashrc
regexp='. {{ruby_base}}/forum_env'
line='. {{ruby_base}}/forum_env'
dest="{{ forum_home }}/.bashrc"
regexp='. {{ forum_home }}/forum_env'
line='. {{ forum_home }}/forum_env'
- name: forum | copy cs_comments_service SysVunit script
template: src=cs_comments_service.j2 dest=/etc/init.d/cs_comments_service owner=root group=root mode=750
......
......@@ -7,4 +7,4 @@ env PID=/var/tmp/comments_service.pid
chdir {{ forum_code_dir }}
exec {{rbenv_root}}/shims/ruby app.rb
\ No newline at end of file
exec {{forum_home}}/.rbenv/shims/ruby app.rb
\ No newline at end of file
......@@ -14,7 +14,7 @@ USER={{ forum_user }}
NAME="cs_comments_service"
RETVAL=0
APP_ROOT={{ forum_code_dir }}
DAEMON={{ rbenv_root }}/shims/ruby
DAEMON={{ forum_home }}/.rbenv/shims/ruby
PID=/var/tmp/cs_comments_service.pid
OPTIONS="app.rb"
......
......@@ -2,13 +2,7 @@
forum_user: "forum"
forum_home: "/opt/forum"
rbenv_root: "{{ forum_home }}/.rbenv"
rbenv_user: "forum"
ruby_version: "1.9.3-p448"
ruby_base: "/opt/forum"
gem_home: "{{ ruby_base }}/.gem"
forum_ruby_version: "1.9.3-p448"
forum_code_dir: "{{ forum_home }}/cs_comments_service"
forum_source_repo: https://github.com/edx/cs_comments_service.git
forum_version: 'HEAD'
\ No newline at end of file
......@@ -3,11 +3,20 @@
# with a number of changes.
#
- name: Create ruby base
file: path=$ruby_base state=directory owner=$rbenv_user group=$rbenv_user
tags:
- ruby
- update
- fail: rbenv_user required for role
when: rbenv_user is not defined
- fail: rbenv_user_home required for role
when: rbenv_user_home is not defined
- fail: rbenv_ruby_version required for role
when: rbenv_ruby_version is not defined
#- name: rbenv | create ruby base
# file: path=$ruby_base state=directory owner={{ rbenv_user }} group={{ rbenv_user }}
# tags:
# - ruby
# - update
- name: rbenv | install build depends
apt: pkg=$item state=present install_recommends=no
......@@ -26,39 +35,39 @@
- install
- name: rbenv | update rbenv repo
git: repo=https://github.com/sstephenson/rbenv.git dest=$rbenv_root version=v0.4.0
git: repo=https://github.com/sstephenson/rbenv.git dest={{ rbenv_user_home }}/.rbenv version={{ rbenv_version }}
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
tags:
- ruby
- install
- name: rbenv | ensure .bashrc exists
shell: touch $ruby_base/.bashrc
shell: touch {{ rbenv_user_home }}/.bashrc
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
tags:
- ruby
- update
- name: rbenv | drop a bash_profile
copy: src=../../common/files/bash_profile dest=$ruby_base/.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
template: src=ruby_env.j2 dest={{ ruby_base }}/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:
- ruby
- update
- name: rebenv | add source of ruby_env to .bashrc
lineinfile:
dest=$ruby_base/.bashrc
regexp='. {{ruby_base}}/ruby_env'
line='. {{ruby_base}}/ruby_env'
dest="{{ rbenv_user_home }}/.bashrc"
regexp='. {{ rbenv_user_home }}/ruby_env'
line='. {{ rbenv_user_home }}/ruby_env'
- name: rbenv | drop a bash_profile
copy: src=../../common/files/bash_profile dest=$ruby_base/.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
command: test -x /usr/local/bin/ruby-build
......@@ -72,7 +81,7 @@
command: mktemp -d
register: tempdir
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
when_failed: $rbuild_present
tags:
- ruby
......@@ -82,65 +91,65 @@
git: repo=https://github.com/sstephenson/ruby-build.git dest=${tempdir.stdout}/ruby-build
when_failed: $rbuild_present
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
tags:
- ruby
- install
- name: rbenv | install ruby-build
command: ./install.sh chdir=${tempdir.stdout}/ruby-build
command: ./install.sh chdir={{ tempdir.stdout }}/ruby-build
when_failed: $rbuild_present
tags:
- ruby
- install
- name: rbenv | remove temporary directory
file: path=${tempdir.stdout} state=absent
file: path={{ tempdir.stdout }} state=absent
when_failed: $rbuild_present
tags:
- ruby
- install
- name: rbenv | check ruby $ruby_version installed
shell: RBENV_ROOT=${rbenv_root} ${rbenv_root}/bin/rbenv versions | grep $ruby_version
- name: rbenv | check ruby {{ rbenv_ruby_version }} installed
shell: ${rbenv_user_home}/.rbenv/bin/rbenv versions | grep ${rbenv_ruby_version}
register: ruby_installed
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
ignore_errors: yes
tags:
- ruby
- install
- name: rbenv | install ruby $ruby_version
shell: RBENV_ROOT=${rbenv_root} ${rbenv_root}/bin/rbenv install $ruby_version
- name: rbenv | install ruby {{ rbenv_ruby_version }}
shell: ${rbenv_user_home }/.rbenv/bin/rbenv install ${rbenv_ruby_version}
when_failed: $ruby_installed
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
tags:
- ruby
- install
- name: rbenv | set global ruby $ruby_version
shell: RBENV_ROOT=${rbenv_root} ${rbenv_root}/bin/rbenv global $ruby_version
- name: rbenv | set global ruby {{ rbenv_ruby_version }}
shell: "{{rbenv_user_home }}/.rbenv/bin/rbenv global {{ rbenv_ruby_version }}"
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
when_failed: $ruby_installed
tags:
- ruby
- install
- name: rbenv | install bundler
shell: RBENV_ROOT=${rbenv_root} ${rbenv_root}/shims/gem install bundler -v 1.3.2
shell: "{{ rbenv_user_home }}/.rbenv/shims/gem install bundler -v {{ rbenv_bundler_version }}"
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
tags:
- ruby
- install
- name: rbenv | rehash
shell: RBENV_ROOT=${rbenv_root} ${rbenv_root}/bin/rbenv rehash
shell: "{{rbenv_user_home}}/.rbenv/bin/rbenv rehash"
sudo: true
sudo_user: $rbenv_user
sudo_user: "{{ rbenv_user }}"
when_failed: $ruby_installed
tags:
- ruby
......
---
rbenv_version: 'v0.4.0'
rbenv_bundler_version: '1.3.2'
\ No newline at end of file
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