<commit_before>= Upgrade to 3.17.0

== Breaking Changes

=== Management API Documentation

From this version, APIM's Management API documentation is now using OpenAPI v3 format, instead of the old Swagger v2 format.

As a consequence, the specification of this API is now accessible from:

* `{host:port}/management/openapi.yaml`
* `{host:port}/management/openapi.json`

To allow a smooth transition, the old URL (`{host:port}/management/swagger.json`) will remain available until 3.18.0.

=== Docker Images - Enterprise Edition

To reduce the number of security vulnerabilities and ensure a better maintenance in the future, the base Docker images used for the Enterprise Edition have changed.

As of 3.17.0, APIM Gateway EE and Management API EE base Docker images are moving from **Ubuntu** to **Alpine** with JDK 17. It means users creating their own Docker images based on the one provided by Gravitee.io might need to update their Dockerfile to make them compatible with the Alpine distribution.

_Notes_: Community Edition users will not be affected as the base images were already **Alpine** ones.

== Upgrade Order

In order to achieve a 0 downtime upgrade, APIM has to be upgraded before upgrading the gateways.

On hybrid architectures where gateway bridge feature is enabled, gateways have to be upgraded in this order :

. The bridge server gateway
. The bridge client gateway

== Deprecated Bridge Endpoints

Since bridge client rely on their own internals to fulfil API key requests, the ``/apis/{api.id}/keys/{api.key}`` endpoint
has been deprecated on the bridge server and will be removed in a future version.

The ``/keys/_search`` endpoint has been deprecated and replaced with ``/keys/_findByCriteria`` endpoint. It will be removed in a future version.

More information on the gateway bridge feature can be found link:https://docs.gravitee.io/apim/3.x/apim_installguide_hybrid_deployment.html#apim_gateway_http_bridge_server[here].
<commit_msg>docs: add a note on the new location for mongodb upgrade scripts<commit_after>= Upgrade to 3.17.0

== Breaking Changes

=== Management API Documentation

From this version, APIM's Management API documentation is now using OpenAPI v3 format, instead of the old Swagger v2 format.

As a consequence, the specification of this API is now accessible from:

* `{host:port}/management/openapi.yaml`
* `{host:port}/management/openapi.json`

To allow a smooth transition, the old URL (`{host:port}/management/swagger.json`) will remain available until 3.18.0.

=== Docker Images - Enterprise Edition

To reduce the number of security vulnerabilities and ensure a better maintenance in the future, the base Docker images used for the Enterprise Edition have changed.

As of 3.17.0, APIM Gateway EE and Management API EE base Docker images are moving from **Ubuntu** to **Alpine** with JDK 17. It means users creating their own Docker images based on the one provided by Gravitee.io might need to update their Dockerfile to make them compatible with the Alpine distribution.

_Notes_: Community Edition users will not be affected as the base images were already **Alpine** ones.

== Upgrade Order

In order to achieve a 0 downtime upgrade, APIM has to be upgraded before upgrading the gateways.

On hybrid architectures where gateway bridge feature is enabled, gateways have to be upgraded in this order :

. The bridge server gateway
. The bridge client gateway

== Deprecated Bridge Endpoints

Since bridge client rely on their own internals to fulfil API key requests, the ``/apis/{api.id}/keys/{api.key}`` endpoint
has been deprecated on the bridge server and will be removed in a future version.

The ``/keys/_search`` endpoint has been deprecated and replaced with ``/keys/_findByCriteria`` endpoint. It will be removed in a future version.

More information on the gateway bridge feature can be found link:https://docs.gravitee.io/apim/3.x/apim_installguide_hybrid_deployment.html#apim_gateway_http_bridge_server[here].

== The mongodb upgrade scripts have been moved

For the sake of improving our documentation management process, we have started decommissioning our link:https://github.com/gravitee-io/release[release] repository (which contained among other things this guide).

As a part of this change, our mongodb upgrade scripts are not hosted inside the release repository anymore and
have been moved to the link:https://github.com/gravitee-io/gravitee-api-management/tree/master/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/resources/scripts[gravitee-api-management] repository.
{'fraction_non_alphanumeric': 0.06691449814126393, 'fraction_numerical': 0.007872293898972229, 'mean_word_length': 4.849104859335038, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6344529', 'n_tokens_mistral': 1248, 'n_tokens_neox': 1150, 'n_words': 591}