Skip to content

Commit

Permalink
deploy: bcdea62
Browse files Browse the repository at this point in the history
  • Loading branch information
arnarg committed Jul 27, 2024
1 parent f54abb2 commit ca624de
Show file tree
Hide file tree
Showing 2 changed files with 206 additions and 23 deletions.
227 changes: 205 additions & 22 deletions options/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -700,15 +700,57 @@
</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautomatedprune" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.automated.prune
<a href="#applicationsnamesyncpolicyautosyncenabled" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.enabled
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautomatedselfheal" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.automated.selfHeal
<a href="#applicationsnamesyncpolicyautosyncprune" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.prune
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautosyncselfheal" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.selfHeal
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsapplyoutofsynconly" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.applyOutOfSyncOnly
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsfailonsharedresource" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.failOnSharedResource
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsprunelast" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.pruneLast
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsreplace" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.replace
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsserversideapply" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.serverSideApply
</a>

</li>
Expand Down Expand Up @@ -770,15 +812,22 @@
</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautomatedprune" class="md-nav__link">
nixidy.defaults.syncPolicy.automated.prune
<a href="#nixidydefaultssyncpolicyautosyncenabled" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.enabled
</a>

</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautomatedselfheal" class="md-nav__link">
nixidy.defaults.syncPolicy.automated.selfHeal
<a href="#nixidydefaultssyncpolicyautosyncprune" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.prune
</a>

</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautosyncselfheal" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.selfHeal
</a>

</li>
Expand Down Expand Up @@ -1043,15 +1092,57 @@
</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautomatedprune" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.automated.prune
<a href="#applicationsnamesyncpolicyautosyncenabled" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.enabled
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautosyncprune" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.prune
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautosyncselfheal" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.autoSync.selfHeal
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsapplyoutofsynconly" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.applyOutOfSyncOnly
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsfailonsharedresource" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.failOnSharedResource
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsprunelast" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.pruneLast
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicysyncoptionsreplace" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.replace
</a>

</li>

<li class="md-nav__item">
<a href="#applicationsnamesyncpolicyautomatedselfheal" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.automated.selfHeal
<a href="#applicationsnamesyncpolicysyncoptionsserversideapply" class="md-nav__link">
applications.&lt;name&gt;.syncPolicy.syncOptions.serverSideApply
</a>

</li>
Expand Down Expand Up @@ -1113,15 +1204,22 @@
</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautomatedprune" class="md-nav__link">
nixidy.defaults.syncPolicy.automated.prune
<a href="#nixidydefaultssyncpolicyautosyncenabled" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.enabled
</a>

</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautosyncprune" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.prune
</a>

</li>

<li class="md-nav__item">
<a href="#nixidydefaultssyncpolicyautomatedselfheal" class="md-nav__link">
nixidy.defaults.syncPolicy.automated.selfHeal
<a href="#nixidydefaultssyncpolicyautosyncselfheal" class="md-nav__link">
nixidy.defaults.syncPolicy.autoSync.selfHeal
</a>

</li>
Expand Down Expand Up @@ -1551,23 +1649,97 @@ <h2 id="applicationsnameresources">applications.&lt;name&gt;.resources<a class="
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications.nix">&lt;nixidy/modules/applications.nix&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicyautomatedprune">applications.&lt;name&gt;.syncPolicy.automated.prune<a class="headerlink" href="#applicationsnamesyncpolicyautomatedprune" title="Permanent link">#</a></h2>
<h2 id="applicationsnamesyncpolicyautosyncenabled">applications.&lt;name&gt;.syncPolicy.autoSync.enabled<a class="headerlink" href="#applicationsnamesyncpolicyautosyncenabled" title="Permanent link">#</a></h2>
<p>Specifies if application should automatically sync.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight">config<span class="o">.</span>nixidy<span class="o">.</span>defaults<span class="o">.</span>syncPolicy<span class="o">.</span>autoSync<span class="o">.</span>enabled</code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicyautosyncprune">applications.&lt;name&gt;.syncPolicy.autoSync.prune<a class="headerlink" href="#applicationsnamesyncpolicyautosyncprune" title="Permanent link">#</a></h2>
<p>Specifies if resources should be pruned during auto-syncing.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight">config<span class="o">.</span>nixidy<span class="o">.</span>defaults<span class="o">.</span>syncPolicy<span class="o">.</span>automated<span class="o">.</span>prune</code></p>
<code class="highlight">config<span class="o">.</span>nixidy<span class="o">.</span>defaults<span class="o">.</span>syncPolicy<span class="o">.</span>autoSync<span class="o">.</span>prune</code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicyautomatedselfheal">applications.&lt;name&gt;.syncPolicy.automated.selfHeal<a class="headerlink" href="#applicationsnamesyncpolicyautomatedselfheal" title="Permanent link">#</a></h2>
<h2 id="applicationsnamesyncpolicyautosyncselfheal">applications.&lt;name&gt;.syncPolicy.autoSync.selfHeal<a class="headerlink" href="#applicationsnamesyncpolicyautosyncselfheal" title="Permanent link">#</a></h2>
<p>Specifies if partial app sync should be executed when resources are changed only in
target Kubernetes cluster and no git change detected.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight">config<span class="o">.</span>nixidy<span class="o">.</span>defaults<span class="o">.</span>syncPolicy<span class="o">.</span>automated<span class="o">.</span>selfHeal</code></p>
<code class="highlight">config<span class="o">.</span>nixidy<span class="o">.</span>defaults<span class="o">.</span>syncPolicy<span class="o">.</span>autoSync<span class="o">.</span>selfHeal</code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicysyncoptionsapplyoutofsynconly">applications.&lt;name&gt;.syncPolicy.syncOptions.applyOutOfSyncOnly<a class="headerlink" href="#applicationsnamesyncpolicysyncoptionsapplyoutofsynconly" title="Permanent link">#</a></h2>
<p>Currently when syncing using auto sync Argo CD applies every object in the application.
For applications containing thousands of objects this takes quite a long time and puts undue pressure on the api server.
Turning on selective sync option which will sync only out-of-sync resources.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicysyncoptionsfailonsharedresource">applications.&lt;name&gt;.syncPolicy.syncOptions.failOnSharedResource<a class="headerlink" href="#applicationsnamesyncpolicysyncoptionsfailonsharedresource" title="Permanent link">#</a></h2>
<p>By default, Argo CD will apply all manifests found in the git path configured in the Application regardless if the
resources defined in the yamls are already applied by another Application. If the <code>failOnSharedResource</code> sync option
is set, Argo CD will fail the sync whenever it finds a resource in the current Application that is already applied in
the cluster by another Application.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicysyncoptionsprunelast">applications.&lt;name&gt;.syncPolicy.syncOptions.pruneLast<a class="headerlink" href="#applicationsnamesyncpolicysyncoptionsprunelast" title="Permanent link">#</a></h2>
<p>This feature is to allow the ability for resource pruning to happen as a final, implicit wave of a sync operation,
after the other resources have been deployed and become healthy, and after all other waves completed successfully.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicysyncoptionsreplace">applications.&lt;name&gt;.syncPolicy.syncOptions.replace<a class="headerlink" href="#applicationsnamesyncpolicysyncoptionsreplace" title="Permanent link">#</a></h2>
<p>By default, Argo CD executes <code>kubectl apply</code> operation to apply the configuration stored in Git.
In some cases <code>kubectl apply</code> is not suitable. For example, resource spec might be too big and won't fit into
<code>kubectl.kubernetes.io/last-applied-configuration</code> annotation that is added by kubectl apply.</p>
<p>If the <code>replace = true;`` sync option is set the Argo CD will use</code>kubectl replace<code>or</code>kubectl create` command
to apply changes.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
</ul>
<h2 id="applicationsnamesyncpolicysyncoptionsserversideapply">applications.&lt;name&gt;.syncPolicy.syncOptions.serverSideApply<a class="headerlink" href="#applicationsnamesyncpolicysyncoptionsserversideapply" title="Permanent link">#</a></h2>
<p>By default, Argo CD executes <code>kubectl apply</code> operation to apply the configuration stored in Git.
This is a client side operation that relies on <code>kubectl.kubernetes.io/last-applied-configuration</code> annotation to
store the previous resource state.</p>
<p>If <code>serverSideApply = true;</code> sync option is set, Argo CD will use <code>kubectl apply --server-side</code> command to apply changes.</p>
<p>More info <a href="https://argo-cd.readthedocs.io/en/stable/user-guide/sync-options/#server-side-apply">here</a>.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/applications">&lt;nixidy/modules/applications&gt;</a></li>
Expand Down Expand Up @@ -1674,7 +1846,18 @@ <h2 id="nixidydefaultskustomizetransformer">nixidy.defaults.kustomize.transforme
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/nixidy.nix">&lt;nixidy/modules/nixidy.nix&gt;</a></li>
</ul>
<h2 id="nixidydefaultssyncpolicyautomatedprune">nixidy.defaults.syncPolicy.automated.prune<a class="headerlink" href="#nixidydefaultssyncpolicyautomatedprune" title="Permanent link">#</a></h2>
<h2 id="nixidydefaultssyncpolicyautosyncenabled">nixidy.defaults.syncPolicy.autoSync.enabled<a class="headerlink" href="#nixidydefaultssyncpolicyautosyncenabled" title="Permanent link">#</a></h2>
<p>Specifies if the application should automatically sync.
This is the default value for all applications if not explicitly set.</p>
<p><strong><em>Type:</em></strong>
boolean</p>
<p><strong><em>Default:</em></strong>
<code class="highlight"><span class="no">false</span></code></p>
<p><strong><em>Declared by:</em></strong></p>
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/nixidy.nix">&lt;nixidy/modules/nixidy.nix&gt;</a></li>
</ul>
<h2 id="nixidydefaultssyncpolicyautosyncprune">nixidy.defaults.syncPolicy.autoSync.prune<a class="headerlink" href="#nixidydefaultssyncpolicyautosyncprune" title="Permanent link">#</a></h2>
<p>Specifies if resources should be pruned during auto-syncing.
This is the default value for all applications if not explicitly set.</p>
<p><strong><em>Type:</em></strong>
Expand All @@ -1685,7 +1868,7 @@ <h2 id="nixidydefaultssyncpolicyautomatedprune">nixidy.defaults.syncPolicy.autom
<ul>
<li><a href="https://github.com/arnarg/nixidy/blob/main/modules/nixidy.nix">&lt;nixidy/modules/nixidy.nix&gt;</a></li>
</ul>
<h2 id="nixidydefaultssyncpolicyautomatedselfheal">nixidy.defaults.syncPolicy.automated.selfHeal<a class="headerlink" href="#nixidydefaultssyncpolicyautomatedselfheal" title="Permanent link">#</a></h2>
<h2 id="nixidydefaultssyncpolicyautosyncselfheal">nixidy.defaults.syncPolicy.autoSync.selfHeal<a class="headerlink" href="#nixidydefaultssyncpolicyautosyncselfheal" title="Permanent link">#</a></h2>
<p>Specifies if partial app sync should be executed when resources are changed only in
target Kubernetes cluster and no git change detected.
This is the default value for all applications if not explicitly set.</p>
Expand Down
Loading

0 comments on commit ca624de

Please sign in to comment.