The Argo NetCDF file format checker performs format and content checks on Argo NetCDF files.
The Argo NetCDF format is described in "Argo user's manual" http://dx.doi.org/10.13155/29825
More information on https://www.argodatamgt.org/Documentation
The format checker has two directories:
- file_checker_exec : the java code
- file_checker_spec : the rules applied on the NetCDF file by the java code
The rules files implement the Argo vocabularies managed on NVS vocabulary server.
Vocabularies and format changes are managed on Argo Vocabs Task Team - AVTT GitHub.
With Release you will find :
- file_checker_exec-[version].jar which consolidates both application's compiled code and all its dependencies into a single executable file.
- source code
- Using file_checker_exec-[version].jar :
java -jar file_checker_exec-[version].jar $OPTION $DAC_NAME $SPEC $OUTPUT_DIR $INPUT_DIR $FILE_NAME
Only this JAR file is needed. You can delete legacy log4j2 & netcdf libraries jar files.
Thanks to the wrapper, Maven is embedded in the project (in a defined version). No need to install Maven on your development workstation, just use the wrapper script included in the project.
- Clone the repository :
git clone /~https://github.com/OneArgo/ArgoFormatChecker.git
- Build the application with maven (will requiert Java jdk installed), in file_checker_exec folder :
cd file_checker_exec
./mvnw clean install
In target folder you will find both original-file_checker_exec and file_checker_exec-[version]. It is this last one to use.
- Build the application with Docker :
docker build -t filechecker_2.8.14 .
- Run the application using Docker
docker run --rm -v [ABSOLUTE_PATH_TO_file_checker_spec]:/app/file_checker_spec -v [ABSOLUTE_PATH_TO_DATA_FOLDER]:/app/data -v [ABSOLUTE_PATH_TO_OUTPUT_DIR]:/app/results filechecker_2.8.14:latest $DAC_NAME ./file_checker_spec ./results ./data $FILE_NAME