ansible-navigator 设置¶
ansible-navigator 设置文件¶
ansible-navigator 的设置可以在命令行中提供,使用环境变量设置或在设置文件中指定。
设置文件名和路径可以使用环境变量指定,也可以放置在两个默认目录之一中。
目前会检查以下内容,并使用第一个匹配项
- ANSIBLE_NAVIGATOR_CONFIG(设置文件路径环境变量,如果已设置)
- ./ansible-navigator.<ext>(项目目录) (注意:文件名中没有点)
- ~/.ansible-navigator.<ext>(主目录) (注意:注意文件名中的点)
注意
- 设置文件可以是 JSON或YAML格式。
- 对于 JSON格式的设置,扩展名必须是.json。
- 对于 YAML格式的设置,扩展名必须是.yml或.yaml。
- 项目和主目录每个只能包含一个设置文件。
- 如果在任一目录中找到多个设置文件,将会导致错误。
您可以将下面的示例设置文件复制到其中一个路径中,以开始您的 ansible-navigator 设置文件。
# # cspell:ignore cmdline, workdir
---
ansible-navigator:
#
#   ansible:
#     config:
#       help: False
#       path: /tmp/ansible.cfg
#     cmdline: "--forks 15"
#     doc:
#       help: False
#       plugin:
#         name: shell
#         type: become
#     inventory:
#       help: False
#       entries:
#         - /tmp/test_inventory.yml
#     playbook:
#       help: False
#       path: /tmp/test_playbook.yml
#
#   ansible-builder:
#     help: False
#     workdir: /tmp/
#
#   ansible-lint:
#     config: ~/ansible-lint.yml
#     lintables: ~/myproject/
#
#   ansible-runner:
#     artifact-dir: /tmp/test1
#     rotate-artifacts-count: 10
#     timeout: 300
#     job-events: False
#
#   app: run
#
#   collection-doc-cache-path: /tmp/cache.db
#
#   color:
#     enable: False
#     osc4: False
#
#   editor:
#     command: vim_from_setting
#     console: False
#
#   enable-prompts: False
#
#   exec:
#     shell: False
#     command: /bin/foo
#
#   execution-environment:
#     container-engine: podman
#     enabled: False
#     environment-variables:
#       pass:
#         - ONE
#         - TWO
#         - THREE
#       set:
#         KEY1: VALUE1
#         KEY2: VALUE2
#         KEY3: VALUE3
#     image: test_image:latest
#     pull:
#       arguments:
#         - "--tls-verify=false"
#       policy: never
#     volume-mounts:
#       - src: "/tmp"
#         dest: "/test1"
#         options: "Z"
#     container-options:
#       - "--net=host"
#
#   format: json
#
#   images:
#     details:
#       - ansible_version
#       - python_version
#
#   inventory-columns:
#     - ansible_network_os
#     - ansible_network_cli_ssh_type
#     - ansible_connection
#
  logging:
    level: critical
#     append: False
#     file: /tmp/log.txt
#
#   mode: stdout
#
#   playbook-artifact:
#     enable: True
#     replay: /tmp/test_artifact.json
#     save-as: /tmp/test_artifact.json
#
#   settings:
#     effective: False
#     sample: False
#     schema: json
#     sources: False
#
#   time-zone: Japan
下表描述了所有可用的设置。
通用参数¶
- ansible-runner-artifact-dir ¶
- 
用于存储 ansible-runner 生成的工件的目录路径 添加于版本: v1.0 默认值: 未设置默认值 CLI: --rad或--ansible-runner-artifact-dirENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_ARTIFACT_DIR 
- ansible-runner-rotate-artifacts-count ¶
- 
保留 ansible-runner 工件目录,用于最后 n 次运行,如果设置为 0,则不会删除工件目录 添加于版本: v1.0 默认值: 未设置默认值 CLI: --rac或--ansible-runner-rotate-artifacts-countENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_ROTATE_ARTIFACTS_COUNT 
- ansible-runner-timeout ¶
- 
ansible-runner 将强制停止执行的超时值 添加于版本: v1.0 默认值: 未设置默认值 CLI: --rt或--ansible-runner-timeoutENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_TIMEOUT 
- ansible-runner-write-job-events ¶
- 
在工件目录中写入 ansible-runner job_events 添加于版本: v2.3 选项: 'True' 或 'False' 默认值: False CLI: --rwje或--ansible-runner-write-job-eventsENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_WRITE_JOB_EVENTS 
- app ¶
- 
子命令 添加于版本: v1.0 选项: 'builder', 'collections', 'config', 'doc', 'exec', 'images', 'inventory', 'lint', 'replay', 'run', 'settings' 或 'welcome' 默认值: welcome CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_APP 
- cmdline ¶
- 
传递给底层 ansible 命令(例如 ansible-playbook、ansible-doc 等)的额外参数 添加于版本: v1.0 默认值: 未设置默认值 CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_CMDLINE 
- collection-doc-cache-path ¶
- 
集合文档缓存的路径 添加于版本: v1.0 默认值: ~/.cache/ansible-navigator/collection_doc_cache.db CLI: --cdcp或--collection-doc-cache-pathENV: ANSIBLE_NAVIGATOR_COLLECTION_DOC_CACHE_PATH 
- container-engine ¶
- 
指定容器引擎(auto=podman 然后 docker) 添加于版本: v1.0 选项: 'auto', 'podman' 或 'docker' 默认值: auto CLI: --ce或--container-engineENV: ANSIBLE_NAVIGATOR_CONTAINER_ENGINE 
- container-options ¶
- 
传递给容器引擎命令的额外参数 添加于版本: v2.0 默认值: 未设置默认值 CLI: --co或--container-optionsENV: ANSIBLE_NAVIGATOR_CONTAINER_OPTIONS 
- display-color ¶
- 
启用模式交互和 stdout 的颜色使用 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --dc或--display-colorENV: NO_COLOR 
- editor-command ¶
- 
指定编辑器命令 添加于版本: v1.0 默认值: vi +{line_number} {filename} CLI: --ecmd或--editor-commandENV: ANSIBLE_NAVIGATOR_EDITOR_COMMAND 
- editor-console ¶
- 
指定编辑器是否基于控制台 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --econ或--editor-consoleENV: ANSIBLE_NAVIGATOR_EDITOR_CONSOLE 
- execution-environment ¶
- 
启用或禁用执行环境的使用 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --ee或--execution-environmentENV: ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT 
- execution-environment-image ¶
- 
指定执行环境映像的名称 添加于版本: v1.0 默认值: None CLI: --eei或--execution-environment-imageENV: ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT_IMAGE 
- execution-environment-volume-mounts ¶
- 
指定要在执行环境中绑定的卷 (--eev /home/user/test:/home/user/test:Z) 添加于版本: v1.0 默认值: 未设置默认值 CLI: --eev或--execution-environment-volume-mountsENV: ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT_VOLUME_MOUNTS 
- log-append ¶
- 
指定是否应将日志消息追加到现有日志文件,否则将为每个会话创建新的日志文件 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --la或--log-appendENV: ANSIBLE_NAVIGATOR_LOG_APPEND 
- log-file ¶
- 
指定 ansible-navigator 日志文件的完整路径 添加于版本: v1.0 默认值: ./ansible-navigator.log CLI: --lf或--log-fileENV: ANSIBLE_NAVIGATOR_LOG_FILE 
- log-level ¶
- 
指定 ansible-navigator 日志级别 添加于版本: v1.0 选项: 'debug', 'info', 'warning', 'error' 或 'critical' 默认值: warning CLI: --ll或--log-levelENV: ANSIBLE_NAVIGATOR_LOG_LEVEL 
- mode ¶
- 
指定用户界面模式 添加于版本: v1.0 选项: 'stdout' 或 'interactive' 默认值: interactive CLI: -m或--modeENV: ANSIBLE_NAVIGATOR_MODE 
- osc4 ¶
- 
启用或禁用使用 OSC 4 的终端颜色更改支持 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --osc4或--osc4ENV: ANSIBLE_NAVIGATOR_OSC4 
- pass-environment-variable ¶
- 
指定要传递到执行环境并在其中设置的现有环境变量 (--penv MY_VAR) 添加于版本: v1.0 默认值: 未设置默认值 CLI: --penv或--pass-environment-variableENV: ANSIBLE_NAVIGATOR_PASS_ENVIRONMENT_VARIABLES 
- pull-arguments ¶
- 
指定从容器注册表拉取执行环境时应添加到拉取命令的任何其他参数。例如,--pa='--tls-verify=false' 添加于版本: v2.0 默认值: 未设置默认值 CLI: --pa或--pull-argumentsENV: ANSIBLE_NAVIGATOR_PULL_ARGUMENTS 
- pull-policy ¶
- 
指定映像拉取策略:always:始终拉取映像,missing:如果本地不可用则拉取,never:从不拉取映像,tag:如果映像标签是 'latest',始终拉取映像,否则如果本地不可用则拉取 添加于版本: v1.0 选项: 'always', 'missing', 'never' 或 'tag' 默认值: tag CLI: --pp或--pull-policyENV: ANSIBLE_NAVIGATOR_PULL_POLICY 
- set-environment-variable ¶
- 
指定要在执行环境中设置的环境变量和值 (--senv MY_VAR=42) 添加于版本: v1.0 默认值: 未设置默认值 CLI: --senv或--set-environment-variableENV: ANSIBLE_NAVIGATOR_SET_ENVIRONMENT_VARIABLES 
- time-zone ¶
- 
指定要使用的 IANA 时区,或使用 'local' 使用系统时区 添加于版本: v2.0 默认值: UTC CLI: --tz或--time-zoneENV: TZ 
¶
子命令:builder¶
- help-builder ¶
- 
在 stdout 模式下 ansible-builder 命令的帮助选项 添加于版本: v2.0 选项: 'True' 或 'False' 默认值: False CLI: --hb或--help-builderENV: ANSIBLE_NAVIGATOR_HELP_BUILDER 
- workdir ¶
- 
指定包含 ansible-builder 清单文件的路径 添加于版本: v2.0 默认 . CLI: --bwd或--workdirENV: ANSIBLE_NAVIGATOR_WORKDIR 
¶
子命令:collections¶
- format ¶
- 
指定 stdout 输出的格式。 添加于版本: v2.3 选项: 'json' 或 'yaml' 默认值: yaml CLI: --fmt或--formatENV: ANSIBLE_NAVIGATOR_FORMAT 
¶
子命令: config¶
- config ¶
- 
指定 Ansible 配置文件的路径 添加于版本: v1.0 默认值: 未设置默认值 CLI: -c或--configENV: ANSIBLE_CONFIG 
- help-config ¶
- 
在 stdout 模式下,用于 ansible-config 命令的帮助选项 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: False CLI: --hc或--help-configENV: ANSIBLE_NAVIGATOR_HELP_CONFIG 
¶
子命令: doc¶
- help-doc ¶
- 
在 stdout 模式下,用于 ansible-doc 命令的帮助选项 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: False CLI: --hd或--help-docENV: ANSIBLE_NAVIGATOR_HELP_DOC 
- plugin-name ¶
- 
指定插件名称 添加于版本: v1.0 默认值: 未设置默认值 CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_PLUGIN_NAME 
- plugin-type ¶
- 
指定插件类型,'become', 'cache', 'callback', 'cliconf', 'connection', 'filter', 'httpapi', 'inventory', 'keyword', 'lookup', 'module', 'netconf', 'role', 'shell', 'strategy', 'test' 或 'vars' 添加于版本: v1.0 Choices: 'become', 'cache', 'callback', 'cliconf', 'connection', 'filter', 'httpapi', 'inventory', 'keyword', 'lookup', 'module', 'netconf', 'role', 'shell', 'strategy', 'test' 或 'vars' Default: module CLI: -t或--typeENV: ANSIBLE_NAVIGATOR_PLUGIN_TYPE 
¶
子命令: exec¶
- exec-command ¶
- 
指定在执行环境中运行的命令 添加于版本: v2.0 Default: /bin/bash CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_EXEC_COMMAND 
- exec-shell ¶
- 
指定 exec 命令应在 shell 中运行 添加于版本: v2.0 选项: 'True' 或 'False' 默认值: True CLI: --exshell或--exec-shellENV: ANSIBLE_NAVIGATOR_EXEC_SHELL 
¶
子命令: images¶
- format ¶
- 
指定 stdout 输出的格式。 添加于版本: v2.3 选项: 'json' 或 'yaml' 默认值: yaml CLI: --fmt或--formatENV: ANSIBLE_NAVIGATOR_FORMAT 
- images-details ¶
- 
提供有关所选执行环境镜像的详细信息 添加于版本: v2.0 Choices: 'ansible_collections', 'ansible_version', 'everything', 'os_release', 'python_packages', 'python_version', 'redhat_release' 或 'system_packages' Default: ['everything'] CLI: -d或--detailsENV: ANSIBLE_NAVIGATOR_IMAGES_DETAILS 
¶
子命令: inventory¶
- help-inventory ¶
- 
在 stdout 模式下,用于 ansible-inventory 命令的帮助选项 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: False CLI: --hi或--help-inventoryENV: ANSIBLE_NAVIGATOR_HELP_INVENTORY 
- inventory ¶
- 
指定清单文件路径或逗号分隔的主机列表 添加于版本: v1.0 默认值: 未设置默认值 CLI: -i或--inventoryENV: ANSIBLE_INVENTORY 
- inventory-column ¶
- 
指定要在清单视图中显示的主机属性 添加于版本: v1.0 默认值: 未设置默认值 CLI: --ic或--inventory-columnENV: ANSIBLE_NAVIGATOR_INVENTORY_COLUMNS 
¶
子命令: lint¶
- lint-config ¶
- 
指定 ansible-lint 配置文件的路径 添加于版本: v2.0 默认值: 未设置默认值 CLI: --lic或--lint-configENV: ANSIBLE_LINT_CONFIG 
- lintables ¶
- 
要运行 ansible-lint 的文件路径 添加于版本: v2.0 默认值: 未设置默认值 CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_LINTABLES 
¶
子命令: replay¶
- playbook-artifact-replay ¶
- 
指定要重放的 playbook 制品的路径 添加于版本: v1.0 默认值: 未设置默认值 CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_REPLAY 
¶
子命令: run¶
- enable-prompts ¶
- 
启用密码和剧本中的提示。这将把模式设置为 stdout 并禁用剧本制品创建 添加于版本: v2.3 选项: 'True' 或 'False' 默认值: False CLI: --ep或--enable-promptsENV: ANSIBLE_NAVIGATOR_ENABLE_PROMPTS 
- help-playbook ¶
- 
在 stdout 模式下,用于 ansible-playbook 命令的帮助选项 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: False CLI: --hp或--help-playbookENV: ANSIBLE_NAVIGATOR_HELP_PLAYBOOK 
- inventory ¶
- 
指定清单文件路径或逗号分隔的主机列表 添加于版本: v1.0 默认值: 未设置默认值 CLI: -i或--inventoryENV: ANSIBLE_INVENTORY 
- inventory-column ¶
- 
指定要在清单视图中显示的主机属性 添加于版本: v1.0 默认值: 未设置默认值 CLI: --ic或--inventory-columnENV: ANSIBLE_NAVIGATOR_INVENTORY_COLUMNS 
- playbook ¶
- 
指定剧本名称 添加于版本: v1.0 默认值: 未设置默认值 CLI: 位置参数 ENV: ANSIBLE_NAVIGATOR_PLAYBOOK 
- playbook-artifact-enable ¶
- 
启用或禁用为已完成的剧本创建制品。注意:当剧本需要用户输入时,与 '--mode stdout' 不兼容 添加于版本: v1.0 选项: 'True' 或 'False' 默认值: True CLI: --pae或--playbook-artifact-enableENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_ENABLE 
- playbook-artifact-save-as ¶
- 
指定从已完成的剧本创建的制品的名称。可以使用以下占位符:{playbook_dir}、{playbook_name}、{playbook_status} 和 {time_stamp} 添加于版本: v1.0 Default: {playbook_dir}/{playbook_name}-artifact-{time_stamp}.json CLI: --pas或--playbook-artifact-save-asENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_SAVE_AS 
¶
子命令: settings¶
- settings-effective ¶
- 
显示有效设置。将合并默认值、CLI 参数、环境变量和设置文件 添加于版本: v2.0 默认值: False CLI: --se或--effectiveENV: ANSIBLE_NAVIGATOR_SETTINGS_EFFECTIVE 
- settings-sample ¶
- 
生成一个示例设置文件 添加于版本: v2.0 默认值: False CLI: --gs或--sampleENV: ANSIBLE_NAVIGATOR_SETTINGS_SAMPLE 
- settings-schema ¶
- 
为设置文件生成一个模式('json' = draft-07 JSON 模式) 添加于版本: v2.0 Choices: 'json' Default: json CLI: --ss或--schemaENV: ANSIBLE_NAVIGATOR_SETTINGS_SCHEMA 
- settings-sources ¶
- 
显示每个当前设置条目的来源 添加于版本: v2.0 默认值: False CLI: --so或--sourcesENV: ANSIBLE_NAVIGATOR_SETTINGS_SOURCES