Skip to main content
Helm values allow you to customize how applications are deployed without modifying the underlying charts. CNAP provides a powerful multi-source values editor that lets you configure applications with multiple Helm sources, manage versions, and control how updates roll out to installations.

Understanding Helm Values

are YAML configuration files that override default settings in Helm charts. They control everything from resource allocations and scaling behavior to application-specific settings and networking configuration. When you customize values, CNAP:
  • Merges your custom values with chart defaults
  • Generates a new versioned package with your configuration
  • Preserves comments and structure from the original chart
  • Validates values against the chart’s schema when available
CNAP automatically handles the complexity of value merging and validation, so you can focus on configuration rather than Helm internals.

Multi-Source Configuration

Many applications use multiple Helm sources—for example, a web application with a database, cache, and monitoring stack. CNAP’s values editor provides a tabbed interface where you can configure each source independently while applying all changes in a single transaction.

Using the Multi-Source Editor

When editing values for products or standalone installations with multiple sources:
  1. Switch between sources using the tabs at the top of the editor
  2. Edit each source independently in YAML or form view
  3. Track modifications with visual indicators (orange dots) on tabs that have been changed
  4. Apply all changes at once with the “Apply All” button
The editor shows:
  • Modified badge - Count of sources with unsaved changes
  • Source tabs - All sources displayed as tabs for easy navigation
  • YAML/Form toggle - Switch between raw YAML and guided form interface
  • Diff highlighting - See exactly what values differ from defaults
The form view provides a structured interface for editing values when the chart includes a JSON schema. Use YAML view for advanced configurations or when working with charts that don’t have schemas.

Product Values vs Install Values

CNAP distinguishes between product-level values (the ) and install-level values (individual deployments). Understanding this distinction is crucial for managing updates effectively.

Product Values

Product values define the template configuration for all future installations. When you update product values:
  1. New chart version created - CNAP generates a new versioned package
  2. Existing installs unchanged - Current deployments continue running
  3. New installs use updated values - Future installations get the new configuration
  4. Manual rollout required - You control when existing installs upgrade
Use product values when:
  • Setting default configuration for all customers
  • Preparing new features or settings
  • Testing changes before wide rollout
  • Managing staged deployments

Standalone Install Values

Standalone installations have their own template (1:1 relationship). When you update values for a standalone install:
  1. Values updated immediately - Changes apply to the template
  2. New chart generated - A new versioned package is created
  3. Application redeploys automatically - The new configuration is applied to your cluster
  4. Single installation affected - Only this specific install changes
Use standalone install values when:
  • Configuring customer-specific installations
  • Making one-off customizations
  • Testing configurations for specific environments
  • Managing independent deployments

Product-Based Install Overrides

Product-based installations support per-install value overrides that layer on top of product defaults. When you customize values for a product-based install:
  1. Overrides stored separately - Your customizations are saved as install-specific overrides
  2. Product defaults preserved - The product template remains unchanged
  3. Values merged automatically - Product values + install overrides are merged during deployment
  4. Updates persist - Overrides survive product template updates
  5. Application redeploys - The new merged configuration is applied to your cluster
Use product-based install overrides when:
  • Customizing installations for specific customers (custom domains, branding, resource limits)
  • Enabling customer-specific features or toggles
  • Adjusting configurations per environment (production vs staging)
  • Maintaining customer settings across product updates
Install overrides always take precedence over product defaults. When you update the product template, customer overrides are automatically merged with the new product values, ensuring customizations persist.

Value Layering and Merging

CNAP uses a layered approach to merge values from multiple sources, ensuring predictable and maintainable configurations.

Merge Order

Values are merged in the following order (later layers override earlier ones):
  1. Chart Defaults - Default values defined in the Helm chart
  2. Product Template Values - Values configured in the product template
  3. Install Overrides - Customer-specific overrides for product-based installs
  4. Install Metadata - System-generated values like

Deep Merging

CNAP performs of nested objects:
# Product Template Values
database:
  host: "prod-db.example.com"
  port: 5432
  ssl: true

# Install Override
database:
  host: "customer-db.example.com"

# Final Merged Result
database:
  host: "customer-db.example.com"  # Overridden
  port: 5432                       # From product
  ssl: true                        # From product
Arrays are replaced entirely rather than merged:
# Product Template Values
features:
  - "basic"
  - "standard"

# Install Override
features:
  - "basic"
  - "premium"

# Final Merged Result
features:
  - "basic"      # Completely replaced
  - "premium"    # Not merged
When customizing values, you only need to specify the values you want to override. All other product template values are automatically included in the merged configuration.

Version Management and Rollouts

When you update product values, CNAP creates a new chart version without affecting existing installations. This gives you precise control over when and how updates roll out to your customers.

The Update Workflow

Viewing Available Updates

Each product installation shows its current chart version and whether updates are available:
  • Current version badge - Shows the chart version currently deployed
  • Latest version badge - Shows the newest available version
  • Update available indicator - Orange badge when install is behind latest

Rolling Out to Single Install

To update a specific installation:
  1. Navigate to the product’s installations list
  2. Click Update on the installation row
  3. Review the change (current version → latest version)
  4. Confirm the update
The installation updates to the latest chart version immediately. Use this approach for:
  • Testing updates with a pilot customer
  • Staggered rollouts across customers
  • Customer-requested upgrades
  • Selective deployment strategies

Rolling Out to All Installs

To update all installations at once:
  1. Navigate to the product details page
  2. Click Update All Installs in the installations section
  3. Review the update scope (shows count of installations)
  4. Confirm the bulk update
All installations update to the latest chart version simultaneously. Use this approach for:
  • Security patches requiring immediate deployment
  • Critical bug fixes
  • Coordinated feature releases
  • Simplified version management
Bulk updates execute in parallel but you can monitor each installation’s progress individually. Failed updates don’t block others from completing.

Editing Values

For Products

  1. Navigate to your product details page
  2. Click the Values button in the header
  3. Configure each Helm source using the tabbed interface:
    • Switch between sources using tabs
    • Edit in YAML or form view
    • Track changes with modification indicators
  4. Click Apply All to save changes
This generates a new chart version. Existing installations continue running the previous version until you choose to update them.

For Product-Based Installations

  1. Navigate to the installation details page (must not be the product owner)
  2. Click the Values button in the header
  3. Configure each Helm source using the tabbed interface
    • You’ll see merged values (product defaults + any existing overrides)
    • Changes are stored as install-specific overrides
  4. Click Apply All to save changes
This creates install overrides that layer on top of product defaults and triggers an immediate redeployment with the merged configuration.
Product owners cannot edit values for product-based installations directly (this would affect all customers). They must update the product template instead. Only customers (non-owners) can create install-specific overrides.

For Standalone Installations

  1. Navigate to the installation details page
  2. Click the Values button in the header
  3. Configure each Helm source using the tabbed interface
  4. Click Apply All to save changes
This updates the installation’s template and triggers an immediate redeployment with the new configuration.
Changes to standalone installations and product-based install overrides take effect immediately. Review configurations carefully before applying.

Status Tracking

CNAP provides real-time status indicators during values updates:
StatusDescription
Saving…Storing updated values in the template
Packaging…Generating new Helm chart with your configuration
Deploying…Applying changes to your cluster (standalone installs only)
Progress appears on the Values button, allowing you to monitor the update without blocking other work.

Best Practices

Version Control Strategy

  • Update products first - Make template changes before rolling out to installs
  • Test with single install - Verify configuration with one customer before bulk updates
  • Use semantic versioning - CNAP automatically versions charts; treat major updates carefully
  • Document changes - Keep notes on what values were changed in each version

Multi-Source Configuration

  • Configure all sources together - Use the multi-source editor to apply changes atomically
  • Review modifications - Check the modified sources count before applying
  • Validate YAML syntax - The editor warns about syntax errors before applying
  • Use form view for structure - Form view prevents common YAML formatting mistakes

Rollout Management

  • Pilot test updates - Start with a single installation for new configurations
  • Stagger large rollouts - Consider updating installations in batches for large products
  • Monitor after updates - Check installation health after rolling out changes
  • Keep previous versions - Don’t delete old chart versions until all installs are migrated

Install Overrides

  • Minimize overrides - Only override values that truly need to be customer-specific
  • Use product defaults - Set sensible defaults in the product template for common configurations
  • Document overrides - Keep notes on why specific values were overridden for each customer
  • Test product updates - Verify that product template changes merge correctly with install overrides
  • Review periodically - Check if overrides are still necessary as product defaults evolve

Security Considerations

  • Never commit secrets - Use environment variables and secret management for sensitive data
  • Review values before applying - Especially when using form view which may expose all fields
  • Limit who can update - Product values affect all customers; restrict access appropriately
  • Audit changes - Track who made value changes and when

Common Scenarios

Update values for CPU and memory limits to scale applications. For products, update the template values and roll out to installations that need more resources. For standalone installs, update values directly.
Many Helm charts use feature flags in values. Enable features in the product template, generate a new version, then selectively update installations as customers opt in.
Use standalone installations for environment-specific deployments (dev, staging, production). Each can have different values while sharing the same base chart.
Update database URLs or connection parameters by editing values. For products, create a new version with updated defaults. For standalone installs, update directly to reconfigure immediately.
Adjust replica counts, autoscaling settings, and resource requests. Test with a single installation first, then roll out to others once validated.
Use per-install value overrides for product-based installations when customers need unique configurations. Navigate to the installation details page and edit values to create customer-specific overrides for custom domains, resource limits, feature toggles, or any other settings. These overrides layer on top of product defaults and persist across product template updates, giving you the benefits of centralized product management while supporting customer-specific customizations.

Troubleshooting

Changes Not Applying

If value changes don’t take effect:
  • Check syntax - Ensure YAML is valid with proper indentation
  • Review status - Wait for “Packaging…” status to complete
  • Verify rollout - For products, ensure you’ve updated the installations
  • Check logs - View application logs for deployment errors in the installation details page

Schema Validation Errors

If the form view shows validation errors:
  • Check required fields - Some values must be provided
  • Verify data types - Ensure numbers, strings, and booleans match schema
  • Switch to YAML - Use YAML view for complex configurations
  • Consult chart docs - Review the Helm chart’s documentation for value requirements

Installation Not Updating

If an installation doesn’t update after rollout:
  • Review version - Verify the installation is pointing to the new chart
  • Check status - Look for errors in the installation details page
  • Check deployment - Ensure the application is deploying successfully