peach-workspace/README.md

4.3 KiB

PeachCloud 🍑 ☁️

Better Scuttlebutt cloud infrastructure as a hardware product.

Support us on OpenCollective!

Build Status

Background

Active Repositories

Documentation

  • peach-devdocs - Developer documentation for PeachCloud in the form of a Markdown book

Devops

  • peach-vps - Setup scripts and configuration files for deploying a PeachCloud development server

Image building & device configuration

  • peach-config - Configuration instructions, files and scripts
  • peach-img-builder - Vmdb2 script for building a Debian disc image for Raspberry Pi with PeachCloud pre-installed

Microservices

  • peach-buttons - Emit GPIO events using JSON-RPC pubsub over WS
  • peach-oled - Write and draw to OLED display using JSON-RPC over HTTP
  • peach-menu - A menu for monitoring and interacting with the PeachCloud device
  • peach-network - Query and configure network interfaces using JSON-RPC over HTTP
  • peach-stats - Query system statistics using JSON-RPC over HTTP
  • peach-lib - JSON-RPC client library for the PeachCloud ecosystem
  • peach-monitor - Monitor network data usage and set alert flags based on user-defined thresholds

Diagnostics

  • peach-probe - Probe PeachCloud microservices to evaluate their state and ensure correct API responses

Web interface

  • peach-patterns - Pattern library for the PeachCloud UI design system
  • peach-web - A web interface for monitoring and interacting with the PeachCloud device

Continuous Integration

Drone CI is used to provide continuous integration for this workspace. The configuration file can be found in .drone.yml in the root of this repository. It is currently configured to run cargo fmt, cargo clippy, cargo test and cargo build on every pull request event. The pipeline runs on the AMD64 Debian Buster image from the official Rust Docker image repository.

The status of the current and previous CI builds can be viewed via the Drone CI Build UI (kindly hosted by Co-op Cloud).

Adding [CI SKIP] to the end of a commit message results in the CI checks being skipped for the next event. For example:

git commit -m "update readme [CI SKIP]"
git push origin main

Developer Diaries

Accounts