Clean up processes on start, but wait on shutdown#7185
Conversation
- Set the DCP log variables - Disable windows
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@karolz-ms is there any way to associate this With the logs that come out of dcp? I have all of the dcp logs being extracted now but its hard to correlate. |
|
Also I'm seeing this repeated in the dcp logs: {"level":"debug","ts":"2025-01-23T05:37:11.087Z","logger":"dcpctrl.ContainerOrchestrator","msg":"Running Docker command","ContainerRuntime":"","Command":"/usr/bin/docker network rm --force 76dddaa083d5b207e8187fc1f9af0974b27a842c1fa9b78e0c999a4c833c671b"}
{"level":"debug","ts":"2025-01-23T05:37:11.090Z","logger":"dcpctrl.os-executor","msg":"starting waiting for process to exit","pid":28066}
{"level":"debug","ts":"2025-01-23T05:37:11.139Z","logger":"dcpctrl.os-executor","msg":"process wait ended","pid":28066,"Error":"exit status 125"} |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
That path to the |
|
@karolz-ms do I want to share the session file? If it makes sense, maybe there should dcp can tweak the output files names for this scenario? |
|
@davidfowl up until now we have been using one session folder per DCP invocation. Safest bet would be to have one folder per test suite run and within it, one folder per DCP invocation (or per invocation of a test that is using DCP). But sharing a session folder should be fine as long as each DCP instance is instructed to preserve the session folder. We can tweak the file naming as necessary, e.g. add a prefix that is per-DCP invocation etc. (e.g. that prefix could be associated with test name) |
Can you add this? The current outout looks a little crazy as its hard to tell what is going on. We could also consider making that prefix a folder. |
Trying to narrow down what might be causing #7098 (comment). Just saw a flaky test #7184 on a PR that had 2 containers hanging around and 6 networks:
It's unclear if dcp would have cleaned up some of these because the test infrastructure kills it ungracefully. Instead, clean up on the start of the test and after the test runs, we will wait for 60 seconds for dcp to quit, if it didn't then fail.