You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Couper 1.9 is a feature release bringing more comfort and enhanced stability to
the Couper configuration. It also improves the permission handling and provides a
couple of bug fixes. For a complete list of changes see below.
As of release 1.9 it is possible to split a Couper configuration into multiple .hcl-files. You can now, for example, use different configuration files for
your api, files and definitions blocks, or keep your development, testing
and production setups separated. All the configuration files given at startup will be merged together.
The new block beta_health (beta)
allows you to configure recurring health check requests for a backend.
By default, Couper won't request backends considered unhealthy which might help
them recover due to the reduced amount of requests.
The current health state of a backend can be accessed by variable.
Changes in healthiness will be logged and exported as metrics.
To make permission handling easier to grasp we've dropped the term scope and
accordingly changed the names of the beta_scope, beta_scope_claim and beta_scope_map
attributes to beta_required_permission, beta_permissions_claim and beta_permissions_map,
respectively. Furthermore, beta_required_permission (formerly beta_scope) can now
be an HCL expression. If beta_required_permission is specified in both an endpoint
and its parent api block, the former overrides the latter.
Our permission handling examples illustrate some common use cases: basic example, roles example, map example
Along with this release goes the latest extension for VSCode
which now indicates misplaced blocks and attributes, missing block labels and so on.
We've also updated the completion suggestions and fixed a couple of syntax highlighting
issues.
renamed beta_scope attribute for api and endpoint blocks to beta_required_permission; beta_required_permission in endpoint now overridingbeta_required_permission in containing api block; allowing an expression as attribute value
renamed beta_scope_claim and beta_scope_map attributes for jwt block to beta_permissions_claim and beta_permissions_map
removed beta_operation_denied and beta_scopeerror types
renamed beta_insufficient_scopeerror type to beta_insufficient_permissions
added request.context.beta_required_permission and request.context.beta_granted_permissionsrequest variables
Keys in object type attribute values are only handled case-insensitively if reasonable (e.g. they represent HTTP methods or header field values) (#461)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
1.9.0
Couper 1.9 is a feature release bringing more comfort and enhanced stability to
the Couper configuration. It also improves the permission handling and provides a
couple of bug fixes. For a complete list of changes see below.
As of release 1.9 it is possible to split a Couper configuration into multiple
.hcl-files. You can now, for example, use different configuration files foryour
api,filesanddefinitionsblocks, or keep your development, testingand production setups separated. All the configuration files given at
startup will be merged together.
The new block
beta_health(beta)allows you to configure recurring health check requests for a backend.
By default, Couper won't request backends considered unhealthy which might help
them recover due to the reduced amount of requests.
The current health state of a backend can be accessed by variable.
Changes in healthiness will be logged and exported as metrics.
To make permission handling easier to grasp we've dropped the term
scopeandaccordingly changed the names of the
beta_scope,beta_scope_claimandbeta_scope_mapattributes to
beta_required_permission,beta_permissions_claimandbeta_permissions_map,respectively. Furthermore,
beta_required_permission(formerlybeta_scope) can nowbe an HCL expression. If
beta_required_permissionis specified in both anendpointand its parent
apiblock, the former overrides the latter.Our permission handling examples illustrate some common use cases:
basic example,
roles example,
map example
Along with this release goes the latest extension for VSCode
which now indicates misplaced blocks and attributes, missing block labels and so on.
We've also updated the completion suggestions and fixed a couple of syntax highlighting
issues.
Added
beta_health-block tobackend-block to enable continuous health-checks for defined backends (#313)backends.<name>.healthvariable to access the current health-check state (subject to change)urlattribute could make use of our wildcard pattern/**and relative urls in combination with a backend reference (#480)jwks_max_staleinjwtblock (#502)jwks_ttl,jwks_max_staleandconfiguration_max_staleinoidcblock (#502)backend,backend_openapi_validationandbackend_timeouterror types (#490)response.byteslog-field to backend logs if read from body, fallback is theContent-Lengthheader (#494)endpointandaccess_control(#500)Changed
beta_scopeattribute forapiandendpointblocks tobeta_required_permission;beta_required_permissioninendpointnow overridingbeta_required_permissionin containingapiblock; allowing an expression as attribute valuebeta_scope_claimandbeta_scope_mapattributes forjwtblock tobeta_permissions_claimandbeta_permissions_mapbeta_operation_deniedandbeta_scopeerror typesbeta_insufficient_scopeerror type tobeta_insufficient_permissionsrequest.context.beta_required_permissionandrequest.context.beta_granted_permissionsrequest variablesspablock can be defined multiple times now (#510)filesblock can be defined multiple times now (#513)Fixed
error_handlerblocks (#462)error_handlerblocks for an error type defined in bothendpointandapi(#469)allowed_methodsattribute ofapiorendpointblocks (#478)backendblocks inproxyandrequestblocks (#483)error_handlerblock following anothererror_handlerblock has no label (#486)duplicate endpoint /**error for APIs sharing the same base path (#507)backend_responses(#501)expected_statuscheck for a request configured via aproxyorrequestblock if abackenderror occured (#505)merge()function removes key withnullvalue. (#518)Removed
beta_oidcblock (useoidcblock instead) (#475)beta_oauth_authorization_urlandbeta_oauth_verifierfunctions (useoauth2_authorization_urlandoauth2_verifierfunctions instead) (#475)pathattribute fromendpoint(andproxy) block; usepathattribute inbackendblock instead (#516)This discussion was created from the release v1.9.0.
Beta Was this translation helpful? Give feedback.
All reactions