<p>What is the different between</p>
<pre><code>--dry-run
--dry-run=client
--dry-run=server
</code></pre>
<p>opportunities?</p>
<p>And is there any purpose other than create a definition file?</p>
<p>Thank you for your time.</p>

<p>Passage from the <a href="https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands" rel="nofollow noreferrer">official Kubernetes <code>kubectl</code> references</a>:</p>
<blockquote>
<p>[--dry-run] Must be &quot;none&quot;, &quot;server&quot;, or &quot;client&quot;. If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.</p>
</blockquote>
<p>The following table should explain it in a much simpler way:</p>
<div class="s-table-container">
<table class="s-table">
<thead>
<tr>
<th style="text-align: left;"></th>
<th style="text-align: center;">sends data to server/cluster</th>
<th style="text-align: center;">perform change on server/cluster</th>
<th style="text-align: center;">validation by the server/cluster</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;"><code>--dry-run client</code></td>
<td style="text-align: center;">no</td>
<td style="text-align: center;">no</td>
<td style="text-align: center;">no</td>
</tr>
<tr>
<td style="text-align: left;"><code>--dry-run server</code></td>
<td style="text-align: center;">yes</td>
<td style="text-align: center;">no</td>
<td style="text-align: center;">yes</td>
</tr>
<tr>
<td style="text-align: left;"><code>--dry-run none</code></td>
<td style="text-align: center;">yes</td>
<td style="text-align: center;">yes</td>
<td style="text-align: center;">yes</td>
</tr>
</tbody>
</table>
</div>