Skip to content

heathcliff26/fleetlock

Repository files navigation

CI Coverage Status Editorconfig Check Generate go test cover report Renovate

FleetLock

Implements the FleetLock protocol of Zincati for coordinating upgrades of multiple Fedora CoreOS nodes.

Table of Contents

Container Images

Image location

Container Registry Image
Github Container ghcr.io/heathcliff26/fleetlock
Docker Hub docker.io/heathcliff26/fleetlock

Tags

There are different flavors of the image:

Tag(s) Description
latest Last released version of the image
rolling Rolling update of the image, always build from main branch.
vX.Y.Z Released version of the image

Usage

A simple example for testing:

podman run -d -p 8080:8080 ghcr.io/heathcliff26/fleetlock

A more advanced usage for production:

podman run -d -p 8080:8080 -v fleetlock-data:/data -v /path/to/config.yaml:/config/config.yaml ghcr.io/heathcliff26/fleetlock --config /config/config.yaml

Examples

An example configuration can be found here

Zincati configuration

Here is an example Zincati configuration file /etc/zincati/config.d/50-updates-strategy.toml:

[identity]
group = "worker"
[updates]
strategy = "fleet_lock"
[updates.fleet_lock]
base_url = "http://fleetlock.example.org:8080/"

Deploying to kubernetes

An example deployment can be found here.

To deploy it to your cluster, run:

kubectl apply -f https://raw.githubusercontent.com/heathcliff26/fleetlock/main/examples/deployment.yaml

This will deploy the app to your cluster into the namespace fleetlock. You can then access the app under fleetlock.example.org.

You should edit the url to a domain of your choosing with

kubectl -n fleetlock edit ingress fleetlock

Links