diff --git a/src/SUMMARY.md b/src/SUMMARY.md index f6b9576..3d6e554 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -21,6 +21,9 @@ - [peach-network](./software/microservices/peach-network.md) - [peach-oled](./software/microservices/peach-oled.md) - [peach-stats](./software/microservices/peach-stats.md) + - [Utilities](./software/utilities/index.md) + - [peach-probe](./software/utilities/peach-probe.md) + - [peach-version-checker](./software/utilities/peach-version-checker.md) - [Web Interface](./software/web_interface.md) - [Pattern Library](./software/pattern_library.md) - [Compilation](./software/compilation.md) diff --git a/src/software/utilities/index.md b/src/software/utilities/index.md new file mode 100644 index 0000000..678520b --- /dev/null +++ b/src/software/utilities/index.md @@ -0,0 +1,3 @@ +# Utilities + +Simple tools and utilities for contract testing PeachCloud microservice APIs and ensuring version consistency. diff --git a/src/software/utilities/peach-probe.md b/src/software/utilities/peach-probe.md new file mode 100644 index 0000000..2414d53 --- /dev/null +++ b/src/software/utilities/peach-probe.md @@ -0,0 +1,51 @@ +# peach-probe + +[![GitHub logo](/assets/github_logo.png "peach-probe GitHub repository")](https://github.com/peachcloud/peach-probe) ![Version badge](https://img.shields.io/badge/version-0.1.1-.svg) + +Probe PeachCloud microservices to evaluate their state and ensure correct API responses. + +`peach-probe` is a CLI tool for contract testing of the public API's exposed by PeachCloud microservices. +It is composed of JSON-RPC clients which make calls to the methods of their respective servers and +generates a report with the results. + +`peach-probe` also makes use of `systemctl status` commands to test the status of all PeachCloud microservices. + +This utility is intended to provide a rapid means of testing a deployed PeachCloud system and allow informed trouble-shooting in the case of errors. + +## Installation + +After adding releases.peachcloud.org to /etc/sources.list, as described [here](https://github.com/peachcloud/peach-vps/blob/main/README.md), +peach-probe can be installed by running: +`sudo apt-get install peach-probe` + +## Usage + +```bash +USAGE: + peach-probe [FLAGS] [services]... + +FLAGS: + -h, --help Prints help information + -V, --version Prints version information + -v, --verbose prints successful endpoint calls in addition to errors + +ARGS: + ... [possible values: peach_oled, peach_Network, peach_stats, peach_menu, peach_web, + peach_Buttons, peach_monitor] +``` + +If no service arguments are provided, peach-probe will query all services. + +## Custom Port Numbers + +If peach-microservices are running on ports other than the default ports, +this can be specified using environmental variables as documented [here](https://github.com/peachcloud/peach-lib/blob/main/README.md). + +## Todo + + - On detecting certain errors, suggest possible fixes + - Finish querying of all peach-network endpoints + +## Licensing + +AGPL-3.0 diff --git a/src/software/utilities/peach-version-checker.md b/src/software/utilities/peach-version-checker.md new file mode 100644 index 0000000..de78b5d --- /dev/null +++ b/src/software/utilities/peach-version-checker.md @@ -0,0 +1,40 @@ +# peach-version-checker + +[![GitHub logo](/assets/github_logo.png "peach-version-checker GitHub repository")](https://github.com/peachcloud/peach-version-checker) ![Version badge](https://img.shields.io/badge/version-0.1.0-.svg) + +A simple commandline tool which helps to ensure version consistency across software and documentation. + +`peach-version-checker` compares version numbers in crate READMEs, manifests and developer documentation for each microservice and program in the PeachCloud ecosystem. Each program is given a passing or failing grade in the generated report. Project maintainers can then act accordingly if any version inconsistencies are found. + +## Usage + +```bash +git clone git@github.com:peachcloud/peach-version-checker.git +cd peach-version-checker +cargo build --release +./release/target/peach-version-checker +``` + +## Example Output + +```bash +[ peach-buttons ] +Dev-docs: 0.1.3 +Manifest: 0.1.3 +Readme : 0.1.3 +PASS +[ peach-oled ] +Dev-docs: 0.1.0 +Manifest: 0.1.3 +Readme : 0.1.3 +FAIL +[ peach-probe ] +Dev-docs: No version number found +Manifest: 0.1.1 +Readme : 0.1.1 +FAIL +``` + +## Licensing + +AGPL-3.0