Summary
In this chapter, we learned how to define modules and how useful they can be to create more readable, simpler, and reusable templates with Bicep. We reviewed how to define and consume modules and some of the tips you need to be aware of when using them.
Then, we officially covered outputs and learned how to return values or properties to the outside world, how to conditionally return a value, how to return them via a loop, and then reviewed the module outputs. This chapter concludes all the topics you need to know about Bicep to be able to create templates.
In the next chapter, we will review the different ways of deploying them, so get ready for some action!