Allow overriding image.cleanCache from the command-line

See gh-32719
This commit is contained in:
Kedar Joshi 2020-10-16 01:13:52 +05:30 committed by Stephane Nicoll
parent 771503f30d
commit c2a483a78f
3 changed files with 21 additions and 4 deletions

View File

@ -153,7 +153,7 @@ Acceptable values are `ALWAYS`, `NEVER`, and `IF_NOT_PRESENT`.
| `cleanCache`
| Whether to clean the cache before building.
|
| `spring-boot.build-image.cleanCache`
| `false`
| `verboseLogging`

View File

@ -130,6 +130,14 @@ public class BuildImageMojo extends AbstractPackagerMojo {
@Parameter(property = "spring-boot.build-image.runImage", readonly = true)
String runImage;
/**
* Alias for {@link Image#cleanCache} to support configuration via command-line
* property.
* @since 2.4.0
*/
@Parameter(property = "spring-boot.build-image.cleanCache", readonly = true)
Boolean cleanCache;
/**
* Alias for {@link Image#pullPolicy} to support configuration via command-line
* property.
@ -189,6 +197,9 @@ public class BuildImageMojo extends AbstractPackagerMojo {
if (image.runImage == null && this.runImage != null) {
image.setRunImage(this.runImage);
}
if (image.cleanCache == null && this.cleanCache != null) {
image.setCleanCache(this.cleanCache);
}
if (image.pullPolicy == null && this.pullPolicy != null) {
image.setPullPolicy(this.pullPolicy);
}

View File

@ -46,7 +46,7 @@ public class Image {
Map<String, String> env;
boolean cleanCache;
Boolean cleanCache;
boolean verboseLogging;
@ -102,10 +102,14 @@ public class Image {
* If the cache should be cleaned before building.
* @return {@code true} if the cache should be cleaned
*/
public boolean isCleanCache() {
public Boolean isCleanCache() {
return this.cleanCache;
}
void setCleanCache(Boolean cleanCache) {
this.cleanCache = cleanCache;
}
/**
* If verbose logging is required.
* @return {@code true} for verbose logging
@ -160,7 +164,9 @@ public class Image {
if (this.env != null && !this.env.isEmpty()) {
request = request.withEnv(this.env);
}
request = request.withCleanCache(this.cleanCache);
if (this.cleanCache != null) {
request = request.withCleanCache(this.cleanCache);
}
request = request.withVerboseLogging(this.verboseLogging);
if (this.pullPolicy != null) {
request = request.withPullPolicy(this.pullPolicy);