Migrating from legacy configuration

Migrating from legacy configuration

We have recently redesigned Maverics to use an app-centric model to better support customer goals. This update brings some exciting new features to the Maverics UI and configuration.

While the Maverics configuration language has been updated to support the new domain model, the orchestrator remains backward-compatible and will still support legacy configuration and service extensions. However, new features will only be available to the new configuration format.

This guide summarizes the features of our new configuration to help you understand how it differs from our legacy configuration. For information on migrating legacy service extensions, see our service extension migration guide.

AppGateways are now proxy apps

  • Proxy apps are declared under apps, type: proxy.

Proxied apps have replaced AppGateways. Proxied apps have the same functionality as AppGateways but are implemented differently in the configuration, using the same model as OIDC and SAML apps.

  • Host and base path are now declared as routePatterns. You can list as many URLs under routePatterns as needed.
  • Auth providers are now declared as OIDC or SAML providers.
  • Headers are declared as name/value pairs, and you can now specify static strings.
  • Double curly braces are used as a more flexible structure to accommodate future needs.
  • Policy now includes some new operators.
    • notEquals and notContains have replaced the “not” operator used in AppGateways.
  • You can now declare app-specific logout URLs.

Proxied apps in Maverics

In the Maverics app, proxied apps have replaced header-based apps.

Proxied App

In the Maverics app, you can specify the upstream URL, route patterns, CA path, app-specific logout URL, and post logout redirect URL.

Proxied App

Service extension enhancements

As part of this update, we’ve made a number of enhancements to our service extensions:

  • We now have code compilation and other common IDE features so they can be programmatically tested within the Maverics app.
  • We’ve improved documentation and examples available in Godoc.
  • We’ve made interfaces more consistent, thus enabling the reuse of extensions across different app types.

Service extension code editor

There’s now 1:1 parity between what can be done with manual YAML configuration and the configuration generated in the Maverics app.

What is no longer supported in service extensions

  • AppGateways has been replaced by orchestrator.

JSON versus YAML configuration

Orchestrators support configurations in either YAML and JSON serialization formats. JSON is usually used programmatically (for example, in machine-to-machine communications), and is the format used in configuration bundles published by the Maverics web interface. YAML is a more human-readable format and is used in many configuration examples in this documentation.

The Maverics platform creates orchestrator configuration in JSON where values are presented in alphabetical order. YAML configurations are documented here in an order that is logical to the orchestrator. Note the differences in the code below.