-
Notifications
You must be signed in to change notification settings - Fork 11
Description
- The chart should not use fluffy anymore, instead all the setup should be done in the lakeFS-Enterprise image
- The new version should NOT have backward compatibility for fluffy, an upgrade to the chart means no more fluffy.
- Proper docs and migration guide must be in-place before releasing.
- Remove any reference of fluffy including in
.Values.fluffy.*
(i.evalues.yaml
), env vars (in helpers,FLUFFY_*
) and all files related. - Use the new lakeFS-Enterprise configurations.
Error if fluffy is used
Find a clean way to detect if a user is using fluffy (i.e fluffy.enabled: true
) and fail the chart installation with a clean error pointing them top the docs and making sure they also updated their lakeFS image to lakefs-Enterprise.
.Values
change (and supporting env vars)
- Values under
fluffy.*
should not be supported anymore and instead be replaced with appropriate new values.
lakeFSConfig VS concrete values
lakeFSConfig:
lakefsConfig
(and previous fluffy.fluffyConfig
) would convert all the values there into a YAML file that is NOT validated and mounted as lakefs config into the container.
lakefsConfig: |
database:
type: local
blockstore:
type: local
We allow setting any config value in free form to the chart, on purpose,we must maintain that because:
- It allows users to set anything we didn't think about and doesn't make us chase every field all the time.
- The Chart is not bound to a specific lakeFS version, so the config may change.
Concrete Values
Some of the fields are exposed as concrete fields in .Values
(values.yaml
), this has purpose to simplify the amount of things a user needs to configure.
Enterprise introduces configuration that is easy to break, sometimes we already have the information from other values so we don't want the user to set it twice or we we just need it because we need to access a field specifically (for example like creating a Secret).
For example in fluffy.sso.oidc.client_secret that's a concrete value because it's a secret, so we create k8s Secret
to mount it. If the user would have set it in fluffyConfig
that would be much harder to access and understand if it's there or not.
Ingress - optional
Previously with fluffy we needed Ingress to make sure we can route traffic between fluffy and lakeFS for the same host based on path, we do not need this capability anymore.
- The new chart does not have to spin up an
Ingress
type, make sure it's optional. - We do have to always create
Service
type
Users can use things like AWS NLB to route traffic into lakeFS from outside via Service
alone so they don't have to use Ingress
.