Generated plugin reference
This file is generated from the installed plugin metadata. Do not edit plugin parameter lists here by hand; update plugin metadata and regenerate.
automax docs generate-plugins --output docs/plugins/generated.md
automax
automax.plugin.requirements
Report remote tools required by one or more plugins without connecting to a target.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
plugin |
no | string |
Plugin name selected for requirements inspection. | |
plugins |
no | list |
Plugin names selected for requirements inspection. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: automax.plugin.requirements
command
command.local.run
Run a local command on the controller host.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
command |
yes | string |
Command line to execute. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
env |
no | mapping |
Environment variables for a local command. | |
shell |
no | boolean |
Run a local command through the platform shell. | |
timeout |
no | number |
Operation timeout in seconds. | |
success_rc |
no | integer |
0 |
Return code considered successful. |
changed |
no | boolean |
True |
Whether a successful command should be reported as changed. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: command.local.run
with:
command: echo automax
changed: false
command.remote.run
Run a command on the current remote target via SSH.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
command |
yes | string |
Command line to execute. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
timeout |
no | number |
Operation timeout in seconds. | |
pty |
no | boolean |
False |
Request a pseudo-terminal for command.remote.run. |
stdin |
no | string |
Text written to remote command standard input. | |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
success_rc |
no | integer |
0 |
Return code considered successful. |
changed |
no | boolean |
True |
Whether a successful command should be reported as changed. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: command.remote.run
with:
command: systemctl is-active sshd
success_rc: 0
container
container.compose.config.check
Validate a Compose file on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
project_dir |
no | path |
Compose project directory. | |
file |
no | path |
Remote configuration file path. | |
project |
no | string |
Project name or cloud project id. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.compose.config.check
with:
backend: auto
timeout: 60
container.compose.down
Stop a Docker Compose or Podman Compose application on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
project_dir |
no | path |
Compose project directory. | |
file |
no | path |
Remote configuration file path. | |
project |
no | string |
Project name or cloud project id. | |
remove_volumes |
no | boolean |
False |
Remove volumes owned by the Compose project. |
remove_orphans |
no | boolean |
False |
Remove Compose containers for services not defined in the current file. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.compose.down
with:
backend: auto
timeout: 60
container.compose.up
Start a Docker Compose or Podman Compose application on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
project_dir |
no | path |
Compose project directory. | |
file |
no | path |
Remote configuration file path. | |
project |
no | string |
Project name or cloud project id. | |
detach |
no | boolean |
False |
Run the container or compose application in detached mode. |
compose_services |
no | list |
Compose services to select. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.compose.up
with:
backend: auto
timeout: 60
container.container.exec
Execute a command inside a container on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
container |
yes | string |
Container name or id. | |
command |
yes | string |
Command line to execute. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
args |
no | list |
Additional command arguments. | |
workdir |
no | path |
Working directory inside a container. | |
env |
no | mapping |
Environment variables for a local command. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.exec
with:
container: value
command: echo automax
container.container.inspect
Inspect a container on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
container |
yes | string |
Container name or id. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.inspect
with:
container: value
container.container.logs
Read container logs on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
container |
yes | string |
Container name or id. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
since |
no | string |
Start time for journalctl queries. | |
tail |
no | string |
Number of log lines to display. | |
follow |
no | boolean |
False |
Follow log output. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.logs
with:
container: value
container.container.remove
Remove a container from a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
container |
yes | string |
Container name or id. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
force |
no | boolean |
False |
Force the operation when supported. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.remove
with:
container: value
container.container.run
Run a container on a remote target using Docker or Podman.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
image |
yes | string |
Container image reference. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
name |
no | string |
Package, user or group name. | |
command |
no | string |
Command line to execute. | |
args |
no | list |
Additional command arguments. | |
detach |
no | boolean |
False |
Run the container or compose application in detached mode. |
ports |
no | list |
Container port mappings. | |
volumes |
no | list |
Container volume mappings. | |
env |
no | mapping |
Environment variables for a local command. | |
workdir |
no | path |
Working directory inside a container. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.run
with:
image: value
container.container.stop
Stop a container on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
container |
yes | string |
Container name or id. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.container.stop
with:
container: value
container.image.exists
Check whether a container image exists on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
image |
yes | string |
Container image reference. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.image.exists
with:
image: value
container.image.pull
Pull a container image on a remote target using Docker or Podman.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
image |
yes | string |
Container image reference. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.image.pull
with:
image: value
container.image.remove
Remove a container image from a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
image |
yes | string |
Container image reference. | |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
timeout |
no | number |
Operation timeout in seconds. | |
force |
no | boolean |
False |
Force the operation when supported. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: container.image.remove
with:
image: value
data
data.archive.tar.check
Check whether a remote tar archive is readable and optionally contains entries.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
contains |
no | string |
Required substring in stdout or HTTP response body. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.tar.check
with:
archive: /tmp/app.tar.gz
data.archive.tar.create
Create a remote tar archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
excludes |
no | list |
Glob patterns excluded from archive creation. | |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.tar.create
with:
source: /var/log/app
dest: /tmp/dest
data.archive.tar.extract
Extract a remote tar archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
strip_components |
no | integer |
0 |
Path components stripped while extracting a tar archive. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
safe_extract |
no | boolean |
True |
Reject unsafe archive paths before extraction. |
checksum_verify |
no | string |
Expected checksum for archive or file verification. | |
include |
no | string |
PAM include/substack target name. | |
exclude |
no | list |
Package or archive excludes. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.tar.extract
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.archive.tar.list
List files inside a remote tar archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.tar.list
with:
archive: /tmp/app.tar.gz
data.archive.zip.check
Check whether a remote zip archive is readable and optionally contains entries.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
contains |
no | string |
Required substring in stdout or HTTP response body. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.zip.check
with:
archive: /tmp/app.tar.gz
data.archive.zip.create
Create a remote zip archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
recursive |
no | boolean |
False |
Recurse into directories. |
excludes |
no | list |
Glob patterns excluded from archive creation. | |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.zip.create
with:
source: /var/log/app
dest: /tmp/dest
data.archive.zip.extract
Extract a remote zip archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
safe_extract |
no | boolean |
True |
Reject unsafe archive paths before extraction. |
checksum_verify |
no | string |
Expected checksum for archive or file verification. | |
include |
no | string |
PAM include/substack target name. | |
exclude |
no | list |
Package or archive excludes. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.zip.extract
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.archive.zip.list
List files inside a remote zip archive.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.archive.zip.list
with:
archive: /tmp/app.tar.gz
data.backup.directory.create
Create a compressed tar backup of a remote directory.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.directory.create
with:
src: /tmp/source
dest: /tmp/dest
data.backup.file.create
Create a timestampable backup copy of a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.file.create
with:
src: /tmp/source
dest: /tmp/dest
data.backup.list
List remote backup artifacts under a directory.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
patterns |
no | list |
Find-name patterns to match. | |
max_depth |
no | integer |
Maximum remote find traversal depth. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.list
with:
path: /tmp/automax-demo
data.backup.manifest.create
Create or print a deterministic manifest for a backup directory or selected paths.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
root |
yes | path |
Remote root directory for manifest or inventory operations. | |
dest |
no | path |
Destination path. | |
paths |
no | list |
Relative paths selected for manifest or inventory operations. | |
content_checksums |
no | boolean |
True |
Include per-file content checksums in generated backup manifests. |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.manifest.create
with:
root: value
data.backup.prune
Prune backup artifacts by age and/or retention count.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
patterns |
no | list |
Find-name patterns to match. | |
older_than_days |
no | integer |
Age threshold in days for pruning old backup artifacts. | |
keep |
no | integer |
Number of backup artifacts or rotated generations to retain. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.prune
with:
path: /tmp/automax-demo
data.backup.rotate
Rotate one backup artifact through numbered generations.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
keep |
yes | integer |
Number of backup artifacts or rotated generations to retain. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.rotate
with:
path: /tmp/automax-demo
keep: value
data.backup.verify
Verify a remote backup artifact checksum without changing state.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
checksum_file |
no | path |
Checksum sidecar file path. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.backup.verify
with:
path: /tmp/automax-demo
data.compression.bzip2.check
Check whether a remote bzip2 file is readable.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.bzip2.check
with:
path: /tmp/automax-demo
data.compression.bzip2.compress
Compress one remote file with bzip2.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.bzip2.compress
with:
source: /var/log/app
dest: /tmp/dest
data.compression.bzip2.decompress
Decompress one remote bzip2 file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.bzip2.decompress
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.compression.gzip.check
Check whether a remote gzip file is readable.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.gzip.check
with:
path: /tmp/automax-demo
data.compression.gzip.compress
Compress one remote file with gzip.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.gzip.compress
with:
source: /var/log/app
dest: /tmp/dest
data.compression.gzip.decompress
Decompress one remote gzip file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.gzip.decompress
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.compression.xz.check
Check whether a remote xz file is readable.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.xz.check
with:
path: /tmp/automax-demo
data.compression.xz.compress
Compress one remote file with xz.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.xz.compress
with:
source: /var/log/app
dest: /tmp/dest
data.compression.xz.decompress
Decompress one remote xz file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.xz.decompress
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.compression.zstd.check
Check whether a remote zstd file is readable.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.zstd.check
with:
path: /tmp/automax-demo
data.compression.zstd.compress
Compress one remote file with zstd.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | path |
Remote source path to archive. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.zstd.compress
with:
source: /var/log/app
dest: /tmp/dest
data.compression.zstd.decompress
Decompress one remote zstd file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
archive |
yes | path |
Remote archive path to extract. | |
dest |
yes | path |
Destination path. | |
compression |
no | string |
auto |
Archive compression: auto, none, gzip, bzip2 or xz. |
force |
no | boolean |
False |
Force the operation when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.compression.zstd.decompress
with:
archive: /tmp/app.tar.gz
dest: /tmp/dest
data.download.url
Download a URL on the remote target using curl or wget, with optional checksum and backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
url |
yes | string |
HTTP URL. | |
dest |
yes | path |
Destination path. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
force |
no | boolean |
False |
Force the operation when supported. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.download.url
with:
url: https://example.invalid/health
dest: /tmp/dest
data.restore.apply
Restore a remote file or tar archive from an explicit backup artifact.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
confirm |
yes | boolean |
Explicit destructive-operation confirmation flag. | |
archive |
no | boolean |
Treat the source as an archive artifact. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.restore.apply
with:
src: /tmp/source
dest: /tmp/dest
confirm: value
data.restore.preview
Preview a restore artifact without changing the target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
archive |
no | boolean |
Treat the source as an archive artifact. | |
checksum_file |
no | path |
Checksum sidecar file path. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.restore.preview
with:
src: /tmp/source
dest: /tmp/dest
data.restore.verify
Verify that restored content matches a backup artifact.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
archive |
no | boolean |
Treat the source as an archive artifact. | |
checksum_file |
no | path |
Checksum sidecar file path. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: data.restore.verify
with:
src: /tmp/source
dest: /tmp/dest
data.transfer.download
Download a remote file or directory to the controller.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
recursive |
no | boolean |
False |
Recurse into directories. |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
backup_existing |
no | boolean |
False |
Create a backup of an existing destination before replacing it. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
preserve_times |
no | boolean |
False |
Preserve source access and modification timestamps when transferring files. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.src: Remote source path.data.dest: Local destination path.
Example:
use: data.transfer.download
with:
src: /tmp/source
dest: /tmp/dest
data.transfer.rsync
Synchronize files with rsync using the current target as the default remote endpoint.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
direction |
no | string |
upload |
Transfer direction such as upload, download or local. |
archive |
no | boolean |
True |
Use rsync archive mode. |
compress |
no | boolean |
False |
Enable stream compression when supported. |
delete |
no | boolean |
False |
Delete extraneous destination files when supported. |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
dry_run |
no | boolean |
False |
Render or run without applying changes when supported. |
excludes |
no | list |
Glob patterns excluded from archive creation. | |
ssh_options |
no | list |
Extra ssh options used by rsync. | |
rsync_path |
no | path |
Remote rsync executable path. | |
timeout |
no | number |
Operation timeout in seconds. | |
partial |
no | boolean |
False |
Keep partially transferred files. |
bwlimit |
no | integer |
Bandwidth limit. | |
numeric_ids |
no | boolean |
False |
Preserve numeric UID/GID values. |
itemize_changes |
no | boolean |
False |
Show per-file rsync changes. |
stats |
no | boolean |
False |
Show transfer statistics. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.command: Executed rsync argument vector.
Example:
use: data.transfer.rsync
with:
src: /tmp/source
dest: /tmp/dest
data.transfer.upload
Upload a local file or directory to a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
checksum |
no | string |
Expected SHA256 checksum for a downloaded file. | |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
backup_existing |
no | boolean |
False |
Create a backup of an existing destination before replacing it. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
preserve_times |
no | boolean |
False |
Preserve source access and modification timestamps when transferring files. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.src: Local source path.data.dest: Remote destination path
Example:
use: data.transfer.upload
with:
src: /tmp/source
dest: /tmp/dest
database
database.mysql.check
Run read-only controller-side MySQL health checks.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
checks |
no | list |
Health checks to run. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
engine |
no | string |
Database engine such as sqlite, postgres, mysql or oracle. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: database.mysql.check
with:
connection:
path: /tmp/automax.sqlite
path: /tmp/automax-demo
database.mysql.query
Run MySQL/MariaDB queries or statements from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
query |
no | string |
SQL query to execute. | |
statements |
no | list |
SQL statements executed in order inside one transaction. | |
query_params |
no | sequence |
SQL bind parameters passed to the database driver. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
fetch |
no | string |
all |
Database fetch mode: all, one or none. |
commit |
no | boolean |
True |
Commit the database transaction on success; false rolls it back. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.rows: Fetched rows for SELECT-style statements.data.scalar: First column of the first row when output=scalar.data.rowcount: Driver rowcount when available.
Example:
use: database.mysql.query
with:
connection:
path: /tmp/automax.sqlite
query: SELECT 1 AS value
database.oracle.check
Run read-only controller-side Oracle health checks.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
checks |
no | list |
Health checks to run. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
engine |
no | string |
Database engine such as sqlite, postgres, mysql or oracle. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: database.oracle.check
with:
connection:
path: /tmp/automax.sqlite
path: /tmp/automax-demo
database.oracle.query
Run Oracle queries or statements from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
query |
no | string |
SQL query to execute. | |
statements |
no | list |
SQL statements executed in order inside one transaction. | |
query_params |
no | sequence |
SQL bind parameters passed to the database driver. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
fetch |
no | string |
all |
Database fetch mode: all, one or none. |
commit |
no | boolean |
True |
Commit the database transaction on success; false rolls it back. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.rows: Fetched rows for SELECT-style statements.data.scalar: First column of the first row when output=scalar.data.rowcount: Driver rowcount when available.
Example:
use: database.oracle.query
with:
connection:
path: /tmp/automax.sqlite
query: SELECT 1 AS value
database.postgres.check
Run read-only controller-side PostgreSQL health checks.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
checks |
no | list |
Health checks to run. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
engine |
no | string |
Database engine such as sqlite, postgres, mysql or oracle. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: database.postgres.check
with:
connection:
path: /tmp/automax.sqlite
path: /tmp/automax-demo
database.postgres.query
Run PostgreSQL queries or statements from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
query |
no | string |
SQL query to execute. | |
statements |
no | list |
SQL statements executed in order inside one transaction. | |
query_params |
no | sequence |
SQL bind parameters passed to the database driver. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
fetch |
no | string |
all |
Database fetch mode: all, one or none. |
commit |
no | boolean |
True |
Commit the database transaction on success; false rolls it back. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.rows: Fetched rows for SELECT-style statements.data.scalar: First column of the first row when output=scalar.data.rowcount: Driver rowcount when available.
Example:
use: database.postgres.query
with:
connection:
path: /tmp/automax.sqlite
query: SELECT 1 AS value
database.sqlite.check
Run read-only controller-side SQLite health checks.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
checks |
no | list |
Health checks to run. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
engine |
no | string |
Database engine such as sqlite, postgres, mysql or oracle. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.engine: Database engine checked.data.checks: Boolean check results.data.healthy: Whether all requested database checks passed.data.latency_ms: Measured health-check duration in milliseconds.
Example:
use: database.sqlite.check
with:
connection:
path: /tmp/automax.sqlite
path: /tmp/automax-demo
database.sqlite.query
Run SQLite queries or statements from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connection |
no | mapping |
Database connection mapping; values may be rendered from vars or secrets. | |
query |
no | string |
SQL query to execute. | |
statements |
no | list |
SQL statements executed in order inside one transaction. | |
query_params |
no | sequence |
SQL bind parameters passed to the database driver. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
fetch |
no | string |
all |
Database fetch mode: all, one or none. |
commit |
no | boolean |
True |
Commit the database transaction on success; false rolls it back. |
path |
no | path |
Remote or local path, depending on the plugin. | |
database |
no | path |
SQLite database path or database name, depending on the plugin. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.rows: Fetched rows for SELECT-style statements.data.scalar: First column of the first row when output=scalar.data.rowcount: Driver rowcount when available.
Example:
use: database.sqlite.query
with:
connection:
path: /tmp/automax.sqlite
query: SELECT 1 AS value
output: rows
device
device.udev.device.facts
Read udev properties for a device path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.device.facts
with:
device: /dev/sdb
device.udev.device.test
Run udevadm test for a device sysfs path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.device.test
with:
device: /dev/sdb
device.udev.reload
Reload udev rules.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.reload
with:
sudo: true
device.udev.rule.check
Check whether a udev rules file exists and optionally matches rendered content.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
content |
no | string |
Text content to write. | |
rules |
no | list |
Structured rule entries. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.rule.check
with:
path: /tmp/automax-demo
device.udev.rule.remove
Remove a udev rules file with optional backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.rule.remove
with:
path: /tmp/automax-demo
device.udev.rule.set
Install a udev rules file from content or structured rule entries.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
content |
no | string |
Text content to write. | |
rules |
no | list |
Structured rule entries. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.rule.set
with:
path: /tmp/automax-demo
device.udev.rule.validate
Validate udev rules file syntax with udevadm test where possible.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
file |
yes | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.rule.validate
with:
file: /etc/sysctl.d/99-automax.conf
device.udev.settle
Wait for the udev event queue to settle.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.settle
with:
timeout: 60
device.udev.trigger
Trigger udev events and optionally wait for settle.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
subsystem |
no | string |
udev subsystem filter. | |
action |
no | string |
udev action to trigger. | |
udev_settle |
no | boolean |
True |
Wait for udev events to settle after the operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: device.udev.trigger
with:
subsystem: block
action: change
fs
fs.acl.check
Check whether POSIX ACL entries are present or absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
acl |
yes | string |
POSIX ACL entry accepted by setfacl. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.acl.check
with:
path: /tmp/automax-demo
acl: value
fs.acl.get
Read POSIX ACL entries with getfacl.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.acl.get
with:
path: /tmp/automax-demo
fs.acl.restore
Restore POSIX ACL entries from a getfacl backup file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
file |
yes | path |
Remote configuration file path. | |
test_only |
no | boolean |
False |
Validate without applying when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.acl.restore
with:
file: /etc/sysctl.d/99-automax.conf
fs.acl.set
Ensure or remove POSIX ACL entries with getfacl backup support.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
acl |
yes | string |
POSIX ACL entry accepted by setfacl. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
recursive |
no | boolean |
False |
Recurse into directories. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_path |
no | path |
Explicit backup path for pre-change file content. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.acl.set
with:
path: /tmp/automax-demo
acl: value
fs.attr.check
Check whether Linux filesystem attributes are present or absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
attrs |
yes | string |
Linux filesystem attribute flags accepted by chattr. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.attr.check
with:
path: /tmp/automax-demo
attrs: value
fs.attr.get
Read Linux filesystem attributes with lsattr.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.attr.get
with:
path: /tmp/automax-demo
fs.attr.set
Set or clear Linux filesystem attributes with chattr.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
attrs |
yes | string |
Linux filesystem attribute flags accepted by chattr. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.attr.set
with:
path: /tmp/automax-demo
attrs: value
fs.dir.check
Check whether a real directory exists, failing if another path type exists there.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Boolean directory existence result.data.path: Checked remote path.data.type: Expected filesystem type.
Example:
use: fs.dir.check
with:
path: /tmp/automax-demo
fs.dir.create
Create a real directory, refusing files and symlinks at the destination.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.dir.create
with:
path: /tmp/automax-demo
fs.dir.remove
Remove a real directory, refusing files and symlinks. Non-empty directories require recursive=true.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.dir.remove
with:
path: /tmp/automax-demo
fs.dir.wait
Wait for a real directory to become present or absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
retries |
no | integer |
12 |
Maximum polling attempts before a wait operation fails. |
interval |
no | number |
2 |
Polling interval in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.state: Desired directory state.data.attempts: Polling attempts used.
Example:
use: fs.dir.wait
with:
path: /tmp/automax-demo
fs.file.check
Check whether a real regular file exists, failing if another path type exists there.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Boolean regular-file existence result.data.path: Checked remote path.data.type: Expected filesystem type.
Example:
use: fs.file.check
with:
path: /tmp/automax-demo
fs.file.create
Create a real regular file, refusing directories and symlinks at the destination.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.file.create
with:
path: /tmp/automax-demo
fs.file.line
Ensure an exact line is present or absent in a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
line |
yes | string |
Exact line to ensure in a remote file. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
create |
no | boolean |
False |
Create the remote file when ensuring a line is present. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. | |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
validate_command |
no | string |
Command used to validate generated file content. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.file.line
with:
path: /tmp/automax-demo
line: KEY=value
fs.file.line.check
Check whether an exact line is present or absent in a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
line |
yes | string |
Exact line to ensure in a remote file. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Whether the remote file exists.data.line_present: Whether the exact line is present.data.matches: Whether line presence matches the requested state.
Example:
use: fs.file.line.check
with:
path: /tmp/automax-demo
line: KEY=value
fs.file.read
Read a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Remote file content.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.path: Read remote path.
Example:
use: fs.file.read
with:
path: /tmp/automax-demo
fs.file.remove
Remove a real regular file, refusing directories and symlinks.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.file.remove
with:
path: /tmp/automax-demo
fs.file.replace
Replace text in a remote file using a regex pattern.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
pattern |
yes | string |
Regex, process pattern or search pattern. | |
replacement |
yes | string |
Regex replacement text. | |
count |
no | integer |
0 |
Maximum regex replacements; 0 means replace all matches. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
backup_path |
no | path |
Explicit backup path for pre-change file content. | |
validate_command |
no | string |
Command used to validate generated file content. | |
required_match_count |
no | integer |
Expected number of regex matches. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.file.replace
with:
path: /tmp/automax-demo
pattern: KEY=.*
replacement: KEY=new-value
fs.file.template
Render a local Jinja2 template to a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Local Jinja2 template path on the controller. | |
dest |
yes | path |
Remote destination file path. | |
mode |
no | string |
Optional remote file mode, for example 0644. | |
owner |
no | string |
Optional remote file owner. | |
group |
no | string |
Optional remote file group. | |
sudo |
no | boolean |
False |
Install the rendered file with sudo. |
encoding |
no | string |
utf-8 |
Template and upload encoding. |
values |
no | mapping |
Additional values exposed to the template as values.*. | |
cwd |
no | path |
Remote or local working directory for this operation. | |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
validate_command |
no | string |
Command used to validate generated file content. | |
sensitive |
no | boolean |
False |
Mask sensitive content in previews or logs. |
atomic |
no | boolean |
True |
Install generated file content via a temporary path and final rename where possible. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.src: Rendered template path.data.dest: Remote destination path
Example:
use: fs.file.template
with:
src: ./templates/app.conf.j2
dest: /etc/myapp/app.conf
mode: '0644'
sudo: true
fs.file.wait
Wait for a real regular file to become present or absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
retries |
no | integer |
12 |
Maximum polling attempts before a wait operation fails. |
interval |
no | number |
2 |
Polling interval in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.state: Desired regular-file state.data.attempts: Polling attempts used.
Example:
use: fs.file.wait
with:
path: /tmp/automax-demo
fs.file.write
Write text content to a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
content |
yes | string |
Text content to write. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
cwd |
no | path |
Remote or local working directory for this operation. | |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
validate_command |
no | string |
Command used to validate generated file content. | |
sensitive |
no | boolean |
False |
Mask sensitive content in previews or logs. |
atomic |
no | boolean |
True |
Install generated file content via a temporary path and final rename where possible. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.file.write
with:
path: /tmp/automax-demo
content: managed by automax
fs.path.copy
Copy a remote file or directory to another remote path.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
recursive |
no | boolean |
False |
Recurse into directories. |
preserve |
no | boolean |
False |
Preserve mode, ownership and timestamps when copying. |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
creates |
no | path |
Remote path that makes the operation idempotent when already present. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.path.copy
with:
src: /tmp/source
dest: /tmp/dest
fs.path.find
Find remote paths.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
patterns |
no | list |
Find-name patterns to match. | |
type |
no | string |
Path type filter: path, file, directory, dir, symlink or any. | |
max_depth |
no | integer |
Maximum remote find traversal depth. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.path.find
with:
path: /tmp/automax-demo
fs.path.move
Move or rename a remote path.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.path.move
with:
src: /tmp/source
dest: /tmp/dest
fs.path.stat
Read remote path metadata.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
missing_ok |
no | boolean |
False |
Return success with exists=false when the path is missing. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Boolean path existence result.data.size: Path size in bytes.data.mode: POSIX mode.data.owner: Owner name.data.group: Group name.
Example:
use: fs.path.stat
with:
path: /tmp/automax-demo
fs.permission.mode.check
Check remote file or directory mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
mode |
yes | string |
POSIX file mode, for example 0644 or 0755. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Whether the remote path exists.data.current_mode: Current POSIX mode when present.data.matches: Whether the current mode matches the requested mode.
Example:
use: fs.permission.mode.check
with:
path: /tmp/automax-demo
mode: 0644
fs.permission.mode.get
Read remote file or directory mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.mode: Current POSIX mode.
Example:
use: fs.permission.mode.get
with:
path: /tmp/automax-demo
fs.permission.mode.set
Set remote file or directory mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
mode |
yes | string |
POSIX file mode, for example 0644 or 0755. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.permission.mode.set
with:
path: /tmp/automax-demo
mode: 0644
fs.permission.owner.check
Check remote file or directory owner/group.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Whether the remote path exists.data.current_owner: Current owner name when present.data.current_group: Current group name when present.data.matches: Whether current owner/group matches requested values.
Example:
use: fs.permission.owner.check
with:
path: /tmp/automax-demo
fs.permission.owner.get
Read remote file or directory owner and group.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.owner: Current owner name.data.group: Current group name.
Example:
use: fs.permission.owner.get
with:
path: /tmp/automax-demo
fs.permission.owner.set
Set remote file or directory owner/group.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.permission.owner.set
with:
path: /tmp/automax-demo
fs.symlink.check
Check whether a symlink exists and optionally whether it points to a target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
target |
no | string |
Quota target user or group. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Boolean symlink existence result.data.is_symlink: Whether the path is a symlink.data.target: Literal symlink target when present.data.resolved_target: Resolved target path used for target existence checks.data.target_exists: Whether the resolved target currently exists.data.broken: Whether the symlink target is currently missing.data.matches: Whether the literal symlink target matches the requested target when provided.
Example:
use: fs.symlink.check
with:
path: /tmp/automax-demo
fs.symlink.create
Create or update a remote symbolic link.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
force |
no | boolean |
False |
Force the operation when supported. |
allow_replace_non_symlink |
no | boolean |
False |
Allow force replacement when the destination exists and is not a symlink. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.symlink.create
with:
src: /tmp/source
dest: /tmp/dest
fs.symlink.get
Read symlink target, resolved target and broken-link state.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Boolean path existence result.data.is_symlink: Whether the path is a symlink.data.target: Literal symlink target when present.data.resolved_target: Resolved target path used for target existence checks.data.target_exists: Whether the resolved target currently exists.data.broken: Whether the symlink target is currently missing.
Example:
use: fs.symlink.get
with:
path: /tmp/automax-demo
fs.symlink.remove
Remove a remote symbolic link safely.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: fs.symlink.remove
with:
path: /tmp/automax-demo
fs.symlink.wait
Wait for a symbolic link to become present or absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
retries |
no | integer |
12 |
Maximum polling attempts before a wait operation fails. |
interval |
no | number |
2 |
Polling interval in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
cwd |
no | path |
Remote or local working directory for this operation. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.state: Desired symlink state.data.attempts: Polling attempts used.
Example:
use: fs.symlink.wait
with:
path: /tmp/automax-demo
helm
helm.dependency.build
Build Helm chart dependencies from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chart |
yes | path |
Helm chart path or reference. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.dependency.build
with:
chart: value
helm.lint
Lint a Helm chart from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chart |
yes | path |
Helm chart path or reference. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
values_files |
no | list |
Helm values files. | |
set |
no | list |
Helm --set values. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.lint
with:
chart: value
helm.repo.add
Add a Helm repository from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
url |
yes | string |
HTTP URL. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
username |
no | string |
SMTP username; prefer values rendered from secrets. | |
password |
no | string |
Plaintext password; prefer password_hash when possible. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.repo.add
with:
name: nginx
url: https://example.invalid/health
helm.repo.update
Update Helm repository metadata from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.repo.update
helm.rollback
Rollback a Helm release from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
release |
yes | string |
Helm release name. | |
revision |
yes | string |
Helm release revision. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
wait |
no | boolean |
False |
Wait for the operation to become reachable again when supported. |
helm_timeout |
no | string |
Helm operation timeout such as 5m or 300s. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.rollback
with:
release: value
revision: value
helm.status
Read Helm release status from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
release |
yes | string |
Helm release name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.status
with:
release: value
helm.template
Render Helm templates from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
release |
yes | string |
Helm release name. | |
chart |
yes | path |
Helm chart path or reference. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
values_files |
no | list |
Helm values files. | |
set |
no | list |
Helm --set values. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.template
with:
release: value
chart: value
helm.uninstall
Uninstall a Helm release from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
release |
yes | string |
Helm release name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
wait |
no | boolean |
False |
Wait for the operation to become reachable again when supported. |
helm_timeout |
no | string |
Helm operation timeout such as 5m or 300s. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.uninstall
with:
release: value
helm.upgrade
Install or upgrade a Helm release from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
release |
yes | string |
Helm release name. | |
chart |
yes | path |
Helm chart path or reference. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
kube_context |
no | string |
Helm Kubernetes context name. | |
timeout |
no | number |
Operation timeout in seconds. | |
values_files |
no | list |
Helm values files. | |
set |
no | list |
Helm --set values. | |
install |
no | boolean |
False |
Install the Helm release when it does not exist. |
atomic |
no | boolean |
True |
Install generated file content via a temporary path and final rename where possible. |
wait |
no | boolean |
False |
Wait for the operation to become reachable again when supported. |
helm_timeout |
no | string |
Helm operation timeout such as 5m or 300s. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: helm.upgrade
with:
release: value
chart: value
identity
identity.group.check
Check whether a remote group exists.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Whether the remote group exists.data.name: Checked group name.
Example:
use: identity.group.check
with:
name: nginx
identity.group.create
Create a remote group.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
gid |
no | integer |
Numeric group id. | |
system |
no | boolean |
False |
Create a system user or group. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.create
with:
name: nginx
identity.group.member.add
Add a user to a group if membership is missing.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
group |
yes | string |
Group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.member.add
with:
user: deploy
group: app
identity.group.member.check
Check whether a user is a member of a group.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
group |
yes | string |
Group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.member.check
with:
user: deploy
group: app
identity.group.member.list
List members of a group.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
group |
yes | string |
Group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.member.list
with:
group: app
identity.group.member.remove
Remove a user from a group after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
group |
yes | string |
Group name. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.member.remove
with:
user: deploy
group: app
identity.group.remove
Remove a remote group.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.group.remove
with:
name: nginx
identity.user.check
Check whether a remote user exists.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.exists: Whether the remote user exists.data.name: Checked username.
Example:
use: identity.user.check
with:
name: nginx
identity.user.create
Create a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
uid |
no | integer |
Numeric user id. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
groups |
no | list |
Supplementary group names. | |
system |
no | boolean |
False |
Create a system user or group. |
shell |
no | boolean |
Run a local command through the platform shell. | |
home |
no | path |
User home directory. | |
create_home |
no | boolean |
Create the user's home directory when supported by useradd. | |
comment |
no | string |
User account comment or GECOS field. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.create
with:
name: nginx
identity.user.facts
Read passwd, shadow lock and group facts for a user.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.facts
with:
user: deploy
identity.user.groups.check
Assert required group membership for a user.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
groups |
yes | list |
Supplementary group names. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.groups.check
with:
user: deploy
groups:
- app
identity.user.home.check
Check a user's home directory path, owner or mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.home.check
with:
user: deploy
identity.user.lock
Lock a remote user account.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.lock
with:
name: nginx
identity.user.modify
Modify a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
uid |
no | integer |
Numeric user id. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
groups |
no | list |
Supplementary group names. | |
append |
no | boolean |
False |
Append supplementary groups instead of replacing the user group list. |
shell |
no | boolean |
Run a local command through the platform shell. | |
home |
no | path |
User home directory. | |
comment |
no | string |
User account comment or GECOS field. | |
lock |
no | boolean |
False |
Lock the remote user account. |
unlock |
no | boolean |
False |
Unlock the remote user account. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.modify
with:
name: nginx
identity.user.password.expire
Expire a remote user's password so it must be changed at next login.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.password.expire
with:
name: nginx
identity.user.password.set
Set a remote user's password using a password hash or plaintext value.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
password_hash |
no | string |
crypt(3) password hash passed to usermod --password. | |
password |
no | string |
Plaintext password; prefer password_hash when possible. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.password.set
with:
name: nginx
identity.user.remove
Remove a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
remove_home |
no | boolean |
False |
Remove the user's home directory when deleting an account. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.remove
with:
name: nginx
identity.user.shell.check
Assert a user's login shell.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
shell |
yes | string |
Expected login shell. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.shell.check
with:
user: deploy
shell: /bin/bash
identity.user.unlock
Unlock a remote user account.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: identity.user.unlock
with:
name: nginx
kubernetes
kubernetes.apply
Apply Kubernetes manifests from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manifest |
yes | path |
Kubernetes manifest file or directory. | |
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. | |
server_side |
no | boolean |
False |
Use Kubernetes server-side apply. |
dry_run |
no | boolean |
False |
Render or run without applying changes when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.apply
with:
manifest: value
kubernetes.context.check
Check the active Kubernetes context from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.context.check
kubernetes.delete
Delete Kubernetes resources from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manifest |
yes | path |
Kubernetes manifest file or directory. | |
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.delete
with:
manifest: value
kubernetes.logs
Read Kubernetes logs from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
resource |
yes | string |
Kubernetes resource reference such as deployment/app. | |
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. | |
container |
no | string |
Container name or id. | |
since |
no | string |
Start time for journalctl queries. | |
tail |
no | string |
Number of log lines to display. | |
follow |
no | boolean |
False |
Follow log output. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.logs
with:
resource: value
kubernetes.namespace.exists
Check whether a Kubernetes namespace exists from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
namespace |
yes | string |
Kubernetes namespace or Helm namespace. | |
context |
no | string |
Kubernetes context name. | |
namespace |
yes | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.namespace.exists
with:
namespace: value
kubernetes.resource.get
Read Kubernetes resource state from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
resource |
yes | string |
Kubernetes resource reference such as deployment/app. | |
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. | |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.resource.get
with:
resource: value
kubernetes.rollout.status
Wait for Kubernetes rollout status from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
resource |
yes | string |
Kubernetes resource reference such as deployment/app. | |
context |
no | string |
Kubernetes context name. | |
namespace |
no | string |
Kubernetes namespace or Helm namespace. | |
kubeconfig |
no | path |
Kubernetes kubeconfig path. | |
timeout |
no | number |
Operation timeout in seconds. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: kubernetes.rollout.status
with:
resource: value
network
network.connectivity.port.check
Check TCP or UDP connectivity from the remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
host |
yes | string |
Hostname or IP address to check from the controller. | |
port |
yes | integer |
TCP port number. | |
protocol |
no | string |
tcp |
Network protocol such as tcp or udp. |
timeout |
no | number |
Operation timeout in seconds. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.host: Checked host.data.port: Checked TCP/UDP port.data.reachable: Whether the remote target can reach the port.
Example:
use: network.connectivity.port.check
with:
host: 127.0.0.1
port: 22
network.connectivity.port.wait
Wait for TCP or UDP connectivity from the remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
host |
yes | string |
Hostname or IP address to check from the controller. | |
port |
yes | integer |
TCP port number. | |
protocol |
no | string |
tcp |
Network protocol such as tcp or udp. |
timeout |
no | number |
Operation timeout in seconds. | |
interval |
no | number |
2 |
Polling interval in seconds. |
retries |
no | integer |
12 |
Maximum polling attempts before a wait operation fails. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.host: Checked host.data.port: Checked TCP port.
Example:
use: network.connectivity.port.wait
with:
host: 127.0.0.1
port: 22
network.dns.check
Assert resolver nameserver, search and option entries from /etc/resolv.conf.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
nameservers |
no | list |
Resolver nameserver addresses. | |
search |
no | list |
Resolver search domains. | |
options |
no | list |
Resolver options. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.dns.check
with:
nameservers:
- 192.0.2.53
search:
- example.com
network.dns.config
Configure DNS resolver settings using the backend-aware resolver implementation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
nameservers |
no | list |
Resolver nameserver addresses. | |
search |
no | list |
Resolver search domains. | |
options |
no | list |
Resolver options. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
nm_connection |
no | string |
NetworkManager connection profile used for persistent DNS changes. | |
force |
no | boolean |
False |
Force the operation when supported. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.dns.config
with:
backend: auto
nameservers:
- 192.0.2.53
network.dns.facts
Detect the active DNS resolver backend without changing resolver configuration.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.dns.facts
with:
sudo: true
network.firewall.firewalld.forward_port
Manage firewalld forward-port rules.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
port |
yes | integer |
TCP port number. | |
to_port |
yes | integer |
Forward destination port. | |
protocol |
no | string |
tcp |
Network protocol such as tcp or udp. |
to_addr |
no | string |
Forward destination address. | |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.forward_port
with:
port: 22
to_port: value
network.firewall.firewalld.icmp_block
Manage a firewalld ICMP block.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
icmp_type |
yes | string |
firewalld ICMP type name. | |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.icmp_block
with:
icmp_type: value
network.firewall.firewalld.list
List firewalld rules for one zone or all zones.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
zone |
no | string |
firewalld zone name. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.list
with:
zone: public
permanent: true
network.firewall.firewalld.masquerade
Manage firewalld masquerading for a zone.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.masquerade
with:
zone: public
state: present
network.firewall.firewalld.port
Manage a firewalld port rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
port |
yes | integer |
TCP port number. | |
protocol |
no | string |
tcp |
Network protocol such as tcp or udp. |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
runtime |
no | boolean |
True |
Apply the change to the running system. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
reload_mode |
no | string |
none |
Firewall reload behavior: none, reload or complete-reload. |
query_only |
no | boolean |
False |
Query rule state without changing it. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.port
with:
port: 443
protocol: tcp
zone: public
state: present
permanent: true
reload: true
sudo: true
network.firewall.firewalld.reload
Reload firewalld configuration.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.reload
with:
sudo: true
network.firewall.firewalld.rich_rule
Manage a firewalld rich rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
rich_rule |
yes | string |
firewalld rich rule expression. | |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
runtime |
no | boolean |
True |
Apply the change to the running system. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
reload_mode |
no | string |
none |
Firewall reload behavior: none, reload or complete-reload. |
query_only |
no | boolean |
False |
Query rule state without changing it. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.rich_rule
with:
rich_rule: rule family=ipv4 source address=10.0.0.0/8 service name=ssh accept
network.firewall.firewalld.service
Manage a firewalld service rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
runtime |
no | boolean |
True |
Apply the change to the running system. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
reload_mode |
no | string |
none |
Firewall reload behavior: none, reload or complete-reload. |
query_only |
no | boolean |
False |
Query rule state without changing it. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.service
with:
service: sshd
network.firewall.firewalld.source
Manage a firewalld source in a zone.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
source |
yes | string |
firewalld source address, network or ipset. | |
zone |
no | string |
firewalld zone name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.source
with:
source: 10.0.0.0/8
zone: public
sudo: true
network.firewall.firewalld.status
Read firewalld daemon state, default zone and active zones.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.status
with:
sudo: true
network.firewall.firewalld.zone
Read one firewalld zone configuration.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
zone |
yes | string |
firewalld zone name. | |
permanent |
no | boolean |
True |
Persist firewalld changes permanently. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.firewalld.zone
with:
zone: public
network.firewall.iptables.chain
Read one iptables or ip6tables chain.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
table |
no | string |
Routing table name or number. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
numeric |
no | boolean |
True |
Use numeric address and service output when supported. |
verbose |
no | boolean |
False |
Include verbose firewall listing output when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.chain
with:
chain: value
network.firewall.iptables.counter.check
Assert iptables chain packet counters are above a threshold.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
table |
no | string |
Routing table name or number. | |
min_packets |
no | integer |
1 |
Minimum firewall counter packet threshold. |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.counter.check
with:
chain: value
network.firewall.iptables.delete
Delete an iptables rule after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
rule |
yes | string |
Firewall action such as allow, deny, reject or limit. | |
table |
no | string |
Routing table name or number. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.delete
with:
chain: value
rule: allow
network.firewall.iptables.list
List iptables or ip6tables rules for a table or chain.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
table |
no | string |
Routing table name or number. | |
chain |
no | string |
Firewall chain name. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
numeric |
no | boolean |
True |
Use numeric address and service output when supported. |
verbose |
no | boolean |
False |
Include verbose firewall listing output when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.list
with:
table: main
network.firewall.iptables.policy
Read or set an iptables built-in chain default policy.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
table |
no | string |
Routing table name or number. | |
policy |
no | string |
Default firewall policy such as ACCEPT or DROP. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.policy
with:
chain: value
network.firewall.iptables.restore
Restore iptables or ip6tables rules from a ruleset file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
test_only |
no | boolean |
False |
Validate without applying when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.restore
with:
src: /tmp/source
network.firewall.iptables.rule
Ensure an iptables rule is present or absent in a table and chain.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
rule |
yes | string |
Firewall action such as allow, deny, reject or limit. | |
table |
no | string |
Routing table name or number. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
position |
no | integer |
Insertion position for ordered firewall rule backends. | |
comment |
no | string |
User account comment or GECOS field. | |
wait |
no | integer |
iptables -w lock wait timeout in seconds. | |
save_after |
no | boolean |
False |
Persist runtime firewall state after changing a rule. |
dest |
no | path |
Destination path. | |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.rule
with:
chain: value
rule: allow
network.firewall.iptables.rule.check
Assert an iptables rule exists.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
chain |
yes | string |
Firewall chain name. | |
rule |
yes | string |
Firewall action such as allow, deny, reject or limit. | |
table |
no | string |
Routing table name or number. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.rule.check
with:
chain: value
rule: allow
network.firewall.iptables.save
Save current iptables or ip6tables rules to a persistent file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
dest |
yes | path |
Destination path. | |
ipv6 |
no | boolean |
False |
Use IPv6 command variant when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.iptables.save
with:
dest: /tmp/dest
network.firewall.nftables.apply
Validate and apply nftables rules from inline content or a controller file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
content |
no | string |
Text content to write. | |
src |
no | path |
Source path. | |
backup_before |
no | boolean |
False |
Capture or copy the current state before applying a potentially destructive change. |
persistent_file |
no | path |
Persistent firewall configuration file to install after validation. | |
reload_service |
no | string |
Service name to reload after installing persistent firewall configuration. | |
check_only |
no | boolean |
False |
Validate the requested change without applying it. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.apply
with:
src: ./firewall/prod.nft
sudo: true
network.firewall.nftables.export
Export the active nftables ruleset to stdout or a remote file.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
family |
no | string |
inet |
nftables address family such as ip, ip6, inet, arp, bridge or netdev. |
table |
no | string |
Routing table name or number. | |
handle |
no | boolean |
False |
Include nftables rule handles when listing rules. |
dest |
no | path |
Destination path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.export
with:
family: inet
table: main
network.firewall.nftables.list
List the active nftables ruleset or one table.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
family |
no | string |
inet |
nftables address family such as ip, ip6, inet, arp, bridge or netdev. |
table |
no | string |
Routing table name or number. | |
handle |
no | boolean |
False |
Include nftables rule handles when listing rules. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.list
with:
family: inet
table: main
network.firewall.nftables.rollback_file
Apply an nftables rollback ruleset file after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
file |
yes | path |
Remote configuration file path. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.rollback_file
with:
file: /etc/sysctl.d/99-automax.conf
network.firewall.nftables.ruleset.check
Assert the active nftables ruleset contains a fragment.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
fragment |
yes | string |
Expected configuration or ruleset fragment. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.ruleset.check
with:
fragment: value
network.firewall.nftables.validate
Validate nftables rules from inline content or a controller file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
content |
no | string |
Text content to write. | |
src |
no | path |
Source path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.nftables.validate
with:
content: managed by automax
src: /tmp/source
network.firewall.ufw.delete
Delete a UFW rule after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
rule |
yes | string |
Firewall action such as allow, deny, reject or limit. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.ufw.delete
with:
rule: allow
network.firewall.ufw.disable
Disable UFW when active.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.ufw.disable
with:
sudo: true
network.firewall.ufw.enable
Enable UFW when inactive.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.ufw.enable
with:
sudo: true
network.firewall.ufw.reset
Reset UFW after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.ufw.reset
with:
sudo: true
network.firewall.ufw.rule
Manage a UFW allow/deny/reject rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
rule |
yes | string |
Firewall action such as allow, deny, reject or limit. | |
port |
no | integer |
TCP port number. | |
protocol |
no | string |
tcp |
Network protocol such as tcp or udp. |
from |
no | string |
Source address for firewall rules. | |
to |
no | string |
Destination address for firewall rules. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
comment |
no | string |
User account comment or GECOS field. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.firewall.ufw.rule
with:
rule: allow
port: 22
protocol: tcp
from: 10.0.0.0/8
sudo: true
network.firewall.ufw.status
Read UFW status.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.status: Raw UFW status output.
Example:
use: network.firewall.ufw.status
with:
sudo: true
network.http.check
Check HTTP status and optional body content.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
url |
yes | string |
HTTP URL. | |
method |
no | string |
GET |
HTTP request method. |
headers |
no | mapping |
HTTP request headers. | |
body |
no | string |
Raw HTTP request body. | |
json |
no | mapping |
JSON HTTP request body. | |
timeout |
no | number |
Operation timeout in seconds. | |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
validate_tls |
no | boolean |
True |
Validate TLS certificates for HTTPS requests. |
expected_status |
no | integer |
200 |
Expected HTTP status code. |
status |
no | integer |
Expected HTTP status code alias. | |
contains |
no | string |
Required substring in stdout or HTTP response body. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.status: HTTP response status code.data.body: Decoded response body.data.matches: Whether the HTTP response matched the expected status and body predicate.
Example:
use: network.http.check
with:
url: https://example.invalid/health
network.http.request
Perform an HTTP request from the controller.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
url |
yes | string |
HTTP URL. | |
method |
no | string |
GET |
HTTP request method. |
headers |
no | mapping |
HTTP request headers. | |
body |
no | string |
Raw HTTP request body. | |
json |
no | mapping |
JSON HTTP request body. | |
timeout |
no | number |
Operation timeout in seconds. | |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
validate_tls |
no | boolean |
True |
Validate TLS certificates for HTTPS requests. |
expected_status |
no | integer |
200 |
Expected HTTP status code. |
status |
no | integer |
Expected HTTP status code alias. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.status: HTTP response status code.data.body: Decoded response body.data.headers: Response headers.
Example:
use: network.http.request
with:
url: https://example.invalid/health
network.http.wait
Wait until an HTTP endpoint matches expected status and optional body content.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
url |
yes | string |
HTTP URL. | |
method |
no | string |
GET |
HTTP request method. |
headers |
no | mapping |
HTTP request headers. | |
body |
no | string |
Raw HTTP request body. | |
json |
no | mapping |
JSON HTTP request body. | |
timeout |
no | number |
Operation timeout in seconds. | |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
validate_tls |
no | boolean |
True |
Validate TLS certificates for HTTPS requests. |
expected_status |
no | integer |
200 |
Expected HTTP status code. |
status |
no | integer |
Expected HTTP status code alias. | |
contains |
no | string |
Required substring in stdout or HTTP response body. | |
interval |
no | number |
2 |
Polling interval in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.status: HTTP response status code.data.body: Decoded response body.
Example:
use: network.http.wait
with:
url: https://example.invalid/health
network.link.bond
Create or update a runtime and optional persistent Linux bonding interface.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
interfaces |
yes | list |
Network interfaces to include in a bond or aggregate. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
miimon |
no | integer |
100 |
Bond link monitoring interval in milliseconds. |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.link.bond
with:
name: nginx
interfaces:
- eth1
- eth2
network.link.bridge
Create or remove a runtime Linux bridge and enslave interfaces.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
interfaces |
no | list |
Network interfaces to include in a bond or aggregate. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
stp |
no | boolean |
False |
Enable STP on a Linux bridge when supported. |
mtu |
no | integer |
Network interface MTU. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.link.bridge
with:
name: nginx
network.link.check
Check that a network link exists and optionally has expected state or MTU.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
mtu |
no | integer |
Network interface MTU. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.link.check
with:
name: nginx
network.link.facts
Gather network link facts from iproute2 JSON output.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.links: Network link facts from iproute2 JSON output.
Example:
use: network.link.facts
with:
name: nginx
sudo: true
network.link.interface
Apply runtime and optional persistent interface state/address configuration.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
address |
no | string |
IP address to configure. | |
prefix |
no | integer |
CIDR prefix length. | |
gateway |
no | string |
Route gateway address. | |
mtu |
no | integer |
Network interface MTU. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.link.interface
with:
name: nginx
network.link.vlan
Create or update a runtime and optional persistent VLAN interface.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
parent |
yes | string |
Parent network interface. | |
vlan_id |
yes | integer |
VLAN identifier. | |
address |
no | string |
IP address to configure. | |
prefix |
no | integer |
CIDR prefix length. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.link.vlan
with:
name: nginx
parent: eth0
vlan_id: 100
network.route.add
Ensure a runtime and optional persistent IP route is present.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
dest |
yes | path |
Destination path. | |
gateway |
no | string |
Route gateway address. | |
dev |
no | string |
Network device name for a route. | |
table |
no | string |
Routing table name or number. | |
metric |
no | integer |
Route metric. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.route.add
with:
dest: /tmp/dest
network.route.check
Check that a route exists with optional gateway, device, table or metric.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
dest |
yes | path |
Destination path. | |
gateway |
no | string |
Route gateway address. | |
dev |
no | string |
Network device name for a route. | |
table |
no | string |
Routing table name or number. | |
metric |
no | integer |
Route metric. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.route.check
with:
dest: /tmp/dest
network.route.facts
Gather IP route facts from iproute2 JSON output.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
family |
no | string |
inet |
nftables address family such as ip, ip6, inet, arp, bridge or netdev. |
table |
no | string |
Routing table name or number. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.routes: Route facts from iproute2 JSON output.
Example:
use: network.route.facts
with:
family: inet
table: main
network.route.remove
Ensure a runtime and optional persistent IP route is absent.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
dest |
yes | path |
Destination path. | |
gateway |
no | string |
Route gateway address. | |
dev |
no | string |
Network device name for a route. | |
table |
no | string |
Routing table name or number. | |
metric |
no | integer |
Route metric. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backend |
no | string |
Operation backend such as auto, runtime, networkmanager, systemd-networkd, ifcfg, plain-file, systemd-resolved or resolvconf. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: network.route.remove
with:
dest: /tmp/dest
notify
notify.mail.send
Send an email from the Automax controller through SMTP.
- Remote session:
false - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
smtp_host |
yes | string |
SMTP server host used by the Automax controller. | |
from |
yes | string |
Source address for firewall rules. | |
to |
yes | string |
Email recipient or non-empty recipient list. | |
subject |
yes | string |
Email subject line. | |
smtp_port |
no | integer |
587 |
SMTP server port. |
starttls |
no | boolean |
True |
Use STARTTLS before SMTP authentication. |
ssl |
no | boolean |
False |
Use implicit TLS for SMTP. |
username |
no | string |
SMTP username; prefer values rendered from secrets. | |
password |
no | string |
Plaintext password; prefer password_hash when possible. | |
body |
no | string |
Raw HTTP request body. | |
cc |
no | list |
Email CC recipient or non-empty recipient list. | |
bcc |
no | list |
Email BCC recipient or non-empty recipient list. | |
reply_to |
no | string |
Email Reply-To address. | |
attachments |
no | list |
Attachment path or attachment path list. | |
timeout |
no | number |
Operation timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: notify.mail.send
with:
smtp_host: smtp.example.com
from: 10.0.0.0/8
to: any
subject: Automax notification
os
os.alternatives.check
Check whether one system alternative points to the expected path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.alternatives.check
with:
name: nginx
path: /tmp/automax-demo
os.alternatives.get
Read the current alternatives configuration for one alternative name.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.alternatives.get
with:
name: nginx
os.alternatives.list
List known system alternatives across update-alternatives or alternatives implementations.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.alternatives.list
with:
sudo: true
os.alternatives.set
Set a system alternative using update-alternatives or alternatives.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.alternatives.set
with:
name: nginx
path: /tmp/automax-demo
os.arch.check
Check whether the remote normalized architecture matches an allowed value.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
arch |
no | string |
b64 |
CPU architecture selector for audit rules. |
any_of |
no | list |
Allowed values for a check operation. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.arch.check
with:
any_of:
type: list
description: Allowed values for a check operation.
os.capability.check
Check remote tools, paths and optional shell checks required by a job preflight.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
tools |
no | list |
Executable names required by a capability preflight. | |
paths |
no | list |
Relative paths selected for manifest or inventory operations. | |
commands |
no | list |
Allowed sudo command list or ALL. | |
path |
no | path |
Remote or local path, depending on the plugin. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.capability.check
os.env.check
Check whether one environment variable has the expected value in the remote shell context.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
yes | string |
Desired parameter value. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.env.check
with:
name: nginx
value: 1
os.env.facts
Read the remote shell environment as key/value facts.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.env.facts
with:
sudo: true
os.env.get
Read one environment variable from the remote shell context.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.env.get
with:
name: nginx
os.env.remove
Remove a managed persistent shell environment file or unset step-scoped variables.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
names |
no | list |
Hostnames or aliases for a hosts entry. | |
scope |
no | string |
step |
Environment scope: step, user, global or file. |
path |
no | path |
Remote or local path, depending on the plugin. | |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.env.remove
with:
name: nginx
names:
- app1.example.com
- app1
os.env.set
Set step-scoped or persistent shell environment variables.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
variables |
yes | mapping |
Environment variables to set. | |
scope |
no | string |
step |
Environment scope: step, user, global or file. |
path |
no | path |
Remote or local path, depending on the plugin. | |
user |
no | string |
User account name for scope=user. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.env.set
with:
variables:
APP_HOME: /opt/app
os.facts
Gather remote operating-system, kernel, architecture and hostname facts.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.os: Operating system facts.
Example:
use: os.facts
with:
subset:
- os
- network
- services
os.hostname.check
Check whether the current static hostname matches.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hostname.check
with:
name: nginx
os.hostname.get
Read the current static hostname.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hostname.get
with:
sudo: true
os.hostname.set
Set the system hostname with hostnamectl.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hostname.set
with:
name: nginx
os.hosts.entry.add
Ensure or remove an /etc/hosts entry with automatic pre-change backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
ip |
yes | string |
IP address for a hosts entry. | |
names |
yes | list |
Hostnames or aliases for a hosts entry. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hosts.entry.add
with:
ip: 192.0.2.10
names:
- app1.example.com
- app1
os.hosts.entry.check
Check whether an exact /etc/hosts entry is present.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
ip |
yes | string |
IP address for a hosts entry. | |
names |
yes | list |
Hostnames or aliases for a hosts entry. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hosts.entry.check
with:
ip: 192.0.2.10
names:
- app1.example.com
- app1
os.hosts.entry.remove
Remove an exact /etc/hosts entry with automatic pre-change backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
ip |
yes | string |
IP address for a hosts entry. | |
names |
yes | list |
Hostnames or aliases for a hosts entry. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hosts.entry.remove
with:
ip: 192.0.2.10
names:
- app1.example.com
- app1
os.hosts.facts
Read /etc/hosts entries as structured facts.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.hosts.facts
with:
path: /tmp/automax-demo
sudo: true
os.limits.dropin
Install an /etc/security/limits.d drop-in from structured entries.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
entries |
yes | list |
Structured entries for limits or configuration files. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.limits.dropin
with:
name: nginx
entries:
- {'domain': 'appuser', 'type': 'soft', 'item': 'nofile', 'value': 1024}
os.login.defs.check
Check /etc/login.defs settings.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
settings |
yes | mapping |
SSH client or server settings. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.login.defs.check
with:
settings: value
os.login.defs.get
Read /etc/login.defs settings.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
key |
no | string |
SSH public key line. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.login.defs.get
with:
path: /tmp/automax-demo
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
os.login.defs.set
Manage /etc/login.defs settings with backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
settings |
yes | mapping |
SSH client or server settings. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.login.defs.set
with:
settings: value
os.package.check
Check package installation state and optionally version.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
version |
no | string |
Package version to pin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.check
with:
name: nginx
os.package.clean
Clean package-manager caches.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.clean
with:
manager: auto
sudo: true
os.package.facts
Gather remote package facts from dpkg or rpm.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.packages: Installed package facts.
Example:
use: os.package.facts
with:
manager: auto
sudo: true
os.package.files
List files installed by a package.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.files
with:
name: nginx
os.package.hold.add
Hold or lock package versions with the native package manager.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.hold.add
with:
name: nginx
packages:
- curl
os.package.hold.check
Check package hold state.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.hold.check
with:
name: nginx
os.package.hold.list
List packages currently held by the package manager.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.hold.list
with:
manager: auto
sudo: true
os.package.hold.remove
Remove package holds or version locks.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.hold.remove
with:
name: nginx
packages:
- curl
os.package.install
Install packages on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
version |
no | string |
Package version to pin. | |
enablerepo |
no | list |
Temporary repository to enable for package operation. | |
disablerepo |
no | list |
Temporary repository to disable for package operation. | |
no_recommends |
no | boolean |
False |
Disable recommended dependencies where supported. |
lock_after_install |
no | boolean |
False |
Lock package after installation. |
allow_downgrade |
no | boolean |
False |
Allow explicit package downgrades. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.install
with:
name: nginx
packages:
- curl
os.package.key.add
Install a package repository signing key for apt or rpm-based systems.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
url |
no | string |
HTTP URL. | |
content |
no | string |
Text content to write. | |
src |
no | path |
Source path. | |
dest |
no | path |
Destination path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.key.add
with:
name: vendor
manager: apt
url: https://repo.example/key.gpg
sudo: true
os.package.key.check
Check whether a package repository signing key file exists.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
dest |
no | path |
Destination path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.key.check
with:
name: nginx
os.package.key.list
List package repository signing key files.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.key.list
with:
manager: auto
sudo: true
os.package.key.remove
Remove an apt keyring file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
dest |
no | path |
Destination path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.key.remove
with:
name: nginx
os.package.owner
Report which package owns a file path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.owner
with:
path: /tmp/automax-demo
os.package.query
Query package installation state.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.query
with:
name: nginx
packages:
- curl
os.package.remove
Remove packages from a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
purge |
no | boolean |
False |
Remove package configuration where supported. |
autoremove |
no | boolean |
False |
Remove unused dependencies where supported. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
protect_packages |
no | list |
Packages that must not be removed. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.remove
with:
name: nginx
packages:
- curl
os.package.repo.add
Install an apt, yum or dnf repository definition.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
repo |
no | string |
Repository definition line or repo file content. | |
content |
no | string |
Text content to write. | |
src |
no | path |
Source path. | |
dest |
no | path |
Destination path. | |
update_cache |
no | boolean |
False |
Refresh package manager metadata after changing repositories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.add
with:
name: vendor
manager: apt
repo: deb [signed-by=/etc/apt/keyrings/vendor.gpg] https://repo.example stable main
update_cache: true
sudo: true
os.package.repo.check
Check whether a package repository definition file exists and optionally contains text.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
dest |
no | path |
Destination path. | |
contains |
no | string |
Required substring in stdout or HTTP response body. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.check
with:
name: nginx
os.package.repo.list
List package repository definition files.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.list
with:
manager: auto
sudo: true
os.package.repo.priority.check
Check whether a package repository priority drop-in exists with expected content.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
priority |
yes | integer |
Package repository or pin priority. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
file |
no | path |
Remote configuration file path. | |
content |
no | string |
Text content to write. | |
baseurl |
no | string |
Repository base URL for package manager repository files. | |
enabled |
no | boolean |
True |
Whether a repository or persistent resource is enabled. |
gpgcheck |
no | boolean |
True |
Whether repository GPG checking is enabled. |
gpgkey |
no | string |
Repository GPG key URL or path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.priority.check
with:
name: nginx
priority: 1001
os.package.repo.priority.set
Install package repository priority or pinning configuration for apt, dnf/yum or zypper.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
priority |
yes | integer |
Package repository or pin priority. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
file |
no | path |
Remote configuration file path. | |
content |
no | string |
Text content to write. | |
baseurl |
no | string |
Repository base URL for package manager repository files. | |
enabled |
no | boolean |
True |
Whether a repository or persistent resource is enabled. |
gpgcheck |
no | boolean |
True |
Whether repository GPG checking is enabled. |
gpgkey |
no | string |
Repository GPG key URL or path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.priority.set
with:
name: nginx
priority: 1001
os.package.repo.remove
Remove an apt, yum or dnf repository definition.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
dest |
no | path |
Destination path. | |
update_cache |
no | boolean |
False |
Refresh package manager metadata after changing repositories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.repo.remove
with:
name: nginx
os.package.update_cache
Refresh package manager metadata.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.update_cache
with:
name: nginx
packages:
- curl
os.package.upgrade
Upgrade remote packages.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
security_only |
no | boolean |
False |
Apply only security updates where supported. |
exclude |
no | list |
Package or archive excludes. | |
download_only |
no | boolean |
False |
Download packages without installing. |
reboot_required_check |
no | boolean |
False |
Check whether reboot is required after package operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.upgrade
with:
manager: auto
os.package.verify
Verify installed package file integrity when the package manager supports it.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
packages |
no | list |
Package names for package-manager operations. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.verify
with:
name: nginx
packages:
- curl
os.package.version.check
Check whether an installed package version matches the expected version.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
version |
yes | string |
Package version to pin. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.version.check
with:
name: nginx
version: 1.2.3*
os.package.version.pin
Pin a package version using the native package-manager mechanism.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
version |
yes | string |
Package version to pin. | |
manager |
no | string |
auto |
Package manager: auto, apt, dnf, yum, zypper or pacman. |
priority |
no | integer |
Package repository or pin priority. | |
file |
no | path |
Remote configuration file path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.package.version.pin
with:
name: nginx
version: 1.2.3*
os.platform.facts
Collect portable Linux backend facts for package, service, network, resolver and trust-store operations.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.platform.facts
with:
sudo: true
os.time.chrony.servers.check
Check whether configured chrony server lines exist in the managed chrony drop-in.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
servers |
yes | list |
NTP/chrony server names. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.chrony.servers.check
with:
servers:
- time.example.com
os.time.chrony.servers.get
Read configured chrony server lines from chrony configuration.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.chrony.servers.get
with:
path: /tmp/automax-demo
sudo: true
os.time.chrony.servers.set
Install a chrony server drop-in and optionally restart chronyd.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
servers |
yes | list |
NTP/chrony server names. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.chrony.servers.set
with:
servers:
- time.example.com
os.time.chrony.sources.check
Check whether chrony has usable sources and print tracking/source status.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.chrony.sources.check
with:
sudo: true
os.time.chrony.tracking.check
Assert chrony tracking health using chronyc tracking.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
max_offset |
no | number |
1.0 |
Maximum allowed NTP/chrony offset in seconds. |
max_stratum |
no | integer |
16 |
Maximum allowed NTP/chrony stratum. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.chrony.tracking.check
os.time.ntp.check
Assert whether timedatectl NTP synchronization is enabled.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
enabled |
yes | boolean |
True |
Whether a repository or persistent resource is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.ntp.check
with:
enabled: value
os.time.ntp.get
Read whether timedatectl NTP synchronization is enabled.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.ntp.get
with:
sudo: true
os.time.ntp.set
Enable or disable NTP through timedatectl.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
enabled |
yes | boolean |
True |
Whether a repository or persistent resource is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.ntp.set
with:
enabled: value
os.time.status
Read timedatectl time, timezone and NTP state.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.status
with:
sudo: true
os.time.timezone.check
Assert the current system timezone with timedatectl.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
timezone |
yes | string |
IANA timezone name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.timezone.check
with:
timezone: value
os.time.timezone.get
Read the current system timezone with timedatectl.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.timezone.get
with:
sudo: true
os.time.timezone.set
Set system timezone with timedatectl.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
timezone |
yes | string |
IANA timezone name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: os.time.timezone.set
with:
timezone: value
security
security.apparmor.complain
Put one AppArmor profile in complain mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.complain
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.apparmor.disable
Disable one AppArmor profile after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.disable
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.apparmor.enforce
Put one AppArmor profile in enforcing mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.enforce
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.apparmor.profile
Set an AppArmor profile to enforce or complain mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
state |
yes | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.profile
with:
profile: /etc/apparmor.d/usr.sbin.nginx
state: enforce
sudo: true
security.apparmor.profile.check
Assert that an AppArmor profile is loaded in the expected mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
state |
yes | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.profile.check
with:
profile: /etc/apparmor.d/usr.sbin.nginx
state: present
security.apparmor.reload
Reload one AppArmor profile file or the AppArmor service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
no | string |
AppArmor profile, authselect profile or profile file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.reload
with:
profile: /etc/apparmor.d/usr.sbin.nginx
sudo: true
security.apparmor.status
Read AppArmor status.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.status: Raw AppArmor status output.
Example:
use: security.apparmor.status
with:
sudo: true
security.apparmor.validate
Validate an AppArmor profile with apparmor_parser before applying it.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.apparmor.validate
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.audit.backlog.check
Assert auditd lost-event count and backlog are below thresholds.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
max_lost |
no | integer |
0 |
Maximum allowed audit lost-event count. |
max_backlog |
no | integer |
8192 |
Maximum allowed audit backlog. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.backlog.check
security.audit.reload
Reload auditd rules using augenrules or the auditd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.reload
with:
sudo: true
security.audit.rule
Install an auditd rules.d drop-in with backup and optional reload.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
rule |
no | string |
Firewall action such as allow, deny, reject or limit. | |
rules |
no | list |
Structured rule entries. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.rule
with:
name: nginx
security.audit.rules.facts
List active auditd rules and persistent rules.d files.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.rules.facts
with:
sudo: true
security.audit.search
Search audit events by key, user or time window.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
key |
no | string |
Audit event key. | |
user |
no | string |
Audit user name or numeric UID. | |
start |
no | string |
Audit search start time. | |
end |
no | string |
Audit search end time. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.search
with:
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
user: deploy
security.audit.status
Read auditd status without changing the system.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.status
with:
sudo: true
security.audit.syscall
Install an auditd syscall rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
syscalls |
yes | list |
Audit syscall names. | |
key |
yes | string |
SSH public key line. | |
arch |
no | string |
b64 |
CPU architecture selector for audit rules. |
action |
no | string |
udev action to trigger. | |
filters |
no | list |
Audit rule filters such as auid>=1000. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.syscall
with:
name: nginx
syscalls: value
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
security.audit.watch
Install an auditd filesystem watch rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
path |
yes | path |
Remote or local path, depending on the plugin. | |
permissions |
yes | string |
Audit permissions such as rwa or wa. | |
key |
yes | string |
SSH public key line. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.audit.watch
with:
name: nginx
path: /tmp/automax-demo
permissions: value
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
security.authselect.check
Check the current authselect profile and enabled features on RHEL-like systems.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
no | string |
AppArmor profile, authselect profile or profile file path. | |
features |
no | list |
Profile or backend feature flags. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.authselect.check
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.authselect.profile
Select an authselect profile with optional features and backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
profile |
yes | string |
AppArmor profile, authselect profile or profile file path. | |
features |
no | list |
Profile or backend feature flags. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.authselect.profile
with:
profile: /etc/apparmor.d/usr.sbin.nginx
security.pam.access
Manage access.conf entries and optional pam_access service wiring.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
entries |
yes | list |
Structured entries for limits or configuration files. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
services |
no | list |
PAM service names to inspect or modify. | |
service_files |
no | list |
Explicit PAM service file paths to inspect or modify. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.access
with:
entries:
- {'domain': 'appuser', 'type': 'soft', 'item': 'nofile', 'value': 1024}
security.pam.backup
Backup one PAM service file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
dest |
no | path |
Destination path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.backup
with:
service: sshd
security.pam.faillock
Manage faillock.conf settings and optional pam_faillock service wiring.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
settings |
yes | mapping |
SSH client or server settings. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
services |
no | list |
PAM service names to inspect or modify. | |
service_files |
no | list |
Explicit PAM service file paths to inspect or modify. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.faillock
with:
settings: value
security.pam.include.check
Assert a PAM service includes another stack.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
include |
yes | string |
PAM include/substack target name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.include.check
with:
service: sshd
include: value
security.pam.limits
Ensure pam_limits.so is enabled in one or more PAM service files.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
files |
no | list |
Target files to inspect or modify. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.limits
with:
files:
- /etc/pam.d/login
security.pam.module.check
Assert a PAM module line exists in a service.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
module |
yes | string |
Linux kernel module name. | |
type |
no | string |
Path type filter: path, file, directory, dir, symlink or any. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.module.check
with:
service: sshd
module: br_netfilter
security.pam.order.check
Assert one PAM line appears before another.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
before |
yes | string |
Marker that must appear before another line or rule. | |
after |
yes | string |
Marker that must appear after another line or rule. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.order.check
with:
service: sshd
before: value
after: value
security.pam.pwhistory
Manage pwhistory.conf settings and optional pam_pwhistory service wiring.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
settings |
yes | mapping |
SSH client or server settings. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
services |
no | list |
PAM service names to inspect or modify. | |
service_files |
no | list |
Explicit PAM service file paths to inspect or modify. | |
control |
no | string |
PAM control field such as required, requisite, sufficient or a bracketed control expression. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.pwhistory
with:
settings: value
security.pam.restore
Restore one PAM service file from backup after confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
src |
yes | path |
Source path. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.restore
with:
service: sshd
src: /tmp/source
security.pam.service_line
Ensure or remove one exact line in one PAM service file with backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
line |
yes | string |
Exact line to ensure in a remote file. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.service_line
with:
service: sshd
line: KEY=value
security.pam.stack.facts
Inventory PAM service files and include/substack relationships.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
services |
no | list |
PAM service names to inspect or modify. | |
service_files |
no | list |
Explicit PAM service file paths to inspect or modify. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.stack.facts
with:
service: sshd
services:
- sshd
security.pam.succeed_if
Ensure or remove one guarded pam_succeed_if condition in a PAM service file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
condition |
yes | string |
PAM condition expression, for example user ingroup wheel. | |
type |
no | string |
Path type filter: path, file, directory, dir, symlink or any. | |
control |
no | string |
PAM control field such as required, requisite, sufficient or a bracketed control expression. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.succeed_if
with:
service: sshd
condition: user ingroup wheel
security.pam.validate
Run read-only sanity checks against explicit PAM service files.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
services |
no | list |
PAM service names to inspect or modify. | |
service_files |
no | list |
Explicit PAM service file paths to inspect or modify. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pam.validate
with:
service: sshd
services:
- sshd
security.password.policy
Install a pwquality password policy drop-in.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
pwquality drop-in filename, with .conf appended when omitted. | |
settings |
yes | mapping |
pwquality.conf key/value settings such as minlen, dcredit, ucredit or retry. | |
path |
no | path |
Explicit pwquality drop-in path; defaults to /etc/security/pwquality.conf.d/ |
|
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.password.policy
with:
name: hardening
settings:
minlen: 14
dcredit: -1
ucredit: -1
retry: 3
sudo: true
security.pki.cert.chain.check
Verify a certificate chain against a CA bundle with openssl verify.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
ca_file |
yes | path |
CA bundle file path. | |
untrusted |
no | path |
Untrusted intermediate certificate chain file. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.chain.check
with:
cert: value
ca_file: value
security.pki.cert.expiry.check
Check whether a certificate remains valid for at least min_days.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
min_days |
no | integer |
30 |
Minimum remaining certificate validity in days. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.expiry.check
with:
path: /tmp/automax-demo
security.pki.cert.expiry_report
Report certificate expiry and optionally fail inside a warning window.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
warning_days |
no | integer |
30 |
Certificate expiry warning window in days. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.expiry_report
with:
cert: value
security.pki.cert.fingerprint
Read a certificate fingerprint with openssl.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
algorithm |
no | string |
sha256 |
Fingerprint or checksum algorithm name. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.fingerprint
with:
cert: value
security.pki.cert.install_keypair
Install a certificate and private key with safe permissions and optional validation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
key |
yes | string |
SSH public key line. | |
cert_dest |
yes | path |
Installed certificate destination path. | |
key_dest |
yes | path |
Installed private key destination path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
validate |
no | boolean |
True |
Validate generated or uploaded content before installing it. |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.install_keypair
with:
cert: value
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
cert_dest: value
key_dest: value
security.pki.cert.issuer.check
Check whether a certificate issuer contains an expected string.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
issuer |
yes | string |
Expected certificate issuer string. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.issuer.check
with:
cert: value
issuer: CN=Example CA
security.pki.cert.key_match.check
Check whether a certificate public key matches a private key.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
key |
yes | string |
SSH public key line. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.key_match.check
with:
cert: value
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
security.pki.cert.san.check
Check whether a certificate contains required Subject Alternative Names.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
names |
yes | list |
Hostnames or aliases for a hosts entry. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.san.check
with:
cert: value
names:
- app1.example.com
- app1
security.pki.cert.self_signed
Generate a self-signed certificate using an existing private key.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
key |
yes | string |
SSH public key line. | |
cert |
yes | path |
Certificate path. | |
subject |
yes | string |
Email subject line. | |
days |
no | integer |
365 |
Certificate validity in days. |
extensions |
no | string |
OpenSSL extension section name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.self_signed
with:
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
cert: value
subject: Automax notification
security.pki.cert.subject.check
Check whether a certificate subject contains an expected string.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
cert |
yes | path |
Certificate path. | |
subject |
yes | string |
Email subject line. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.cert.subject.check
with:
cert: value
subject: Automax notification
security.pki.csr.generate
Generate a CSR from an existing private key using openssl.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
key |
yes | string |
SSH public key line. | |
dest |
yes | path |
Destination path. | |
subject |
yes | string |
Email subject line. | |
config |
no | path |
OpenSSL configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.csr.generate
with:
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
dest: /tmp/dest
subject: Automax notification
security.pki.key.permissions
Enforce owner/group/mode on a private key or certificate file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.key.permissions
with:
path: /tmp/automax-demo
security.pki.trust.install_bundle
Install a CA bundle file with safe permissions and optional trust-store refresh.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
update_trust |
no | boolean |
True |
Refresh the system trust store after installing a CA certificate. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.trust.install_bundle
with:
src: /tmp/source
dest: /tmp/dest
security.pki.trust.install_ca
Install a CA certificate into an explicit path or a distro-native system trust store.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
dest |
no | path |
Destination path. | |
name |
no | string |
Package, user or group name. | |
trust_store |
no | string |
explicit |
Trust-store mode: explicit path or system auto path. |
src |
no | path |
Source path. | |
content |
no | string |
Text content to write. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
update_trust |
no | boolean |
True |
Refresh the system trust store after installing a CA certificate. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
encoding |
no | string |
utf-8 |
Text encoding used for command output, HTTP bodies or file content. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.pki.trust.install_ca
with:
dest: /tmp/dest
name: nginx
security.secret.redact.check
Check whether a payload contains no declared secret values after redaction policy is applied.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
text |
no | string |
Text payload for redaction scanning or assertion. | |
value |
no | string |
Desired parameter value. | |
source |
no | path |
Remote source path to archive. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.secret.redact.check
with:
text: password=secret
value: 1
security.secret.scan_output
Scan an arbitrary output payload and report whether redaction would change it.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
text |
no | string |
Text payload for redaction scanning or assertion. | |
value |
no | string |
Desired parameter value. | |
source |
no | path |
Remote source path to archive. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.secret.scan_output
with:
text: password=secret
value: 1
security.secret.scan_preview
Scan preview/manual-command text with the same redaction policy used by the engine.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
text |
no | string |
Text payload for redaction scanning or assertion. | |
value |
no | string |
Desired parameter value. | |
source |
no | path |
Remote source path to archive. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.secret.scan_preview
with:
text: password=secret
value: 1
security.selinux.boolean
Set an SELinux boolean.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
yes | string |
Desired SELinux boolean value. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.boolean
with:
name: httpd_can_network_connect
value: true
persist: true
sudo: true
security.selinux.context
Manage an SELinux fcontext rule.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
selinux_type |
yes | string |
SELinux file context type. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.context
with:
path: /tmp/automax-demo
selinux_type: httpd_sys_content_t
security.selinux.fcontext
Manage a persistent SELinux fcontext mapping with semanage fcontext.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
selinux_type |
yes | string |
SELinux file context type. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.fcontext
with:
path: /tmp/automax-demo
selinux_type: httpd_sys_content_t
security.selinux.mode
Set SELinux runtime and/or persistent mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
state |
yes | string |
Desired state such as present, absent, started or stopped. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.mode
with:
state: present
security.selinux.port
Manage a persistent SELinux port type mapping with semanage port.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
port |
yes | integer |
TCP port number. | |
protocol |
yes | string |
tcp |
Network protocol such as tcp or udp. |
selinux_type |
yes | string |
SELinux file context type. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.port
with:
port: 22
protocol: tcp
selinux_type: httpd_sys_content_t
security.selinux.restorecon
Run restorecon on a remote path.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
recursive |
no | boolean |
False |
Recurse into directories. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.selinux.restorecon
with:
path: /tmp/automax-demo
security.ssh.authorized_key.add
Ensure one SSH authorized key is present for a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
Remote user account owning authorized_keys. | |
key |
yes | string |
Authorized key line to manage. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
key_options |
no | string |
SSH authorized_keys options prefix. | |
exclusive |
no | boolean |
False |
Keep only managed entries where supported. |
comment_update |
no | string |
Authorized key comment to write. | |
fingerprint_assert |
no | string |
Expected fingerprint value. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.authorized_key.add
with:
user: deploy
key: '{{ vars.deploy_public_key }}'
sudo: true
security.ssh.authorized_key.check
Check whether one SSH authorized key is present for a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
Remote user account owning authorized_keys. | |
key |
yes | string |
Authorized key line to check. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
key_options |
no | string |
SSH authorized_keys options prefix. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.authorized_key.check
with:
user: deploy
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
security.ssh.authorized_key.remove
Remove one SSH authorized_keys line for a remote user.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
Remote user account owning authorized_keys. | |
key |
yes | string |
SSH public key line. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
key_options |
no | string |
SSH authorized_keys options prefix. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.authorized_key.remove
with:
user: deploy
key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDemo automax@example
security.ssh.config
Install SSH client or sshd config drop-ins with backup and optional reload.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
settings |
yes | mapping |
SSH client or server settings. | |
scope |
no | string |
step |
Environment scope: step, user, global or file. |
path |
no | path |
Remote or local path, depending on the plugin. | |
match |
no | string |
SSH Match clause. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.config
with:
name: nginx
settings: value
security.ssh.fingerprint
Read an SSH public or private key fingerprint with ssh-keygen.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
algorithm |
no | string |
sha256 |
Fingerprint or checksum algorithm name. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.fingerprint
with:
path: /tmp/automax-demo
security.ssh.host_keygen
Generate missing OpenSSH host keys on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
types |
no | list |
SSH key types or other typed values accepted by the plugin. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.host_keygen
with:
types:
- ed25519
force: true
security.ssh.keygen
Generate an SSH keypair on a remote target with idempotent overwrite protection.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
type |
no | string |
Path type filter: path, file, directory, dir, symlink or any. | |
bits |
no | integer |
Key size in bits when supported by the selected key type. | |
comment |
no | string |
User account comment or GECOS field. | |
force |
no | boolean |
False |
Force the operation when supported. |
passphrase_secret |
no | string |
Secret name containing a key passphrase. | |
public_key_only |
no | boolean |
False |
Only derive/read the public key instead of generating a new keypair. |
fingerprint |
no | boolean |
True |
Emit a key or certificate fingerprint after the operation. |
algorithm |
no | string |
sha256 |
Fingerprint or checksum algorithm name. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
owner |
no | string |
Remote file owner. | |
group |
no | string |
Primary group, file group owner or remote group name. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.keygen
with:
path: /tmp/automax-demo
security.ssh.known_hosts
Ensure a known_hosts entry exists or is removed on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
host |
yes | string |
Hostname or IP address to check from the controller. | |
key |
no | string |
SSH public key line. | |
port |
no | integer |
TCP port number. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
user |
no | string |
Remote user account owning known_hosts. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.known_hosts
with:
host: 127.0.0.1
security.ssh.public_key
Derive or read an SSH public key from a private key path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
dest |
no | path |
Destination path. | |
overwrite |
no | boolean |
False |
Replace an existing destination when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.ssh.public_key
with:
path: /tmp/automax-demo
security.sshd.config
Install an sshd_config.d hardening drop-in with sshd syntax validation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
settings |
yes | mapping |
SSH client or server settings. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
reload |
no | boolean |
False |
Reload service configuration after a change. |
validate_before_reload |
no | boolean |
True |
Validate service configuration before reload. |
match_blocks |
no | list |
OpenSSH Match blocks to render. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sshd.config
with:
name: nginx
settings: value
security.sshd.validate
Validate sshd configuration with sshd -t.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
config |
no | path |
OpenSSL configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sshd.validate
with:
sudo: true
security.sudo.check
Check whether a user may run a command through sudo without prompting.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
command |
yes | string |
Command to check with sudo -l. | |
run_as |
no | string |
Optional run-as user for sudo authorization. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sudo.check
with:
user: deploy
command: echo automax
security.sudo.dropin
Install or remove a sudoers drop-in file with visudo validation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Drop-in filename under /etc/sudoers.d. | |
content |
no | string |
sudoers content installed when state=present. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
mode |
no | string |
POSIX file mode, for example 0644 or 0755. | |
validate |
no | boolean |
True |
Validate content with visudo before installing. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.path: Installed sudoers drop-in path.
Example:
use: security.sudo.dropin
with:
name: deploy-myapp
content: 'deploy ALL=(root) /bin/systemctl restart myapp'
validate: true
sudo: true
security.sudo.list
List sudo privileges for a user.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
yes | string |
User account name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sudo.list
with:
user: deploy
security.sudo.rule
Install a structured sudoers.d rule with visudo validation, backup and safe mode.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
subject |
yes | string |
Email subject line. | |
hosts |
no | string |
ALL |
sudoers hosts field. |
runas |
no | string |
ALL |
sudoers run-as field. |
commands |
no | list |
Allowed sudo command list or ALL. | |
nopassword |
no | boolean |
False |
Whether to include NOPASSWD. |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sudo.rule
with:
name: nginx
subject: Automax notification
security.sudo.validate
Validate sudoers syntax with visudo without changing files.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: security.sudo.validate
with:
path: /tmp/automax-demo
sudo: true
storage
storage.block.empty.check
Check that a block device has no detectable signature before destructive use.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.empty.check
with:
device: /dev/sdb
storage.block.facts
Collect remote block-device facts with lsblk, blkid, udevadm and optional multipath output.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
devices |
no | list |
Block devices to inspect. | |
multipath |
no | boolean |
False |
Include multipath output when collecting block-device facts. |
udev |
no | boolean |
True |
Include udev properties when collecting facts. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.facts
with:
devices:
- /dev/sdb
multipath: false
storage.block.identity
Read a stable block-device identifier with scsi_id and udevadm.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
scsi_id_path |
no | path |
/usr/lib/udev/scsi_id |
Path to the scsi_id helper. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.identity
with:
device: /dev/sdb
storage.block.partition.apply
Conservatively create a partition table and missing partitions with parted.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
label |
yes | string |
Disk label, filesystem label or partition label. | |
partitions |
yes | list |
Desired partition entries for a storage.block.partition.apply operation. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_path |
no | path |
Explicit backup path for pre-change file content. | |
force |
no | boolean |
False |
Force the operation when supported. |
udev_settle |
no | boolean |
True |
Wait for udev events to settle after the operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.partition.apply
with:
device: /dev/sdb
label: gpt
partitions:
- {'number': 1, 'name': 'DATA01', 'start': '1MiB', 'end': '100%'}
storage.block.partition.scan
Reread one remote partition table with partprobe/blockdev and udev settle.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
udev_settle |
no | boolean |
True |
Wait for udev events to settle after the operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.partition.scan
with:
device: /dev/sdb
storage.block.scan
Rescan remote SCSI hosts or one block device and optionally refresh multipath.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
no | path |
Block device path. | |
udev_settle |
no | boolean |
True |
Wait for udev events to settle after the operation. |
multipath_reload |
no | boolean |
False |
Refresh multipath maps after the operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.scan
with:
device: /dev/sdb
udev_settle: true
storage.block.signatures.wipe
Wipe block-device signatures with wipefs after an optional pre-change signature backup.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_path |
no | path |
Explicit backup path for pre-change file content. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.signatures.wipe
with:
device: /dev/sdb
storage.block.size.check
Check block device size in bytes.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
size |
yes | string |
Size such as 16G for file-backed swap. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.block.size.check
with:
device: /dev/sdb
size: 16G
storage.fs.check
Check block-device identity fields reported by blkid.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
fstype |
no | string |
Filesystem type such as xfs, ext4 or nfs. | |
label |
no | string |
Disk label, filesystem label or partition label. | |
uuid |
no | string |
Filesystem or block-device UUID. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fs.check
with:
device: /dev/sdb
storage.fs.create
Create a filesystem on a block device, refusing existing signatures unless force is true.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
fstype |
yes | string |
Filesystem type such as xfs, ext4 or nfs. | |
label |
no | string |
Disk label, filesystem label or partition label. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fs.create
with:
device: /dev/sdb
fstype: xfs
storage.fs.facts
Collect filesystem identity, mount and usage facts for a device or path.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
no | path |
Block device path. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fs.facts
with:
device: /dev/sdb
path: /tmp/automax-demo
storage.fs.resize
Resize a filesystem using the appropriate platform tool.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
fstype |
yes | string |
Filesystem type such as xfs, ext4 or nfs. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fs.resize
with:
device: /dev/sdb
fstype: xfs
storage.fstab.add
Ensure an /etc/fstab entry is present.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
path |
yes | path |
Remote or local path, depending on the plugin. | |
fstype |
yes | string |
Filesystem type such as xfs, ext4 or nfs. | |
opts |
no | string |
defaults |
Mount options. |
dump |
no | integer |
0 |
fstab dump field. |
passno |
no | integer |
0 |
fstab fsck pass number. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fstab.add
with:
src: /dev/vdb1
path: /data
fstype: xfs
opts: defaults,noatime
sudo: true
storage.fstab.check
Assert an fstab entry exists for source, path or fstype.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
source |
no | path |
Remote source path to archive. | |
fstype |
no | string |
Filesystem type such as xfs, ext4 or nfs. | |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fstab.check
with:
path: /tmp/automax-demo
source: /var/log/app
storage.fstab.remove
Remove fstab entries matching a mountpoint or source after confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
source |
no | path |
Remote source path to archive. | |
file |
no | path |
Remote configuration file path. | |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fstab.remove
with:
path: /tmp/automax-demo
source: /var/log/app
storage.fstab.validate
Validate fstab syntax and optionally dry-run mount resolution.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.fstab.validate
with:
file: /etc/sysctl.d/99-automax.conf
sudo: true
storage.lvm.facts
Collect LVM PV, VG and LV facts from a target.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
no | string |
LVM volume group name. | |
name |
no | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.facts
with:
vg: vg_app
name: nginx
storage.lvm.lv.add
Ensure an LVM logical volume exists, optionally formatting it when newly created.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
yes | string |
LVM volume group name. | |
name |
yes | string |
Package, user or group name. | |
size |
yes | string |
Size such as 16G for file-backed swap. | |
fstype |
no | string |
Filesystem type such as xfs, ext4 or nfs. | |
resizefs |
no | boolean |
True |
Resize the filesystem along with the block/LVM operation. |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.add
with:
vg: vg_app
name: nginx
size: 16G
storage.lvm.lv.check
Check whether an LVM logical volume exists and optionally matches a requested size.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
yes | string |
LVM volume group name. | |
name |
yes | string |
Package, user or group name. | |
size |
no | string |
Size such as 16G for file-backed swap. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.check
with:
vg: vg_app
name: nginx
storage.lvm.lv.extend
Extend an LVM logical volume, optionally resizing the filesystem.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
yes | string |
LVM volume group name. | |
name |
yes | string |
Package, user or group name. | |
size |
yes | string |
Size such as 16G for file-backed swap. | |
resizefs |
no | boolean |
True |
Resize the filesystem along with the block/LVM operation. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.extend
with:
vg: vg_app
name: nginx
size: 16G
storage.lvm.lv.remove
Remove an LVM logical volume with an explicit confirm flag.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
confirm |
yes | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.remove
with:
path: /tmp/automax-demo
confirm: value
storage.lvm.lv.scan
Scan LVM logical volumes.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.scan
with:
sudo: true
storage.lvm.lv.snapshot
Create an idempotent LVM snapshot logical volume.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
yes | string |
LVM volume group name. | |
source |
yes | path |
Remote source path to archive. | |
name |
yes | string |
Package, user or group name. | |
size |
yes | string |
Size such as 16G for file-backed swap. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.snapshot
with:
vg: vg_app
source: /var/log/app
name: nginx
size: 16G
storage.lvm.lv.thin_pool
Ensure an LVM thin pool exists.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
vg |
yes | string |
LVM volume group name. | |
name |
yes | string |
Package, user or group name. | |
size |
yes | string |
Size such as 16G for file-backed swap. | |
metadata_size |
no | string |
LVM thin-pool metadata size. | |
chunksize |
no | string |
LVM thin-pool chunk size. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.lv.thin_pool
with:
vg: vg_app
name: nginx
size: 16G
storage.lvm.pv.add
Ensure a block device is initialized as an LVM physical volume.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.pv.add
with:
device: /dev/sdb
storage.lvm.pv.remove
Remove LVM physical-volume metadata with an explicit confirm flag.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
yes | path |
Block device path. | |
confirm |
yes | boolean |
Explicit destructive-operation confirmation flag. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.pv.remove
with:
device: /dev/sdb
confirm: value
storage.lvm.pv.scan
Refresh LVM physical-volume metadata cache.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
device |
no | path |
Block device path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.pv.scan
with:
device: /dev/sdb
sudo: true
storage.lvm.vg.add
Ensure an LVM volume group exists and contains the requested PV devices.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
devices |
yes | list |
Block devices to inspect. | |
force |
no | boolean |
False |
Force the operation when supported. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.vg.add
with:
name: nginx
devices:
- /dev/sdb
storage.lvm.vg.remove
Remove an LVM volume group with an explicit confirm flag.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
confirm |
yes | boolean |
Explicit destructive-operation confirmation flag. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.vg.remove
with:
name: nginx
confirm: value
storage.lvm.vg.scan
Scan LVM volume groups and recreate missing device nodes.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.lvm.vg.scan
with:
sudo: true
storage.mount.add
Ensure a filesystem is mounted and optionally persisted in fstab.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
path |
yes | path |
Remote or local path, depending on the plugin. | |
fstype |
yes | string |
Filesystem type such as xfs, ext4 or nfs. | |
opts |
no | string |
defaults |
Mount options. |
persist |
no | boolean |
False |
Persist the change across reboots. |
dump |
no | integer |
0 |
fstab dump field. |
passno |
no | integer |
0 |
fstab fsck pass number. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.mount.add
with:
src: /dev/vdb1
path: /data
fstype: xfs
opts: defaults,noatime
persist: true
sudo: true
storage.mount.bind
Ensure a runtime and optional persistent bind mount.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
src |
yes | path |
Source path. | |
dest |
yes | path |
Destination path. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
opts |
no | string |
defaults |
Mount options. |
persist |
no | boolean |
False |
Persist the change across reboots. |
runtime |
no | boolean |
True |
Apply the change to the running system. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.path: Bind mount target path when returned by the implementation.
Example:
use: storage.mount.bind
with:
src: /tmp/source
dest: /tmp/dest
storage.mount.check
Check runtime mount state by mountpoint, source, fstype or options using findmnt.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Optional mountpoint path to match. | |
src |
no | path |
Optional mount source/device to match. | |
fstype |
no | string |
Optional filesystem type to match. | |
opts |
no | string |
defaults |
Optional mount option to match. |
state |
no | string |
mounted |
Expected runtime mount state. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.mount.check
with:
path: /tmp/automax-demo
src: /tmp/source
storage.mount.facts
Collect mounted filesystem facts with findmnt.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.mount.facts
with:
path: /tmp/automax-demo
sudo: true
storage.mount.remount
Remount an already mounted filesystem with desired options.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
opts |
no | string |
defaults |
Mount options. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.mount.remount
with:
path: /tmp/automax-demo
storage.mount.remove
Ensure a mount point is unmounted and optionally removed from fstab.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.mount.remove
with:
path: /tmp/automax-demo
storage.multipath.add
Add one WWID to multipath and optionally reload maps.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
wwid |
yes | string |
Multipath WWID. | |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.multipath.add
with:
wwid: '3600508b400105e210000900000490000'
reload: true
sudo: true
storage.multipath.reload
Reload multipath maps.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.multipath.reload
with:
sudo: true
storage.multipath.remove
Remove one multipath map by name or one WWID from multipath bindings.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
wwid |
no | string |
Multipath WWID. | |
reload |
no | boolean |
False |
Reload service configuration after a change. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.multipath.remove
with:
name: nginx
storage.multipath.status
Read multipath status and optionally assert a minimum path count.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
no | string |
Package, user or group name. | |
expect_paths |
no | integer |
Minimum expected multipath path count. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.multipath.status
with:
name: nginx
expect_paths: 4
storage.quota.check
Check user or group quota limits on a mounted filesystem.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
target |
yes | string |
Quota target user or group. | |
mountpoint |
yes | path |
Mounted filesystem path. | |
type |
no | string |
user |
Quota subject type. |
block_soft |
no | integer |
0 |
Soft block quota. |
block_hard |
no | integer |
0 |
Hard block quota. |
inode_soft |
no | integer |
0 |
Soft inode quota. |
inode_hard |
no | integer |
0 |
Hard inode quota. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.quota.check
with:
target: value
mountpoint: value
storage.quota.facts
Collect user or group quota facts from a mounted filesystem.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
mountpoint |
yes | path |
Mounted filesystem path. | |
type |
no | string |
user |
Quota subject type. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.quota.facts
with:
mountpoint: value
storage.quota.get
Read one user or group quota entry from a mounted filesystem.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
target |
yes | string |
Quota target user or group. | |
mountpoint |
yes | path |
Mounted filesystem path. | |
type |
no | string |
user |
Quota subject type. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.quota.get
with:
target: value
mountpoint: value
storage.quota.set
Set user or group filesystem quotas with setquota.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
target |
yes | string |
Quota target user or group. | |
mountpoint |
yes | path |
Mounted filesystem path. | |
type |
no | string |
user |
Quota subject type. |
block_soft |
no | integer |
0 |
Soft block quota. |
block_hard |
no | integer |
0 |
Hard block quota. |
inode_soft |
no | integer |
0 |
Soft inode quota. |
inode_hard |
no | integer |
0 |
Hard inode quota. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.quota.set
with:
type: user
target: app
mountpoint: /data
block_soft: 1000000
block_hard: 1200000
inode_soft: 10000
inode_hard: 12000
sudo: true
storage.swap.add
Ensure a swap file or swap device is active and optionally persisted in fstab.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
size |
no | string |
Size such as 16G for file-backed swap. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
opts |
no | string |
defaults |
Mount options. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.swap.add
with:
path: /tmp/automax-demo
storage.swap.check
Check that a swap file or device is active.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.swap.check
with:
path: /tmp/automax-demo
storage.swap.facts
Report active swap files and devices.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.swap.facts
with:
sudo: true
storage.swap.remove
Disable a swap file or swap device and optionally remove its fstab entry.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.swap.remove
with:
path: /tmp/automax-demo
storage.usage.disk.check
Check remote filesystem free space and used percentage thresholds.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
min_free_mb |
no | integer |
Minimum free disk space in MiB. | |
min_free_percent |
no | number |
Minimum free disk percentage. | |
max_used_percent |
no | number |
Maximum allowed used percentage. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: df output used for the disk usage check.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.usage.disk.check
with:
path: /var
min_free_mb: 1024
max_used_percent: 85
sudo: true
storage.usage.inode.check
Check remote filesystem inode free and used percentage thresholds.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
min_free_inodes |
no | integer |
Minimum free inode count. | |
max_used_percent |
no | number |
Maximum allowed used percentage. | |
min_free_percent |
no | number |
Minimum free disk percentage. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: df -i output used for the inode usage check.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: storage.usage.inode.check
with:
path: /var
max_used_percent: 85
sudo: true
system
system.cron.entry.add
Manage one /etc/cron.d entry file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
schedule |
yes | string |
Five-field cron schedule. | |
command |
yes | string |
Command line to execute. | |
user |
no | string |
root |
User field for /etc/cron.d. |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
env |
no | mapping |
Environment lines written before the cron entry. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.path: Installed cron.d file path.
Example:
use: system.cron.entry.add
with:
name: myapp-health
schedule: '*/5 * * * *'
user: root
command: /usr/local/bin/myapp-healthcheck
sudo: true
system.cron.entry.list
List system cron.d entries and optionally one user's crontab.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
user |
no | string |
User account whose crontab should be listed. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.cron.entry.list
with:
user: deploy
sudo: true
system.cron.entry.remove
Remove one /etc/cron.d entry file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.cron.entry.remove
with:
name: nginx
system.cron.file
Install or remove a complete /etc/cron.d file.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
content |
no | string |
Text content to write. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.path: Installed cron.d file path.
Example:
use: system.cron.file
with:
name: nginx
system.cron.validate
Validate basic cron file syntax without installing it.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
path |
yes | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.cron.validate
with:
path: /tmp/automax-demo
system.host.check
Check whether the target accepts an authenticated SSH command.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
connect_timeout |
no | number |
3 |
Per-attempt TCP connect timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.host.check
with:
connect_timeout: 3
system.host.poweroff
Request a confirmed remote host poweroff.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
delay |
no | integer |
3 |
Initial delay in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.host.poweroff
with:
delay: 3
system.host.reboot
Request a confirmed remote host reboot.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
delay |
no | integer |
3 |
Initial delay in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.host.reboot
with:
delay: 3
system.host.wait
Wait until the target accepts an authenticated SSH command.
- Remote session:
false - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
interval |
no | number |
2 |
Polling interval in seconds. |
timeout |
no | number |
Operation timeout in seconds. | |
connect_timeout |
no | number |
3 |
Per-attempt TCP connect timeout in seconds. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.host.wait
with:
interval: 2
timeout: 60
system.journal.collect
Collect journalctl output for artifact capture through stdout.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
since |
no | string |
Start time for journalctl queries. | |
until |
no | string |
End time for journalctl queries. | |
lines |
no | integer |
200 |
Number of log or journal lines to collect. |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.journal.collect
with:
service: sshd
since: 1 hour ago
system.journal.grep
Collect journalctl output and filter it with grep.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pattern |
yes | string |
Regex, process pattern or search pattern. | |
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
since |
no | string |
Start time for journalctl queries. | |
until |
no | string |
End time for journalctl queries. | |
lines |
no | integer |
200 |
Number of log or journal lines to collect. |
output |
no | string |
rows |
Database output format: rows, scalar, json or none. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.journal.grep
with:
pattern: KEY=.*
system.kernel.boot_param.add
Ensure a persistent kernel boot parameter in GRUB-compatible defaults with backup and grub config regeneration.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
no | string |
Desired parameter value. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
update_grub |
no | boolean |
True |
Regenerate GRUB configuration after modifying boot parameters. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.boot_param.add
with:
name: nginx
system.kernel.boot_param.check
Check whether a persistent kernel boot parameter is configured in GRUB defaults.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
no | string |
Desired parameter value. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.boot_param.check
with:
name: nginx
system.kernel.boot_param.remove
Remove a persistent kernel boot parameter from GRUB defaults after explicit confirmation.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
no | string |
Desired parameter value. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
confirm |
no | boolean |
Explicit destructive-operation confirmation flag. | |
update_grub |
no | boolean |
True |
Regenerate GRUB configuration after modifying boot parameters. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.boot_param.remove
with:
name: nginx
system.kernel.module.blacklist
Install or remove a persistent kernel module blacklist drop-in.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
module |
yes | string |
Linux kernel module name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
file |
no | path |
Remote configuration file path. | |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.module.blacklist
with:
module: br_netfilter
system.kernel.module.load
Load a Linux kernel module and optionally persist it.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.module.load
with:
name: br_netfilter
persist: true
sudo: true
system.kernel.module.persist
Persist a Linux kernel module for loading at boot.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.module.persist
with:
name: nginx
system.kernel.module.status
Assert or report kernel module load status.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
module |
yes | string |
Linux kernel module name. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.module.status
with:
module: br_netfilter
system.kernel.module.unload
Unload a Linux kernel module and optionally remove persisted entries.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
persist |
no | boolean |
False |
Persist the change across reboots. |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.module.unload
with:
name: nginx
system.kernel.sysctl.check
Assert a runtime sysctl value.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
yes | string |
Desired parameter value. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.sysctl.check
with:
name: nginx
value: 1
system.kernel.sysctl.dropin
Install a sysctl.d drop-in and reload sysctl values.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
settings |
yes | mapping |
SSH client or server settings. | |
file |
no | path |
Remote configuration file path. | |
reload |
no | boolean |
False |
Reload service configuration after a change. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.sysctl.dropin
with:
name: nginx
settings: value
system.kernel.sysctl.facts
Read one or more sysctl values.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
names |
no | list |
Hostnames or aliases for a hosts entry. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.sysctl.facts
with:
names:
- app1.example.com
- app1
sudo: true
system.kernel.sysctl.get
Read a Linux sysctl value.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.name: sysctl name.data.value: Current sysctl value.
Example:
use: system.kernel.sysctl.get
with:
name: nginx
system.kernel.sysctl.persist
Persist a Linux sysctl value without applying it immediately.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
yes | string |
Desired parameter value. | |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.sysctl.persist
with:
name: nginx
value: 1
system.kernel.sysctl.reload
Reload Linux sysctl settings from a file or all configured files.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.kernel.sysctl.reload
with:
file: /etc/sysctl.d/99-automax.conf
sudo: true
system.kernel.sysctl.set
Set a Linux sysctl value at runtime and/or persistently.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
value |
yes | string |
Desired parameter value. | |
runtime |
no | boolean |
True |
Apply the change to the running system. |
persist |
no | boolean |
False |
Persist the change across reboots. |
file |
no | path |
Remote configuration file path. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.name: sysctl name.data.value: Desired sysctl value.
Example:
use: system.kernel.sysctl.set
with:
name: net.ipv4.ip_forward
value: '1'
runtime: true
persist: true
file: /etc/sysctl.d/99-automax.conf
sudo: true
system.log.export
Export remote log or journal output to stdout for declared artifact capture.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
files |
no | list |
Target files to inspect or modify. | |
service |
no | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
since |
no | string |
Start time for journalctl queries. | |
lines |
no | integer |
200 |
Number of log or journal lines to collect. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.log.export
with:
files:
- /etc/pam.d/login
service: sshd
system.log.grep
Search remote log files with grep and return matching lines.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pattern |
yes | string |
Regex, process pattern or search pattern. | |
files |
no | list |
Target files to inspect or modify. | |
max_count |
no | integer |
Maximum number of matching log or process entries. | |
ignore_missing |
no | boolean |
True |
Treat missing processes as success. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.log.grep
with:
pattern: KEY=.*
system.process.check
Check that a remote process is present or absent by PID or pattern.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pid |
no | integer |
Process id. | |
pattern |
no | string |
Regex, process pattern or search pattern. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.process.check
with:
pid: 1234
pattern: KEY=.*
system.process.count.check
Assert the number of remote processes matching a pattern.
- Remote session:
true - Dry-run support:
true - Check mode support:
true
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pattern |
yes | string |
Regex, process pattern or search pattern. | |
count |
no | integer |
0 |
Maximum regex replacements; 0 means replace all matches. |
min_count |
no | integer |
Minimum number of matching process entries. | |
max_count |
no | integer |
Maximum number of matching log or process entries. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.process.count.check
with:
pattern: KEY=.*
system.process.kill
Kill a remote process by PID or pattern.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pid |
no | integer |
Process id. | |
pattern |
no | string |
Regex, process pattern or search pattern. | |
signal |
no | string |
TERM |
Signal name or number sent to a process. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
ignore_missing |
no | boolean |
True |
Treat missing processes as success. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.process.kill
with:
pid: 1234
pattern: KEY=.*
system.process.signal
Send a signal to a remote process by PID or pattern.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pid |
no | integer |
Process id. | |
pattern |
no | string |
Regex, process pattern or search pattern. | |
signal |
no | string |
TERM |
Signal name or number sent to a process. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
ignore_missing |
no | boolean |
True |
Treat missing processes as success. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.process.signal
with:
pid: 1234
pattern: KEY=.*
system.process.wait
Wait for a remote process state.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
pid |
no | integer |
Process id. | |
pattern |
no | string |
Regex, process pattern or search pattern. | |
state |
no | string |
Desired state such as present, absent, started or stopped. | |
timeout |
no | number |
Operation timeout in seconds. | |
interval |
no | number |
2 |
Polling interval in seconds. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.process.wait
with:
pid: 1234
pattern: KEY=.*
system.service.active.check
Check remote systemd active state.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.active.check
with:
service: sshd
system.service.disable
Disable a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.disable
with:
service: sshd
system.service.enable
Enable a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.enable
with:
service: sshd
system.service.enabled.check
Check remote systemd enabled state.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.enabled.check
with:
service: sshd
system.service.facts
Gather remote systemd service facts.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.data.services: systemd service facts.
Example:
use: system.service.facts
with:
sudo: true
system.service.mask
Mask a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.mask
with:
service: sshd
system.service.reload
Reload a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.reload
with:
service: sshd
system.service.restart
Restart a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.restart
with:
service: sshd
system.service.start
Start a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.start
with:
service: sshd
system.service.status
Read remote systemd service status.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.status
with:
service: sshd
system.service.stop
Stop a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.stop
with:
service: sshd
system.service.unmask
Unmask a remote systemd service.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
service |
yes | string |
Service name, PAM service name or systemd unit depending on the plugin. | |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.service.unmask
with:
service: sshd
system.systemd.daemon.reload
Run systemctl daemon-reload on a remote target.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
user |
no | boolean |
False |
Use systemctl --user instead of the system manager. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.systemd.daemon.reload
with:
sudo: true
user: deploy
system.systemd.sysusers
Install a sysusers.d drop-in and optionally apply it immediately.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
content |
yes | string |
Text content to write. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
apply |
no | boolean |
False |
Apply a generated system resource immediately after installation. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.systemd.sysusers
with:
name: nginx
content: managed by automax
system.systemd.timer
Install a systemd timer file with backup, daemon-reload and optional enable/start.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
content |
yes | string |
Text content to write. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
enable |
no | boolean |
False |
Enable a service or timer after installing its unit. |
start |
no | boolean |
False |
Start a service or timer after installing its unit. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.systemd.timer
with:
name: nginx
content: managed by automax
system.systemd.tmpfiles
Install a tmpfiles.d drop-in and optionally apply it immediately.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
content |
yes | string |
Text content to write. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
apply |
no | boolean |
False |
Apply a generated system resource immediately after installation. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.systemd.tmpfiles
with:
name: nginx
content: managed by automax
system.systemd.unit
Install a systemd unit file with backup, daemon-reload and optional enable/start.
- Remote session:
true - Dry-run support:
true - Check mode support:
false
| Parameter | Required | Type | Default | Description |
|---|---|---|---|---|
name |
yes | string |
Package, user or group name. | |
content |
yes | string |
Text content to write. | |
path |
no | path |
Remote or local path, depending on the plugin. | |
enable |
no | boolean |
False |
Enable a service or timer after installing its unit. |
start |
no | boolean |
False |
Start a service or timer after installing its unit. |
backup |
no | boolean |
False |
Create a backup before modifying an existing file. |
backup_suffix |
no | string |
.bak |
Suffix appended to the original path when backup is enabled. |
sudo |
no | boolean |
False |
Run the remote operation through sudo -n when supported. |
Result fields:
changed: Whether the plugin changed the target or controller state.message: Human-readable result message.rc: Process or command return code when applicable.stdout: Captured standard output when applicable.stderr: Captured standard error when applicable.data: Plugin-specific structured result data.
Example:
use: system.systemd.unit
with:
name: nginx
content: managed by automax