Open edX software versions

Hey!

From the last meeting, we talked about getting the current version used by different software used to run Openedx. I setup a local installation and searched for the installed version of the databases and python/ruby/npm of the basic services. I still have to do the extraction for Juniper, so we can compare when we start creating the release.
After this exercise, I think creating a playbook that fetch the installed version and roles would be a lot faster to fetch and compare (Or just do it this way until we move to another deployment method).

If I’m missing any important services, I can restart the VM and look for it.

Service Software Version Command
System MySQL 5.6.32 mysqld --version
System MongoDB v3.6.17 mongod --version
System RabbitMQ 3.6.9 sudo rabbitmqctl status
System memcached 1.4.25 memcached -V
System ElasticSearch 1.5.2 curl -XGET ‘http://localhost:9200
System node v12.18.4 node --version
System npm 6.14.6 npm --version
System python 2.7.12 python --version
edx-platform python 3.5.2 /edx/app/edxapp/venvs/edxapp/bin/python --version
edx-sandbox python 3.5.2 /edx/app/edxapp/venvs/edxapp-sandbox/bin/python --version
certs python 3.8.6 /edx/app/certs/venvs/certs/bin/python --version
discovery python 3.8.6 /edx/app/discovery/venvs/discovery/bin/python --version
ecommerce python 3.8.6 /edx/app/ecommerce/venvs/ecommerce/bin/python --version
forum ruby 2.5.7p206 /edx/app/forum/.rbenv/shims/ruby --version
forum gem 2.7.8 /edx/app/forum/.rbenv/shims/gem --version
insights python 3.8.6 /edx/app/insights/venvs/insights/bin/python --version
MFE node 6.12.1 /edx/app/profile/nodeenvs/profile/bin/node --version
MFE npm v12.13.1 /edx/app/profile/nodeenvs/profile/bin/npm --version
XQueue python 3.5.2 /edx/app/xqueue/venvs/xqueue/bin/python --version

Table: https://docs.google.com/spreadsheets/d/16JhlHnLYBXDBmQW81zgd6Vfju-McEUFjtaqVtP4SFek/edit?usp=sharing

Installation Version: 2020-10-02T20:37:55Z https://github.com/edx/configuration/commit/e511094febfb428e108d509b34e3c3bf0d776df8

Services:

/edx/bin/supervisorctl status
analytics_api                    RUNNING   pid 26668, uptime 2:53:16
certs                            RUNNING   pid 20230, uptime 1:19:56
cms                              RUNNING   pid 1162, uptime 3:24:52
discovery                        RUNNING   pid 12347, uptime 1:27:10
ecommerce                        RUNNING   pid 20300, uptime 2:59:23
ecomworker                       RUNNING   pid 10117, uptime 0:00:02
edxapp_worker:cms_default_1      RUNNING   pid 18091, uptime 3:48:27
edxapp_worker:cms_high_1         RUNNING   pid 18093, uptime 3:48:26
edxapp_worker:lms_default_1      RUNNING   pid 18100, uptime 3:48:24
edxapp_worker:lms_high_1         RUNNING   pid 18105, uptime 3:48:22
edxapp_worker:lms_high_mem_1     RUNNING   pid 18110, uptime 3:48:21
forum                            RUNNING   pid 2977, uptime 0:54:48
insights                         RUNNING   pid 11508, uptime 2:36:26
lms                              RUNNING   pid 2805, uptime 3:21:18
notifier-celery-workers          RUNNING   pid 15022, uptime 1:24:56
notifier-scheduler               RUNNING   pid 14938, uptime 1:25:15
xqueue                           RUNNING   pid 18348, uptime 1:22:09
xqueue_consumer                  RUNNING   pid 18391, uptime 1:22:06

/edx/app folder:

ls -d /edx/app/* | cut -f1
/edx/app/account
/edx/app/analytics_api
/edx/app/certs
/edx/app/demo
/edx/app/discovery
/edx/app/ecommerce
/edx/app/ecomworker
/edx/app/edx_ansible
/edx/app/edxapp
/edx/app/forum
/edx/app/gradebook
/edx/app/insights
/edx/app/nginx
/edx/app/notifier
/edx/app/profile
/edx/app/rabbitmq
/edx/app/supervisor
/edx/app/xqueue

Best Regards,
Felipe.

3 Likes

This is all tremendously useful @felipe.espinoza.r, thanks a bunch!

I expect this is going to change a lot before Nov. 9, which is the date of the Koa feature freeze, so it would make sense to run this multiple times before then. Could you please publish your script, for instance as a Github gist?

Also, what is most interesting is actually the diff from Juniper. Could you also run your script on a native Juniper installation so that we can highlight the differences?

For comparison, here is the calendar/chart of the support windows for various versions: https://docs.google.com/spreadsheets/d/11DheEtMDGrbA9hsUvZ2SEd4Cc8CaC4mAfoV8SVaLBGI/edit#gid=417264012

1 Like

I wrote a small script to extract all the versions here: https://gist.github.com/fdns/8032710eceea0a2c63c1b4f0a5da8ec1

Extracted with $OPENEDX_RELEASE=open-release/juniper.3

Service Software Version
System mysql 5.6.32
System mongodb 3.6.17
System rabbitmq 3.6.9
System memcached 1.4.25
System elasticsearch 1.5.2
System node v12.19.0
System npm 6.14.8
System python 2.7.12
edx-platform python 3.5.2
edx-sandbox python 3.5.2
certs python 2.7.12
discovery python 3.5.2
ecommerce python 3.5.2
insight python 3.5.2
xqueue python 3.5.2
forum ruby 2.5.7p206
forum gem 2.7.8

Note: I don’t know if the node version difference was because I ran this in AWS instead of a local VM.

6 Likes

From now on please report your findings here: https://openedx.atlassian.net/wiki/spaces/COMM/pages/1398113104/Koa