All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning for each flavored OpenEdx release.
- Fix build by installing py2neo 3.1.2 from its github repository
- Fix build after get-pip.py script moved location
- Fix pip install for python 2.7
hawthorn.1-3.3.0 - 2020-05-14
- Allow serving static files via a CDN
- Collect static files in the
edxapp
image so it can run without mounting a volume for its static files in Kubernetes
hawthorn.1-3.2.0 - 2020-04-08
- Rate limiting authentication backend that works behind proxies
- Refactor the way authentication backends are configured to make it straightforward
- Set basic authentification backend for development environment
- Remove hardcoded FILE_UPLOAD_STORAGE_BUCKET_NAME value to make sure it is configurable
hawthorn.1-3.1.1 - 2020-01-23
- Copy
webpack-stats.json
files to expected static files root path in case no static files volume is mounted
hawthorn.1-3.1.0 - 2020-01-15
- Upgrade to a recent release of nodejs as the one packaged in Ubuntu was breaking the build
- Checks that ensure required directories exist in volumes
hawthorn.1-3.0.0 - 2020-01-10
- Configure all cache backends
- Make Gunicorn timeout, workers and threads configurable via an environment variable
- Move DATA_DIR to same location as for other flavors (breaking change)
- Make ORA2 configurable and use filesystem backend by default
- Stop inheriting from MKTG_URL_LINK_MAP default setting
- Ensure all required directories exists inside each volume
- Make Celery result backend configurable
hawthorn.1-2.8.0 - 2019-11-22
- Set replicaSet and read_preference in mongodb connection
hawthorn.1-2.7.1 - 2019-10-25
- Restore LOCALE_PATHS override for the LMS
hawthorn.1-2.7.0 - 2019-10-10
- Add LOCALE_PATHS to configurable settings
- Remove useless timezone configuration
- Remove useless development dependencies
hawthorn.1-2.6.0 - 2019-02-08
- Make memcached host & port configurable.
hawthorn.1-2.5.1 - 2019-01-31
- Use default common setting for
TRACKING_IGNORE_URL_PATTERNS
hawthorn.1-2.0.1 - 2018-10-02
- Add local node binaries to the path
hawthorn.1-2.0.0 - 2018-10-01
The development environment was not working properly since we upgraded to
hawthorn
because assets are built differently in production and in
development. This release fixed the development environment and comes with a
complete rewrite of the Dockerfile
to leverage multi-stage builds.
We identified a lot more improvements that could not be done because of design issues in OpenEdx.
For example:
- get rid of the
node_modules
directory in the production image, - avoid reinstalling everything after mounting sources as volumes in the development image.
We did not surrender on these improvements but will need to spend some time demonstrating what is wrong to edX and submitting Pull Requests' to fix the issues at their root.
- Refactor the Dockerfile from scratch using multi-stage build
- Fixed development environment
hawthorn.1-1.0.6 - 2018-09-19
- Fix
EMAIL_BACKEND
default (follow-up of766fcd8
, asconfig
requires adefault
keyword)
hawthorn.1-1.0.5 - 2018-09-14
The database related settings (mysql & mongodb) were set in one big dictionary variable containing all the parameters:
- some are secret like passwords and some aren't,
- some change at each deployment like host names and some never change.
In Arnold, credentials are stored as OpenShift secrets and injected as environment variables whereas non secret settings are injected from a YAML file. For this reason, we needed to be able to set each database setting separately.
- add
vim
editor to development container
- set each database setting separately
- update the demo course to
hawthorn.1
to match the version ofedxapp
that we are running - set a default configuration for password complexity so that automatic creation
of users with
/auto_auth
works by default in development
- fix platform name and description default values to avoid de-serialization bug in OpenEdX while waiting for a fix on edx-platform
hawthorn.1-1.0.4 - 2018-09-11
This debugging release is getting us closer to a functional hawthorn.1
image
in Arnold:
- Add missing setting for Celery default queues
- Activate easy creation of test users in development
- Use LMS and CMS hosts as site names for the LMS and CMS respectively
- Fix bug on the configuration of the email backend in development
- Fix activating requirejs debugging mode in development
hawthorn.1-1.0.3 - 2018-09-11
This Release adds configuration formatters on all settings so that they can all be set via environment variables. This is because environment variables can only pass strings and some settings are expecting other types. Here are some examples of formatters we use:
- Booleans:
bool
- Integers:
int
- Dictionaries or lists:
json.loads
- Dates:
dateutil.parser.parse
hawthorn.1-1.0.2 - 2018-09-10
- Add
mailcatcher
to handle the emails sent byedxapp
infun-platform
- Allow formatting settings passed as environment variables and apply it for
celery
,mailcatcher
and the database configurations
- Improve email settings to allow flexible configurations in each environment
- Deactivate
celery
to simplify development infun-platform
- Move environment variables to environment files
- Fix
update_assets
in developmentDockerfile
to avoid the uninstalling/reinstalling that Open edX does by default.
hawthorn.1-1.0.1 - 2018-08-30
Remove webpack stats from the statics target folder. There is no obvious reason
to store webpack-stats.json
files in the STATIC_ROOT
tree. It causes more
problems than it solves as we need to manually copy it during deployment since
it is not collected via collectstatics
. Generating those files with
update_assets
at the project root seems a reasonable choice.
hawthorn.1-1.0.0 - 2018-08-30
First experimental release of an hawthorn.1
Docker image. This release is the
result of updating our OpenEdX images from ginkgo
to hawthorn.1
. It is not
functional and is intended for development and debugging work in
Arnold.