120 lines
3.8 KiB
Markdown
120 lines
3.8 KiB
Markdown
# How to modify `build/appinfo.json` file
|
|
|
|
[appinfo.json](../build/appinfo.json) is a file used to keep some documents up to date, it contains a list of all documents, YouTube videos and script tools.
|
|
|
|
Keeping this file up to date help to maintain all other important document files.
|
|
|
|
**When modifying this file, make sure it is still a valid `json` file.**
|
|
|
|
## Files that relies on `appinfo.json`
|
|
|
|
- [docs/README.md](README.md)
|
|
- [docs/AppList.md](AppList.md)
|
|
- [tools/README.md](../tools/README.md)
|
|
|
|
## File Structure
|
|
|
|
This file uses `json` language and it contains 4 main sections:
|
|
|
|
- **[apps](#apps-section)**
|
|
- **[youtube](#youtube-section)**
|
|
- **[docs](#docs-section)**
|
|
- **[tools](#tools-section)**
|
|
|
|
## APPS section
|
|
|
|
This section is used to link **Documents**, **Tools** and **Videos** to each app in the Template list. If an app doesn't have any of those items, it doesn't need to be listed in the file.
|
|
|
|
It can have the following elements:
|
|
|
|
- `Title`: App Title, exactly as written in Template JSON file **(mandatory)**
|
|
- `DocID`: Document **ID** as listed on [docs section](#docs-section) **(optional)**
|
|
- `ScriptID`: Script **ID** as listed on [tools section](#tools-section). This is usually a script to preintall an app **(optional)**
|
|
- `ExtraID`: Script **ID** as listed on [tools section](#tools-section). This can be any extra script used to maintain an app. This item can be listed as a single value or as an array (e.g. [3, 5]) **(optional)**
|
|
- `VideoID`: Video **ID** as listed on [youtube section](#docs-section) **(optional)**
|
|
|
|
Example 1:
|
|
```json
|
|
{
|
|
"Title": "App In Template",
|
|
"DocID": 2,
|
|
"ScriptID": 7,
|
|
"VideoID": 9
|
|
}
|
|
```
|
|
|
|
Example 2:
|
|
```json
|
|
{
|
|
"Title": "Example App",
|
|
"DocID": 2,
|
|
"ScriptID": 7,
|
|
"ExtraID": [3, 10],
|
|
"VideoID": 9
|
|
}
|
|
```
|
|
|
|
## YOUTUBE section
|
|
|
|
Here all YouTube videos are listed. It contains the following elements:
|
|
|
|
- `ID`: Episode Number or a sequential **ExtraNN** number when it's a related episode but does not contain any number **(mandatory)**
|
|
- `Title`: Episode Title as listed on YouTube **(mandatory)**
|
|
- `URL`: Episode URL, preferable using the link from the playlist **(mandatory)**
|
|
- `DocID`: If a Episode is link to a helper document, list the **ID** here **(optional)**
|
|
|
|
Example:
|
|
```json
|
|
{
|
|
"ID": 7,
|
|
"Title": "Raspberry Pi Docker Monitoring",
|
|
"URL": "https://www.youtube.com/watch?v=IoD3vFuep64&list=PL846hFPMqg3jwkxcScD1xw2bKX
|
|
index=8",
|
|
"DocID": 3
|
|
}
|
|
```
|
|
|
|
## DOCS section
|
|
|
|
This section will list all generated doc files with a description. **All items are mandatory**:
|
|
|
|
- `ID`: Sequential ID number to be used as a link within this document
|
|
- `File`: Contains the exact file name (case sensitive) as used within `docs/` folder
|
|
- `Description`: Will be used as a title on the README page
|
|
|
|
Example:
|
|
```json
|
|
{
|
|
"ID": 3,
|
|
"File": "rpi_docker_monitor.md",
|
|
"Description": "Install and setup instructions for the RPI Docker Monitor"
|
|
}
|
|
```
|
|
|
|
## TOOLS section
|
|
|
|
This section will list all script files included within `tools` folder.
|
|
|
|
List of items:
|
|
|
|
- `ID`: Sequential ID number to be used as a link within this document **(mandatory)**
|
|
- `File`: Contains the exact file name (case sensitive) as used within `tools/` folder **(mandatory)**
|
|
- `Type`: Type of script (`Install`, `Preinstall`, `Update` or `Extra`). If not listed will default to `Preinstall` **(optional)**
|
|
- `Exec`: tool used to run the file (normally `bash` or `sudo bash`). If not listed will default to `bash` **(optional)**
|
|
- `Description`: Text describing the use of the script **(mandatory)**
|
|
- `DocID`: Document **ID** when file is referenced on a document **(optional)**
|
|
- `wget`: Shortened URL use to download the script
|
|
|
|
Example:
|
|
```json
|
|
{
|
|
"ID": 9,
|
|
"File": "rpi_docker_monitor.sh",
|
|
"Type": "Preinstall",
|
|
"Exec": "bash",
|
|
"Description": "Preinstall Setup for Docker Monitor",
|
|
"DocID": 3,
|
|
"wget": "https://git.io/JPXba"
|
|
}
|
|
```
|