MrRobb / beacon-v2

Unified repository for Beacon v2 Components - Under Construction

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unified repository for Beacon v2 Code & Documentation

Description

This repository is intended as a unification and replacement of the main repositories representing the Beacon API:


NOTE

At this time we still process changes in the original Beacon v2 development repositories:

The schema links below represent daily updated versions pulled from these development repositories.


As with other schema projects, here we separate between the schema source files (in src; JSON-Schema written in YAML) and the generated versions for referencing. The current setup allows already the direct referencing of the generated JSON schemas but has not been tested yet in its completeness using e.g. the Beacon Verifier. Examples:

Status

At this stage, since the development work still is performed in the framework and model repositories, the src content is beeing generated automatically (using local versions of the repositories) and modified - steps 1 & 2 - followed by the export of the schemas (step 3):

  1. convert .json files from original framework & model repositories into .yaml framework/src/ and models/src/, using bin/yamlerRunner.sh with ./tools/beaconYamler.py.
  2. perform some text replacements over the source tree (see ./tools/config.yaml - more may be needed?
  3. re-write the modified YAML source files into the output json directory

Steps 1 & 2 obviously won't be necessary after transitioning to the respective src files as the working versions. Step 3 will be converted into a GH action.

TODO

  • integrate the documentation repository & generation of the schema tables from src
  • (in the long run) switch to manual maintenance/editing of src and retire the current framework and model repos

Changes

Directory structure

|-docs          TBD; will contain the source for the Readthedocs documentation
|
|- framework
|   |
|   |- src      schema source in YAML format; for editing
|   |
|   |- json     JSON versions of the schema files generated from src, authorative/referenceable version
|
|- models
|   |
|   |- src      schema source in YAML format; for editing
|   |
|   |- json     JSON versions of the schema files generated from src, authorative/referenceable version
|
|- bin          scripts and configurations for creating the unified structure
    |
    |- yamlerRunner.sh    runs the conversions for the different repos and format options
    |
    |- beaconYamler.py    conversion app
    |
    |- config.yaml        text replacements and options

About

Unified repository for Beacon v2 Components - Under Construction

License:Creative Commons Zero v1.0 Universal