1. A method comprising: retrieving, by a provisioning server hosted by a boot server machine, at least one software distribution; identifying, by the provisioning server, one or more resources associated with a target machine; determining, by the provisioning server, a function to be performed by the target machine based on the identified one or more resources associated with the target machine; generating, by the provisioning server, a profile for the at least one software distribution, wherein the profile associates the at least one software distribution with the function to be performed by target machines utilizing the at least one software distribution and wherein the profile links a configuration file to the at least one software distribution; receiving, by the provisioning server, update information for the at least one software distribution; and automatically installing, by the provisioning server, the at least one software distribution and the update information on the target machine based on the profile.