A method, apparatus, and computer instructions for installing software in
a network data processing system. An event is detected in the network
data processing system indicating that a software module is to be
installed in a set of data processing systems in the network data
processing system. A configuration of each data processing system in the
set of data processing systems is discovered, and a set of instructions
is created using a knowledge base of prior installations. The set of
instructions is tailored for each data processing system in the set of
data processing systems based on the configuration for the each data
processing system in the set of data processing systems. The set of
instructions for the software module to be installed is sent to the set
of data processing systems.