Start and shutdown
On startup, Material Management will execute the following steps:
-
Initiates the periodic health checks for
-
Portal,
-
RabbitMQ and
-
MACMA
-
-
Connect to the DB
The readiness of the pod depends only on the startup itself, the other health checks have no effect on the readiness of the pod.
During the startup flow, the following asynchronous processes are started:
-
Register in Portal
-
Register in RabbitMQ
Shutdown
When a pod is initiated to be stopped, the system will send a SIGTERM signal to the .NET application, and wait for 30 seconds for it to stop. It will send a SIGKILL in case the shutdown could not finish in time. The .NET application is configured to have 28 seconds of grace period for shutting down, so that the SIGKILL does not happen while the framework would stop itself. The application is logging the STOPPING and STOPPED events, and the latter will contain the exit code as well.
Possible exit codes:
-
Exit code 0: the application could shut itself down during the grace period
-
Exit code 1: there was an error during shutdown, or the processes could not finish during the grace period