GOB StUF provides for StUF access.
It serves as a proxy and transparantly forwards requests to a StUF server.
- docker compose >= 1.25
- Docker CE >= 18.09
- Python >= 3.9
- Both a certificate and a VPN are required to access the underlying StUF service.
- SoapUI can be used to test the StUF service.
The service definition that is exposed is:
http://localhost:<<GOB_STUF_PORT>><<ROUTE_NETLOC>>?wsdl
eg:
http://localhost:8165/SomePath/MijnService?wsdl
The StUF endpoint is reported at startup of the service.
This service also exposes REST endpoints that in the background perform StUF requests to obtain the requested data.
See REST endpoints for a more detailed explanation.
Create a virtual environment:
virtualenv env
source venv/bin/activate
pip install -r src/requirements.txtOr activate the previously created virtual environment:
source venv/bin/activateSet the environment variables (see also next paragraph):
export $(cat .env | xargs)Start the StUF service:
cd src
python -m gobstufThe service is default exposed at:
The IP address of the server is also reported on stdout at API startup.
The StUF service needs to be configured using environment variables:
ROUTE_SCHEMEThe scheme of the proxied path, default httpsROUTE_NETLOCThe domain of the proxied pathROUTE_PATHThe path that is proxied by the StUF servicePKCS12_FILENAMEThe file where the certificate is storedPKCS12_PASSWORDThe password for the certificate fileGOB_STUF_PORTThe port at which the service listens for requests, default 8165
The environment variables should be stored in a .env file (included in .gitignore).
An example can be found in .env.example.
The example connects to a public number conversion soap service.
The variables can be set using:
export $(cat .env | xargs)cd src
sh test.shdocker compose build
docker compose upThe API is exposed at the same address as for the local installation.
docker compose -f src/.jenkins/test/docker-compose.yml build
docker compose -f src/.jenkins/test/docker-compose.yml run --rm test