安装

您可以通过以下方式安装 ansible-rulebook CLI:

拉取容器镜像

ansible-rulebook CLI 提供容器镜像。您可以从 quay.io 仓库拉取最新镜像

podman pull quay.io/ansible/ansible-rulebook:latest

使用 pip 安装

这些说明将引导您在本地系统上安装 ansible-rulebook CLI。在开始安装过程之前,请确保您已安装 要求 部分中列出的所有组件。

要求

  • Python >= 3.9

  • Python 3 pip

  • Java 开发工具包 (JDK) >= 17

    • Fedora: java-17-openjdk

    • Ubuntu: openjdk-17-jdk

使用 pip 安装

  1. 如果您安装了多个 Java 版本,请确保设置了 JAVA_HOME 环境变量。在类 Fedora 系统上,它应该是:

    JAVA_HOME=/usr/lib/jvm/jre-17-openjdk
    
  2. 通过 pip 安装 ansible-rulebook 及其依赖项

    pip install ansible-rulebook ansible ansible-runner
    

注意

默认情况下,ansible-rulebook 会安装 psycopg-binary 包,这是一个为大多数常见平台预编译的 PostgreSQL 数据库适配器。对于生产环境,我们建议您安装 psycopg 包,这要求系统中安装有 PostgreSQL 开发头文件

pip install ansible-rulebook[production]

更多信息请参阅 psycopg 安装指南

注意

ansible-rulebook 依赖于 jpy Python 包来与 Java 运行时进行通信。该包为大多数常见平台提供了 wheel 文件,但并非所有平台都有。如果您使用的平台不受 jpy wheel 支持,则需要自行编译。请参阅 编译 jpy 部分 了解更多信息。

3. 安装 ansible.eda 集合,该集合附带了各种事件源插件和过滤器以帮助您快速上手。请参阅 集合仓库中的说明。

安装示例

在类 Fedora 系统上

dnf --assumeyes install java-17-openjdk python3-pip
export JAVA_HOME=/usr/lib/jvm/jre-17-openjdk
pip3 install ansible ansible-rulebook ansible-runner

在 Ubuntu 系统上

apt-get --assume-yes install openjdk-17-jdk python3-pip
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$PATH:~/.local/bin
pip3 install ansible ansible-rulebook ansible-runner

在 macOS 系统上

# Install Homebrew (optional)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install OpenJDK 17 and python with Homebrew (recommended)
brew install openjdk@17
echo 'export PATH="/usr/local/opt/openjdk@17/bin:$PATH"' >> ~/.bash_profile
brew install python@3.11
pip3.11 install ansible ansible-rulebook ansible-runner

编译 jpy

要在安装时从源码编译 jpy,您需要安装以下额外依赖项:

  • maven

  • gcc

  • python-devel 包
    • Fedora: python3-devel

    • Ubuntu: python3-dev

  • 环境变量 JAVA_HOME 设置为您的 Java 安装路径

然后,您可以运行:

pip install ansible-rulebook --no-binary jpy

更多信息请参阅 jpy 项目