Add basic Debian packaging info

This commit is contained in:
mycognosist 2020-05-14 14:57:56 +01:00
parent c76314f3c1
commit f236b97cc9
3 changed files with 22 additions and 2 deletions

View File

@ -17,6 +17,7 @@
- [peach-stats](./software/microservices/peach-stats.md)
- [Web Interface](./software/web_interface.md)
- [Pattern Library](./software/pattern_library.md)
- [Packaging](./software/packaging.md)
- [Configuration](./software/configuration.md)
- [Contributor's Guide](./contributors_guide.md)
- [Licensing](./licensing.md)

View File

@ -9,5 +9,5 @@ The microservices and other components comprising the PeachCloud software are co
| peach-oled | `PEACH_OLED_SERVER` | HTTP server address and port for JSON-RPC | `127.0.0.1:5112` |
| peach-stats | `PEACH_STATS_SERVER` | HTTP server address and port for JSON-RPC | `127.0.0.1:5113` |
| peach-web | `ROCKET_ENV` | Web application deployment mode | `prod` |
| | `ROCKET_TEMPLATE_DIR` | Tera template directory | `static/templates` |
| | `PEACH_WEB_WS` | WebSocket server port | `5115` |
| peach-web | `ROCKET_TEMPLATE_DIR` | Tera template directory | `static/templates` |
| peach-web | `PEACH_WEB_WS` | WebSocket server port | `5115` |

19
src/software/packaging.md Normal file
View File

@ -0,0 +1,19 @@
# Debian Packaging
The microservices comprising the PeachCloud software suite are packaged for easy deployment and maintainance on Debian and derivative operating systems.
Each microservice repository includes a `debian` directory which includes a `systemd` service file and Debian maintainer scripts, including `postinst`, `postrm` and `prerm` scripts. These scripts define behavior for installing and uninstalling the respective services. `deb` packages are created using the `cargo-deb` tool ([crate](https://crates.io/crates/cargo-deb)).
Microservices can be installed with `dpkg` as follows:
`sudo dpkg -i peach-network_0.1.0_arm64.deb`
The service will be automatically enabled and started.
Uninstall the service:
`sudo apt-get remove peach-network`
Remove configuration files (not removed with `apt-get remove`):
`sudo apt-get purge peach-network`