DevZero Logo
DevZero

Flagsmith

Flagsmith starter template for DevZero.

OPEN IN 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

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

On this page