<p>Does skaffold respect rolling updates when the <code>--force</code> option is used? When I execute <code>skaffold run --force</code> with </p>

<pre><code>  replicas: 3
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 0
      maxSurge: 3

</code></pre>

<p>It seems that surge never occurs. </p>

<p>In another terminal window I run <code>watch kubectl get pods</code> and I never see the number of replicas for my deployment go above 3. I suspect this is because of the <code>--force</code> flag but I'm not sure.</p>

<p>Before people tell me to not use force, see <a href="https://github.com/GoogleContainerTools/skaffold/issues/3171" rel="nofollow noreferrer">https://github.com/GoogleContainerTools/skaffold/issues/3171</a>. Skaffold automatically changes the run-id which causes deployments to fail if resources for the deployment already exist. That being said, if there's a way to tell skaffold to update a deployment without complaining about mismatched run-ids, I'd love to hear. I'm not a fan of using <code>--force</code>.</p>

<p>EDIT: </p>

<p>Looking at the skaffold help I see:</p>

<pre><code>      --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! (true by default for `skaffold dev`)
</code></pre>

<p>The <code>Recreate</code> word suggests that the RollingDeployment strategy might not be respected.</p>

Paymahn Moghadasian
<p>After more testing I can confirm that using <code>--force</code> causes the deployment strategy to ignored. To get around the run-id problem I mentioned I </p>

<ol>
<li>Did a force deployment with <code>-l skaffold.dev/run-id=test</code></li>
<li>Did another deployment without <code>--force</code> and with the same run-id from the previous step.</li>
</ol>

<p>When I did this I saw the surge I expected.</p>
