Skip to content

nuvlaedge/nuvlaedge

Repository files navigation

NuvlaEdge

Maintenance GitHub issues GitHub release GitHub release

This repository contains the NuvlaEdge source code, a microservice based agent for Nuvla.io. NuvlaEdge consists in the following services:

  • Agent: Main NuvlaEdge component that implements the Nuvla protocol, gathers system configuration and statistics and runs jobs from Nuvla.
  • System Manager: NuvlaEdge watchdog component. Monitors the different microservices and heals them if they fail.
  • Peripherals: NuvlaEdge add-ons that allows the detection of differnt types of devices:
    • Network
    • Bluetooth
    • USB
    • Modbus
    • GPU

For installation instructions, read the online documentation.

Latest releases and artifacts

repository release artifact
NuvlaEdge (deployment) GitHub tag (latest SemVer)
NuvlaEdge GitHub tag (latest SemVer) Docker Image Version (latest semver)

Build Status

To get more information on the latest builds click on the build status badges below.

repository status
NuvlaEdge (deployment) Build Status
Build Status
NuvlaEdge Build Status
Job Engine Build Status

Project tools

The project uses poetry for the project and dependency management and tox for tests execution and results reporting.

Running unit tests

Before running unit tests with tox you need to generate requirements file out of the per-component dependency lists provided in the poetry's project definition file.

For that run the following wrapper script:

./generate-requiremenents.sh

Then run the unit tests with:

tox

Copyright

Copyright © 2024, SixSq SA

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.