When you run the oracle install role, the task prepare_installation.yml checks if /opt/oracle exists, if not, the next task runs.
So task 2 creates /opt/oracle/data for example, and then task 3 fails (because of file not exists, or HTTP not running).
On the next run, the folder /opt/oracle exists and all tasks in this file are skipped. This should be made more fail proof and check for a successful installed file within the /opt/oracle/product/19.0.0 folder for example, at least for a folder which is not created during the second task.
When you run the oracle install role, the task prepare_installation.yml checks if /opt/oracle exists, if not, the next task runs.
So task 2 creates /opt/oracle/data for example, and then task 3 fails (because of file not exists, or HTTP not running).
On the next run, the folder /opt/oracle exists and all tasks in this file are skipped. This should be made more fail proof and check for a successful installed file within the /opt/oracle/product/19.0.0 folder for example, at least for a folder which is not created during the second task.
https://github.com/HCL-TECH-SOFTWARE/connections-automation/blob/4e0466a74b400835172d5a83c70ffcbac7e62c4f/roles/third_party/oracle-install/tasks/prepare_installation.yml#L1