update-server

module
v0.9.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 13, 2026 License: BSD-3-Clause-Clear

README

Foundries Update Server

The update server is an open source system for managing Foundries.io update agents. There are two primary use cases for this project:

  • Offline (air-gapped) environments where devices can't reach the Foundries.io backend
  • Users who want to manage their own device management solution

This project handles both use cases by implementing all the APIs used by Foundries.io update agents. The project also includes a user-facing REST API and Web UI for managing devices and updates.

Quick start

Follow the Quick Start guide to get a server running in development mode.

Adding updates

The update server uses a content format compatible with Offline Updates to serve devices their TUF, OSTree, and Container data. Before uploading, see How to build an Update for producing that content in the first place. Then follow the updates guide for setting this up.

The Update Framework (TUF)

The update server uses TUF to secure the delivery of update manifests. See How TUF Works for details.

API access

Follow the API to learn how to access and use the REST API.

Configuring authentication options

Follow the configuring authentication guide for chosing the method that meets your requirements.

Branding and white-labeling

Follow the branding guide to replace the server's default look with your own logo, favicon, and color scheme — no rebuild required.

Running in production

The production guide covers considerations when deploying the update server for production use.

Developing

The project is a single Golang binary that can be built with:

 go build -o fioserver github.com/foundriesio/update-server/cmd/server

A "devshell" is also included that can be used for local development:

 ./contrib/dev-shell

NOTE: This repository uses Git-LFS. You'll need this installed to use the web UI.

License

update-server is under the BSD 3-Clause Clear license.

Directories

Path Synopsis
cli
api
cmd
cli command
seed command
server command
contrib
perf-test/gen-certs command
gen-certs generates a CA, a server TLS cert, and N device leaf certs for the fioserver perf test.
gen-certs generates a CA, a server TLS cert, and N device leaf certs for the fioserver perf test.
ui
ui/pagectx
Package pagectx holds the shared "base" page context types used to render HTML pages that extend base.html.
Package pagectx holds the shared "base" page context types used to render HTML pages that extend base.html.
api
tuf

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL