Commit 3c990c0d by Calen Pennington

Update the django IDA template to match the changes to course_discovery

parent b4b2999a
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
{{ role_name|upper }}_SSL_NGINX_PORT: 48{{ port_suffix }} {{ role_name|upper }}_SSL_NGINX_PORT: 48{{ port_suffix }}
{{ role_name|upper }}_DEFAULT_DB_NAME: '{{ role_name }}' {{ role_name|upper }}_DEFAULT_DB_NAME: '{{ role_name }}'
{{ role_name|upper }}_MYSQL: 'db' {{ role_name|upper }}_MYSQL: 'localhost'
# MySQL usernames are limited to 16 characters # MySQL usernames are limited to 16 characters
{{ role_name|upper }}_MYSQL_USER: '{{ role_name[:13] }}001' {{ role_name|upper }}_MYSQL_USER: '{{ role_name[:13] }}001'
{{ role_name|upper }}_MYSQL_PASSWORD: 'password' {{ role_name|upper }}_MYSQL_PASSWORD: 'password'
...@@ -106,7 +106,14 @@ nginx_{{ role_name }}_gunicorn_hosts: ...@@ -106,7 +106,14 @@ nginx_{{ role_name }}_gunicorn_hosts:
{{ role_name }}_environment: {{ role_name }}_environment:
DJANGO_SETTINGS_MODULE: "{{ '{{' }} {{ role_name|upper }}_DJANGO_SETTINGS_MODULE }}" DJANGO_SETTINGS_MODULE: "{{ '{{' }} {{ role_name|upper }}_DJANGO_SETTINGS_MODULE }}"
{{ role_name|upper }}_CFG: "{{ '{{' }} COMMON_CFG_DIR }}/{{ '{{' }} {{ role_name }}_service_name }}.yml" {{ role_name|upper }}_CFG: "{{ '{{' }} COMMON_CFG_DIR }}/{{ '{{' }} {{ role_name }}_service_name }}.yml"
PATH: "{{ '{{' }} {{ role_name|lower }}_venv_dir }}/bin:{{ ansible_env.PATH }}" PATH: "{{ '{{' }} {{ role_name|lower }}_venv_dir }}/bin:{{ '{{' }} ansible_env.PATH }}"
{{ role_name }}_migration_environment:
DJANGO_SETTINGS_MODULE: "{{ '{{' }} {{ role_name|upper }}_DJANGO_SETTINGS_MODULE }}"
{{ role_name|upper }}_CFG: "{{ '{{' }} COMMON_CFG_DIR }}/{{ '{{' }} {{ role_name }}_service_name }}.yml"
PATH: "{{ '{{' }} {{ role_name|lower }}_venv_dir }}/bin:{{ '{{' }} ansible_env.PATH }}"
DB_MIGRATION_USER: "{{ '{{' }} COMMON_MYSQL_MIGRATE_USER }}"
DB_MIGRATION_PASS: "{{ '{{' }} COMMON_MYSQL_MIGRATE_PASS }}"
{{ role_name }}_service_name: "{{ role_name }}" {{ role_name }}_service_name: "{{ role_name }}"
{{ role_name }}_user: "{{ '{{' }} {{ role_name }}_service_name }}" {{ role_name }}_user: "{{ '{{' }} {{ role_name }}_service_name }}"
......
...@@ -19,9 +19,9 @@ USER docker ...@@ -19,9 +19,9 @@ USER docker
WORKDIR /edx/app/edx_ansible/edx_ansible/docker/plays WORKDIR /edx/app/edx_ansible/edx_ansible/docker/plays
COPY docker/build/{{ role_name }}/ansible_overrides.yml / COPY docker/build/{{ role_name }}/ansible_overrides.yml /
RUN sudo ansible-playbook {{ role_name }}.yml RUN sudo ansible-playbook {{ role_name }}.yml \
-c local -i `127.0.0.1,` \ -c local -i '127.0.0.1,' \
-t 'install:base,install:code,install:system-requirements,install:app-requirements,install:configuration,install:vhosts,install:devstack' \ -t 'install,assets' \
--extra-vars="@/ansible_overrides.yml" \ --extra-vars="@/ansible_overrides.yml" \
--extra-vars="{{ role_name|upper }}_VERSION=${{ role_name|upper }}_VERSION" \ --extra-vars="{{ role_name|upper }}_VERSION=${{ role_name|upper }}_VERSION" \
--extra-vars="COMMON_GIT_PATH=$REPO_OWNER" --extra-vars="COMMON_GIT_PATH=$REPO_OWNER"
......
--- ---
{{ role_name }}_gunicorn_host: 0.0.0.0 {{ role_name }}_gunicorn_host: 0.0.0.0
\ No newline at end of file {{ role_name|upper }}_MYSQL: 'db'
{{ role_name|upper }}_DJANGO_SETTINGS_MODULE: '{{ role_name }}.settings.devstack'
...@@ -24,21 +24,21 @@ ...@@ -24,21 +24,21 @@
- install:configuration - install:configuration
- name: install application requirements - name: install application requirements
shell: > command: make requirements
chdir=/edx/app/{{ role_name }}/{{ role_name }} args:
. {{ '{{' }} {{ role_name }}_venv_dir }}/bin/activate; chdir: "{{ '{{' }} {{ role_name }}_code_dir }}"
make requirements
sudo_user: "{{ '{{' }} {{ role_name }}_user }}" sudo_user: "{{ '{{' }} {{ role_name }}_user }}"
environment: "{{ '{{' }} {{ role_name }}_environment }}"
tags: tags:
- install - install
- install:app-requirements - install:app-requirements
- name: install development requirements - name: install development requirements
shell: > command: make local-requirements
chdir=/edx/app/{{ role_name }}/{{ role_name }} args:
. {{ '{{' }} {{ role_name }}_venv_dir }}/bin/activate; chdir: "{{ '{{' }} {{ role_name }}_code_dir }}"
make local-requirements
sudo_user: "{{ '{{' }} {{ role_name }}_user }}" sudo_user: "{{ '{{' }} {{ role_name }}_user }}"
environment: "{{ '{{' }} {{ role_name }}_environment }}"
tags: tags:
- install - install
- install:devstack - install:devstack
...@@ -54,8 +54,8 @@ ...@@ -54,8 +54,8 @@
- name: create databases - name: create databases
mysql_db: mysql_db:
login_host: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.HOST }}" login_host: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.HOST }}"
login_user: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN.default.USER }}" login_user: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN_USER }}"
login_password: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN.default.PASSWORD }}" login_password: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN_PASSWORD }}"
db: "{{ '{{' }} {{ role_name|upper }}_DEFAULT_DB_NAME }}" db: "{{ '{{' }} {{ role_name|upper }}_DEFAULT_DB_NAME }}"
state: present state: present
encoding: utf8 encoding: utf8
...@@ -65,11 +65,11 @@ ...@@ -65,11 +65,11 @@
- name: create database users - name: create database users
mysql_user: mysql_user:
login_host: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.HOST }}" login_host: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.HOST }}"
login_user: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN.default.USER }}" login_user: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN_USER }}"
login_password: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN.default.PASSWORD }}" login_password: "{{ '{{' }} {{ role_name|upper }}_DB_ADMIN_PASSWORD }}"
name: "{{ '{{' }} item.name }}" name: "{{ '{{' }} item.name }}"
host: "%" host: "%"
name: "{{ '{{' }} item.password }}" password: "{{ '{{' }} item.password }}"
priv: "{{ '{{' }} {{ role_name|upper }}_DEFAULT_DB_NAME }}.*:ALL" priv: "{{ '{{' }} {{ role_name|upper }}_DEFAULT_DB_NAME }}.*:ALL"
with_items: with_items:
- name: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.USER }}" - name: "{{ '{{' }} {{ role_name|upper }}_DATABASES.default.USER }}"
...@@ -79,14 +79,12 @@ ...@@ -79,14 +79,12 @@
tags: tags:
- migrate:devstack - migrate:devstack
- name: migrate - name: migrate database
shell: > command: make migrate
chdir={{ '{{' }} {{ role_name }}_code_dir }} args:
DB_MIGRATION_USER={{ '{{' }} COMMON_MYSQL_MIGRATE_USER }} chdir: "{{ '{{' }} {{ role_name }}_code_dir }}"
DB_MIGRATION_PASS={{ '{{' }} COMMON_MYSQL_MIGRATE_PASS }}
{{ '{{' }} {{ role_name|lower }}_venv_dir }}/bin/python ./manage.py migrate --noinput
sudo_user: "{{ '{{' }} {{ role_name }}_user }}" sudo_user: "{{ '{{' }} {{ role_name }}_user }}"
environment: "{{ '{{' }} {{ role_name }}_environment }}" environment: "{{ '{{' }} {{ role_name }}_migration_environment }}"
when: migrate_db is defined and migrate_db|lower == "yes" when: migrate_db is defined and migrate_db|lower == "yes"
tags: tags:
- migrate - migrate
...@@ -148,7 +146,7 @@ ...@@ -148,7 +146,7 @@
- install:configuration - install:configuration
- name: update supervisor configuration - name: update supervisor configuration
shell: "{{ '{{' }} supervisor_ctl }} -c {{ '{{' }} supervisor_cfg }} update" command: "{{ '{{' }} supervisor_ctl }} -c {{ '{{' }} supervisor_cfg }} update"
when: not disable_edx_services when: not disable_edx_services
tags: tags:
- manage - manage
...@@ -177,6 +175,16 @@ ...@@ -177,6 +175,16 @@
tags: tags:
- install - install
- install:app-requirements - install:app-requirements
- name: run collectstatic
command: make static
args:
chdir: "{{ '{{' }} {{ role_name }}_code_dir }}"
sudo_user: "{{ '{{' }} {{ role_name }}_user }}"
environment: "{{ '{{' }} {{ role_name }}_environment }}"
tags:
- assets
- assets:gather
- name: restart the application - name: restart the application
supervisorctl: supervisorctl:
......
...@@ -2,12 +2,7 @@ ...@@ -2,12 +2,7 @@
# {{ '{{' }} ansible_managed }} # {{ '{{' }} ansible_managed }}
cd /edx/app/edx_ansible/edx_ansible/docker/plays source {{ '{{' }} {{ role_name }}_home }}/{{ role_name }}_env
sudo ansible-playbook {{ role_name }}.yml -c local -t 'install:app-requirements'
sudo ansible-playbook {{ role_name }}.yml -c local -t 'migrate:devstack' \
--extra-vars="migrate_db=yes"
sudo ansible-playbook {{ role_name }}.yml -c local -t 'manage:devstack'
COMMAND=$1 COMMAND=$1
case $COMMAND in case $COMMAND in
...@@ -15,6 +10,12 @@ case $COMMAND in ...@@ -15,6 +10,12 @@ case $COMMAND in
{{ '{%' }} set {{ role_name }}_venv_bin = {{ role_name }}_home + "/venvs/" + {{ role_name }}_service_name + "/bin" %} {{ '{%' }} set {{ role_name }}_venv_bin = {{ role_name }}_home + "/venvs/" + {{ role_name }}_service_name + "/bin" %}
{{ '{%' }} set executable = {{ role_name }}_venv_bin + '/gunicorn' %} {{ '{%' }} set executable = {{ role_name }}_venv_bin + '/gunicorn' %}
cd /edx/app/edx_ansible/edx_ansible/docker/plays
sudo ansible-playbook {{ role_name }}.yml -c local -i '127.0.0.1,' \
-t 'install:app-requirements,assets:gather,migrate:devstack,manage:devstack' \
--extra-vars="migrate_db=yes" \
--extra-vars="@/ansible_overrides.yml"
{{ '{{' }} executable }} -c {{ '{{' }} {{ role_name }}_home }}/{{ role_name }}_gunicorn.py \ {{ '{{' }} executable }} -c {{ '{{' }} {{ role_name }}_home }}/{{ role_name }}_gunicorn.py \
{{ '{{' }} {{ role_name|upper }}_GUNICORN_EXTRA }} \ {{ '{{' }} {{ role_name|upper }}_GUNICORN_EXTRA }} \
--reload \ --reload \
......
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