All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.gesellix.gradle.docker.tasks.DockerCleanupTask.groovy Maven / Gradle / Ivy

package de.gesellix.gradle.docker.tasks

import org.gradle.api.tasks.Input
import org.gradle.api.tasks.Optional
import org.gradle.api.tasks.TaskAction

class DockerCleanupTask extends GenericDockerTask {

    @Input
    @Optional
    def shouldKeepContainer

    @Input
    @Optional
    def shouldKeepVolume = { volume -> true }

    DockerCleanupTask() {
        description = "Removes stopped containers, dangling images, and dangling volumes"
        group = "Docker"
    }

    @TaskAction
    def cleanup() {
        logger.info "docker cleanup"
        def keepContainer = getShouldKeepContainer() ?: { container -> false }
        def keepVolume = getShouldKeepVolume() ?: { volume -> true }
        dockerClient.cleanupStorage keepContainer, keepVolume
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy