Bürokratt's Training Module is a tool to help primarily customer support agents and service managers to create, edit and otherwise manipulate Bürokratt's e-services via a graphical user interface. This includes setting up Ruuter- and Rasa-based user stories, making X-road / REST / database requests where and when appropriate and so forth.
Technically, it is a service combined of different generic technical components, meaning that there is no custom Training Module component as such.
This repo will primarily contain
- Architectural and other documentation;
- Docker Compose file to set up and run Bürokratt's Training Module as a fully functional service;
- Tests specific to Bürokratt's Training Module.
-
Clone TIM
-
Go to src -> main -> resources -> application.properties & modify security.allowlist.jwt value to
security.allowlist.jwt=ruuter,resql,resql_users,tim,tim-postgresql,node_server,data_mapper,gui_dev,127.0.0.1,::1
-
Navigate to TIM and build the image
docker build -t tim .
-
Run GUI in your local machine:
npm run dev
-
Docker-compose.yml
- ruuter -> use commented out image to test the following:
- Intent into Service
- Intent example into Intent
- ruuter -> use commented out image to test the following:
Ready to go: docker-compose up -d
Currently, Header and Main Navigation used as external components, they are defined as dependency in package.json
"@buerokrat-ria/header": "^0.0.1"
"@buerokrat-ria/menu": "^0.0.1"
"@buerokrat-ria/styles": "^0.0.1"
- To build DataMapper docker image on Apple silicon processors change its Dockerfile as following:
FROM node:19-alpine
RUN apk add --no-cache chromium
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
....
Bürokratt Play acts the same as
dev
environment. Play gets updated after new code commits reachmain
branch, so the result can be faulty and/or down at any given time.
https://admin.play.buerokratt.ee/training
- if you are running
Locally
then you need to curl the login request or run it on postman first to create and store the cookie in TIM and then on the browser create the cookie manually in the browser with namecustomJwtCookie
and the value return from the curl request is as follows:
curl -X POST -H "Content-Type: application/json" -d '{
"login": "EE30303039914",
"password": ""
}' http://localhost:8085/login-user