<p>I am trying to automate the update to the deployment using </p>

<pre><code>kubectl set
</code></pre>

<p>I have no issues using kubectl set image command to push new version of the docker image out, but I also need to add a new persistent disk for the new image to use. I don't believe i can set 2 different options using the set command. What would be the best option to do this?</p>

<p><a href="http://kubernetes.io/docs/user-guide/managing-deployments/#in-place-updates-of-resources" rel="nofollow">http://kubernetes.io/docs/user-guide/managing-deployments/#in-place-updates-of-resources</a> has the different options you have.</p>

<hr>

<p>You can use <a href="http://kubernetes.io/docs/user-guide/kubectl/kubectl_apply/" rel="nofollow"><code>kubectl apply</code></a> to modify multiple fields at once.</p>

<blockquote>
  <p>Apply a configuration to a resource by filename or stdin. This
  resource will be created if it doesn’t exist yet. To use ‘apply’,
  always create the resource initially with either ‘apply’ or ‘create
  –save-config’. JSON and YAML formats are accepted.</p>
</blockquote>

<p>Alternately, one can use <a href="http://kubernetes.io/docs/user-guide/kubectl/kubectl_patch/" rel="nofollow"><code>kubectl patch</code></a>.</p>

<blockquote>
  <p>Update field(s) of a resource using strategic merge patch JSON and
  YAML formats are accepted.</p>
</blockquote>
