Edgebox system control daemon
 
 
 
 
Go to file
Paulo Truta 9339e6cf09
Storage Module Basis (#13)
* Added storage module, base structs, getDevices() func, taskGetStorageDevices (ticks every 30)

* GetDevices now returns a complete description w/ disk partitions

* Added InUse flag to Device, fixed logic bugs

* Added disk space usage for partitions in use by the system

* Cleanup

* Added UsageStat and UsageSplit filling for in use devices

* Changed value of lsblk block usage output to bytes

* Cleanup, small fixes

* Added ExecAndGetLines util func

* Added explicit detection of disk or part block type, ignoring non-suppoorted devices

* Added command line tool dependencies for the project in README file

* Added comment to func ExecAndGetLines

* Removed GetMySQLDbConnectionDetails()

* Added tests to utils module

* Fix invalid argument type for Exec family of tests

* Removed too much verbosity from utils.GetPath when no env file is available, added new argument (path) to Exec family of funcs

* Added new path argument to utils.Exec... test

* Fixed TestExec

* Added spaces trim to Exec result

* Trimming spaces and newlines from result of Exec

* Better visibility for test result log of TestExec

* Added ExampleExecAndStream test

* Added Example tests with failure status for ExecAndStream

* Added branch to test for valid key in GetPath

* Added missing t.Fail() statements in utils_test.go

* Added storage_test.go file, smoke test

* TestGetDevices
2021-06-13 12:03:36 +02:00
.github/workflows Add coverage (#15) 2021-06-08 22:40:53 +02:00
cmd/edgeboxctl Fix wrong handling of task arguments in systemIterator 2021-05-22 13:30:23 +00:00
docs/img Changed logo and updated badge urls 2020-11-08 23:11:30 +01:00
internal Storage Module Basis (#13) 2021-06-13 12:03:36 +02:00
.gitignore Add sum 2021-03-04 21:38:02 +01:00
Dockerfile Renaming everything to edgeboxctl 2021-03-04 12:43:49 +00:00
LICENSE Initial commit 2020-11-08 21:46:59 +01:00
Makefile Add coverage (#15) 2021-06-08 22:40:53 +02:00
README.md Storage Module Basis (#13) 2021-06-13 12:03:36 +02:00
codecov.yml Add coverage (#15) 2021-06-08 22:40:53 +02:00
docker-compose.yml Fixed Dockerfile and compose files for auto re-build, added loop for system service behaviour 2021-02-11 19:56:35 +01:00
go.mod Storage Module Basis (#13) 2021-06-13 12:03:36 +02:00
go.sum Storage Module Basis (#13) 2021-06-13 12:03:36 +02:00

README.md

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Edgebox Control Module

A System Control module written in Go. Its resonsability is to configure dependencies and perform system tasks, automatically in a schedule, or by command.
Explore the docs »

Report Bug · Request Feature

Table of Contents

About The Project

![Edgebox Screen Shot][product-screenshot]

Edgebox is a small box that connects alongside your home internet router. It brings powerful features that go alongside or can even completely replace various services that you already use in the day-to-day.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

If you're installing this to run natively in the system, you better be doing it inside of the Development Virtual Machine. This software can do destructive action in the system is is running. You've been warned.

If you're running for development purposes, a Docker container suffices, so make sure you have:

  • Docker
  • Docker Compose
sudo apt-get install docker docker-compose

Check the following links for more info on Docker and Docker Compose.

Aditionally, edgeboxctl needs the following bash commands available wherever it runs:

  • sh
  • rm
  • systemctl
  • lsblk
  • yq
  • tinc-boot (not mandatory)

Installation

  1. Clone the repo
git clone https://github.com/edgebox-iot/edgeboxctl.git
  1. Run Docker-Compose
docker-compose up

Usage

For more examples, please refer to the Documentation

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.