ironic/ironic
Dmitry Tantsur fce4cc11bc Fix deployment when executing a command fails after the command starts
If the agent accepts a command, but is unable to reply to Ironic (which
sporadically happens before of the eventlet's TLS implementation), we
currently retry the request and fail because the command is already
executing. Ironic now detects this situation by checking the list of
executing commands after receiving a connection error. If the requested
command is last one, we assume that the command request succeeded.

Ideally, we should pass a request ID to IPA and then compare it. Such
a change would affect the API contract between the agent and Ironic
and thus would not be backportable.

Change-Id: I2ea21c9ec440fa7ddf8578cf7b34d6d0ebbb5dc8
(cherry picked from commit abfe383cc3)
2021-05-07 18:03:47 +02:00
..
api Add agent_status and agent_status_message params to heartbeat 2021-03-31 14:20:39 -07:00
cmd Policy json to yaml migration 2021-01-04 13:40:54 -08:00
common Inherit InvalidImageRef from InvalidParameterValue 2021-05-05 12:37:03 +00:00
conductor Process in-band deploy steps on fast-track 2021-04-28 16:23:10 +00:00
conf Provide an option to not cache bootable iso ramdisks 2021-05-05 21:04:25 +00:00
db Allocation support for project scoped RBAC 2021-03-12 08:37:51 -08:00
dhcp Add both IPv4 and IPv6 DHCP options if interface has both 2021-02-26 23:39:44 +00:00
drivers Fix deployment when executing a command fails after the command starts 2021-05-07 18:03:47 +02:00
hacking Fix the remaining hacking issues 2020-03-31 13:40:00 +00:00
objects Do not mask configdrive when executing in-band deploy steps 2021-05-05 13:17:58 +00:00
tests Fix deployment when executing a command fails after the command starts 2021-05-07 18:03:47 +02:00
__init__.py Move eventlet monkey patch code 2017-03-02 13:48:18 +02:00
version.py