Commit d5f51911 by Arbab Nazar Committed by GitHub

Merge pull request #3217 from edx/arbab/ecommerce-rewrite

YAML syntax for ansible tasks
parents fcc07d6a e5cbbb11
...@@ -20,48 +20,52 @@ ...@@ -20,48 +20,52 @@
# Example play: # Example play:
# #
# #
- name: "add gunicorn configuration file" - name: Add gunicorn configuration file
template: > template:
src=edx/app/ecommerce/ecommerce_gunicorn.py.j2 src: "edx/app/ecommerce/ecommerce_gunicorn.py.j2"
dest={{ ecommerce_home }}/ecommerce_gunicorn.py dest: "{{ ecommerce_home }}/ecommerce_gunicorn.py"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
- name: install application requirements - name: Install application requirements
pip: > pip:
requirements="{{ ecommerce_requirements_base }}/{{ item }}" requirements: "{{ ecommerce_requirements_base }}/{{ item }}"
virtualenv="{{ ecommerce_venv_dir }}" virtualenv: "{{ ecommerce_venv_dir }}"
state=present state: present
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
with_items: ecommerce_requirements with_items: "{{ ecommerce_requirements }}"
- name: create nodeenv - name: Create nodeenv
shell: > shell: "{{ ecommerce_venv_dir }}/bin/nodeenv {{ ecommerce_nodeenv_dir }} --prebuilt"
creates={{ ecommerce_nodeenv_dir }} args:
{{ ecommerce_venv_dir }}/bin/nodeenv {{ ecommerce_nodeenv_dir }} --prebuilt creates: "{{ ecommerce_nodeenv_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
- name: install node dependencies - name: Install node dependencies
npm: executable={{ ecommerce_nodeenv_bin }}/npm path={{ ecommerce_code_dir }} production=yes npm:
executable: "{{ ecommerce_nodeenv_bin }}/npm"
path: "{{ ecommerce_code_dir }}"
production: yes
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
environment: "{{ ecommerce_environment }}" environment: "{{ ecommerce_environment }}"
- name: install bower dependencies - name: Install bower dependencies
shell: > shell: ". {{ ecommerce_nodeenv_bin }}/activate && {{ ecommerce_node_bin }}/bower install --production --config.interactive=false"
chdir={{ ecommerce_code_dir }} args:
. {{ ecommerce_nodeenv_bin }}/activate && {{ ecommerce_node_bin }}/bower install --production --config.interactive=false chdir: "{{ ecommerce_code_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
- name: migrate - name: Migrate
shell: > shell: >
chdir={{ ecommerce_code_dir }}
DB_MIGRATION_USER='{{ COMMON_MYSQL_MIGRATE_USER }}' DB_MIGRATION_USER='{{ COMMON_MYSQL_MIGRATE_USER }}'
DB_MIGRATION_PASS='{{ COMMON_MYSQL_MIGRATE_PASS }}' DB_MIGRATION_PASS='{{ COMMON_MYSQL_MIGRATE_PASS }}'
{{ ecommerce_venv_dir }}/bin/python ./manage.py migrate --noinput {{ ecommerce_venv_dir }}/bin/python ./manage.py migrate --noinput
args:
chdir: "{{ ecommerce_code_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
environment: "{{ ecommerce_environment }}" environment: "{{ ecommerce_environment }}"
when: migrate_db is defined and migrate_db|lower == "yes" when: migrate_db is defined and migrate_db|lower == "yes"
- name: populate countries - name: Populate countries
shell: > shell: >
chdir={{ ecommerce_code_dir }} chdir={{ ecommerce_code_dir }}
DB_MIGRATION_USER={{ COMMON_MYSQL_MIGRATE_USER }} DB_MIGRATION_USER={{ COMMON_MYSQL_MIGRATE_USER }}
...@@ -79,26 +83,26 @@ ...@@ -79,26 +83,26 @@
- "command_result.rc != 0" - "command_result.rc != 0"
- name: compile sass - name: compile sass
shell: > shell: "{{ ecommerce_venv_dir }}/bin/python manage.py {{ item }}"
chdir={{ ecommerce_code_dir }} args:
{{ ecommerce_venv_dir }}/bin/python manage.py {{ item }} chdir: "{{ ecommerce_code_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
environment: "{{ ecommerce_environment }}" environment: "{{ ecommerce_environment }}"
with_items: with_items:
- "update_assets --skip-collect" - "update_assets --skip-collect"
when: not devstack when: not devstack
- name: run r.js optimizer - name: Run r.js optimizer
shell: > shell: ". {{ ecommerce_nodeenv_bin }}/activate && {{ ecommerce_node_bin }}/r.js -o build.js"
chdir={{ ecommerce_code_dir }} args:
. {{ ecommerce_nodeenv_bin }}/activate && {{ ecommerce_node_bin }}/r.js -o build.js chdir: "{{ ecommerce_code_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
when: not devstack when: not devstack
- name: run collectstatic - name: Run collectstatic
shell: > shell: "{{ ecommerce_venv_dir }}/bin/python manage.py {{ item }}"
chdir={{ ecommerce_code_dir }} args:
{{ ecommerce_venv_dir }}/bin/python manage.py {{ item }} chdir: "{{ ecommerce_code_dir }}"
become_user: "{{ ecommerce_user }}" become_user: "{{ ecommerce_user }}"
environment: "{{ ecommerce_environment }}" environment: "{{ ecommerce_environment }}"
with_items: with_items:
...@@ -106,61 +110,65 @@ ...@@ -106,61 +110,65 @@
- "compress" - "compress"
when: not devstack when: not devstack
- name: write out the supervisor wrapper - name: Write out the supervisor wrapper
template: > template:
src=edx/app/ecommerce/ecommerce.sh.j2 src: "edx/app/ecommerce/ecommerce.sh.j2"
dest={{ ecommerce_home }}/{{ ecommerce_service_name }}.sh dest: "{{ ecommerce_home }}/{{ ecommerce_service_name }}.sh"
mode=0650 owner={{ supervisor_user }} group={{ common_web_user }} mode: "0650"
owner: "{{ supervisor_user }}"
- name: write supervisord config group: "{{ common_web_user }}"
template: >
src=edx/app/supervisor/conf.d.available/ecommerce.conf.j2 - name: Write supervisord config
dest="{{ supervisor_available_dir }}/{{ ecommerce_service_name }}.conf" template:
owner={{ supervisor_user }} group={{ common_web_user }} mode=0644 src: "edx/app/supervisor/conf.d.available/ecommerce.conf.j2"
dest: "{{ supervisor_available_dir }}/{{ ecommerce_service_name }}.conf"
- name: setup the ecommence env file owner: "{{ supervisor_user }}"
template: > group: "{{ common_web_user }}"
src="./{{ ecommerce_home }}/{{ ecommerce_service_name }}_env.j2" mode: "0644"
dest="{{ ecommerce_home }}/ecommerce_env"
owner={{ ecommerce_user }} - name: Setup the ecommence env file
group={{ ecommerce_user }} template:
mode=0644 src: "./{{ ecommerce_home }}/{{ ecommerce_service_name }}_env.j2"
dest: "{{ ecommerce_home }}/ecommerce_env"
- name: enable supervisor script owner: "{{ ecommerce_user }}"
file: > group: "{{ ecommerce_user }}"
src={{ supervisor_available_dir }}/{{ ecommerce_service_name }}.conf mode: "0644"
dest={{ supervisor_cfg_dir }}/{{ ecommerce_service_name }}.conf
state=link - name: Enable supervisor script
force=yes file:
src: "{{ supervisor_available_dir }}/{{ ecommerce_service_name }}.conf"
dest: "{{ supervisor_cfg_dir }}/{{ ecommerce_service_name }}.conf"
state: link
force: yes
when: not disable_edx_services when: not disable_edx_services
- name: update supervisor configuration - name: Update supervisor configuration
shell: "{{ supervisor_ctl }} -c {{ supervisor_cfg }} update" shell: "{{ supervisor_ctl }} -c {{ supervisor_cfg }} update"
when: not disable_edx_services when: not disable_edx_services
- name: create symlinks from the-er venv bin dir - name: Create symlinks from the-er venv bin dir
file: > file:
src="{{ ecommerce_venv_dir }}/bin/{{ item }}" src: "{{ ecommerce_venv_dir }}/bin/{{ item }}"
dest="{{ COMMON_BIN_DIR }}/{{ item.split('.')[0] }}.ecommerce" dest: "{{ COMMON_BIN_DIR }}/{{ item.split('.', 1) | first }}.ecommerce"
state=link state: link
with_items: with_items:
- python - python
- pip - pip
- django-admin.py - django-admin.py
- name: create symlinks from the repo dir - name: Create symlinks from the repo dir
file: > file:
src="{{ ecommerce_code_dir }}/{{ item }}" src: "{{ ecommerce_code_dir }}/{{ item }}"
dest="{{ COMMON_BIN_DIR }}/{{ item.split('.')[0] }}.ecommerce" dest: "{{ COMMON_BIN_DIR }}/{{ item.split('.', 1) | first }}.ecommerce"
state=link state: link
with_items: with_items:
- manage.py - manage.py
- name: restart the applicaton - name: Restart the applicaton
supervisorctl: > supervisorctl:
state=restarted name: "{{ ecommerce_service_name }}"
supervisorctl_path={{ supervisor_ctl }} state: restarted
config={{ supervisor_cfg }} supervisorctl_path: "{{ supervisor_ctl }}"
name={{ ecommerce_service_name }} config: "{{ supervisor_cfg }}"
when: not disable_edx_services when: not disable_edx_services
become_user: "{{ supervisor_service_user }}" become_user: "{{ supervisor_service_user }}"
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