Skip to content

Commit dde3ae1

Browse files
authored
Updated microdnf command line for use with linux 9 which does not assume yes by default (#434)
1 parent 325dea9 commit dde3ae1

File tree

4 files changed

+17
-2
lines changed

4 files changed

+17
-2
lines changed

imagetool/src/main/java/com/oracle/weblogic/imagetool/cli/menu/CommonOptions.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,10 @@ public void copyOptionsFromImage() throws IOException, InterruptedException {
223223

224224
PackageManagerType pkgMgr = PackageManagerType.valueOf(pkgMgrProp);
225225
logger.fine("fromImage package manager {0}", pkgMgr);
226+
if (pkgMgr == PackageManagerType.MICRODNF && os.version() != null && os.version().startsWith("8")) {
227+
logger.fine("Using older style format for microdnf for linux 8. ver={0}", os.version());
228+
pkgMgr = PackageManagerType.MICRODNF_8;
229+
}
226230
if (packageManager != PackageManagerType.OS_DEFAULT && pkgMgr != packageManager) {
227231
// If the user is overriding the detected package manager, use the provided value
228232
logger.info("IMG-0079", pkgMgr, packageManager);

imagetool/src/main/java/com/oracle/weblogic/imagetool/cli/menu/PackageManagerType.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ public enum PackageManagerType {
99
YUM,
1010
DNF,
1111
MICRODNF,
12+
MICRODNF_8,
1213
APTGET,
1314
APK,
1415
ZYPPER

imagetool/src/main/java/com/oracle/weblogic/imagetool/util/DockerfileOptions.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ public DockerfileOptions setPackageInstaller(PackageManagerType option) {
299299
pkgMgr = PackageManagerType.NONE;
300300
} else {
301301
// This default must match the Package Manager for the configured fromImage default in baseImageName
302-
pkgMgr = PackageManagerType.MICRODNF;
302+
pkgMgr = PackageManagerType.MICRODNF_8;
303303
}
304304
} else {
305305
pkgMgr = option;
@@ -317,6 +317,11 @@ public boolean useMicroDnf() {
317317
return pkgMgr == PackageManagerType.MICRODNF;
318318
}
319319

320+
@SuppressWarnings("unused")
321+
public boolean useMicroDnf8() {
322+
return pkgMgr == PackageManagerType.MICRODNF_8;
323+
}
324+
320325
@SuppressWarnings("unused")
321326
public boolean useDnf() {
322327
return pkgMgr == PackageManagerType.DNF;

imagetool/src/main/resources/docker-files/package-managers.mustache

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,15 @@
1717
&& dnf clean all
1818
{{/useDnf}}
1919
{{#useMicroDnf}}
20+
RUN microdnf -y update \
21+
&& microdnf -y install gzip tar unzip libaio libnsl jq findutils diffutils shadow-utils {{#osPackages}}{{{.}}} {{/osPackages}}\
22+
&& microdnf clean all
23+
{{/useMicroDnf}}
24+
{{#useMicroDnf8}}
2025
RUN microdnf update \
2126
&& microdnf install gzip tar unzip libaio libnsl jq findutils diffutils shadow-utils {{#osPackages}}{{{.}}} {{/osPackages}}\
2227
&& microdnf clean all
23-
{{/useMicroDnf}}
28+
{{/useMicroDnf8}}
2429
{{#useAptGet}}
2530
RUN apt-get -y update \
2631
&& apt-get -y upgrade \

0 commit comments

Comments
 (0)