9 个稳定版本

2.1.4 2024 年 3 月 8 日
2.1.3 2022 年 6 月 8 日
2.1.1 2022 年 5 月 9 日
2.1.0 2022 年 1 月 18 日
2.0.2 2021 年 4 月 27 日

网页编程 中排名第 302

每月下载 21

Apache-2.0

47KB
1K SLoC

FOSSA Status Coverage Status

平台 构建状态
Linux - x86_64 build status
Linux - AArch64 build status
Linux - ARMv7 build status

UpdateHub 是一个企业级解决方案,可以轻松远程更新您在现场的所有嵌入式设备。它处理与通过空中发送固件更新(FOTA)相关的所有方面,具有最大安全性,使您的项目成为关注的焦点。

此存储库提供了基于嵌入式和工业 Linux 设备的 UpdateHub 代理。

入门

要开始使用 UpdateHub,建议您遵循 UpdateHub 文档中的 入门指南

功能

UpdateHub 对设备的支持包括

  • 引导加载程序升级支持(U-Boot 和 GRUB)
  • 闪存支持(NAND、NOR)
  • UBIFS 支持
  • 更新包签名验证以确保安全性
  • 更新失败时的自动回滚
  • 条件安装(内容、版本和自定义模式支持)
  • 每个更新步骤的回调支持
  • HTTP API 用于控制和查询本地代理

要了解更多关于 UpdateHub 的信息,请查看我们的 文档

构建和测试

由于 UpdateHub 代理侧重于安全性和系统级集成,因此使用 Rust 编程语言进行开发。如果您希望构建它,您可以

cargo build --release

一些测试被标记为忽略,因为它们需要用户权限。有一个 Vagrant 文件可以用来运行它们。要在虚拟机上运行测试,请

vagrant up
vagrant ssh

并在 SSH 会话中运行

sudo -i
cd /vagrant
cargo test
cargo test -- --ignored

许可证

根据Apache许可证第2版(LICENSE-APACHE或https://www.apache.org/licenses/LICENSE-2.0)授权。

贡献

UpdateHub是一个开源项目,我们非常欢迎社区的贡献。如果您想贡献,请阅读我们的贡献指南

除非您明确表示,否则根据Apache-2.0许可证定义的您有意提交的任何贡献,均应按上述方式双重许可,不附加任何额外条款或条件。

依赖

~7–21MB
~307K SLoC