Getting Started for Nimbus Web Integration
Introduction
This guide outlines the high level steps and considerations for integrating Nimbus (Cirrus) into your web application. More detailed steps are available in the checklist
Integration Steps
To integrate Nimbus (Cirrus) with your web application, these are high-level steps, you can find more detailed version in the checklist:
- Glean
- Integrate Glean on your web application.
- FML
- Make Feature Manifest Language (FML) configuration available in your repository.
- Probe Scraper
- Add application into probe scraper for data collection.
- Cirrus Container Image
- Verify Access to Cirrus container image: Mozilla Cirrus Docker Hub.
- Deploy Cirrus Container
Deploy Cirrus container as a sidecar container in your Kubernetes deployment and add the environment variables.
Sidecar pattern in Kubernetes
Example of Deployment architecture
- Configure Feature Manifest Language (FML)
- Add feature in Feature Manifest Language (FML).
- Integrate Glean SDK
- Identify key metrics and configure with your application.
- Call Cirrus Container
- Pass a unique client id and context when calling the container to receive the features. The client id can be a temporary or stable id depending on your use case. Refer to API docs for more details.
{
"client_id": "4a1d71ab-29a2-4c5f-9e1d-9d9df2e6e449",
"context": {
"key1": "value1",
"key2": {
"key2.1": "value2",
"key2.2": "value3"
}
}
}
- Validation and Testing
- Validate setup and test the integration thoroughly.
- Experiment Analysis
- Add application support on Jetstream/OpMon and Metric hub.
- Additional Considerations
- Provide training resources for experiment owners and reviewers.
Additional Notes
For any questions or assistance, reach out to the Nimbus team on Slack channel #ask-experimenter.