The primary usage of the tool is to initialise OS2mo's database with a root organisation, all required classes, recommended facets, and IT systems. For development, most users will probably want to use Docker Compose as follows:
services:
mo-init:
image: magentaaps/os2mo-init:latest
environment:
MO_URL: "http://mo:5000"
AUTH_SERVER: "http://keycloak:8080/auth"
AUTH_REALM: "mo"
CLIENT_ID: "dipex"
CLIENT_SECRET: "603f1c82-d012-4d04-9382-dbe659c533fb"
depends_on:
mo:
condition: service_healthyWhich will initialise a minimal MO instance using the default configuration file config.default.yml. Modifying the
configuration is as easy as copying the default config.default.yml from here to init.config.yml in your repo and
extending Docker Compose as follows:
services:
mo-init:
volumes:
- type: bind
source: ./init.config.yml
target: /config/config.yml
read_only: trueAd-hoc usage can be done as follows:
docker run --rm --mount type=bind,source="$(pwd)"/init.config.yml,destination=/config/config.yml --network=host -e MO_URL='http://localhost:5000' -e CLIENT_ID='dipex' -e CLIENT_SECRET='603f1c82-d012-4d04-9382-dbe659c533fb' -e AUTH_SERVER='http://localhost:5000/auth' -e AUTH_REALM='mo' magentaaps/os2mo-init:latestOptionally with the --network=host or --network=os2mo_default docker flag.
Initialisation setup is configured using a configuration file; /config/config.yml by default. The provided Docker
image copies the default configuration config.default.yml to this location in the image, which
sets up a minimal MO instance.
To modify the configuration in a Kubernetes cluster, first define a ConfigMap as follows:
apiVersion: v1
kind: ConfigMap
metadata:
name: os2mo-init-config
data:
config: |
root_organisation:
...
facets:
...Then connect it to the deployment or pod:
spec:
containers:
- name: mo-init
image: magentaaps/os2mo-init:latest
volumeMounts:
- name: os2mo-init-config-volume
mountPath: /config
readOnly: true
volumes:
- name: os2mo-init-config-volume
configMap:
name: os2mo-init-config
items:
- key: config
path: config.ymldocker build . -t os2mo-init
Which yields:
...
Successfully built ...
Successfully tagged os2mo-init:latest
After which you can run:
docker run --rm os2mo-init:latest --help
This project uses Semantic Versioning with the following strategy:
- MAJOR: Incompatible changes to existing commandline interface.
- MINOR: Backwards compatible updates to commandline interface.
- PATCH: Backwards compatible bug fixes.
Magenta ApS https://magenta.dk
- This project: MPL-2.0
This project uses REUSE for licensing. All licenses can be found in the LICENSES folder of the project.