# ingested edx-platform/lms/envs/bok_choy.auth.json
# ingested edx-platform/lms/envs/bok_choy.env.json
ACTIVATION_EMAIL_SUPPORT_LINK: https://support.example.com/activation-email-help.html
ANALYTICS_DASHBOARD_URL: ''
AWS_ACCESS_KEY_ID: ''
AWS_SECRET_ACCESS_KEY: ''
BUGS_EMAIL: bugs@example.com
BULK_EMAIL_DEFAULT_FROM_EMAIL: no-reply@example.com
BADGING_BACKEND: 'lms.djangoapps.badges.backends.tests.dummy_backend.DummyBackend'
BLOCK_STRUCTURES_SETTINGS:
  # We have CELERY_ALWAYS_EAGER set to True, so there's no asynchronous
  # code running and the celery routing is unimportant.
  # It does not make sense to retry.
  TASK_MAX_RETRIES: 0
  # course publish task delay is irrelevant is because the task is run synchronously
  COURSE_PUBLISH_TASK_DELAY: 0
  # retry delay is irrelevent because we never retry
  TASK_DEFAULT_RETRY_DELAY: 0

CACHES:
  celery:
    BACKEND: django.core.cache.backends.memcached.MemcachedCache
    KEY_FUNCTION: common.djangoapps.util.memcache.safe_key
    KEY_PREFIX: integration_celery
    LOCATION: ['localhost:11211']
  default:
    BACKEND: django.core.cache.backends.memcached.MemcachedCache
    KEY_FUNCTION: common.djangoapps.util.memcache.safe_key
    KEY_PREFIX: sandbox_default
    LOCATION: ['localhost:11211']
  general:
    BACKEND: django.core.cache.backends.memcached.MemcachedCache
    KEY_FUNCTION: common.djangoapps.util.memcache.safe_key
    KEY_PREFIX: sandbox_general
    LOCATION: ['localhost:11211']
  mongo_metadata_inheritance:
    BACKEND: django.core.cache.backends.memcached.MemcachedCache
    KEY_FUNCTION: common.djangoapps.util.memcache.safe_key
    KEY_PREFIX: integration_mongo_metadata_inheritance
    LOCATION: ['localhost:11211']
  staticfiles:
    BACKEND: django.core.cache.backends.memcached.MemcachedCache
    KEY_FUNCTION: common.djangoapps.util.memcache.safe_key
    KEY_PREFIX: integration_static_files
    LOCATION: ['localhost:11211']

# Capture the console log via template includes, until webdriver supports log capture again
CAPTURE_CONSOLE_LOG: True

CELERY_BROKER_HOSTNAME: localhost
CELERY_BROKER_PASSWORD: celery
CELERY_BROKER_TRANSPORT: amqp
CELERY_BROKER_USER: celery
CELERY_ALWAYS_EAGER: True
CELERY_RESULT_BACKEND: 'django-cache'

CERT_QUEUE: certificates
CMS_BASE: localhost:8031
CODE_JAIL:
  limits: {REALTIME: 3, VMEM: 0}
COMMENTS_SERVICE_KEY: password
COMMENTS_SERVICE_URL: http://localhost:4567
COMPLETION_BY_VIEWING_DELAY_MS: 1000
CONTACT_EMAIL: info@example.com
CONTENTSTORE:
  DOC_STORE_CONFIG:
    collection: modulestore
    db: test
    host: [localhost]
    port: 27017
  ENGINE: xmodule.contentstore.mongo.MongoContentStore
  OPTIONS:
    db: test
    host: [localhost]
    port: 27017
DATABASES:
  default: {ENGINE: django.db.backends.mysql, HOST: localhost, NAME: edxtest, PASSWORD: '',
    PORT: '3306', USER: root}
  student_module_history: {ENGINE: django.db.backends.mysql, HOST: localhost, NAME: student_module_history_test,
    PASSWORD: '', PORT: '3306', USER: root}
DEFAULT_FEEDBACK_EMAIL: feedback@example.com
DEFAULT_FROM_EMAIL: registration@example.com

# Enable debug so that static assets are served by Django
DEBUG: True
DJFS: {aws_access_key_id: test, aws_secret_access_key: test, bucket: test, prefix: test,
  type: s3fs}
DOC_STORE_CONFIG:
  collection: modulestore
  db: test
  host: [localhost]
  port: 27017
# Configure the LMS to use our stub eCommerce implementation
ECOMMERCE_API_URL: 'http://localhost:8043/api/v2/'
# Configure the LMS to use our stub EdxNotes implementation
EDXNOTES_PUBLIC_API: 'http://localhost:8042/api/v1'
EDXNOTES_INTERNAL_API: 'http://localhost:8042/api/v1'

EDXNOTES_CONNECT_TIMEOUT: 10  # time in seconds
EDXNOTES_READ_TIMEOUT: 10  # time in seconds

NOTES_DISABLED_TABS: []

EMAIL_BACKEND: django.core.mail.backends.dummy.EmailBackend
EVENT_TRACKING_BACKENDS:
  mongo:
    ENGINE: eventtracking.backends.mongodb.MongoBackend
    OPTIONS: {collection: events, database: test}
FEATURES:
  ALLOW_AUTOMATED_SIGNUPS: true
  AUTOMATIC_AUTH_FOR_TESTING: true
  AUTOMATIC_VERIFY_STUDENT_IDENTITY_FOR_TESTING: true
  CERTIFICATES_HTML_VIEW: true
  CERTIFICATES_INSTRUCTOR_GENERATION: true
  CUSTOM_COURSES_EDX: true,
  ENABLE_COURSE_DISCOVERY: true
  ENABLE_DISCUSSION_SERVICE: true
  ENABLE_GRADE_DOWNLOADS: true
  ENABLE_SPECIAL_EXAMS: true
  ENABLE_THIRD_PARTY_AUTH: true
  ENABLE_VERIFIED_CERTIFICATES: true
  EXPOSE_CACHE_PROGRAMS_ENDPOINT: true
  MODE_CREATION_FOR_TESTING: true
  PREVIEW_LMS_BASE: 'preview.localhost:8003'
  RESTRICT_AUTOMATIC_AUTH: false
  SHOW_HEADER_LANGUAGE_SELECTOR: true
  ENABLE_MAX_FAILED_LOGIN_ATTEMPTS: False
  SQUELCH_PII_IN_LOGS: False
  PREVENT_CONCURRENT_LOGINS: False
  ENABLE_MOBILE_REST_API: True  # Show video bumper in LMS
  ENABLE_VIDEO_BUMPER: True  # Show video bumper in LMS
  SHOW_BUMPER_PERIODICITY: 1
  # Enable courseware search for tests
  ENABLE_COURSEWARE_SEARCH: True
  # Enable dashboard search for tests
  ENABLE_DASHBOARD_SEARCH: True
  # discussion home panel, which includes a subscription on/off setting for discussion digest emails.
  ENABLE_DISCUSSION_HOME_PANEL: True
  # Enable support for OpenBadges accomplishments
  ENABLE_OPENBADGES: True
  ENABLE_LTI_PROVIDER: True
  # Enable milestones app
  MILESTONES_APP: True
  # Enable oauth authentication, which we test.
  ENABLE_OAUTH2_PROVIDER: True
  OAUTH_ENFORCE_SECURE: False
  ENABLE_PREREQUISITE_COURSES: True
  ENABLE_COURSE_DISCOVERY: True
  ENABLE_EDXNOTES: True
  ENABLE_TEAMS: True
  LICENSING: True
  # Use the auto_auth workflow for creating users and logging them in
  AUTOMATIC_AUTH_FOR_TESTING: True
  RESTRICT_AUTOMATIC_AUTH: False
  # Open up endpoint for faking Software Secure responses
  ENABLE_SOFTWARE_SECURE_FAKE: True
  # Disable instructor dash buttons for downloading course data when enrollment exceeds this number
  MAX_ENROLLMENT_INSTR_BUTTONS: 4
  ENABLE_ENROLLMENT_TRACK_USER_PARTITION: True
  ENTRANCE_EXAMS: True
  ENABLE_SPECIAL_EXAMS: True
  PERSISTENT_GRADES_ENABLED_FOR_ALL_TESTS: True
  ASSUME_ZERO_GRADE_IF_ABSENT_FOR_ALL_TESTS: True


GITHUB_REPO_ROOT: '** OVERRIDDEN **'
JWT_AUTH: {JWT_PRIVATE_SIGNING_JWK: '{"e": "AQAB", "d": "HIiV7KNjcdhVbpn3KT-I9n3JPf5YbGXsCIedmPqDH1d4QhBofuAqZ9zebQuxkRUpmqtYMv0Zi6ECSUqH387GYQF_XvFUFcjQRPycISd8TH0DAKaDpGr-AYNshnKiEtQpINhcP44I1AYNPCwyoxXA1fGTtmkKChsuWea7o8kytwU5xSejvh5-jiqu2SF4GEl0BEXIAPZsgbzoPIWNxgO4_RzNnWs6nJZeszcaDD0CyezVSuH9QcI6g5QFzAC_YuykSsaaFJhZ05DocBsLczShJ9Omf6PnK9xlm26I84xrEh_7x4fVmNBg3xWTLh8qOnHqGko93A1diLRCrKHOvnpvgQ",
    "n": "o5cn3ljSRi6FaDEKTn0PS-oL9EFyv1pI7dRgffQLD1qf5D6sprmYfWWokSsrWig8u2y0HChSygR6Jn5KXBqQn6FpM0dDJLnWQDRXHLl3Ey1iPYgDSmOIsIGrV9ZyNCQwk03wAgWbfdBTig3QSDYD-sTNOs3pc4UD_PqAvU2nz_1SS2ZiOwOn5F6gulE1L0iE3KEUEvOIagfHNVhz0oxa_VRZILkzV-zr6R_TW1m97h4H8jXl_VJyQGyhMGGypuDrQ9_vaY_RLEulLCyY0INglHWQ7pckxBtI5q55-Vio2wgewe2_qYcGsnBGaDNbySAsvYcWRrqDiFyzrJYivodqTQ",
    "q": "3T3DEtBUka7hLGdIsDlC96Uadx_q_E4Vb1cxx_4Ss_wGp1Loz3N3ZngGyInsKlmbBgLo1Ykd6T9TRvRNEWEtFSOcm2INIBoVoXk7W5RuPa8Cgq2tjQj9ziGQ08JMejrPlj3Q1wmALJr5VTfvSYBu0WkljhKNCy1KB6fCby0C9WE",
    "p": "vUqzWPZnDG4IXyo-k5F0bHV0BNL_pVhQoLW7eyFHnw74IOEfSbdsMspNcPSFIrtgPsn7981qv3lN_staZ6JflKfHayjB_lvltHyZxfl0dvruShZOx1N6ykEo7YrAskC_qxUyrIvqmJ64zPW3jkuOYrFs7Ykj3zFx3Zq1H5568G0",
    "kid": "BTZ9HA6K", "kty": "RSA"}', JWT_PUBLIC_SIGNING_JWK_SET: '{"keys": [{"kid":
    "BTZ9HA6K", "e": "AQAB", "kty": "RSA", "n": "o5cn3ljSRi6FaDEKTn0PS-oL9EFyv1pI7dRgffQLD1qf5D6sprmYfWWokSsrWig8u2y0HChSygR6Jn5KXBqQn6FpM0dDJLnWQDRXHLl3Ey1iPYgDSmOIsIGrV9ZyNCQwk03wAgWbfdBTig3QSDYD-sTNOs3pc4UD_PqAvU2nz_1SS2ZiOwOn5F6gulE1L0iE3KEUEvOIagfHNVhz0oxa_VRZILkzV-zr6R_TW1m97h4H8jXl_VJyQGyhMGGypuDrQ9_vaY_RLEulLCyY0INglHWQ7pckxBtI5q55-Vio2wgewe2_qYcGsnBGaDNbySAsvYcWRrqDiFyzrJYivodqTQ"}]}',
  JWT_SECRET_KEY: super-secret-key}
LMS_BASE: localhost:8003
LMS_ROOT_URL: http://localhost:8003
LOCAL_LOGLEVEL: INFO
LOGGING_ENV: sandbox
LOG_DIR: '** OVERRIDDEN **'
MEDIA_URL: /media/
MKTG_URL_LINK_MAP: {ABOUT: about, BLOG: blog, CAREERS: careers, CONTACT: contact,
  COURSES: courses, DONATE: donate, HELP_CENTER: help-center, HONOR: honor, NEWS: news,
  PRESS: press, PRIVACY: privacy, ROOT: root, SITEMAP.XML: sitemap_xml, TOS: tos,
  WHAT_IS_VERIFIED_CERT: verified-certificate}
MODULESTORE:
  default:
    ENGINE: xmodule.modulestore.mixed.MixedModuleStore
    OPTIONS:
      mappings: {}
      stores:
      - DOC_STORE_CONFIG:
          collection: modulestore
          db: test
          host: [localhost]
          port: 27017
        ENGINE: xmodule.modulestore.mongo.DraftMongoModuleStore
        NAME: draft
        OPTIONS:
          collection: modulestore
          db: test
          default_class: xmodule.hidden_module.HiddenDescriptor
          fs_root: '** OVERRIDDEN **'
          host: [localhost]
          port: 27017
          render_template: common.djangoapps.edxmako.shortcuts.render_to_string
      - ENGINE: xmodule.modulestore.xml.XMLModuleStore
        NAME: xml
        OPTIONS: {data_dir: '** OVERRIDDEN **', default_class: xmodule.hidden_module.HiddenDescriptor}
# We need to test different scenarios, following setting effectively disbale rate limiting
PASSWORD_RESET_IP_RATE: '1/s'
PASSWORD_RESET_EMAIL_RATE: '1/s'
PASSWORD_RESET_SUPPORT_LINK: https://support.example.com/password-reset-help.html
REGISTRATION_EXTENSION_FORM: openedx.core.djangoapps.user_api.tests.test_helpers.TestCaseForm
REGISTRATION_EXTRA_FIELDS: {city: hidden, country: required, gender: optional, goals: optional,
  honor_code: required, level_of_education: optional, mailing_address: optional, terms_of_service: hidden,
  year_of_birth: optional}
# Use MockSearchEngine as the search engine for test scenario
SEARCH_ENGINE: "search.tests.mock_search_engine.MockSearchEngine"
# this secret key should be the same as cms/envs/bok_choy.py's
SECRET_KEY: "very_secret_bok_choy_key"

SERVER_EMAIL: devops@example.com
SESSION_COOKIE_DOMAIN: null
SITE_NAME: localhost:8003
SOCIAL_SHARING_SETTINGS: {CERTIFICATE_FACEBOOK: true, CERTIFICATE_FACEBOOK_TEXT: 'Testing
    facebook feature:', CUSTOM_COURSE_URLS: true, DASHBOARD_FACEBOOK: true, DASHBOARD_TWITTER: true,
  DASHBOARD_TWITTER_TEXT: 'Testing feature:'}
STATIC_URL_BASE: /static/
SUPPORT_SITE_LINK: https://support.example.com
SYSLOG_SERVER: ''
TECH_SUPPORT_EMAIL: technical@example.com
THIRD_PARTY_AUTH_BACKENDS: [social_core.backends.google.GoogleOAuth2, social_core.backends.linkedin.LinkedinOAuth2,
  social_core.backends.facebook.FacebookOAuth2, common.djangoapps.third_party_auth.dummy.DummyBackend,
  common.djangoapps.third_party_auth.saml.SAMLAuthBackend]
THIRD_PARTY_AUTH:
  Google:
    SOCIAL_AUTH_GOOGLE_OAUTH2_KEY": "test"
    SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET": "test"
  Facebook:
    SOCIAL_AUTH_FACEBOOK_KEY": "test"
    SOCIAL_AUTH_FACEBOOK_SECRET": "test"
TIME_ZONE: America/New_York
TRACKING_BACKENDS:
  mongo:
    ENGINE: common.djangoapps.track.backends.mongodb.MongoBackend
    OPTIONS: {collection: events, database: test}
WIKI_ENABLED: true
WAFFLE_OVERRIDE: True
XQUEUE_INTERFACE:
  basic_auth: [edx, edx]
  django_auth: {password: password, username: lms}
  # Configure the LMS to use our stub XQueue implementation
  url: 'http://localhost:8040'

ZENDESK_API_KEY: ''
ZENDESK_USER: ''

