diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
index ce23aaa04f2070674e06a85366225812edf67ac4..ea1b616093345f03ce4b3e62690a5b1f43179f0a 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
@@ -10,23 +10,32 @@ import io.fabric8.kubernetes.api.model.apps.StatefulSet
  *
  * @param container Container to be patched.
  */
-class ImagePatcher(private val container: String) : AbstractStringPatcher() {
+class ImagePatcher(private val container: String, private val pullPolicy: String? = null) : AbstractStringPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         when (resource) {
             is Deployment -> {
                 resource.spec.template.spec.containers.filter { it.name == container }.forEach {
                     it.image = value
+                    if (pullPolicy != null) {
+                        it.imagePullPolicy = pullPolicy
+                    }
                 }
             }
             is StatefulSet -> {
                 resource.spec.template.spec.containers.filter { it.name == container }.forEach {
                     it.image = value
+                    if (pullPolicy != null) {
+                        it.imagePullPolicy = pullPolicy
+                    }
                 }
             }
             is Pod -> {
                 resource.spec.containers.filter { it.name == container }.forEach {
                     it.image = value
+                    if (pullPolicy != null) {
+                        it.imagePullPolicy = pullPolicy
+                    }
                 }
             }
         }
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatcherFactory.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatcherFactory.kt
index d996b5450dc57c11e68a8a6ce02618886981c21c..7d47dc8b6b3c5bf1b7d378281f52e37066ff01f0 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatcherFactory.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatcherFactory.kt
@@ -75,7 +75,8 @@ class PatcherFactory {
                             ?: throwInvalid(patcher)
                 )
                 "ImagePatcher" -> ImagePatcher(
-                    container = patcher.properties["container"] ?: throwInvalid(patcher)
+                    container = patcher.properties["container"] ?: throwInvalid(patcher),
+                    pullPolicy = patcher.properties["pullPolicy"]
                 )
                 "ConfigMapYamlPatcher" -> DecoratingPatcher(
                     ConfigMapYamlPatcher(