Edgebox system control daemon
 
 
 
 
Go to file
Paulo Truta 83d2fdcae1
[WIP] Support for cloud version (#17)
* Added build-cloud to Makefile

* Fix env var key GOOS

* Added taskSetReleaseVersion for edgeboxctl version option write into DB

* taskGetSystemUptime to run every 5 ticks

* Added support for detecting main disk in cloud version

* Added missing import

* Finding main device in test

* Refactored GetDevices and test to use release_version

* Added utils.getIP function, set to run as a 60 tick scheduled task

* Added taskEnablePublicDashboard and taskDisablePublicDashboard

* Added utils.WriteOption and refactor, added enablePublicDashb0oard

* Finalizing online support for dashboard, cloud version support

* Added task SetupCloudOptions

* Added couple of func description comments

* Early return statement (thanks @inverse)

* Using IsPublicDashboard in DisablePublicDashboard func

* Added constants for release version and device types, added diagnostics.GetReleaseVersion

* Removed codecov from test action
2022-02-06 15:37:50 +01:00
.github/workflows [WIP] Support for cloud version (#17) 2022-02-06 15:37:50 +01: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 [WIP] Support for cloud version (#17) 2022-02-06 15:37:50 +01: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 Update LICENSE 2021-11-21 21:20:05 +01:00
Makefile [WIP] Support for cloud version (#17) 2022-02-06 15:37:50 +01:00
README.md [WIP] Support for cloud version (#17) 2022-02-06 15:37:50 +01: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:

  • arm-linux-gnueabi-gcc (sudo apt-get install gcc-arm*)
  • 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.