As the API validation code always return 400 when request with
invalid json body, so 400 is an available status code for all the
Nova API. Then no microversion bump required for fixing 500 to 400.
Change-Id: I0454e95cd0655c910fad8b39ead2b5edab216b68
Related-Bug: 1471239
Change Ia782ab9d9a31d37854606f7be82582de6d7bc374 returns a 403 rather
than a 500 for OverQuota and adds that to the list of expected errors in
the v2.1 case.
There is no microversion change required since the 403 case is implied
given keystone authentication can fail with a 403 on any API.
This change updates the docs to mention the exceptional case for 403.
Related-Bug: #1444559
Change-Id: I7ea8c5c50d4eac53837f5f76e09277ac185288a9
We shouldn't require a microversion bump for translating a 500 error to
some 400-level error code since 500s should not be part of the API
contract and clients shouldn't expect them for cases that the client can
change, i.e. don't ask for things that don't exist, don't ask to do
things that raise quote and you're already maxed out, etc.
There was some confusion in the doc about the statement that a
microversion is needed when changing from a 501 to a 400, but that's a
different case (going from something not being implemented to it
suddenly being implemented - that's a case where the client should
opt-in and a microversion bump is required).
Not returning 500s is just fixing bugs and shouldn't require a
microversion, the docs even already say that in the first footnote -
this just adds notes to clarify.
Also fixes the links to the [1] footnote.
Change-Id: I4526a72458a23662bd8aaa7f89be32844a511929
The "group" tag on nodes can be used to create vertical alignment, all
nodes in a group which are connected will end up in one column. This
makes reading the flow chart a bit easier.
Add a " " before the "no" edges otherwise they are left justified
completely to the vertical edge, and make it kind of gorpy to read.
Change-Id: Ife11e905ea6fdd97e1459fbbc001324eb946f9e4
This documents what we consider the contract in Nova, and what kinds
of things trigger needing a new microversion. It also includes a flow
chart for folks that are more visually inclined.
Change-Id: I6dbadbf7cb23e27b96a0ae191419c8adf6ffe006
Make the API microversion history more accessible by adding it to nova's
doc landing page.
Making sure it is easy to discover what the difference between each
microversion is fundamental piece of the microversion puzzle, so lets
not require end users to have to look through git.
rename api_microversions.rst to api_microversion_dev.rst to clarify that
it is about development and versus history.
Change-Id: I270944bf9739b113a43b932948fdbf83e449603b