1. Docs
  2. Secrets & Configuration
  3. Environments
  4. Environment Definition Syntax
  5. Built-in Functions
  6. fn::final

fn::final

    The fn::final built-in function marks a value as final, preventing child environments from overriding it. If a child environment attempts to override a final value, the value is not overridden and a validation warning is raised.

    Declaration

    fn::final: value
    

    Parameters

    PropertyTypeDescription
    valueanyThe value to mark as final.

    Returns

    The original value, marked as final so that it cannot be overridden by child environments.

    Example

    Parent environment (myproj/parent)

    values:
      frozen:
        fn::final: frozen_value
      not_final: plain_value
    

    Child environment (myproj/child)

    imports:
      - myproj/parent
    values:
      frozen: overridden    # Warning, cannot override final value
      not_final: new_value  # OK
    

    Evaluated result

    {
      "frozen": "frozen_value",
      "not_final": "new_value"
    }