Skip to content
This repository was archived by the owner on Dec 16, 2024. It is now read-only.

Commit

Permalink
chore: Redwood release changes (#51)
Browse files Browse the repository at this point in the history
  • Loading branch information
DawoudSheraz authored May 9, 2024
1 parent 105f415 commit 1f93875
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 61 deletions.
69 changes: 36 additions & 33 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
name: Deploy

on:
# schedule:
# Run at 7am every day
# - cron: '0 7 * * *'
# Run at 7am every Monday
# - cron: '0 7 * * 1'
schedule:
# Run at 7am every day
# - cron: '0 7 * * *'
# Run at 7am every Monday
- cron: "0 7 * * 1"
workflow_dispatch:

jobs:
deploy:
runs-on: ubuntu-latest
env:
SSH: ssh -o StrictHostKeyChecking=no -i ~/.ssh/demo.key tutor@quince.demo.edly.io
VERSION: quince
LMS_HOST: quince.demo.edly.io
SSH: ssh -o StrictHostKeyChecking=no -i ~/.ssh/demo.key ubuntu@redwood.demo.edly.io
VERSION: redwood
LMS_HOST: redwood.demo.edly.io
TUTOR: ~/.local/bin/tutor
steps:
- name: Configure SSH
Expand All @@ -30,28 +30,29 @@ jobs:
# https://github.com/pypa/pip/issues/7953
run: |
$SSH "#! /bin/bash -e
pip install --user --upgrade pip==23.1.2 setuptools
pip install --user --upgrade pip setuptools
"
# Server system dependencies, to be run separately
# apt update && apt install -y python3-pip
- name: Install dependencies, tutor and plugins (from source)
# Pending:
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-android.git@$VERSION#egg=tutor-android
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/eduNEXT/tutor-contrib-codejail.git@$VERSION#egg=tutor-contrib-codejail
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-credentials.git@$VERSION#egg=tutor-credentials
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-cairn.git@$VERSION#egg=tutor-cairn
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-discovery.git@$VERSION#egg=tutor-discovery
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-ecommerce.git@$VERSION#egg=tutor-ecommerce
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-forum.git@$VERSION#egg=tutor-forum
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-minio.git@$VERSION#egg=tutor-minio
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-notes.git@$VERSION#egg=tutor-notes
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-webui.git@$VERSION#egg=tutor-webui
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-xqueue.git@$VERSION#egg=tutor-xqueue
# pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-jupyter.git@$VERSION#egg=tutor-jupyter
run: |
$SSH "#! /bin/bash -e
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor.git@$VERSION#egg=tutor
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-android.git@$VERSION#egg=tutor-android
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/eduNEXT/tutor-contrib-codejail.git@$VERSION#egg=tutor-contrib-codejail
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-cairn.git@$VERSION#egg=tutor-cairn
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-credentials.git@$VERSION#egg=tutor-credentials
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-discovery.git@$VERSION#egg=tutor-discovery
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-ecommerce.git@$VERSION#egg=tutor-ecommerce
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-forum.git@$VERSION#egg=tutor-forum
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-indigo.git@$VERSION#egg=tutor-indigo
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-mfe.git@$VERSION#egg=tutor-mfe
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-minio.git@$VERSION#egg=tutor-minio
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-notes.git@$VERSION#egg=tutor-notes
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-webui.git@$VERSION#egg=tutor-webui
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-xqueue.git@$VERSION#egg=tutor-xqueue
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-jupyter.git@$VERSION#egg=tutor-jupyter
pip install --user --upgrade --src=~/apps/openedx/src --editable git+https://github.com/overhangio/tutor-indigo.git@$VERSION#egg=tutor-indigo
"
# Backup
- name: Backup data
Expand Down Expand Up @@ -95,8 +96,8 @@ jobs:
"
# Configure
- name: Enable plugins
# missing plugins: none
run: $SSH "$TUTOR plugins enable android cairn codejail discovery ecommerce credentials forum indigo mfe minio notes webui xqueue jupyter"
# missing plugins: android codejail credentials cairn discovery ecommerce forum minio notes webui xqueue jupyter
run: $SSH "$TUTOR plugins enable indigo mfe "
- name: Configure tutor settings
run: |
$SSH "#! /bin/bash -e
Expand All @@ -111,21 +112,20 @@ jobs:
$SSH "#! /bin/bash -e
$TUTOR config save --append 'OPENEDX_EXTRA_PIP_REQUIREMENTS=edx-event-routing-backends>=7.2.0,<8.0.0'
"
- name: Configure xqueue grader password
run: |
$SSH "$TUTOR config save --set XQUEUE_AUTH_PASSWORD=xqueuepassword"
- name: Configure Jupyter LTI Password
run: |
$SSH "$TUTOR config save --set JUPYTER_LTI_CLIENT_SECRET=jupyter-lti-password"
# - name: Configure xqueue grader password
# run: |
# $SSH "$TUTOR config save --set XQUEUE_AUTH_PASSWORD=xqueuepassword"
# - name: Configure Jupyter LTI Password
# run: |
# $SSH "$TUTOR config save --set JUPYTER_LTI_CLIENT_SECRET=jupyter-lti-password"
# Build
- name: Build Docker images
run: |
$SSH "#! /bin/bash -e
# note: we removed the --no-cache option to avoid long deploy times
$TUTOR images build all
"
- name: Initialize codejail
run: $SSH "$TUTOR local do init --limit=codejail"
# - name: Initialize codejail
# run: $SSH "$TUTOR local do init --limit=codejail"
- name: Launch
run: $SSH "$TUTOR local launch --non-interactive"
# Provision
Expand All @@ -152,6 +152,9 @@ jobs:
- name: "Provision: Import demo course"
run: $SSH "$TUTOR local do importdemocourse"

- name: "Prune Docker system"
run: $SSH "docker system prune -a -f --volumes"

# - name: "Provision: Import test course & libraries"
# run: |
# $SSH "#! /bin/bash -e
Expand Down
56 changes: 28 additions & 28 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
# Open edX release demo platform CD

This repo holds the continuous deployment (CD) scripts to deploy the Open edX release demo platforms. As of October 11th 2023 it is used to deploy and configure a test instance of the Quince release.
This repo holds the continuous deployment (CD) scripts to deploy the Open edX release demo platforms. As of May 9, 2024, it is used to deploy and configure a test instance of the Redwood release.

⚠ THIS REPO IS NOT FOR PUBLIC CONSUMPTION ⚠ It is only used to deploy and configure a test instance for the [Build/Test/Release working group](https://discuss.openedx.org/c/working-groups/build-test-release/30). Detected issues should be reported to the working group.

URLs:

- LMS: https://quince.demo.edly.io
- Studio: https://studio.quince.demo.edly.io
- LMS: https://redwood.demo.edly.io
- Studio: https://studio.redwood.demo.edly.io

You may login with the following credentials:
You may log in with the following credentials:

- Student user:
- username: student
- email: [email protected]
- password: student
- username: student
- email: [email protected]
- password: student
- Administrator user:
- username: admin
- email: [email protected]
- password: admin
- username: admin
- email: [email protected]
- password: admin

The platform is reset weekly, every Monday at 7 am UTC.

The [deployment script](https://github.com/overhangio/openedx-release-demo/blob/master/.github/workflows/deploy.yml) is included in this repository. If you are working on testing the latest release and you would like to modify this script, please do open a pull request.
The [deployment script](https://github.com/overhangio/openedx-release-demo/blob/master/.github/workflows/deploy.yml) is included in this repository. If you are working on testing the latest release and you would like to modify this script, please open a pull request.

The following plugins are enabled on the demo platform:

- tutor-android ([PR](https://github.com/overhangio/tutor-android/pull/17) by @muhammadali286) The mobile all can be downloaded from https://mobile.quince.demo.edly.io/app.apk.
- tutor-cairn ([PR](https://github.com/overhangio/tutor-cairn/pull/20/) by @FahadKhalid210)
- tutor-contrib-codejail ([branch](https://github.com/eduNEXT/tutor-contrib-codejail/tree/quince) by @MaferMazu)
- tutor-credentials ([PR](https://github.com/overhangio/tutor-credentials/pull/28) by @Talha-Rizwan)
- tutor-discovery ([PR](https://github.com/overhangio/tutor-discovery/pull/50) by @ziafazal)
- tutor-ecommerce ([PR](https://github.com/overhangio/tutor-ecommerce/pull/47) by @ziafazal)
- tutor-forum ([PR](https://github.com/overhangio/tutor-forum/pull/28) by @ghassanmas)
- tutor-indigo ([PR](https://github.com/overhangio/tutor-indigo/pull/51) by @hinakhadim)
- tutor-mfe ([PR](https://github.com/overhangio/tutor-mfe/pull/156) by @regisb)
- tutor-minio ([PR](https://github.com/overhangio/tutor-minio/pull/31) by @FahadKhalid210)
- tutor-notes ([PR](https://github.com/overhangio/tutor-notes/pull/29) by @jfavellar90)
- tutor-webui ([PR](https://github.com/overhangio/tutor-webui/pull/11) by @Abdul-Muqadim-Arbisoft)
- tutor-xqueue ([PR](https://github.com/overhangio/tutor-xqueue/pull/25) by @jfavellar90)
- tutor-jupyter ([PR](https://github.com/overhangio/tutor-jupyter/pull/4) by @mhsiddiqui). LTI passport is `jupyterhub:openedx:jupyter-lti-password`.

If you are interested in upgrading these plugins to Quince, please submit a PR by following the regular [plugin upgrade instructions](https://discuss.overhang.io/t/how-to-upgrade-a-tutor-plugin/1488).
- tutor-android (TBD)
- tutor-cairn (TBD)
- tutor-contrib-codejail (TBD)
- tutor-credentials (TBD)
- tutor-discovery (TBD)
- tutor-ecommerce (TBD)
- tutor-forum (TBD)
- tutor-indigo ([PR](https://github.com/overhangio/tutor-indigo/pull/79) by @hinakhadim)
- tutor-mfe ([PR](https://github.com/overhangio/tutor-mfe/pull/207) by @hinakhadim)
- tutor-minio (TBD)
- tutor-notes (TBD)
- tutor-webui (TBD)
- tutor-xqueue (TBD)
- tutor-jupyter (TBD)

If you are interested in upgrading these plugins to Redwood, please submit a PR by following the regular [plugin upgrade instructions](https://discuss.overhang.io/t/how-to-upgrade-a-tutor-plugin/1488).

## Testing

Expand All @@ -50,7 +50,7 @@ The deployment script can be tested with [act](https://github.com/nektos/act). D
# edit the resulting .secrets file
cp .secrets.sample .secrets

Note that multi-line strings are not supported in secrets files, so you should replace carriage returns by "\n".
Note that multi-line strings are not supported in secrets files, so you should replace carriage returns with "\n".

Then run::

Expand Down

0 comments on commit 1f93875

Please sign in to comment.