mirror of
https://github.com/containers/ansible-podman-collections.git
synced 2026-02-03 23:01:48 +00:00
517 lines
No EOL
40 KiB
HTML
517 lines
No EOL
40 KiB
HTML
|
||
|
||
<!DOCTYPE html>
|
||
<html class="writer-html5" lang="en" data-content_root="../../../">
|
||
<head>
|
||
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<meta content="2.24.0" name="antsibull-docs" />
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>containers.podman.podman_generate_systemd module – Generate systemd unit from a pod or a container — Ansible collections documentation</title>
|
||
<link rel="stylesheet" type="text/css" href="../../../_static/pygments.css?v=41de9001" />
|
||
<link rel="stylesheet" type="text/css" href="../../../_static/css/ansible.css?v=b54c304f" />
|
||
<link rel="stylesheet" type="text/css" href="../../../_static/antsibull-minimal.css" />
|
||
<link rel="stylesheet" type="text/css" href="../../../_static/css/rtd-ethical-ads.css?v=289b023e" />
|
||
|
||
|
||
<link rel="shortcut icon" href="../../../_static/images/Ansible-Mark-RGB_Black.png"/>
|
||
<script src="../../../_static/jquery.js?v=5d32c60e"></script>
|
||
<script src="../../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
||
<script src="../../../_static/documentation_options.js?v=7f41d439"></script>
|
||
<script src="../../../_static/doctools.js?v=fd6eb6e6"></script>
|
||
<script src="../../../_static/sphinx_highlight.js?v=6ffebe34"></script>
|
||
<script src="../../../_static/js/theme.js"></script>
|
||
<link rel="search" title="Search" href="../../../search.html" />
|
||
<link rel="next" title="containers.podman.podman_image module – Pull images for use by podman" href="podman_image_module.html" />
|
||
<link rel="prev" title="containers.podman.podman_export module – Export a podman container" href="podman_export_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
|
||
|
||
|
||
|
||
|
||
</head>
|
||
|
||
<body class="wy-body-for-nav"><!-- extra body elements for Ansible beyond RTD Sphinx Theme -->
|
||
|
||
<div class="DocSite-globalNav ansibleNav">
|
||
<ul>
|
||
<li><a href="https://www.ansible.com/blog" target="_blank">Blog</a></li>
|
||
<li><a href="https://forum.ansible.com/" target="_blank">Ansible community forum</a></li>
|
||
<li><a href="https://docs.ansible.com/" target="_blank">Documentation</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<a class="DocSite-nav" href="/" style="padding-bottom: 30px;">
|
||
|
||
<img class="DocSiteNav-logo"
|
||
src="../../../_static/images/Ansible-Mark-RGB_White.png"
|
||
alt="Ansible Logo">
|
||
<div class="DocSiteNav-title">Ansible Collections Documentation</div>
|
||
</a>
|
||
<div class="wy-grid-for-nav">
|
||
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
||
<div class="wy-side-scroll">
|
||
<div class="wy-side-nav-search" >
|
||
|
||
|
||
|
||
<a href="../../../index.html" class="icon icon-home">
|
||
Ansible collections
|
||
</a><!--- Based on https://github.com/rtfd/sphinx_rtd_theme/pull/438/files -->
|
||
|
||
<div class="version">
|
||
|
||
|
||
|
||
</div>
|
||
<div role="search">
|
||
<form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
|
||
<label class="sr-only" for="q">Search docs:</label>
|
||
<input type="text" class="st-default-search-input" id="q" name="q" placeholder="Search docs" />
|
||
<input type="hidden" name="check_keywords" value="yes" />
|
||
<input type="hidden" name="area" value="default" />
|
||
</form>
|
||
</div>
|
||
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
||
|
||
<p class="caption" role="heading"><span class="caption-text">Collections:</span></p>
|
||
<ul class="current">
|
||
<li class="toctree-l1 current"><a class="reference internal" href="../../index.html">Collection Index</a><ul class="current">
|
||
<li class="toctree-l2 current"><a class="reference internal" href="../index.html">Collections in the Containers Namespace</a><ul class="current">
|
||
<li class="toctree-l3 current"><a class="reference internal" href="index.html">Containers.Podman</a><ul class="current">
|
||
<li class="toctree-l4"><a class="reference internal" href="index.html#description">Description</a></li>
|
||
<li class="toctree-l4 current"><a class="reference internal" href="index.html#plugin-index">Plugin Index</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<p class="caption" role="heading"><span class="caption-text">Plugin indexes:</span></p>
|
||
<ul>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../index_become.html">Index of all Become Plugins</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../index_connection.html">Index of all Connection Plugins</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../index_inventory.html">Index of all Inventory Plugins</a></li>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../index_module.html">Index of all Modules</a></li>
|
||
</ul>
|
||
<p class="caption" role="heading"><span class="caption-text">Reference indexes:</span></p>
|
||
<ul>
|
||
<li class="toctree-l1"><a class="reference internal" href="../../environment_variables.html">Index of all Collection Environment Variables</a></li>
|
||
</ul>
|
||
<!-- extra nav elements for Ansible beyond RTD Sphinx Theme -->
|
||
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
||
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
||
<a href="../../../index.html">Ansible collections</a>
|
||
</nav>
|
||
|
||
<div class="wy-nav-content">
|
||
<div class="rst-content">
|
||
<div role="navigation" aria-label="Page navigation">
|
||
<ul class="wy-breadcrumbs">
|
||
<li><a href="../../../index.html" class="icon icon-home" aria-label="Home"></a></li>
|
||
<li class="breadcrumb-item"><a href="../../index.html">Collection Index</a></li>
|
||
<li class="breadcrumb-item"><a href="../index.html">Collections in the Containers Namespace</a></li>
|
||
<li class="breadcrumb-item"><a href="index.html">Containers.Podman</a></li>
|
||
<li class="breadcrumb-item active">containers.podman.podman_generate_systemd module – Generate systemd unit from a pod or a container</li>
|
||
<li class="wy-breadcrumbs-aside">
|
||
</li>
|
||
</ul>
|
||
<hr/>
|
||
</div>
|
||
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
||
|
||
|
||
<div itemprop="articleBody">
|
||
|
||
<span class="target" id="ansible-collections-containers-podman-podman-generate-systemd-module"></span><section id="containers-podman-podman-generate-systemd-module-generate-systemd-unit-from-a-pod-or-a-container">
|
||
<h1>containers.podman.podman_generate_systemd module – Generate systemd unit from a pod or a container<a class="headerlink" href="#containers-podman-podman-generate-systemd-module-generate-systemd-unit-from-a-pod-or-a-container" title="Link to this heading"></a></h1>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<p>This module is part of the <a class="reference external" href="https://galaxy.ansible.com/ui/repo/published/containers/podman/">containers.podman collection</a> (version 1.19.0).</p>
|
||
<p>It is not included in <code class="docutils literal notranslate"><span class="pre">ansible-core</span></code>.
|
||
To check whether it is installed, run <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">list</span></code>.</p>
|
||
<p>To install it, use: <code class="code docutils literal notranslate"><span class="pre">ansible-galaxy</span> <span class="pre">collection</span> <span class="pre">install</span> <span class="pre">containers.podman</span></code>.
|
||
You need further requirements to be able to use this module,
|
||
see <a class="reference internal" href="#ansible-collections-containers-podman-podman-generate-systemd-module-requirements"><span class="std std-ref">Requirements</span></a> for details.</p>
|
||
<p>To use it in a playbook, specify: <code class="code docutils literal notranslate"><span class="pre">containers.podman.podman_generate_systemd</span></code>.</p>
|
||
</div>
|
||
<nav class="contents local" id="contents">
|
||
<ul class="simple">
|
||
<li><p><a class="reference internal" href="#synopsis" id="id1">Synopsis</a></p></li>
|
||
<li><p><a class="reference internal" href="#requirements" id="id2">Requirements</a></p></li>
|
||
<li><p><a class="reference internal" href="#parameters" id="id3">Parameters</a></p></li>
|
||
<li><p><a class="reference internal" href="#notes" id="id4">Notes</a></p></li>
|
||
<li><p><a class="reference internal" href="#examples" id="id5">Examples</a></p></li>
|
||
<li><p><a class="reference internal" href="#return-values" id="id6">Return Values</a></p></li>
|
||
</ul>
|
||
</nav>
|
||
<section id="synopsis">
|
||
<h2><a class="toc-backref" href="#id1" role="doc-backlink">Synopsis</a><a class="headerlink" href="#synopsis" title="Link to this heading"></a></h2>
|
||
<ul class="simple">
|
||
<li><p>Generate systemd .service unit file(s) from a pod or a container</p></li>
|
||
<li><p>Support Ansible check mode</p></li>
|
||
</ul>
|
||
</section>
|
||
<section id="requirements">
|
||
<span id="ansible-collections-containers-podman-podman-generate-systemd-module-requirements"></span><h2><a class="toc-backref" href="#id2" role="doc-backlink">Requirements</a><a class="headerlink" href="#requirements" title="Link to this heading"></a></h2>
|
||
<p>The below requirements are needed on the host that executes this module.</p>
|
||
<ul class="simple">
|
||
<li><p>Podman installed on target host</p></li>
|
||
</ul>
|
||
</section>
|
||
<section id="parameters">
|
||
<h2><a class="toc-backref" href="#id3" role="doc-backlink">Parameters</a><a class="headerlink" href="#parameters" title="Link to this heading"></a></h2>
|
||
<table class="longtable ansible-option-table docutils align-default" style="width: 100%">
|
||
<thead>
|
||
<tr class="row-odd"><th class="head"><p>Parameter</p></th>
|
||
<th class="head"><p>Comments</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-after"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-after"><strong>after</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-after" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">list</span> / <span class="ansible-option-elements">elements=string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Add the systemd unit after (<code class="docutils literal notranslate"><span class="pre">After=</span></code>) option, that ordering dependencies between the list of dependencies and this service.</p>
|
||
<p>This option may be specified more than once.</p>
|
||
<p>User-defined dependencies will be appended to the generated unit file</p>
|
||
<p>But any existing options such as needed or defined by default (e.g. <code class="docutils literal notranslate"><span class="pre">online.target</span></code>) will not be removed or overridden.</p>
|
||
<p>Only with Podman 4.0.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-container_prefix"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-container-prefix"><strong>container_prefix</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-container_prefix" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Set the systemd unit name prefix for containers.</p>
|
||
<p>If not set, use the default defined by podman, <code class="docutils literal notranslate"><span class="pre">container</span></code>.</p>
|
||
<p>Refer to podman-generate-systemd(1) man page for more information.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-dest"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-dest"><strong>dest</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-dest" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">path</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Destination of the generated systemd unit file(s).</p>
|
||
<p>Use <code class="docutils literal notranslate"><span class="pre">/etc/systemd/system</span></code> for the system-wide systemd instance.</p>
|
||
<p>Use <code class="docutils literal notranslate"><span class="pre">/etc/systemd/user</span></code> or <code class="docutils literal notranslate"><span class="pre">~/.config/systemd/user</span></code> for use with per-user instances of systemd.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-env"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-env"><strong>env</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-env" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">dictionary</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Set environment variables to the systemd unit files.</p>
|
||
<p>Keys are the environment variable names, and values are the environment variable values</p>
|
||
<p>Only with Podman 4.3.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-executable"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-executable"><strong>executable</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-executable" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p><code class="docutils literal notranslate"><span class="pre">Podman</span></code> executable name or full path</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-default-bold">Default:</strong> <code class="ansible-option-default docutils literal notranslate"><span class="pre">"podman"</span></code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-force"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-force"><strong>force</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-force" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Replace the systemd unit file(s) even if it already exists.</p>
|
||
<p>This works with dest option.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">false</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">true</span></code></p></li>
|
||
</ul>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-name"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-name"><strong>name</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-name" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span> / <span class="ansible-option-required">required</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Name of the pod or container to export</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-new"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-new"><strong>new</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-new" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Generate unit files that create containers and pods, not only start them.</p>
|
||
<p>Refer to podman-generate-systemd(1) man page for more information.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">false</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">true</span></code></p></li>
|
||
</ul>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-no_header"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-no-header"><strong>no_header</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-no_header" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Do not generate the header including meta data such as the Podman version and the timestamp.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">false</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">true</span></code></p></li>
|
||
</ul>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-pod_prefix"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-pod-prefix"><strong>pod_prefix</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-pod_prefix" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Set the systemd unit name prefix for pods.</p>
|
||
<p>If not set, use the default defined by podman, <code class="docutils literal notranslate"><span class="pre">pod</span></code>.</p>
|
||
<p>Refer to podman-generate-systemd(1) man page for more information.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-requires"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-requires"><strong>requires</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-requires" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">list</span> / <span class="ansible-option-elements">elements=string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Set the systemd unit requires (Requires=) option.</p>
|
||
<p>Similar to wants, but declares a stronger requirement dependency.</p>
|
||
<p>Only with Podman 4.0.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-restart_policy"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-restart-policy"><strong>restart_policy</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-restart_policy" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Restart policy of the service</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"no-restart"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"on-success"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"on-failure"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"on-abnormal"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"on-watchdog"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"on-abort"</span></code></p></li>
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">"always"</span></code></p></li>
|
||
</ul>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-restart_sec"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-restart-sec"><strong>restart_sec</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-restart_sec" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">integer</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Configures the time to sleep before restarting a service (as configured with restart-policy).</p>
|
||
<p>Takes a value in seconds.</p>
|
||
<p>Only with Podman 4.0.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-separator"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-separator"><strong>separator</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-separator" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Systemd unit name separator between the name/id of a container/pod and the prefix.</p>
|
||
<p>If not set, use the default defined by podman, <code class="docutils literal notranslate"><span class="pre">-</span></code>.</p>
|
||
<p>Refer to podman-generate-systemd(1) man page for more information.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-start_timeout"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-start-timeout"><strong>start_timeout</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-start_timeout" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">integer</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Override the default start timeout for the container with the given value in seconds.</p>
|
||
<p>Only with Podman 4.0.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-stop_timeout"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-stop-timeout"><strong>stop_timeout</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-stop_timeout" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">integer</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Override the default stop timeout for the container with the given value in seconds.</p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-use_names"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-use-names"><strong>use_names</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-use_names" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">boolean</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Use name of the containers for the start, stop, and description in the unit file.</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-choices">Choices:</strong></p>
|
||
<ul class="simple">
|
||
<li><p><code class="ansible-option-choices-entry docutils literal notranslate"><span class="pre">false</span></code></p></li>
|
||
<li><p><code class="ansible-option-default-bold docutils literal notranslate"><strong><span class="pre">true</span></strong></code> <span class="ansible-option-choices-default-mark">← (default)</span></p></li>
|
||
</ul>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="parameter-wants"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-parameter-wants"><strong>wants</strong></p>
|
||
<a class="ansibleOptionLink" href="#parameter-wants" title="Permalink to this option"></a><p class="ansible-option-type-line"><span class="ansible-option-type">list</span> / <span class="ansible-option-elements">elements=string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>Add the systemd unit wants (<code class="docutils literal notranslate"><span class="pre">Wants=</span></code>) option, that this service is (weak) dependent on.</p>
|
||
<p>This option may be specified more than once.</p>
|
||
<p>This option does not influence the order in which services are started or stopped.</p>
|
||
<p>User-defined dependencies will be appended to the generated unit file</p>
|
||
<p>But any existing options such as needed or defined by default (e.g. <code class="docutils literal notranslate"><span class="pre">online.target</span></code>) will not be removed or overridden.</p>
|
||
<p>Only with Podman 4.0.0 and above</p>
|
||
</div></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</section>
|
||
<section id="notes">
|
||
<h2><a class="toc-backref" href="#id4" role="doc-backlink">Notes</a><a class="headerlink" href="#notes" title="Link to this heading"></a></h2>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<ul class="simple">
|
||
<li><p>If you indicate a pod, the systemd units for it and all its containers will be generated</p></li>
|
||
<li><p>Create all your pods, containers and their dependencies before generating the systemd files</p></li>
|
||
<li><p>If a container or pod is already started before you do a <code class="docutils literal notranslate"><span class="pre">systemctl</span> <span class="pre">daemon-reload</span></code>, systemd will not see the container or pod as started</p></li>
|
||
<li><p>Stop your container or pod before you do a <code class="docutils literal notranslate"><span class="pre">systemctl</span> <span class="pre">daemon-reload</span></code>, then you can start them with <code class="docutils literal notranslate"><span class="pre">systemctl</span> <span class="pre">start</span> <span class="pre">my_container.service</span></code></p></li>
|
||
</ul>
|
||
</div>
|
||
</section>
|
||
<section id="examples">
|
||
<h2><a class="toc-backref" href="#id5" role="doc-backlink">Examples</a><a class="headerlink" href="#examples" title="Link to this heading"></a></h2>
|
||
<div class="highlight-yaml+jinja notranslate"><div class="highlight"><pre><span></span><span class="c1"># Example of creating a container and systemd unit file.</span>
|
||
<span class="c1"># When using podman_generate_systemd with new:true then</span>
|
||
<span class="c1"># the container needs rm:true for idempotence.</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">Create postgres container</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_container</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">postgres</span>
|
||
<span class="w"> </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">docker.io/library/postgres:latest</span>
|
||
<span class="w"> </span><span class="nt">rm</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="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">created</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">Generate systemd unit file for postgres container</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_generate_systemd</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">postgres</span>
|
||
<span class="w"> </span><span class="nt">new</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="nt">no_header</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="nt">dest</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/etc/systemd/system</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">Ensure postgres container is started and enabled</span>
|
||
<span class="w"> </span><span class="nt">ansible.builtin.systemd</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">container-postgres</span>
|
||
<span class="w"> </span><span class="nt">daemon_reload</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="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">started</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
|
||
|
||
<span class="c1"># Example of creating a container and integrate it into systemd</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">A postgres container must exist, stopped</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_container</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">postgres_local</span>
|
||
<span class="w"> </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">docker.io/library/postgres:latest</span>
|
||
<span class="w"> </span><span class="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">stopped</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">Systemd unit files for postgres container must exist</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_generate_systemd</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">postgres_local</span>
|
||
<span class="w"> </span><span class="nt">dest</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">~/.config/systemd/user/</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">Postgres container must be started and enabled on systemd</span>
|
||
<span class="w"> </span><span class="nt">ansible.builtin.systemd</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">container-postgres_local</span>
|
||
<span class="w"> </span><span class="nt">scope</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">user</span>
|
||
<span class="w"> </span><span class="nt">daemon_reload</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="nt">state</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">started</span>
|
||
<span class="w"> </span><span class="nt">enabled</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
|
||
|
||
|
||
<span class="c1"># Generate the unit files, but store them on an Ansible variable</span>
|
||
<span class="c1"># instead of writing them on target host</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">Systemd unit files for postgres container must be generated</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_generate_systemd</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">postgres_local</span>
|
||
<span class="w"> </span><span class="nt">register</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">postgres_local_systemd_unit</span>
|
||
|
||
<span class="c1"># Generate the unit files with environment variables sets</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">Systemd unit files for postgres container must be generated</span>
|
||
<span class="w"> </span><span class="nt">containers.podman.podman_generate_systemd</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">postgres_local</span>
|
||
<span class="w"> </span><span class="nt">env</span><span class="p">:</span>
|
||
<span class="w"> </span><span class="nt">POSTGRES_USER</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">my_app</span>
|
||
<span class="w"> </span><span class="nt">POSTGRES_PASSWORD</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">example</span>
|
||
<span class="w"> </span><span class="nt">register</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">postgres_local_systemd_unit</span>
|
||
</pre></div>
|
||
</div>
|
||
</section>
|
||
<section id="return-values">
|
||
<h2><a class="toc-backref" href="#id6" role="doc-backlink">Return Values</a><a class="headerlink" href="#return-values" title="Link to this heading"></a></h2>
|
||
<p>Common return values are documented <a class="reference external" href="https://docs.ansible.com/projects/ansible/devel/reference_appendices/common_return_values.html#common-return-values" title="(in Ansible devel)"><span class="xref std std-ref">here</span></a>, the following are the fields unique to this module:</p>
|
||
<table class="longtable ansible-option-table docutils align-default" style="width: 100%">
|
||
<thead>
|
||
<tr class="row-odd"><th class="head"><p>Key</p></th>
|
||
<th class="head"><p>Description</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-podman_command"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-return-podman-command"><strong>podman_command</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-podman_command" title="Permalink to this return value"></a><p class="ansible-option-type-line"><span class="ansible-option-type">string</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>A copy of the podman command used to generate the systemd unit(s)</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> always</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-option-sample docutils literal notranslate"><span class="pre">"podman</span> <span class="pre">generate</span> <span class="pre">systemd</span> <span class="pre">my_webapp"</span></code></p>
|
||
</div></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><div class="ansible-option-cell">
|
||
<div class="ansibleOptionAnchor" id="return-systemd_units"></div><p class="ansible-option-title" id="ansible-collections-containers-podman-podman-generate-systemd-module-return-systemd-units"><strong>systemd_units</strong></p>
|
||
<a class="ansibleOptionLink" href="#return-systemd_units" title="Permalink to this return value"></a><p class="ansible-option-type-line"><span class="ansible-option-type">dictionary</span></p>
|
||
</div></td>
|
||
<td><div class="ansible-option-cell"><p>A copy of the generated systemd .service unit(s)</p>
|
||
<p class="ansible-option-line"><strong class="ansible-option-returned-bold">Returned:</strong> always</p>
|
||
<p class="ansible-option-line ansible-option-sample"><strong class="ansible-option-sample-bold">Sample:</strong> <code class="ansible-option-sample docutils literal notranslate"><span class="pre">{"container-postgres_local":</span> <span class="pre">"</span> <span class="pre">#Content</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">systemd</span> <span class="pre">.servec</span> <span class="pre">unit</span> <span class="pre">for</span> <span class="pre">postgres_local</span> <span class="pre">container",</span> <span class="pre">"pod-my_webapp":</span> <span class="pre">"</span> <span class="pre">#Content</span> <span class="pre">of</span> <span class="pre">the</span> <span class="pre">systemd</span> <span class="pre">.servec</span> <span class="pre">unit</span> <span class="pre">for</span> <span class="pre">my_webapp</span> <span class="pre">pod"}</span></code></p>
|
||
</div></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<section id="authors">
|
||
<h3>Authors<a class="headerlink" href="#authors" title="Link to this heading"></a></h3>
|
||
<ul class="simple">
|
||
<li><p>Sébastien Gendre (@CyberFox001)</p></li>
|
||
</ul>
|
||
</section>
|
||
<section id="collection-links">
|
||
<h3>Collection links<a class="headerlink" href="#collection-links" title="Link to this heading"></a></h3>
|
||
<ul class="ansible-links">
|
||
<li><span><a aria-role="button" class="ansible-link reference external" href="https://github.com/containers/ansible-podman-collections/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc" rel="noopener external" target="_blank">Issue Tracker</a></span></li>
|
||
<li><span><a aria-role="button" class="ansible-link reference external" href="https://github.com/containers/ansible-podman-collections" rel="noopener external" target="_blank">Repository (Sources)</a></span></li>
|
||
</ul>
|
||
</section>
|
||
</section>
|
||
</section>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
||
<a href="podman_export_module.html" class="btn btn-neutral float-left" title="containers.podman.podman_export module – Export a podman container" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
||
<a href="podman_image_module.html" class="btn btn-neutral float-right" title="containers.podman.podman_image module – Pull images for use by podman" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
||
</div>
|
||
|
||
<hr/>
|
||
|
||
<div role="contentinfo">
|
||
<p>© Copyright Ansible contributors.</p>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</footer>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
<script>
|
||
jQuery(function () {
|
||
SphinxRtdTheme.Navigation.enable(true);
|
||
});
|
||
</script><!-- extra footer elements for Ansible beyond RTD Sphinx Theme -->
|
||
|
||
</body>
|
||
</html> |