Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit

Move filenames that are hashed based on content to a common
bucket path in S3 so that we don't have search glitches from
404s on deploys


Failed to load latest commit information.
Latest commit message
Commit time
April 22, 2022 14:45
June 6, 2018 16:12
April 16, 2019 17:31
July 10, 2013 02:12
February 20, 2020 09:41

Configuration Management

This repository is a collection of tools and scripts that uses to deploy openedx. The purpose of this repository is to share portions of our toolchain with the community. This repository is not the best way to get started running openedx. For that, please look at Open EdX Installation options, which contains links to the recommended paths for new installations.

Important: The Open edX configuration scripts need to be run as root on your servers and will make changes to service configurations including, but not limited to, sshd, dhclient, sudo, apparmor and syslogd. Our scripts are made available as we use them and they implement our best practices. We strongly recommend that you review everything that these scripts will do before running them against your servers. We also recommend against running them against servers that are hosting other applications. No warranty is expressed or implied.

For more information including installation instructions please see the OpenEdX Wiki.

For info on any large recent changes please see the change log.

What is in this Repo?

  • playbooks: This directory contains ansible playbooks that can be used to configure individual services in the openedx platform. See Open EdX Installation options before trying to use any of the scripts in this directory.
  • docker: This directory contains dockerfiles that can be used to test that playbooks execute cleanly. See Makefiles for Documentation on how to run these containers.
  • requirements : inputs for pip-compile Update files in this directory and then run make upgrade to update requirements.txt
  • tests: scripts used by travis-ci to test changes to this repo
  • util: one-off scripts or tools used to perform certain functions related to openedx management.
  • vagrant: vagrant tooling for testing changes to this repo.


This repository is in sustained status. The goal is to deprecate this codebase and move the deployment code into the repos with the application code.

With the adoption of containerized application platforms like Kubernetes, the tools in this repository are complex and inappropriate for building small single purpose containers.

At, we are focusing on deployment of applications using Terraform and Kubernetes. We hope to provide open source tooling for this soon.


  • Bugfixes: If you would like to contribute a bugfix to this codebase, please open a pull request. A bot will automatically walk your contribution through the Open Source Contribution process.