configuration

Inside the configuration/playbooks folder, create a new file called koa.yml

The YAML file should look like the following:

Don't forget to set the hosts value, it should be the same as the name you assigned to your instance in the infra/hosts file

---

# Open edX Native installation for single server.

- name: Bootstrap instance(s)
  hosts: YOUR-HOST-NAME #SET-ME
  gather_facts: no
  become: True
  roles:
    - python

- name: Configure instance(s)
  hosts: YOUR-HOST-NAME #SET-ME
  become: True
  gather_facts: True
  vars:
    migrate_db: "yes"
    EDXAPP_PREVIEW_LMS_BASE: '{{ EDXAPP_LMS_BASE }}'
    EDXAPP_LOGIN_REDIRECT_WHITELIST: [ "{{ EDXAPP_CMS_BASE }}" ]
    EDXAPP_LMS_BASE_SCHEME: http
    EDXAPP_LMS_NGINX_PORT: '80'
    EDX_PLATFORM_VERSION: 'master'
    edx_platform_version: "{{ EDX_PLATFORM_VERSION }}"
    # Set to false if deployed behind another proxy/load balancer.
    NGINX_SET_X_FORWARDED_HEADERS: True
    DISCOVERY_URL_ROOT: 'http://localhost:{{ DISCOVERY_NGINX_PORT }}'
    AWS_GATHER_FACTS: false
    COMMON_ENABLE_AWS_ROLE: false
    ecommerce_create_demo_data: true
    credentials_create_demo_data: true
    CONFIGURE_JWTS: true
    SANDBOX_ENABLE_BLOCKSTORE: false
    SANDBOX_ENABLE_DISCOVERY: false
    SANDBOX_ENABLE_ECOMMERCE: false
    SANDBOX_ENABLE_ANALYTICS_API: false
    SANDBOX_ENABLE_INSIGHTS: false
    SANDBOX_ENABLE_RABBITMQ: true
    SANDBOX_ENABLE_NOTES: false
    DEMO_ROLE_ENABLED: false
    ECOMMERCE_ENABLE_COMPREHENSIVE_THEMING: false
    EDXAPP_ENABLE_MEMCACHE: true
    EDXAPP_ENABLE_ELASTIC_SEARCH: true
  roles:
    - role: swapfile
      SWAPFILE_SIZE: 4GB
    - role: aws
      when: COMMON_ENABLE_AWS_ROLE
    - role: nginx
      nginx_sites:
      - certs
      - cms
      - lms
      - forum
      - xqueue
      nginx_default_sites:
      - lms
    - role: edxlocal
      when: EDXAPP_MYSQL_HOST == 'localhost'
    - role: memcache
      when: EDXAPP_ENABLE_MEMCACHE
    - role: mongo_3_6
      when: "'localhost' in EDXAPP_MONGO_HOSTS"
    - role: rabbitmq
      rabbitmq_ip: 127.0.0.1
      when: SANDBOX_ENABLE_RABBITMQ
    - role: edxapp
      celery_worker: True
    - edxapp
    - role: blockstore
      when: SANDBOX_ENABLE_BLOCKSTORE
    - role: ecommerce
      when: SANDBOX_ENABLE_ECOMMERCE
    - role: ecomworker
      ECOMMERCE_WORKER_BROKER_HOST: 127.0.0.1
      when: SANDBOX_ENABLE_ECOMMERCE
    - role: analytics_api
      when: SANDBOX_ENABLE_ANALYTICS_API
    - role: insights
      when: SANDBOX_ENABLE_INSIGHTS
    - role: edx_notes_api
      when: SANDBOX_ENABLE_NOTES
      # Run the nginx role to install edx_notes_api config since the app role
      # currently doesn't do that.
    - role: nginx
      nginx_sites:
      - edx_notes_api
      when: SANDBOX_ENABLE_NOTES
    - role: demo
      when: DEMO_ROLE_ENABLED
    - oauth_client_setup
    - oraclejdk
    - role: elasticsearch
      when: EDXAPP_ENABLE_ELASTIC_SEARCH
    - forum
    - role: discovery
      when: SANDBOX_ENABLE_DISCOVERY
    - role: notifier
      NOTIFIER_DIGEST_TASK_INTERVAL: 5
    - role: xqueue
      update_users: True
    - certs
    - edx_ansible
    - role: datadog
      when: COMMON_ENABLE_DATADOG
    - role: splunkforwarder
      when: COMMON_ENABLE_SPLUNKFORWARDER
    - role: postfix_queue
      when: POSTFIX_QUEUE_EXTERNAL_SMTP_HOST != ''
    - role: datadog-uninstall
      when: not COMMON_ENABLE_DATADOG
    - role: user_retirement_pipeline
      when: COMMON_RETIREMENT_SERVICE_SETUP

Last updated