The integration of the latest machines and technologies, combined with a diverse array of existing systems, expands the range of data formats and types, thereby introducing new challenges. To effectively navigate these complexities, it is crucial to implement robust governance mechanisms that ensure seamless conversion of diverse data formats into standardized forms.
The converter service is built on the Common Workflow Language (CWL), selected for its exceptional interoperability, portability, and reproducibility. The source code is housed in a GitLab repository, complete with a CI/CD pipeline that not only automates the generation of conversion and validation summary reports but also fosters community collaboration. These reports offer a detailed overview of the conversion and validation process, ensuring transparency and efficiency across various file formats.
The repository includes all the necessary code to run a converter, which is built on Flask, adheres to the OpenAPI specification, and provides a REST API for seamless integration with other NFDI4Chem services. The entire system is also packaged in a Docker image for easy deployment, and with a Helm chart available to streamline deployment in Kubernetes environments.
This repository is specifically designed to facilitate the conversion of mass spectrometry files from various formats into the mzML format.
- Python version 3.9 or higher
- docker Instructions to install docker
- cwltool Instructions to install cwltool
There are three methods for using the converter:
Tab 1: Local Installation
- Prerequisites:
python 3.9 or higher
- Clone the repository
git clone https://git.rwth-aachen.de/linsherpa/ms_converter.git
- Create a python virtual environment and activate it. Tips to create a python vitrual environment
- Install necessary requirements
pip install -r requirements.txt
- Run the main file
rest_api.py
:
python rest_api.py
or
flask --app rest_api.py run
- The URL will be available on
http://localhost:5000/api-docs#
Tab 2: Docker Usage
-
Pulling the docker image:
docker pull docker pull lincoln1010/mass_spectrometry_file_converter:v1
-
Running the container:
docker run --privileged -d -ti --name < name of the container > -p 5000:5000 lincoln1010/mass_spectrometry_file_converter:v1.0
-
Enabling the docker in docker (which is necessary):
docker exec < name of the container > dockerd >/tmp/docker.stdout 2>/tmp/docker.stderr &
-
Copy extra parameters on config.txt file:
- a : create a config.txt file with content , for example, --mzXML (without any indentation)
- b :
docker cp < path to your config.txt file > < name of the container >:/app/config.txt
(copying the config.txt file to /app/config.txt inside the container)
-
The URL will be available on
http://localhost:5000/api-docs#
with RESTAPI
Tab 3: Kubernetes Deployment
The deployment of Kubernetes instance is done via [Helm chart](https://helm.sh/)- For deployment of helm chart of ms converter, please follow guidelines of Msconverter Helm Chart
If the server has been deployed correctly following the instructions, then the following image would be seen.
Mass Spectrometry File Converter
It consists of three functions:
The aim of conversion is to convert a format (in this case a Mass Spectrometry File) into a standardized (mzML) format.
The converter is based on proteowizard image
Input Files:
It works for three types of input.
- Folder with
.D
or.d
extention:
The folder needs to be converted to.tar
extention with maintaining the name< name of folder >.d.tar
- File with
.RAW
or.raw
extention:
The File can be directly used for conversion. - File that requires another secondary file i.e.
.wiff and .wiff.scan
extention.
Both of the files need to be compressed together into.tar
extention.
The input file for it is file with extention .mzML
.
The validation is based on FileInfo command from Openms
The image used for validation is biocontainers/openms
The input file for it is file with extention .mzML
.
The main use of this tool is to convert data from external sources to the formats used by OpenMS/TOPP.
The validation is based on Fileconverter command from Openms.
The image used for validation is the same biocontainers/openms
Funded by the Deutsche Forschungsgesellschaft (DFG, German Research Foundation) under the National Resaerch Data Infrastructure – NFDI/1 – Project number 441958208