Skip to content

Latest commit

 

History

History
105 lines (78 loc) · 4.61 KB

README.md

File metadata and controls

105 lines (78 loc) · 4.61 KB

Opencast Admin UI

The Opencast Admin UI is a graphical interface included with Opencast that allows admins to easily manage their Opencast instance.

Development and testing

To get a local copy of the admin UI to test or develop on, you can do the following:

git clone [email protected]:opencast/opencast-admin-interface.git opencast-admin-interface-demo
cd opencast-admin-interface-demo
git switch my-branch  # or otherwise check out, pull, merge, etc. whatever branch you want to test/hack on
npm ci
cd app
npm ci
cd ..

You can now run a local instance of the UI by saying

npm start

This runs a static file server in the background replying mock data to the various requests the UI would normally send to the Opencast backend. It also runs an autoreloading development server delivering the admin UI itself, and automatically open a browser tab pointing to it.

Not all functionality of the admin UI works in this mode. If you need to test with real data, or need the ability to change it, you can rely on the proxy functionality of said development server, instead of running the static file server. Run:

PROXY_TARGET=https://develop.opencast.org npm run client

Here, PROXY_TARGET is the target URL of the Opencast instance you want to test against. This can also be a local one like http://localhost:8080.

By default, this tries to authenticate backend requests using HTTP Basic Auth as user admin with the default password opencast. If you want to authenticate using different credentials, you can specify them in the PROXY_AUTH variable in the format user:password, as in

PROXY_TARGET=http://localhost:8080 PROXY_AUTH=jdoe:aligator3 npm run client

Ports

By default, the development server runs on port 3000, and the static server on port 5000. If you need to change these ports, you have to do the following:

PORT=5001 npm run server

This runs the static server only, serving assets under http://localhost:5001. Now, in a second terminal, run:

PORT=3001 PROXY_TARGET=http://localhost:5001 npm run client

This runs the development server on port 3001 and tells it about the alternative file server location.

How to cut a release for Opencast

  1. [NOT YET FUNCTIONAL] (Optional) Run the Update translations workflow to ensure all changes from crowdin are included in the next release.

  2. Switch to the commit you want to turn into the release

  3. Create and push a new tag

    DATE=$(date +%Y-%m-%d)
    git tag -m Release -s "$DATE"
    git push upstream "$DATE":"$DATE"
  4. Wait for the Create release draft workflow to finish

  5. Submit a pull request against Opencast

Translating the Admin UI

You can help translate the Opencast Admin UI to your language on crowdin.com/project/opencast-admin-interface. Simply request to join the project on Crowdin and start translating. If you are interested in translating a language that is not a target language right now, please create a GitHub issue and we will add the language.

This project follows the general form of Opencast's Localization Process, especially regarding what happens when you need to change an existing translation key. Any questions not answered there should be referred to the mailing lists!

Configuration

The Admin UI frontend cannot be directly configured. Rather, it adapts to the various configurations in the Opencast backend. TODO: Throw in some links to the docs, which ones?