You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Containing tools / configurations for deploying CoMPAS services.
12
12
13
+
## Docker Compose
14
+
There is a pre configured [Docker Compose](compas/docker-compose.yml) file, which starts all the given CoMPAS services.
15
+
To start all configured services, go to the `compas` directory and run the following two commands:
16
+
17
+
```
18
+
# Build (if needed) and start all the containers in the background.
19
+
docker-compose up -d --build
20
+
```
21
+
22
+
This first command builds 2 containers (keycloak and reverse proxy) and next command starts all CoMPAS services at the same time.
23
+
Now, the following services are available:
24
+
25
+
- open-scd, available at [http://localhost/](http://localhost/).
26
+
- logout, available at [http://localhost/logout](http://localhost/logout).
27
+
- scl-data-service, available at [http://localhost/compas-scl-data-service](http://localhost/compas-scl-data-service).
28
+
- cim-mapping - IEC 61850 mapping, available at [http://localhost/compas-cim-mapping/](http://localhost/compas-cim-mapping/).
29
+
- basex, available at [http://localhost:1984/](http://localhost:1984/)
30
+
- keycloak, available at [http://localhost/auth/](http://localhost/auth/) or directly if needed [http://localhost:8089/auth/](http://localhost:8089/auth/).
31
+
- Imports the demo configuration.
32
+
- reverse-proxy, OpenResty instance that works as a reverse proxy so all services are available through a single port.
33
+
- The JWT Access Token is added to the header for all Services, like the SCL Data Service.
34
+
35
+
To stop and remove all the containers run the command:
36
+
37
+
```
38
+
# Stop all containers and remove the volumes.
39
+
docker-compose down -v
40
+
```
41
+
42
+
The option '-v' also removes the volumes created, so all data is lost with this option.
43
+
13
44
## Keycloak Demo Configuration
14
-
For demo purposes, a [demo Keycloak configuration](docker/keycloak/keycloak_compas_realm.json) is created which can be imported when
45
+
For demo purposes, a [demo Keycloak configuration](compas/keycloak/keycloak_compas_realm.json) is created which can be imported when
15
46
running a Keycloak instance.
16
47
17
48
The following Keycloak attributes have been added:
@@ -34,27 +65,39 @@ When interacting with the SCL Data Service, a JWT token needs to have certain ro
34
65
- Username: scd-reader
35
66
- Password: reader
36
67
37
-
## Docker Compose
38
-
There is a pre configured [Docker Compose](docker/docker-compose.yml) file, which starts all the given CoMPAS services.
39
-
To start all configured services, go to the `docker` directory and run the following two commands:
68
+
## Integration Testing
40
69
41
-
`docker-compose build`
70
+
To improve the quality of the application more beside the testing in the separate repositories we also created some integration
71
+
tests to test all components together. The integration tests are executed against the Docker Compose version in this project.
42
72
43
-
`docker-compose up -d`
73
+
We are using the [Robot Framework](https://robotframework.org/) to execute the integration tests. For the Robot Framework we are
74
+
using the [Browser Library](https://github.com/MarketSquare/robotframework-browser) to do the Web testing. this Library is based
75
+
on [Playwright](https://playwright.dev/). All Integration Tests and data can be found in the directory 'integration-testing'.
76
+
Output can be found in the directory 'target' is below commands and Github Actions are used.
44
77
45
-
This first command builds 2 containers (keycloak and reverse proxy) and next command starts all CoMPAS services at the same time.
46
-
Now, the following services are available:
78
+
Some useful links:
79
+
-[Robot Framework](https://robotframework.org/)
80
+
-[Robot Framework User Guid](https://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html)
- open-scd, available at [http://localhost/](http://localhost/).
49
-
- logout, available at [http://localhost/logout](http://localhost/logout).
50
-
- scl-data-service, available at [http://localhost/compas-scl-data-service](http://localhost/compas-scl-data-service).
51
-
- cim-mapping - IEC 61850 mapping, available at [http://localhost/compas-cim-mapping/](http://localhost/compas-cim-mapping/).
52
-
- basex, available at [http://localhost:1984/](http://localhost:1984/)
53
-
- keycloak, available at [http://localhost/auth/](http://localhost/auth/) or directly if needed [http://localhost:8089/auth/](http://localhost:8089/auth/).
54
-
- Imports the demo configuration.
55
-
- reverse-proxy, OpenResty instance that works as a reverse proxy so all services are available through a single port.
56
-
- The JWT Access Token is added to the header for all Services, like the SCL Data Service.
87
+
Some useful commands to execute the Robot Framework locally.
88
+
Please follow the instructions of [Robot Framework](https://robotframework.org/) to install the Framework.
89
+
And also follow the instruction of [Browser Library](https://github.com/MarketSquare/robotframework-browser) to install this needed library.
57
90
58
-
To stop and remove all the containers run the command:
91
+
```
92
+
# Prefer to remove the target directory before starting.
93
+
rm -r target
94
+
95
+
# Normal run of all the test suites (with firefox, headless).
96
+
robot -d target/firefox integration-testing/
97
+
98
+
# Run of all the test suites (with firefox in presenter mode to better follow what happens).
0 commit comments