There is a saying among Linux administrators:
with great power, comes great responsibility
The same is true if you use low-level tools to manage cloud resources.
Recently I worked on an automated deployment script for the AWS Greengrass v2 environment. At some point in development, this script started to behave in the nondeterministic way - I faced random issues in connectivity between Greengrass Code device and Client devices.
After a long debug session, I realized my mistake - I did not manage cloud resources carefully enough. I was using the low-level Boto3 clients and introduced race conditions which (when the timing was bad) corrupted the state of my environment.
Finally, I fixed problems with my script and decided to write a blog post on this topic.
Let me know if you faced race conditions when deploying cloud resources and how you discovered + fixed them.
https://www.thingrex.com/cloud_race_conditions/