Commit 24bb55f0 by cahrens

Create an ansible script for running populate_model.

Initially used for xblock configurations, but can be used for any
ConfigurationModel.
parent facaa038
#
# edX Configuration
#
# github: https://github.com/edx/configuration
# wiki: https://openedx.atlassian.net/wiki/display/OpenOPS
# code style: https://openedx.atlassian.net/wiki/display/OpenOPS/Ansible+Code+Conventions
# license: https://github.com/edx/configuration/blob/master/LICENSE.TXT
#
# Usage: ansible-playbook -i lms-host-1, -e "file=/path/to/json/file" -e "user=username"
#
# Overview:
# This executes the "populate_model" management command to populate a ConfigurationModel with
# data from the supplied JSON file.
#
# The username of an existing user must be specified to indicate who is performing the operation.
#
# JSON file format should be:
#
# { "model": "config_models.ExampleConfigurationModel",
# "data":
# [
# { "enabled": True,
# "color": "black"
# ...
# },
# { "enabled": False,
# "color": "yellow"
# ...
# },
# ...
# ]
# }
#
- hosts: all
vars:
python_path: /edx/bin/python.edxapp
manage_path: /edx/bin/manage.edxapp
tasks:
- name: Manage xblock configurations
shell: >
{{ python_path }} {{ manage_path }} lms --settings=aws
populate_model -f {{ file | quote }} -u {{ user }}
register: command_result
changed_when: "'Import complete, 0 new entries created' not in command_result.stdout"
- debug: msg="{{ command_result.stdout }}"
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