Content Management System and apps used at http://assembly.org/
The installation is built upon Python version 3.4+ Backwards compatibility is not tested and not supported but it probably will work mostly on Python version 2.7~
To create an optional virtual environment run pyvenv ./env
in the project root directory.
To activate the virtual environment you must run the activate-script in the ./env/Scripts/ folder.
You can find further reference regarding python 3 virtual environments here.
The vagrant provision will install all required dependencies. See scripts-folder for more information. The default box configured is the latest Hashicorp provided Ubuntu 64-bit with 1024 MB configured RAM.
By default the vagrant box will forward port 8000 used by the Django server to your local port 8080. You can configure this in the Vagrantfile if you need to change it.
- Install Vagrant
- Supported providers by the default box are:
- VirtualBox
- Hyper-V
- VMware
- Supported providers by the default box are:
- Start vagrant by running
vagrant up
at project root - Connect to the vagrant box
vagrant ssh
- Start development environment
./run-dev.sh
. This will start two screen instances: gulp and django
- Install required packages
pip install -r requirements.txt
- Setup local configuration by creating a local.py file in assembly/settings
cp ./assembly/settings/local.py.template ./assembly/settings/local.py
- Setup your project configuration as advised in the configuration section
- Run database migrations and insert initial_data from core/fixtures
python manage.py bootstrap
- Create a superuser to access the cms
python manage.py createsuperuser
- Setup and build frontend project
cd frontend && npm start
- Run the server in foreground
python manage.py runserver
or proceed to the deployment section
To ease the chore of importing databases there's a simeple script in scripts
-folder.
Simply open ssh connection to the vagrant box vagrant ssh
and run ./import-database.sh /path/to/dump.sql
and the script will drop the current database
and import your dump to a clean database.
TODO