This is a utility that combines data from user-editable configuration files, and combines them to an optimized JSON file.
This output format is used on AirMessage Server 4.0+.
An example of the file hierarchy consumed and generated by the program is this:
- input
- stable
- update.yaml
- notes-en.md
- notes-fr.md
- beta
- update.yaml
- notes-en.md
- notes-fr.md
- output
- stable.json
- beta.json
In the input
folder, each subfolder represents an update channel,
that will generate the corresponding channelname.json
file in the output
folder.
In each channel folder, the update.yaml
is read, converted to JSON,
and written to the output JSON file.
notes-(lang).ext
files are read, and merged into the output JSON file like so:
{
"notes": {
"lang": "(language code from file name)",
"message": "(file content as text)"
}
}
The source code for the program is in the generator
directory. Compile and run with no arguments.