42 lines
1.5 KiB
Markdown
42 lines
1.5 KiB
Markdown
# MUI - Metadata User Interface
|
|
|
|
This repo contains the sources from which the base metadata UI deployment of Cerebra is built.
|
|
|
|
## Build process
|
|
|
|
The build environment requires a recent installation of [Node](https://nodejs.org/en).
|
|
|
|
```
|
|
# get repo
|
|
git clone https://cerebra.fz-juelich.de/service/mui.git
|
|
cd mui
|
|
|
|
# install vite for build process
|
|
npm install vite
|
|
|
|
# ensure shacl-vue submodule is updated and available
|
|
git submodule update --init
|
|
|
|
# install shacl-vue
|
|
cd shacl-vue
|
|
npm install
|
|
|
|
# build app (also sets version/time variables to be used for deployment)
|
|
BUILD_GIT_COMMIT="$(shell git rev-parse HEAD)" \
|
|
BUILD_GIT_COMMIT_SHORT="$(shell git rev-parse --short HEAD)" \
|
|
BUILD_GIT_BRANCH="$(shell git rev-parse --abbrev-ref HEAD)" \
|
|
BUILD_GIT_DATE="$(shell git show -s --format=%cI HEAD)" \
|
|
npm run build:app
|
|
```
|
|
|
|
This outputs build files into `dist/app`. This can be copied/moved to wherever the application should be served from, along with additional assets such as config, favicon, config, templates, etc.
|
|
|
|
## Config setup
|
|
|
|
`shacl-vue-base.yaml` serves as the base config for all `mui` tenants, and this file should be referenced via the `external_config_url` by all tenant-specific configuration files, as follows:
|
|
|
|
```yaml
|
|
external_config_url: https://cerebra.fz-juelich.de/service/mui/raw/branch/main/shacl-vue-base.yaml
|
|
```
|
|
|
|
A tenant's `config.yaml` file can then include any [additional config options](https://shacl-vue.psychoinformatics.de/app-configuration.html) and these will override the options provided by the base config.
|