Skip to content

Latest commit

History

History
44 lines (33 loc) 路 1.84 KB

README.md

File metadata and controls

44 lines (33 loc) 路 1.84 KB

core

Flagbase Core is the main service responsible for streaming feature flags to our SDKs via SSE (Server-Sent Events). It provides a REST API, used to manage key resources (i.e. workspaces, projects, environments, flags etc).

The core has multiple modes of operation (i.e. all (default), api, streamer, poller). The service can be run on multiple nodes (i.e. it is horizontally scalable).

Quick Start

The quickest way to get the service running locally will require you to have docker and docker-compose installed on your machine. If you want help compiling the binary and running locally, please use the Core Dev Guides.

Starting up services

docker-compose up

Creating a root user

docker-compose exec core ./bin/flagbased manage access create --key=<ACCESS_KEY> --secret=<ACCESS_SECRET> --type=root

Check that it's working

curl -P GET http://localhost:5051/healthcheck

Remove all containers and volumes (fresh-start)

docker-compose down -v

Other practices

Linting

To lint locally via docker:

docker run --rm -v $(pwd):/app -w /app golangci/golangci-lint:v1.51.2 golangci-lint run

Contributing

We encourage community contributions via pull requests. Before opening up a PR, please read our contributor guidelines.

Resources

Check out these pages that'll help you get started, if you want to contribute to the core:

  • Core Dev Guides: Building & running locally / Architecture / Data models etc
  • Core RFCs: Technical RFCs / Proposals etc