Update docs for main

This commit is contained in:
github-actions 2023-01-02 06:47:17 +00:00
parent fd9eb8d6a7
commit 1a2935b0b4
17 changed files with 177 additions and 175 deletions

View file

@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 5bcef892c25d6bc7d6693a7730be39be
config: 3cc7f63f6d3ffefe3aad070ae7f7fd18
tags: 645f666f9bcd5a90fca523b33c5a78b7

View file

@ -61,38 +61,38 @@
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-7">v1.0.7</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id6">Breaking Changes / Porting Guide</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id8">Bugfixes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id7">Breaking Changes / Porting Guide</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id9">Bugfixes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-6">v1.0.6</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id10">Bugfixes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id11">Bugfixes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-5">v1.0.5</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id13">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id14">Minor Changes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-4">v1.0.4</a></li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-3">v1.0.3</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#major-changes">Major Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id16">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id18">Bugfixes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id17">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id19">Bugfixes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-2">v1.0.2</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id20">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id23">Bugfixes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id21">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id24">Bugfixes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-1">v1.0.1</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#release-summary">Release Summary</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id25">Major Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id27">Minor Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id26">Major Changes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id28">Minor Changes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#v1-0-0">v1.0.0</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id29">Release Summary</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id30">Release Summary</a></li>
</ul>
</li>
</ul>
@ -135,59 +135,59 @@
<div itemprop="articleBody">
<section id="middleware-automation-keycloak-release-notes">
<h1><a class="toc-backref" href="#id30">middleware_automation.keycloak Release Notes</a><a class="headerlink" href="#middleware-automation-keycloak-release-notes" title="Permalink to this heading"></a></h1>
<h1><a class="toc-backref" href="#id31">middleware_automation.keycloak Release Notes</a><a class="headerlink" href="#middleware-automation-keycloak-release-notes" title="Permalink to this heading"></a></h1>
<div class="contents topic" id="topics">
<p class="topic-title">Topics</p>
<ul class="simple">
<li><p><a class="reference internal" href="#middleware-automation-keycloak-release-notes" id="id30">middleware_automation.keycloak Release Notes</a></p>
<li><p><a class="reference internal" href="#middleware-automation-keycloak-release-notes" id="id31">middleware_automation.keycloak Release Notes</a></p>
<ul>
<li><p><a class="reference internal" href="#v1-1-0-devel" id="id31">v1.1.0-devel</a></p>
<li><p><a class="reference internal" href="#v1-1-0-devel" id="id32">v1.1.0-devel</a></p>
<ul>
<li><p><a class="reference internal" href="#minor-changes" id="id32">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#breaking-changes-porting-guide" id="id33">Breaking Changes / Porting Guide</a></p></li>
<li><p><a class="reference internal" href="#bugfixes" id="id34">Bugfixes</a></p></li>
<li><p><a class="reference internal" href="#minor-changes" id="id33">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#breaking-changes-porting-guide" id="id34">Breaking Changes / Porting Guide</a></p></li>
<li><p><a class="reference internal" href="#bugfixes" id="id35">Bugfixes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-7" id="id35">v1.0.7</a></p>
<li><p><a class="reference internal" href="#v1-0-7" id="id36">v1.0.7</a></p>
<ul>
<li><p><a class="reference internal" href="#id6" id="id36">Breaking Changes / Porting Guide</a></p></li>
<li><p><a class="reference internal" href="#id8" id="id37">Bugfixes</a></p></li>
<li><p><a class="reference internal" href="#id7" id="id37">Breaking Changes / Porting Guide</a></p></li>
<li><p><a class="reference internal" href="#id9" id="id38">Bugfixes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-6" id="id38">v1.0.6</a></p>
<li><p><a class="reference internal" href="#v1-0-6" id="id39">v1.0.6</a></p>
<ul>
<li><p><a class="reference internal" href="#id10" id="id39">Bugfixes</a></p></li>
<li><p><a class="reference internal" href="#id11" id="id40">Bugfixes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-5" id="id40">v1.0.5</a></p>
<li><p><a class="reference internal" href="#v1-0-5" id="id41">v1.0.5</a></p>
<ul>
<li><p><a class="reference internal" href="#id13" id="id41">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#id14" id="id42">Minor Changes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-4" id="id42">v1.0.4</a></p></li>
<li><p><a class="reference internal" href="#v1-0-3" id="id43">v1.0.3</a></p>
<li><p><a class="reference internal" href="#v1-0-4" id="id43">v1.0.4</a></p></li>
<li><p><a class="reference internal" href="#v1-0-3" id="id44">v1.0.3</a></p>
<ul>
<li><p><a class="reference internal" href="#major-changes" id="id44">Major Changes</a></p></li>
<li><p><a class="reference internal" href="#id16" id="id45">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#id18" id="id46">Bugfixes</a></p></li>
<li><p><a class="reference internal" href="#major-changes" id="id45">Major Changes</a></p></li>
<li><p><a class="reference internal" href="#id17" id="id46">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#id19" id="id47">Bugfixes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-2" id="id47">v1.0.2</a></p>
<li><p><a class="reference internal" href="#v1-0-2" id="id48">v1.0.2</a></p>
<ul>
<li><p><a class="reference internal" href="#id20" id="id48">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#id23" id="id49">Bugfixes</a></p></li>
<li><p><a class="reference internal" href="#id21" id="id49">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#id24" id="id50">Bugfixes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-1" id="id50">v1.0.1</a></p>
<li><p><a class="reference internal" href="#v1-0-1" id="id51">v1.0.1</a></p>
<ul>
<li><p><a class="reference internal" href="#release-summary" id="id51">Release Summary</a></p></li>
<li><p><a class="reference internal" href="#id25" id="id52">Major Changes</a></p></li>
<li><p><a class="reference internal" href="#id27" id="id53">Minor Changes</a></p></li>
<li><p><a class="reference internal" href="#release-summary" id="id52">Release Summary</a></p></li>
<li><p><a class="reference internal" href="#id26" id="id53">Major Changes</a></p></li>
<li><p><a class="reference internal" href="#id28" id="id54">Minor Changes</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#v1-0-0" id="id54">v1.0.0</a></p>
<li><p><a class="reference internal" href="#v1-0-0" id="id55">v1.0.0</a></p>
<ul>
<li><p><a class="reference internal" href="#id29" id="id55">Release Summary</a></p></li>
<li><p><a class="reference internal" href="#id30" id="id56">Release Summary</a></p></li>
</ul>
</li>
</ul>
@ -196,47 +196,48 @@
</div>
<p>This changelog describes changes after version 0.2.6.</p>
<section id="v1-1-0-devel">
<h2><a class="toc-backref" href="#id31">v1.1.0-devel</a><a class="headerlink" href="#v1-1-0-devel" title="Permalink to this heading"></a></h2>
<h2><a class="toc-backref" href="#id32">v1.1.0-devel</a><a class="headerlink" href="#v1-1-0-devel" title="Permalink to this heading"></a></h2>
<section id="minor-changes">
<h3><a class="toc-backref" href="#id32">Minor Changes</a><a class="headerlink" href="#minor-changes" title="Permalink to this heading"></a></h3>
<h3><a class="toc-backref" href="#id33">Minor Changes</a><a class="headerlink" href="#minor-changes" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Update keycloak to 18.0.2 - sso to 7.6.1 <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/46">#46</a></p></li>
<li><p>Variable <code class="docutils literal notranslate"><span class="pre">keycloak_no_log</span></code> controls ansible <code class="docutils literal notranslate"><span class="pre">no_log</span></code> parameter (for debugging purposes) <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/47">#47</a></p></li>
<li><p>Variables to override service start retries and delay <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/51">#51</a></p></li>
<li><p>keycloak_quarkus: variable to enable development mode <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/45">#45</a></p></li>
</ul>
</section>
<section id="breaking-changes-porting-guide">
<h3><a class="toc-backref" href="#id33">Breaking Changes / Porting Guide</a><a class="headerlink" href="#breaking-changes-porting-guide" title="Permalink to this heading"></a></h3>
<h3><a class="toc-backref" href="#id34">Breaking Changes / Porting Guide</a><a class="headerlink" href="#breaking-changes-porting-guide" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Rename variables from <code class="docutils literal notranslate"><span class="pre">infinispan_</span></code> prefix to <code class="docutils literal notranslate"><span class="pre">keycloak_infinispan_</span></code> <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/42">#42</a></p></li>
</ul>
</section>
<section id="bugfixes">
<h3><a class="toc-backref" href="#id34">Bugfixes</a><a class="headerlink" href="#bugfixes" title="Permalink to this heading"></a></h3>
<h3><a class="toc-backref" href="#id35">Bugfixes</a><a class="headerlink" href="#bugfixes" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>keycloak_quarkus: fix /var/log/keycloak symlink to keycloak log directory <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/44">#44</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-7">
<h2><a class="toc-backref" href="#id35">v1.0.7</a><a class="headerlink" href="#v1-0-7" title="Permalink to this heading"></a></h2>
<section id="id6">
<h3><a class="toc-backref" href="#id36">Breaking Changes / Porting Guide</a><a class="headerlink" href="#id6" title="Permalink to this heading"></a></h3>
<h2><a class="toc-backref" href="#id36">v1.0.7</a><a class="headerlink" href="#v1-0-7" title="Permalink to this heading"></a></h2>
<section id="id7">
<h3><a class="toc-backref" href="#id37">Breaking Changes / Porting Guide</a><a class="headerlink" href="#id7" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>keycloak_quarkus: use absolute path for certificate files <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/39">#39</a></p></li>
</ul>
</section>
<section id="id8">
<h3><a class="toc-backref" href="#id37">Bugfixes</a><a class="headerlink" href="#id8" title="Permalink to this heading"></a></h3>
<section id="id9">
<h3><a class="toc-backref" href="#id38">Bugfixes</a><a class="headerlink" href="#id9" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>keycloak_quarkus: use become for tasks that will otherwise fail <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/38">#38</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-6">
<h2><a class="toc-backref" href="#id38">v1.0.6</a><a class="headerlink" href="#v1-0-6" title="Permalink to this heading"></a></h2>
<section id="id10">
<h3><a class="toc-backref" href="#id39">Bugfixes</a><a class="headerlink" href="#id10" title="Permalink to this heading"></a></h3>
<h2><a class="toc-backref" href="#id39">v1.0.6</a><a class="headerlink" href="#v1-0-6" title="Permalink to this heading"></a></h2>
<section id="id11">
<h3><a class="toc-backref" href="#id40">Bugfixes</a><a class="headerlink" href="#id11" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>keycloak_quarkus: add selected java to PATH in systemd unit <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/34">#34</a></p></li>
<li><p>keycloak_quarkus: set logfile path correctly under keycloak home <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/35">#35</a></p></li>
@ -244,77 +245,77 @@
</section>
</section>
<section id="v1-0-5">
<h2><a class="toc-backref" href="#id40">v1.0.5</a><a class="headerlink" href="#v1-0-5" title="Permalink to this heading"></a></h2>
<section id="id13">
<h3><a class="toc-backref" href="#id41">Minor Changes</a><a class="headerlink" href="#id13" title="Permalink to this heading"></a></h3>
<h2><a class="toc-backref" href="#id41">v1.0.5</a><a class="headerlink" href="#v1-0-5" title="Permalink to this heading"></a></h2>
<section id="id14">
<h3><a class="toc-backref" href="#id42">Minor Changes</a><a class="headerlink" href="#id14" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Update config options: keycloak and quarkus <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/32">#32</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-4">
<h2><a class="toc-backref" href="#id42">v1.0.4</a><a class="headerlink" href="#v1-0-4" title="Permalink to this heading"></a></h2>
<h2><a class="toc-backref" href="#id43">v1.0.4</a><a class="headerlink" href="#v1-0-4" title="Permalink to this heading"></a></h2>
</section>
<section id="v1-0-3">
<h2><a class="toc-backref" href="#id43">v1.0.3</a><a class="headerlink" href="#v1-0-3" title="Permalink to this heading"></a></h2>
<h2><a class="toc-backref" href="#id44">v1.0.3</a><a class="headerlink" href="#v1-0-3" title="Permalink to this heading"></a></h2>
<section id="major-changes">
<h3><a class="toc-backref" href="#id44">Major Changes</a><a class="headerlink" href="#major-changes" title="Permalink to this heading"></a></h3>
<h3><a class="toc-backref" href="#id45">Major Changes</a><a class="headerlink" href="#major-changes" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>New role for installing keycloak &gt;= 17.0.0 (quarkus) <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/29">#29</a></p></li>
</ul>
</section>
<section id="id16">
<h3><a class="toc-backref" href="#id45">Minor Changes</a><a class="headerlink" href="#id16" title="Permalink to this heading"></a></h3>
<section id="id17">
<h3><a class="toc-backref" href="#id46">Minor Changes</a><a class="headerlink" href="#id17" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Add <code class="docutils literal notranslate"><span class="pre">keycloak_config_override_template</span></code> parameter for passing a custom xml config template <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/30">#30</a></p></li>
</ul>
</section>
<section id="id18">
<h3><a class="toc-backref" href="#id46">Bugfixes</a><a class="headerlink" href="#id18" title="Permalink to this heading"></a></h3>
<section id="id19">
<h3><a class="toc-backref" href="#id47">Bugfixes</a><a class="headerlink" href="#id19" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Make sure systemd unit starts with selected java JVM <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/31">#31</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-2">
<h2><a class="toc-backref" href="#id47">v1.0.2</a><a class="headerlink" href="#v1-0-2" title="Permalink to this heading"></a></h2>
<section id="id20">
<h3><a class="toc-backref" href="#id48">Minor Changes</a><a class="headerlink" href="#id20" title="Permalink to this heading"></a></h3>
<h2><a class="toc-backref" href="#id48">v1.0.2</a><a class="headerlink" href="#v1-0-2" title="Permalink to this heading"></a></h2>
<section id="id21">
<h3><a class="toc-backref" href="#id49">Minor Changes</a><a class="headerlink" href="#id21" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Make <code class="docutils literal notranslate"><span class="pre">keycloak_admin_password</span></code> a default with assert (was: role variable) <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/26">#26</a></p></li>
<li><p>Simplify dependency install logic and reduce play execution time <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/19">#19</a></p></li>
</ul>
</section>
<section id="id23">
<h3><a class="toc-backref" href="#id49">Bugfixes</a><a class="headerlink" href="#id23" title="Permalink to this heading"></a></h3>
<section id="id24">
<h3><a class="toc-backref" href="#id50">Bugfixes</a><a class="headerlink" href="#id24" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Set <code class="docutils literal notranslate"><span class="pre">keycloak_frontend_url</span></code> default according to other defaults <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/25">#25</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-1">
<h2><a class="toc-backref" href="#id50">v1.0.1</a><a class="headerlink" href="#v1-0-1" title="Permalink to this heading"></a></h2>
<h2><a class="toc-backref" href="#id51">v1.0.1</a><a class="headerlink" href="#v1-0-1" title="Permalink to this heading"></a></h2>
<section id="release-summary">
<h3><a class="toc-backref" href="#id51">Release Summary</a><a class="headerlink" href="#release-summary" title="Permalink to this heading"></a></h3>
<h3><a class="toc-backref" href="#id52">Release Summary</a><a class="headerlink" href="#release-summary" title="Permalink to this heading"></a></h3>
<p>Minor enhancements, bug and documentation fixes.</p>
</section>
<section id="id25">
<h3><a class="toc-backref" href="#id52">Major Changes</a><a class="headerlink" href="#id25" title="Permalink to this heading"></a></h3>
<section id="id26">
<h3><a class="toc-backref" href="#id53">Major Changes</a><a class="headerlink" href="#id26" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Apply latest cumulative patch of RH-SSO automatically when new parameter <code class="docutils literal notranslate"><span class="pre">keycloak_rhsso_apply_patches</span></code> is <code class="docutils literal notranslate"><span class="pre">true</span></code> <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/18">#18</a></p></li>
</ul>
</section>
<section id="id27">
<h3><a class="toc-backref" href="#id53">Minor Changes</a><a class="headerlink" href="#id27" title="Permalink to this heading"></a></h3>
<section id="id28">
<h3><a class="toc-backref" href="#id54">Minor Changes</a><a class="headerlink" href="#id28" title="Permalink to this heading"></a></h3>
<ul class="simple">
<li><p>Clustered installs now perform database initialization on first node to avoid locking issues <a class="reference external" href="https://github.com/ansible-middleware/keycloak/pull/17">#17</a></p></li>
</ul>
</section>
</section>
<section id="v1-0-0">
<h2><a class="toc-backref" href="#id54">v1.0.0</a><a class="headerlink" href="#v1-0-0" title="Permalink to this heading"></a></h2>
<section id="id29">
<h3><a class="toc-backref" href="#id55">Release Summary</a><a class="headerlink" href="#id29" title="Permalink to this heading"></a></h3>
<h2><a class="toc-backref" href="#id55">v1.0.0</a><a class="headerlink" href="#v1-0-0" title="Permalink to this heading"></a></h2>
<section id="id30">
<h3><a class="toc-backref" href="#id56">Release Summary</a><a class="headerlink" href="#id30" title="Permalink to this heading"></a></h3>
<p>This is the first stable release of the <code class="docutils literal notranslate"><span class="pre">middleware_automation.keycloak</span></code> collection.</p>
</section>
</section>
@ -330,7 +331,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -136,9 +136,9 @@
</pre></div>
</div>
<p>You can also include it in a <code class="docutils literal notranslate"><span class="pre">requirements.yml</span></code> file and install it via <code class="docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">install</span> <span class="pre">-r</span> <span class="pre">requirements.yml</span></code>, using the format:</p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span><span class="w"></span>
<span class="nt">collections</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span>
<span class="nt">collections</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span>
</pre></div>
</div>
<p>The keycloak collection also depends on the following python packages to be present on the controller host:</p>
@ -173,7 +173,7 @@
<h4>Install from controller node (local source)<a class="headerlink" href="#install-from-controller-node-local-source" title="Permalink to this heading"></a></h4>
<p>Making the keycloak zip archive (or the RHSSO zip archive), available to the playbook repository root directory, and setting <code class="docutils literal notranslate"><span class="pre">keycloak_offline_install</span></code> to <code class="docutils literal notranslate"><span class="pre">True</span></code>, allows to skip
the download tasks. The local path for the archive matches the downloaded archive path, so it is also used as a cache when multiple hosts are provisioned in a cluster.</p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">keycloak_offline_install</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">True</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">keycloak_offline_install</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">True</span>
</pre></div>
</div>
<p>And depending on <code class="docutils literal notranslate"><span class="pre">keycloak_rhsso_enable</span></code>:</p>
@ -185,11 +185,11 @@ the download tasks. The local path for the archive matches the downloaded archiv
<section id="install-from-alternate-sources-like-corporate-nexus-artifactory-proxy-etc">
<h4>Install from alternate sources (like corporate Nexus, artifactory, proxy, etc)<a class="headerlink" href="#install-from-alternate-sources-like-corporate-nexus-artifactory-proxy-etc" title="Permalink to this heading"></a></h4>
<p>For RHSSO:</p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">sso_download_url</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;https://&lt;internal-nexus.private.net&gt;/&lt;path&gt;/&lt;to&gt;/rh-sso-x.y.z-server-dist.zip&quot;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">sso_download_url</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;https://&lt;internal-nexus.private.net&gt;/&lt;path&gt;/&lt;to&gt;/rh-sso-x.y.z-server-dist.zip&quot;</span>
</pre></div>
</div>
<p>For keycloak:</p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">keycloak_download_url</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;https://&lt;internal-nexus.private.net&gt;/&lt;path&gt;/&lt;to&gt;/keycloak-x.y.zip&quot;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">keycloak_download_url</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;https://&lt;internal-nexus.private.net&gt;/&lt;path&gt;/&lt;to&gt;/keycloak-x.y.zip&quot;</span>
</pre></div>
</div>
</section>
@ -197,14 +197,14 @@ the download tasks. The local path for the archive matches the downloaded archiv
<section id="example-installation-command">
<h3>Example installation command<a class="headerlink" href="#example-installation-command" title="Permalink to this heading"></a></h3>
<p>Execute the following command from the source root directory</p>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="l l-Scalar l-Scalar-Plain">ansible-playbook -i &lt;ansible_hosts&gt; -e @rhn-creds.yml playbooks/keycloak.yml -e keycloak_admin_password=&lt;changeme&gt;</span><span class="w"></span>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="l l-Scalar l-Scalar-Plain">ansible-playbook -i &lt;ansible_hosts&gt; -e @rhn-creds.yml playbooks/keycloak.yml -e keycloak_admin_password=&lt;changeme&gt;</span>
</pre></div>
</div>
<ul>
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_admin_password</span></code> Password for the administration console user account.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">ansible_hosts</span></code> is the inventory, below is an example inventory for deploying to localhost</p>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="p p-Indicator">[</span><span class="nv">keycloak</span><span class="p p-Indicator">]</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span><span class="w"></span>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="p p-Indicator">[</span><span class="nv">keycloak</span><span class="p p-Indicator">]</span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span>
</pre></div>
</div>
</li>
@ -220,15 +220,15 @@ the download tasks. The local path for the archive matches the downloaded archiv
<section id="example-configuration-command">
<h3>Example configuration command<a class="headerlink" href="#example-configuration-command" title="Permalink to this heading"></a></h3>
<p>Execute the following command from the source root directory:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ansible-playbook -i &lt;ansible_hosts&gt; playbooks/keycloak_realm.yml -e <span class="nv">keycloak_admin_password</span><span class="o">=</span>&lt;changeme&gt; -e <span class="nv">keycloak_realm</span><span class="o">=</span><span class="nb">test</span>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ansible-playbook<span class="w"> </span>-i<span class="w"> </span>&lt;ansible_hosts&gt;<span class="w"> </span>playbooks/keycloak_realm.yml<span class="w"> </span>-e<span class="w"> </span><span class="nv">keycloak_admin_password</span><span class="o">=</span>&lt;changeme&gt;<span class="w"> </span>-e<span class="w"> </span><span class="nv">keycloak_realm</span><span class="o">=</span><span class="nb">test</span>
</pre></div>
</div>
<ul>
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_admin_password</span></code> password for the administration console user account.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_realm</span></code> name of the realm to be created/used.</p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">ansible_hosts</span></code> is the inventory, below is an example inventory for deploying to localhost</p>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="p p-Indicator">[</span><span class="nv">keycloak</span><span class="p p-Indicator">]</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span><span class="w"></span>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="p p-Indicator">[</span><span class="nv">keycloak</span><span class="p p-Indicator">]</span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span>
</pre></div>
</div>
</li>
@ -258,7 +258,7 @@ the download tasks. The local path for the archive matches the downloaded archiv
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -14,6 +14,7 @@ Minor Changes
- Update keycloak to 18.0.2 - sso to 7.6.1 `#46 <https://github.com/ansible-middleware/keycloak/pull/46>`_
- Variable ``keycloak_no_log`` controls ansible ``no_log`` parameter (for debugging purposes) `#47 <https://github.com/ansible-middleware/keycloak/pull/47>`_
- Variables to override service start retries and delay `#51 <https://github.com/ansible-middleware/keycloak/pull/51>`_
- keycloak_quarkus: variable to enable development mode `#45 <https://github.com/ansible-middleware/keycloak/pull/45>`_
Breaking Changes / Porting Guide

View file

@ -120,7 +120,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -103,7 +103,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -183,7 +183,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -105,7 +105,7 @@ Environment variables used by the ansible-core configuation are documented in <a
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -143,7 +143,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -164,7 +164,7 @@ Given a version number MAJOR.MINOR.PATCH, the following is incremented:</p>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -144,7 +144,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -472,31 +472,31 @@
<ul class="simple">
<li><p>The following is an example playbook that makes use of the role to install keycloak from remote:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span><span class="w"></span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span><span class="w"></span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">vars</span><span class="p p-Indicator">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;remembertochangeme&quot;</span><span class="w"></span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">collections</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span><span class="w"></span>
<span class="w"> </span><span class="nt">roles</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak.keycloak</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">vars</span><span class="p p-Indicator">:</span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;remembertochangeme&quot;</span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">collections</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span>
<span class="w"> </span><span class="nt">roles</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak.keycloak</span>
</pre></div>
</div>
<ul class="simple">
<li><p>The following example playbook makes use of the role to install keycloak from the controller node:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span><span class="w"></span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span><span class="w"></span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">collections</span><span class="p p-Indicator">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span><span class="w"></span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">tasks</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Include keycloak role</span><span class="w"></span>
<span class="w"> </span><span class="nt">include_role</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span><span class="w"></span>
<span class="w"> </span><span class="nt">vars</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;remembertochangeme&quot;</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_offline_install</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">True</span><span class="w"></span>
<span class="w"> </span><span class="c1"># This should be the filename of keycloak archive on Ansible node: keycloak-16.1.0.zip</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">collections</span><span class="p p-Indicator">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">tasks</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Include keycloak role</span>
<span class="w"> </span><span class="nt">include_role</span><span class="p">:</span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak</span>
<span class="w"> </span><span class="nt">vars</span><span class="p">:</span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;remembertochangeme&quot;</span>
<span class="w"> </span><span class="nt">keycloak_offline_install</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">True</span>
<span class="w"> </span><span class="c1"># This should be the filename of keycloak archive on Ansible node: keycloak-16.1.0.zip</span>
</pre></div>
</div>
</section>
@ -525,7 +525,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -456,7 +456,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -232,46 +232,46 @@
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_user_federation</span></code>, a list of:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm in which user federation should be configured, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the user federation provider, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;type of the user federation provider, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">provider_type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;Provider Type, default is set to org.keycloak.storage.UserStorageProvider&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">config</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;dictionary of supported configuration values, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">mappers</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of supported configuration values, required&gt;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm in which user federation should be configured, required&gt;</span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the user federation provider, required&gt;</span>
<span class="w"> </span><span class="nt">provider_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;type of the user federation provider, required&gt;</span>
<span class="w"> </span><span class="nt">provider_type</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;Provider Type, default is set to org.keycloak.storage.UserStorageProvider&gt;</span>
<span class="w"> </span><span class="nt">config</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;dictionary of supported configuration values, required&gt;</span>
<span class="w"> </span><span class="nt">mappers</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of supported configuration values, required&gt;</span>
</pre></div>
</div>
<p>Refer to <a class="reference external" href="https://docs.ansible.com/ansible/latest/collections/community/general/keycloak_user_federation_module.html">docs</a> for information on supported variables.</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_clients</span></code>, a list of:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;id of the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">client_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;id of the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">roles</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;keycloak_client_default_roles&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm that contains the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">public_client</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;true for public, false for confidential&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">web_origins</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of allowed we origins for the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">users</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;keycloak_client_users&gt;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the client&gt;</span>
<span class="w"> </span><span class="nt">id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;id of the client&gt;</span>
<span class="w"> </span><span class="nt">client_id</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;id of the client&gt;</span>
<span class="w"> </span><span class="nt">roles</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;keycloak_client_default_roles&gt;</span>
<span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm that contains the client&gt;</span>
<span class="w"> </span><span class="nt">public_client</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;true for public, false for confidential&gt;</span>
<span class="w"> </span><span class="nt">web_origins</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of allowed we origins for the client&gt;</span>
<span class="w"> </span><span class="nt">users</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;keycloak_client_users&gt;</span>
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">name</span></code> and either <code class="docutils literal notranslate"><span class="pre">id</span></code> or <code class="docutils literal notranslate"><span class="pre">client_id</span></code> are required.</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">keycloak_client_users</span></code>, a list of:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;username, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;password, required&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">firstName</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;firstName, optional&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">lastName</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;lastName, optional&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">email</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;email, optional&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">client_roles</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of client user/role mappings&gt;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">username</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;username, required&gt;</span>
<span class="w"> </span><span class="nt">password</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;password, required&gt;</span>
<span class="w"> </span><span class="nt">firstName</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;firstName, optional&gt;</span>
<span class="w"> </span><span class="nt">lastName</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;lastName, optional&gt;</span>
<span class="w"> </span><span class="nt">email</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;email, optional&gt;</span>
<span class="w"> </span><span class="nt">client_roles</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;list of client user/role mappings&gt;</span>
</pre></div>
</div>
<ul class="simple">
<li><p>Client user/role mappings, a list of:</p></li>
</ul>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">client</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the client&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">role</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the role&gt;</span><span class="w"></span>
<span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm&gt;</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">client</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the client&gt;</span>
<span class="w"> </span><span class="nt">role</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the role&gt;</span>
<span class="w"> </span><span class="nt">realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">&lt;name of the realm&gt;</span>
</pre></div>
</div>
<p>For a comprehensive example, refer to the <a class="reference download internal" download="" href="../_downloads/a0468922d38230cfdad1d445a6b10b9e/keycloak_realm.yml"><span class="xref download myst">playbook</span></a>.</p>
@ -279,18 +279,18 @@
<section id="example-playbook">
<h2>Example Playbook<a class="headerlink" href="#example-playbook" title="Permalink to this heading"></a></h2>
<p>The following is an example playbook that makes use of the role to create a realm in keycloak.</p>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span><span class="w"></span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span><span class="w"></span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">collections</span><span class="p p-Indicator">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span><span class="w"></span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">tasks</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Include keycloak role</span><span class="w"></span>
<span class="w"> </span><span class="nt">include_role</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak_realm</span><span class="w"></span>
<span class="w"> </span><span class="nt">vars</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;changeme&quot;</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">TestRealm</span><span class="w"></span>
<span class="w"> </span><span class="nt">keycloak_clients</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[</span><span class="nv">...</span><span class="p p-Indicator">]</span><span class="w"></span>
<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nn">---</span>
<span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">hosts</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">collections</span><span class="p p-Indicator">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">middleware_automation.keycloak</span>
<span class="w"> </span><span class="w w-Error"> </span><span class="nt">tasks</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Include keycloak role</span>
<span class="w"> </span><span class="nt">include_role</span><span class="p">:</span>
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">keycloak_realm</span>
<span class="w"> </span><span class="nt">vars</span><span class="p">:</span>
<span class="w"> </span><span class="nt">keycloak_admin_password</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;changeme&quot;</span>
<span class="w"> </span><span class="nt">keycloak_realm</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">TestRealm</span>
<span class="w"> </span><span class="nt">keycloak_clients</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[</span><span class="nv">...</span><span class="p p-Indicator">]</span>
</pre></div>
</div>
</section>
@ -318,7 +318,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

View file

@ -111,7 +111,7 @@
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a

File diff suppressed because one or more lines are too long

View file

@ -103,8 +103,8 @@
<h2>Continuous integration<a class="headerlink" href="#continuous-integration" title="Permalink to this heading"></a></h2>
<p>The collection is tested with a <a class="reference external" href="https://github.com/ansible-community/molecule">molecule</a> setup covering the included roles and verifying correct installation and idempotency.
In order to run the molecule tests locally with python 3.9 available, after cloning the repository:</p>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="l l-Scalar l-Scalar-Plain">pip install yamllint &#39;molecule[docker]~=3.5.2&#39; ansible-core flake8 ansible-lint voluptuous</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">molecule test --all</span><span class="w"></span>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="l l-Scalar l-Scalar-Plain">pip install yamllint &#39;molecule[docker]~=3.5.2&#39; ansible-core flake8 ansible-lint voluptuous</span>
<span class="l l-Scalar l-Scalar-Plain">molecule test --all</span>
</pre></div>
</div>
</section>
@ -123,22 +123,22 @@ A clustered multi-regional installation of keycloak with infinispan remote cache
<section id="test-playbooks">
<h2>Test playbooks<a class="headerlink" href="#test-playbooks" title="Permalink to this heading"></a></h2>
<p>Sample playbooks are provided in the <code class="docutils literal notranslate"><span class="pre">playbooks/</span></code> directory; to run the playbooks locally (requires a rhel system with python 3.9+, ansible, and systemd) the steps are as follows:</p>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="c1"># setup environment</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">pip install ansible-core</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain"># clone the repository</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">git clone https://github.com/ansible-middleware/keycloak</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">cd keycloak</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain"># install collection dependencies</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">ansible-galaxy collection install -r requirements.yml</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain"># install collection python deps</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">pip install -r requirements.txt</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain"># create inventory for localhost</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">cat &lt;&lt; EOF &gt; inventory</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">[keycloak]</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">EOF</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain"># run the playbook</span><span class="w"></span>
<span class="l l-Scalar l-Scalar-Plain">ansible-playbook -i inventory playbooks/keycloak.yml</span><span class="w"></span>
<div class="highlight-YAML+Jinja notranslate"><div class="highlight"><pre><span></span><span class="c1"># setup environment</span>
<span class="l l-Scalar l-Scalar-Plain">pip install ansible-core</span>
<span class="l l-Scalar l-Scalar-Plain"># clone the repository</span>
<span class="l l-Scalar l-Scalar-Plain">git clone https://github.com/ansible-middleware/keycloak</span>
<span class="l l-Scalar l-Scalar-Plain">cd keycloak</span>
<span class="l l-Scalar l-Scalar-Plain"># install collection dependencies</span>
<span class="l l-Scalar l-Scalar-Plain">ansible-galaxy collection install -r requirements.yml</span>
<span class="l l-Scalar l-Scalar-Plain"># install collection python deps</span>
<span class="l l-Scalar l-Scalar-Plain">pip install -r requirements.txt</span>
<span class="l l-Scalar l-Scalar-Plain"># create inventory for localhost</span>
<span class="l l-Scalar l-Scalar-Plain">cat &lt;&lt; EOF &gt; inventory</span>
<span class="l l-Scalar l-Scalar-Plain">[keycloak]</span>
<span class="l l-Scalar l-Scalar-Plain">localhost ansible_connection=local</span>
<span class="l l-Scalar l-Scalar-Plain">EOF</span>
<span class="l l-Scalar l-Scalar-Plain"># run the playbook</span>
<span class="l l-Scalar l-Scalar-Plain">ansible-playbook -i inventory playbooks/keycloak.yml</span>
</pre></div>
</div>
</section>
@ -155,7 +155,7 @@ A clustered multi-regional installation of keycloak with infinispan remote cache
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2022, Red Hat, Inc..</p>
<p>&#169; Copyright 2023, Red Hat, Inc..</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a