Skip to main content
Version: v1.0.0-rc.5

Where to store your configuration flag

To work GO Feature Flag is using a configuration file to store your feature flags configuration.

Ideally this file should be placed somewhere accessible by all your app that are using the GO Feature Flag module.
In the solution there is a system we call retriever that is in charge of reading the file remotely.

GO Feature Flag supports different ways to retrieve the configuration file (see list bellow).

AWS S3

AWS S3 is the object store of AWS, you can add your GO Feature Flag configuration file in any bucket and reference it in your configuration.

Google Cloud Storage

Google Cloud Storage is a RESTful online file storage web service for storing and accessing data on Google Cloud Platform infrastructure.
You can add your GO Feature Flag configuration file in any bucket and reference it.

Kubernetes Configmaps

A ConfigMap is an API object used to store non-confidential data in key-value pairs inside kubernetes.
GO Feature Flag can read directly in a configmap in your namespace.

When your feature flags file is ready you can store it directly in your kubernetes instance by using this command:

kubectl create configmap goff --from-file=examples/retriever_configmap/flags.yaml

It will allow your file to be available inside Kubernetes.

HTTP

Serving file with an HTTP server is probably something you are already doing, GO Feature Flag can retrieve your configuration file, from any HTTP endpoint and read it from there.

GitHub

Reading the file from GitHub is pretty straight forward.
You commit your file into your favorite repository (it can be public or private) and GO Feature Flag can retrieve your configuration file and use it.

Local file

You can store your feature flags configuration in your hard drive directly.

tip

Using a file is great for local testing, but in production it is recommended to use a distributed system instead.

Custom

If you are using the GO module, you can also implement your own retriever.
For this look at this documentation to start building your own retriever.

Get the latest GO Feature Flag updates