No description
  • Go 89.1%
  • Makefile 8.3%
  • Dockerfile 2.6%
Find a file
zemdregon c9e039ed82
Some checks are pending
CI / lint (push) Waiting to run
CI / test (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
chore(deps): bump actions/setup-go to v7 (#18)
* chore(deps): bump actions/setup-go to v7

Self-hosted CI workflows.

* ci: setup-go v7 + cache false
2026-08-10 19:39:47 -05:00
.github chore(deps): bump actions/setup-go to v7 (#18) 2026-08-10 19:39:47 -05:00
cmd/module chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
deploy chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
internal fix(ci): self-hosted runners; packaging v0.1.3 2026-08-10 10:34:07 -05:00
test Initial scaffold: MuxCore module starter template 2026-06-11 20:05:04 -05:00
.dockerignore Initial scaffold: MuxCore module starter template 2026-06-11 20:05:04 -05:00
.env.example chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
.gitignore chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
.golangci.yml test: YAML/SIGHUP/defaults coverage and cut v0.1.0 (#13) 2026-08-09 20:14:15 -05:00
CHANGELOG.md fix(ci): self-hosted runners; packaging v0.1.3 2026-08-10 10:34:07 -05:00
COMPATIBILITY.md test: YAML/SIGHUP/defaults coverage and cut v0.1.0 (#13) 2026-08-09 20:14:15 -05:00
CONTRIBUTING.md chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
Dockerfile Initial scaffold: MuxCore module starter template 2026-06-11 20:05:04 -05:00
go.mod Add SettingsProvider for live flags_file reload. (#14) 2026-08-10 03:09:39 -05:00
go.sum Add SettingsProvider for live flags_file reload. (#14) 2026-08-10 03:09:39 -05:00
LICENSE Initial scaffold: MuxCore module starter template 2026-06-11 20:05:04 -05:00
Makefile chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00
muxcore.json fix(ci): self-hosted runners; packaging v0.1.3 2026-08-10 10:34:07 -05:00
README.md test: YAML/SIGHUP/defaults coverage and cut v0.1.0 (#13) 2026-08-09 20:14:15 -05:00
SECURITY.md chore: align module with starter template and CI 2026-07-22 19:09:33 -05:00

Feature Flags File

CI Go Version License: GPL-3.0

YAML file-backed feature flag provider with SIGHUP reload.

A MuxCore sidecar module that serves feature flags from a local YAML file (IsEnabled / GetVariant). Send SIGHUP to reload without restart. Provides the feature.flags capability (FeatureFlagProvider).


How It Works

Module request ──→ feature-flags-file (gRPC) ──→ flags.yaml
                              ↑
                         SIGHUP reload

Missing flags fall back to the caller-supplied default value.

flags.yaml format

my-feature:
  default: true
  variant: "on"
experiment-a:
  default: false
  variant: "control"

Configuration

Setting Default Description
FEATURE_FLAGS_FILE (env) flags.yaml Path to YAML feature-flag file
gRPC listen :9402 Feature-flags gRPC address
HTTP listen :9404 Health endpoint (GET /health)

Quick Start

make build

export MUXCORE_INSECURE_DISABLE_TLS=true
./feature-flags-file --muxcore-mesh-addr localhost:9090

Capability

feature.flags — File-backed feature flags (FeatureFlagProvider)

License

GPL-3.0