beacon-verifier

Crates.iobeacon-verifier
lib.rsbeacon-verifier
version0.3.3
sourcesrc
created_at2021-07-15 04:12:49.676069
updated_at2022-12-21 18:48:46.648195
descriptionCompliance tool to verify beacon implementations.
homepage
repositoryhttps://github.com/ga4gh-beacon/beacon-verifier
max_upload_size
id422973
size317,668
Mr.Robb (MrRobb)

documentation

README

Beacon verifier

beacon-verifier.001.png

Installation

Requirements: Rust Minimum Rust version: 1.56

cargo install beacon-verifier

Usage

You can specify one or multiple urls:

beacon-verifier https://beacon-url.com/

By default, the Beacon v2 model is being used. But you can provide your own model with the --model option. The model should follow the Beacon Framework.

beacon-verifier --model https://beacon-model.com/ https://beacon-url.com/

Alternatively, you can specify a local path for the model:

beacon-verifier --model file://$PWD/tests/BEACON-V2-Model https://beacon-url.com/

Output

The output is a JSON file written to stdout. You can redirect it to save it into a file.

beacon-verifier https://beacon-url.com/ > /path/to/output

Output example

[
    {
        "name": "Beacon Name",
        "url": "https://...",
        "entities": {
            "individuals": {
                "name": "Individuals",
                "url": "https://.../individuals",
                "valid": true,
                "error": null,
            },
            "variants": {
                "name": "Variants",
                "url": "https://.../variants",
                "valid": false,
                "error": "Bad schema"
            },
            "biosamples": {
                "name": "Biosamples",
                "url": "https://.../biosamples",
                "valid": null,
                "error": "Unresponsive endpoint"
            }
        }
    }
]

Output format

The output is a Vec<Beacon> with the following format:

struct Beacon {
    name: String,
    url: String,
    entities: Vec<Entity>
}

struct Entity {
    name: String,
    url: String,
    valid: Option<bool>,
    error: Option<VerifierError>
}
Commit count: 105

cargo fmt