seaweedfs-k8s

SeaweedFS

Channel Revision Published Runs on
latest/beta 8 26 Sep 2025
Ubuntu 24.04
latest/edge 9 26 Sep 2025
Ubuntu 24.04
juju deploy seaweedfs-k8s --channel beta
Show information

Platform:

A stand-in for s3-integrator + (micro)ceph for testing purposes.

Purpose

This charm is intended to use as a stand-in for s3-integrator + (micro)ceph for testing purposes. When testing charms, instead of deploying (micro)ceph, s3-integrator, setting config options and running the sync-credentials action, this charm mimics the s3 relation interface and provides an s3 endpoint.

Compared to s3-integrator

Relation data

This charm does not use the s3 library. Instead, it renderes the relation data itself. For a related charm, relation data may look like this:

  - relation-id: 7
    endpoint: s3
    related-endpoint: s3-credentials
    application-data:
      access-key: placeholder
      bucket: s3-credentials-7
      endpoint: http://swfs-0.swfs-endpoints.welcome-k8s.svc.cluster.local:8333
      secret-key: placeholder

Note that the bucket name is automatically derived from the relation id. No config options needed.

Bucket name

In the past there has been some confusion about who decides on the bucket name - the requesting charm (e.g. mimir, loki, tempo), or the s3-integrator charm. It seems like everyone agrees now that it's the s3-integrator where the bucket name should be set (via config option).

In this charm, the same principle holds, but there is no config option for bucket name, because:

  1. For testing purposes, we don't care that the bucket name is not fixed.
  2. This way we could relate multiple charms to the same seaweedfs charm, unlike s3-integrator where each app (mimir, loki, tempo) have their own s3-integrator due to different bucket names.