@@ -33,6 +33,6 @@ configuration tools, we will be migrating features to this project
over time, so expect frequent changes.
For more information including installation instruction please see the [Configuration Wiki](https://github.com/edx/configuration/wiki).
For more information including installation instruction please see the [Open edX Operations](https://openedx.atlassian.net/wiki/display/OpenOPS/Open+edX+Operations+Home) page.
For info on any large recent changes please see the [change log](https://github.com/edx/configuration/blob/master/CHANGELOG.md).
Vagrant instances for local development and testing.
Vagrant instances for local development and testing of edX instances and Ansible playbooks/roles.
- Vagrant stacks in ``base`` create new base boxes from scratch.
- Vagrant stacks in ``release`` download a base box with most requirements already installed. The instances then update themselves with the latest versions of the application code.
If you are a developer or designer, you should use the ``release`` stacks.
There are two versions of the stack:
For creating test edX instances, there are two versions of the stack:
- ``fullstack`` is a production-like configuration running all the services on a single server. https://github.com/edx/configuration/wiki/edX-Production-Stack
- ``devstack`` is designed for local development. Although it uses the same system requirements as in production, it simplifies certain settings to make development more convenient. https://github.com/edx/configuration/wiki/edX-Developer-Stack
- ``test_role`` (under ``base`` directory) is not used for creating test edx instances. Instead, it is used for testing the configuration scripts themselves.
- ``devstack`` is designed for local development. It uses the same system requirements as in production, but simplifies certain settings to make development more convenient. https://github.com/edx/configuration/wiki/edX-Developer-Stack
For testing Ansible playbooks and roles, there are two directories under the ``base`` directory:
- ``test_playbook`` is used for testing the playbooks in the Ansible configuration scripts.
- ``test_role`` is used for testing the roles in the Ansible configuration scripts.
To test an Ansible playbook using Vagrant:
- Create/modify a playbook under ``/playbooks`` (e.g. "foo.yml")
- Export its name as the value of the environment variable ``VAGRANT_ANSIBLE_PLAYBOOK``, like this:
- ``export VAGRANT_ANSIBLE_PLAYBOOK=foo``
- Execute ``vagrant up`` from within the ``test_playbook`` directory.
To test an Ansible role using Vagrant:
- Create/modify a role under ``/playbooks/roles`` (e.g. "bar-role")
- Export its name as the value of the environment variable ``VAGRANT_ANSIBLE_ROLE``, like this:
- ``export VAGRANT_ANSIBLE_ROLE=bar-role``
- Execute ``vagrant up`` from within the ``test_role`` directory.