Skip to content

Commit

Permalink
Add Juniper pages
Browse files Browse the repository at this point in the history
(cherry picked from commit ff8c1f6)
  • Loading branch information
Ned Batchelder committed Jun 8, 2020
1 parent 36d70a1 commit 5b481e5
Show file tree
Hide file tree
Showing 4 changed files with 146 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ platform.
.. toctree::
:maxdepth: 2

juniper
ironwood
hawthorn
ginkgo
Expand Down
134 changes: 134 additions & 0 deletions en_us/install_operations/source/platform_releases/juniper.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
.. _Open edX Juniper Release:

#########################
Open edX Juniper Release
#########################

This section describes how to install the Open edX Juniper release.

.. contents::
:local:
:depth: 1

****************************
What's Included in Juniper
****************************

The Open edX Juniper release contains several new features for learners,
course teams, and developers. For more information, see the
`Open edX Release Notes`_.


******************************
What Is the Juniper Git Tag?
******************************

A git tag identifies the version of Open edX code that is the Juniper release.
About three dozen repositories are tagged as part of an Open edX release. Many
other repositories are installed as dependencies of those repositories. You can
find the most up-to-date git tag for the current Open edX release on
the `Open edX Releases Wiki page`_.

*******************************
Installing the Juniper Release
*******************************

You can install the Open edX Juniper release using either
`devstack`_ or the `Open edX Native Installation`_ instructions.

Juniper releases have git tag names like ``open-release/juniper.1``.
The available names are detailed on the `Open edX Releases Wiki page`_.

***********************************
Upgrading from the Ironwood Release
***********************************

The recommended approach to upgrading an existing installation of the Open edX
Ironwood release to the Juniper release is to make a fresh installation of the
Juniper release on a new machine, and move your data and settings to it.

To move and upgrade your Ironwood data onto a Juniper installation, follow these
steps.

#. Be sure that your Ironwood installation is on the latest commit from
``open-release/ironwood.master``. This ensures that your database is fully
migrated and ready for upgrade to Juniper.

#. Stop all services on the Ironwood machine.

#. Dump the data on the Ironwood machine. Here's an example script that will dump
the MySQL and Mongo databases into a single ``.tgz`` file. The script will
prompt for the MySQL and Mongo passwords as needed.

.. code-block:: bash
#!/bin/bash
MYSQL_CONN="-uroot -p"
echo "Reading MySQL database names..."
mysql ${MYSQL_CONN} -ANe "SELECT schema_name FROM information_schema.schemata WHERE schema_name NOT IN ('mysql','information_schema','performance_schema', 'sys')" > /tmp/db.txt
DBS="--databases $(cat /tmp/db.txt)"
NOW="$(date +%Y%m%dT%H%M%S)"
SQL_FILE="mysql-data-${NOW}.sql"
echo "Dumping MySQL structures..."
mysqldump ${MYSQL_CONN} --add-drop-database --skip-add-drop-table --no-data ${DBS} > ${SQL_FILE}
echo "Dumping MySQL data..."
# If there is table data you don't need, add --ignore-table=tablename
mysqldump ${MYSQL_CONN} --no-create-info ${DBS} >> ${SQL_FILE}
for db in edxapp cs_comments_service; do
echo "Dumping Mongo db ${db}..."
mongodump -u admin -p -h localhost --authenticationDatabase admin -d ${db} --out mongo-dump-${NOW}
done
tar -czf openedx-data-${NOW}.tgz ${SQL_FILE} mongo-dump-${NOW}
#. Copy the ``.tgz`` data file to the Juniper machine.

#. Stop all services on the Juniper machine.

#. Restore the Ironwood data into the Juniper machine. As an example, you might
use the following commands.

.. code-block:: bash
$ tar -xvf openedx-data-20200411T154750.tgz
$ mysql -uroot -p < mysql-data-20200411T154750.sql
$ mongorestore -u admin -p -h localhost --authenticationDatabase admin --drop -d edxapp mongo-dump-20200411T154750/edxapp
$ mongorestore -u admin -p -h localhost --authenticationDatabase admin --drop -d cs_comment_service mongo-dump-20200411T154750/cs_comment_service_development
#. Run the Juniper migrations, which will update your Ironwood data to be
valid for Juniper:

.. code-block:: bash
$ /edx/app/edx_ansible/edx_ansible/util/install/native.sh --tags migrate
#. Copy your configuration files from the Ironwood machine to the Juniper machine.

#. Restart all services.

******************************************
Upgrading to a Subsequent Juniper Release
******************************************

Occasionally, we release updates to Juniper. For example, the second
release of Juniper will be ``open-release/juniper.2``.
The steps to upgrade differ based on your original installation method.

================================
Upgrading a Docker Installation
================================

Devstack is installed using Docker. To upgrade from one Juniper
release to another, follow the instructions in `devstack`_.

===============================
Upgrading a Native Installation
===============================

If you installed Open edX using the `Open edX Native Installation`_, you can
upgrade from one Juniper release to another by re-running those steps using
your desired Juniper tag as the new value for ``OPENEDX_RELEASE``.


.. include:: ../../../links/links.rst
1 change: 1 addition & 0 deletions en_us/open_edx_release_notes/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ The *Open edX Release Notes* provide information about releases, migrations, and

front_matter/index
os_documentation
juniper
ironwood
hawthorn
ginkgo
Expand Down
10 changes: 10 additions & 0 deletions en_us/open_edx_release_notes/source/juniper.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
.. _Open edX Juniper Release:

########################
Open edX Juniper Release
########################

This page will list the highlights of the Juniper release of the Open edX platform.

.. include:: links.rst
.. include:: ../../links/links.rst

0 comments on commit 5b481e5

Please sign in to comment.