Skip to content

Commit 84ec061

Browse files
committed
Merge pull request #23 from mrashisha/master
Fixes #11: Updated removeImages to support local
2 parents c870300 + 09e0946 commit 84ec061

File tree

4 files changed

+21
-4
lines changed

4 files changed

+21
-4
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,3 +56,8 @@ com_crashlytics_export_strings.xml
5656
crashlytics.properties
5757
crashlytics-build.properties
5858

59+
# Eclipse
60+
.settings/
61+
.classpath
62+
.project
63+
/bin/

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ dockerCompose {
4040
// useComposeFiles = ['docker-compose.yml', 'docker-compose.prod.yml'] // like 'docker-compose -f <file>'
4141
// stopContainers = false // useful for debugging
4242
// removeContainers = false
43-
// removeImages = true
43+
// removeImages = "None" // Other accepted values are: "All" and "Local"
4444
// removeVolumes = false
4545
}
4646

src/main/groovy/com/avast/gradle/dockercompose/ComposeExtension.groovy

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class ComposeExtension {
2323

2424
boolean stopContainers = true
2525
boolean removeContainers = true
26-
boolean removeImages = false
26+
RemoveImages removeImages = RemoveImages.None
2727
boolean removeVolumes = true
2828

2929
ComposeExtension(Project project, ComposeUp upTask, ComposeDown downTask) {
@@ -72,3 +72,9 @@ class ComposeExtension {
7272
res
7373
}
7474
}
75+
76+
enum RemoveImages {
77+
None,
78+
Local, // images that don't have a custom name set by the `image` field
79+
All
80+
}

src/main/groovy/com/avast/gradle/dockercompose/tasks/ComposeDown.groovy

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.avast.gradle.dockercompose.tasks
22

33
import com.avast.gradle.dockercompose.ComposeExtension
4+
import com.avast.gradle.dockercompose.RemoveImages
45
import org.gradle.api.DefaultTask
56
import org.gradle.api.tasks.TaskAction
67
import org.gradle.process.ExecSpec
@@ -23,8 +24,13 @@ class ComposeDown extends DefaultTask {
2324
if (extension.removeContainers) {
2425
if (getDockerComposeVersion() >= VersionNumber.parse('1.6.0')) {
2526
String[] args = ['down']
26-
if(extension.removeImages) {
27-
args += ['--rmi', 'all']
27+
switch (extension.removeImages) {
28+
case RemoveImages.All:
29+
case RemoveImages.Local:
30+
args += ['--rmi', "${extension.removeImages}".toLowerCase()]
31+
break
32+
default:
33+
break
2834
}
2935
if(extension.removeVolumes) {
3036
args += ['--volumes']

0 commit comments

Comments
 (0)