📣 2U / OCM Atlassian Migration 📣 Internal edX / OCM / 2U content has moved to a new Atlassian instance. If you're here for Open edX information then you're in the right place!

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

This article provides an example of how database and database users can be managed via the edX configuration repository

Step-by-step guide

  1. This guide assumes that you have cloned the edX configuration repository and installed the python requirements.
  2. Change to the configuration/playbooks/edx-east directory.

  3. Create a database configuration file named, say db-config.yml, with the following structure.  You will need to customize this for your own purposes including adding strong passwords.  This also assumes that you already have a root account on the MySQL instance you will be using.

    ---
    
    database_connection: &default_connection
      login_host: "localhost"
      login_user: "root"
      login_password: "secret"
    
    DEFAULT_ENCODING: "utf8"
    
    databases:
      edxapp:
        state: "present"
        encoding: "{{ DEFAULT_ENCODING }}"
        <<: *default_connection
      dashboard:
        state: "present"
        encoding: "{{ DEFAULT_ENCODING }}"
        <<: *default_connection
    
    database_users:
      migrate:
        state: "present"
        password: "migrate_secret"
        host: "%"
        privileges:
          - "edxapp%.*:SELECT,INSERT,UPDATE,DELETE,ALTER,CREATE,DROP,INDEX"
          - "dashboard%.*:SELECT,INSERT,UPDATE,DELETE,ALTER,CREATE,DROP,INDEX"
        <<: *default_connection
      dash:
        state: "present"
        password: "dash_secret"
        host: "%"
        privileges:
          - "dashboard.*:SELECT,INSERT,UPDATE,DELETE"
        <<: *default_connection
  4. Run ansible as follows

    ansible-playbook -i 'localhost,' create_db_and_users.yml -e@/path/to/db-config.yml --ask-sudo-pass

There is no content with the specified labels

  • No labels