in packages/constructs/L3/utility/ec2-l3-construct/lib/ec2-l3-construct.ts [640:681]
private createPackages(namedPackageProps: NamedPackageProps) {
const packageList: InitElement[] = [];
Object.entries(namedPackageProps).forEach(entry => {
const packageProps = entry[1];
const namedPackageOptions: NamedPackageOptions = packageProps.restartRequired
? {
serviceRestartHandles: [this.initServiceRestartHandle],
version: packageProps.packageVersions,
}
: {
version: packageProps.packageVersions,
};
const locationPackageOptions: LocationPackageOptions = packageProps.restartRequired
? {
serviceRestartHandles: [this.initServiceRestartHandle],
key: packageProps.key,
}
: {
key: packageProps.key,
};
if (packageProps.packageManager == 'yum') {
packageList.push(InitPackage.yum(packageProps.packageName!, namedPackageOptions));
}
if (packageProps.packageManager == 'apt') {
packageList.push(InitPackage.apt(packageProps.packageName!, namedPackageOptions));
}
if (packageProps.packageManager == 'python') {
packageList.push(InitPackage.python(packageProps.packageName!, namedPackageOptions));
}
if (packageProps.packageManager == 'rubyGem') {
packageList.push(InitPackage.rubyGem(packageProps.packageName!, namedPackageOptions));
}
if (packageProps.packageManager == 'msi') {
packageList.push(InitPackage.msi(packageProps.packageLocation!, locationPackageOptions));
}
if (packageProps.packageManager == 'rpm') {
packageList.push(InitPackage.rpm(packageProps.packageLocation!, locationPackageOptions));
}
});
return packageList;
}