Add valid attributes + check for dynamic repository building
Component names are within :components, not the top level of the hash.