rox-serverless

5.4.10 • Public • Published

CloudBees Feature Management

CloudBees Feature Management is a secure feature management solution for the enterprise.

Accelerate development and minimize the risk of deploying new code with simple to create feature flags, controlled rollouts, advanced target groups & deployment rules.

Getting Started

Please see the detailed instructions in our docs on how to add CloudBees Feature Management to your project.

Documentation

Getting started guide, use cases, examples and videos can be found in CloudBees Feature Management documentation

CloudBees Feature Management Javascript SDK for serverless.

This SDK exposes CloudBees Feature Management functionality in a way that is ideally suited to serverless environments. Other language SDKs are designed to operate in long-running applications, managing feature flag configuration and communications with the CloudBees Feature Management ecosystem for you. The Javascript SDK for serverless instead provides an extremely fast and efficient way for serverless applications evaluate feature flags using injected flag configuration data.


NOTE

Because the CloudBees Feature Management SDK for serverless runs disconnected from the wider Feature Management ecosystem, it does not record or report flag impressions


Installation

yarn add rox-serverless

or

npm i rox-serverless --save

Usage

Unlike other SDKs, the Javascript SDK for serverless will not fetch feature flag configuration information itself, this must be fetched externally and injected into the application. This allows the SDK to offer extremely rapid and efficient start-up and flag evaluation that is ideally suited to serverless applications. The flag configuration data provided to the application should be refreshed periodically to ensure it remains current. To fetch flag configuration, see the package rox-flag-config-fetcher

Initialising the CloudBees Feature Management SDK for serverless

Use the initFeatureFlags() function to initialise CloudBees Feature Management from a flag configuration that was previously fetched. The flag configuration could be injected into your serverless application at runtime, or fetched from a fast data store such as CloudFlare KV (Key/Value store).

import {initFeatureFlags} from './FlagResolver'

// Inject flagConfiguration data from your external source.
const flagConfig = getFlagConfig()  // <-- Provide your logic here.
await initFeatureFlags(flagConfig)

Evaluating feature flags in your application

import {getAllFlags, getFlagValue, getNumberFlagValue, isEnabled} from './FlagResolver'

// Get the names of all feature flags defined in the flag configuration:
const flagNames = getAllFlags()

// Get the state of a boolean feature flag:
const aBooleanFlagValue = isEnabled(flagName)

// Get the value of a string feature flag:
const aStringFlagValue = getFlagValue(flagName)

// Get the value of a number feature flag:
const aNumberFlagValue = getNumberFlagValue(flagName)

LICENSE

CloudBees Feature Management is free-to-use, proprietary software. Please see the full license (found in LICENSE in this distribution) for details on its license and the licenses of its dependencies.

CloudBees Feature Management Javascript SDK for serverless is free-to-use, proprietary software. Please see the full license found under the LICENSE file for more details.

Feedback

Feedback is always welcomed at support@cloudbees.com

Package Sidebar

Install

npm i rox-serverless

Weekly Downloads

26

Version

5.4.10

License

SEE LICENSE IN LICENSE

Unpacked Size

88.6 kB

Total Files

4

Last publish

Collaborators

  • eladrollout
  • cloudbees-owner
  • asaf_rollout
  • agentgonzo
  • markwm
  • sgrahamcloud