v2024.1 - 09/05/2024
The version published at this time contains new features and non-breaking changes related to the INSPIRE Reference Validator.
🚀 New Features
- Architecture and technological components update. This version has undergone a technological update of its components, as well as a reengineering of the architecture to simplify its use and maintenance at the software product level. The main updated elements have been:
- Base Docker image jetty:10.0.18-jre11-alpine-eclipse-temurin (Alpine Linux v3.18)
- Apache 2.4.59
- Squid 5.9
- nginx server has been removed to simplify the architecture and facilitate its maintenance.
- Jetty 10.0.8
- Java version Temurin-11.0.21
- ETF libraries update
- #1046 HH - Changes from 1089 amendment #833
- #1048 SU Vector - Changes from 1089 amendment #826
- #1049 SU Grid - Changes from 1089 amendment #835
- #1050 LC - Changes from 1089 amendment #836
- #1052 HY - Changes from 1089 amendment #837
- #1066 Use of the CRS register - Changes from 1089 amendment #839
🐛 Bugfixes
- #1028 SD - Attribute localSpeciesName not recognized as void #838
- #1042 Blue header and footer too wide and fixed in results page, information window too narrow (2024.0.1) #68
🚀 Validator UI
- 49 Large names in the UI are not wrapped
- 75 Look & Feel
- 77 Label for CC8 not available on the re-run page
- 78 Error on re-run page for services
- 80 Test run page-header and footer too wide
- 83 Some ETS names not appearing on rerun
- 84 WFS advanced options not appearing
- 85 Remove double import of captcha javascript
- 86 Look and feel adaptations
Deployment instructions
The section containing the deployment process using Docker image and troubleshooting section. You can also find these in the training material
docker login docker.pkg.github.com
#Provide Github credentials
docker run --name inspire-validator -d -p 8090:8090 -v ~/etf:/etf docker.pkg.github.com/inspire-mif/helpdesk-validator/inspire-validator:2024.1
#Launches a container with the image, exposing the UI in port 8090 through the same port in the host machine, and uses a volume in the local file system, on the directory ~/etf, this will create an ~/etf folder inside the user home folder.
Once the INSPIRE Reference Validator has fully loaded, we can access to it through the URL http://localhost:8090/validator/home/index.html
Please note that installation instructions for apt-get include --allow-unauthenticated parameter because the certificate of the Debian repository has expired, so this parameter is needed to download and install the tools properly.
Modifying the Docker image
In the inspire-validator ZIP file, you can find all the resources needed to generate the Docker image from this release. If you would like to tweak anything from it, you can modify any of its contents (Dockerfile, entrypoint file, configuration files... ), then execute (inside the ETF docker folder) the command
docker build . -t [IMAGE_NAME]:[VERSION]
You can run this again using the run command
docker run --name inspire-validator -d -p 8090:8090 -v ~/etf:/etf [IMAGE_NAME]:[VERSION]
Deployment on production host
The Docker image is set up to run at localhost to be deployed on any machine. However, users may need to access their validator on a dedicated host, usually with a domain name. For proper functioning of the validator, the UI and correct rendering of Test Reports, the validator needs to be configured to run on a domain.
If you want to run the webapp in another host, you can change the configuration file, inside the .war file inside the inspire-validator zip file accompanying this release, at WEB-INF/classes/etf-config.properties
, and modify the etf.webapp.base.url
property.
It is also necessary to configure the Validator UI properties in order to properly point to the ETF. Thus, it is necessary to modify the configuration values in the /validator/js/config.js file inside the ui.zip (to point to the corresponding host domain).
Then you can proceed to the build process described in the previous point.
Since 22/12/2022 OGC moved to production version 5.5.2 (2022-08-26) of the TEAM Engine, which introduced credentials for the calls to the services.
Thus, any deployment which makes use of the OGC TEAM Engine needs to introduce credentials (to be requested here) in order to use them.
We have incorporated three parameters in the /WEB-INF/classes/etf-config.properties file of validator.war that need to be filled accordingly to authorize the use of the services:
#TEAM Engine credentials of your organization in order to properly use TEAM Engine remote calls
etf.testdrivers.teamengine.url = http://cite.opengeospatial.org/teamengine
etf.testdrivers.teamengine.username =
etf.testdrivers.teamengine.password =
Exposing the validator through a proxy
Usually, host machines are connected to a private network that accesses the Internet through a proxy. The Docker client needs to be configured to make use of this proxy, in order to be able to build the image and set up running the container.
For the build process, you need to add the following arguments to the command
--build-arg http_proxy=[HTTP_PROXY_URL:PORT] --build-arg https_proxy=[HTTPS_PROXY_URL:PORT] --build-arg no_proxy=127.0.0.1,localhost,*.<my-domain>
For the run command, you need to add the environment variables to it
--env http_proxy=[HTTP_PROXY_URL:PORT] --env https_proxy=[HTTPS_PROXY_URL:PORT] --env no_proxy=127.0.0.1,localhost,*.<mydomain>
These can also be set up in the Dockerfile, using the keyword ENV
For more information please check out https://docs.docker.com/network/proxy
For further configuration, please download the file inspire-validator-2024.1.zip and follow the instructions in the README.md file inside the .zip file.
Setting up a cache of INSPIRE Registry resources
In your own deployment you may want to increase the performance of fetching the different resources that the INSPIRE Reference Validator requires from the INSPIRE Registry for validations.
Attached is the file inspire-registry-resources.zip, which includes the resources that the INSPIRE Reference Validator requests to the INSPIRE Registry to execute the validations defined in the Executable Test Suites (ETSs).
Using this content, you may configure your own deployment to access these resources without the need to make a call to the INSPIRE Registry to obtain them, increasing the performance of your own instance while decreasing the dependency on external resources in your installation.