Flagsmith
Flagsmith starter template for DevZero.
What is Flagsmith?
Flagsmith is an open-source feature flag and configuration management platform that allows developers to control and manage feature rollouts across applications. It supports both server-side and client-side implementations, offering a flexible way to manage features dynamically. Licensed under the MIT license, Flagsmith provides the tools needed to adjust features in real time without deploying new code.
Features
- Feature Flags: Manage feature rollouts at a granular level.
- Environment Management: Maintain different configurations across environments.
- Remote Configurations: Change application behavior without redeployment.
Benefits
Flagsmith helps teams release features more effectively by enabling controlled rollouts and quick toggling. Its ability to manage configurations remotely reduces downtime and simplifies experimentation. The platform’s flexibility and accessibility make it an excellent choice for teams seeking to improve deployment workflows.
Flagsmith with DevZero
Using Flagsmith with DevZero provides a dynamic approach to feature management within development and testing environments. This integration allows teams to test features under different configurations and deploy changes confidently, ensuring smooth delivery of updates.
Advantages
- Feature Rollout Management: Control feature releases across environments with precision.
- Dynamic Configurations: Adjust application settings without restarting or redeploying.
- Improved Deployment Process: Test and manage features effectively during development.
Recipe for Flagsmith
version: "3"
build:
steps:
- type: apt-get
packages: ["build-essential", "curl", "git", "nano", "software-properties-common", "ssh", "sudo", "tar", "unzip", "vim", "wget", "zip", "docker-ce", "docker-ce-cli", "containerd.io"]
extra_repositories:
- key_url: https://download.docker.com/linux/ubuntu/gpg
repository: https://download.docker.com/linux/ubuntu
- type: command
command: |
usermod -aG docker devzero
systemctl enable docker.service
systemctl enable containerd.service
directory: /home/devzero
user: root
- type: command
command: |
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh && ./get_helm.sh && rm get_helm.sh
directory: /home/devzero
user: devzero
- type: command
command: |
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl && rm kubectl
directory: /home/devzero
user: devzero
launch:
steps:
- type: command
command: |-
helm repo add flagsmith https://flagsmith.github.io/flagsmith-charts/
helm install -n flagsmith --create-namespace flagsmith flagsmith/flagsmith
kubectl -n flagsmith port-forward svc/flagsmith-frontend 8080:8080