Hi team, I'm having a question about the CI/CD strategy for ansible managed resources. From my understanding, there are basically two ways:
1. Having a periodic deployment triggered per playbook with customized running frequency. 2. Trigger ansible playbook based on the code change merged. The first strategy is the most straight forward one, but there could be many unnecessary runs if there is actually no code change involved. The second strategy is more efficient and event-driven, but I'm having difficulty completing the picture due to the following concerns: 1. If we have a nested roles defined and a relatively complex playbook dependencies, it is hard to get the impact of the code change, especially when some of the tasks running conditions depending on some runtime collected attributes. 2. Sometimes we just reformat the playbook, which does not have any functional change. However, if we could detect the change somehow, the affected hosts by a code change could be many, and it is not fair to waste many resources to trigger all those playbooks just for some no-op operations. 3. Similar to the item #2, but the the conern is on the blasting radius part. If there is a real change needs to be performed, the impacted hosts could be huge with many different playbooks, how to coordinate on those deployments could also be challenging. Looking forward to any insights or discussion on this. Thanks. Jianan. -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/394a9d78-25a7-45a7-be33-4bf476a36fcen%40googlegroups.com.
