Модуль fortinet.fortimanager.fmgr_dvmdb_script — Таблица сценариев.
Примечание
Этот модуль входит в коллекцию fortinet.fortimanager (версия 2.7.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install fortinet.fortimanager.
Чтобы использовать её в книге задач, укажите: fortinet.fortimanager.fmgr_dvmdb_script.
Добавлена в fortinet.fortimanager 1.0.0
Обзор
- Этот модуль позволяет настраивать устройство FortiManager.
- Примеры включают все параметры и значения, которые необходимо настроить перед использованием.
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен для доступа к FortiManager без использования имени пользователя и пароля. |
adom строка / обязательно | Параметр (adom) в запрошенном URL. |
bypass_validation логическое | Устанавливается в значение True только при расхождениях схемы модуля со структурой API FortiManager, модуль продолжает выполнение без валидации параметров. Варианты:
|
dvmdb_script словарь | Параметры верхнего уровня, заданные. |
|
content строка |
Полное содержимое журнала результатов выполнения скрипта. |
|
desc строка |
Описание. |
|
filter_build целое число |
Значение будет проигнорировано в запросах add/set/update, если filter_ostype не задан. |
|
filter_device целое число |
Имя или ID существующего устройства в базе данных. |
|
filter_hostname строка |
Значение не имеет эффекта, если target — adom_database. |
|
filter_ostype строка |
Значение не имеет эффекта, если target — adom_database. Варианты:
|
|
filter_osver строка |
Значение будет проигнорировано в запросах add/set/update, если filter_ostype не задан. Варианты:
|
|
filter_platform строка |
Значение будет проигнорировано в запросах add/set/update, если filter_ostype не задан. |
|
filter_serial строка |
Значение не имеет эффекта, если target — adom_database. |
|
modification_time строка |
Это только для чтения атрибут, указывающий время создания или изменения скрипта. |
|
name строка / обязательно |
Имя. |
|
script_schedule список / элементы=словарь |
Расписание скрипта. |
|
datetime строка |
Указывает дату и время расписания. onetime daily weekly monthly |
|
day_of_week строка |
День недели. Варианты:
|
|
device целое число |
Имя или ID существующего устройства в базе данных. |
|
name строка |
Имя. |
|
run_on_db строка |
Указывает, нужно ли выполнять запланированный скрипт на базе данных устройств. Варианты:
|
|
type строка |
Тип. Варианты:
|
|
target string |
Целевой объект. Варианты:
|
|
type string |
Тип. Варианты:
|
enable_log boolean | Включить/выключить ведение журнала для задачи. Варианты:
|
forticloud_access_token string | Авторизовать Ansible-клиент с помощью токена доступа к API forticloud. |
proposed_method string | Переопределённый метод для базового запроса Json RPC. Варианты:
|
rc_failed list / elements=integer | Список rc-кодов, при которых условие будет считаться выполненным. |
rc_succeeded list / elements=integer | Список rc-кодов, при которых условие будет считаться выполненным. |
state string / обязательный | Направление для создания, обновления или удаления объекта. Варианты:
|
workspace_locking_adom string | Область (ADOM), которая будет заблокирована для FortiManager, работающего в режиме рабочего пространства. Значение может быть глобальным и другими, включая корневое. |
workspace_locking_timeout integer | Максимальное время в секундах ожидания, пока другой пользователь не разблокирует рабочее пространство. По умолчанию: |
Примечания
Примечание
- Начиная с версии 2.4.0, все входные аргументы имеют наименование по соглашению snake_case (например, var-name на var_name). Старые имена аргументов всё ещё доступны, но вы будете получать предупреждения о устаревании. Вы можете проигнорировать это предупреждение, установив deprecation_warnings=False в ansible.cfg.
- Поддержка работы в режиме блокировки рабочего пространства реализована в этом модуле FortiManager. Параметры workspace_locking_adom и workspace_locking_timeout выполняют эту функцию.
- Для создания или обновления объекта используйте директиву state present.
- Для удаления объекта используйте директиву state absent.
- Обычно выполнение одного модуля может завершиться неудачно, если возвращается ненулевой rc. Вы также можете переопределить условия для ошибок или успешного выполнения с помощью параметров rc_failed и rc_succeeded.
Примеры
- name: Apply a script to device
hosts: fortimanagers
gather_facts: false
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
device_adom: "root"
script_name: "FooScript"
device_name: "CustomHostName"
device_vdom: "root"
tasks:
- name: Create a Script to later execute
fortinet.fortimanager.fmgr_dvmdb_script:
adom: "{{ device_adom }}"
state: "present"
dvmdb_script:
name: "{{ script_name }}"
desc: "A script created via Ansible"
content: |
config system global
set remoteauthtimeout 80
end
type: "cli"
- name: Run the Script
fortinet.fortimanager.fmgr_dvmdb_script_execute:
adom: "{{ device_adom }}"
dvmdb_script_execute:
adom: "{{ device_adom }}"
script: "{{ script_name }}"
scope:
- name: "{{ device_name }}"
vdom: "{{ device_vdom }}"
register: running_task
- name: Inspect the Task Status
fortinet.fortimanager.fmgr_fact:
facts:
selector: "task_task"
params:
task: "{{ running_task.meta.response_data.task }}"
register: taskinfo
until: taskinfo.meta.response_data.percent == 100
retries: 30
delay: 3
failed_when: taskinfo.meta.response_data.state == 'error'
- name: Example playbook
hosts: fortimanagers
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Script table.
fortinet.fortimanager.fmgr_dvmdb_script:
bypass_validation: false
adom: ansible
state: present
dvmdb_script:
content: "ansiblt-test"
name: "ansible-test"
target: device_database
type: cli
- name: Gathering fortimanager facts
hosts: fortimanagers
gather_facts: false
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Retrieve all the scripts in the device
fortinet.fortimanager.fmgr_fact:
facts:
selector: "dvmdb_script"
params:
adom: "ansible"
script: "your_value"
- name: Example playbook
hosts: fortimanagers
connection: httpapi
vars:
ansible_httpapi_use_ssl: true
ansible_httpapi_validate_certs: false
ansible_httpapi_port: 443
tasks:
- name: Enable workspace mode
fortinet.fortimanager.fmgr_system_global:
system_global:
adom-status: enable
workspace-mode: normal
- name: Script table.
fortinet.fortimanager.fmgr_dvmdb_script:
bypass_validation: false
adom: root
state: present
workspace_locking_adom: "root"
dvmdb_script:
content: "ansiblt-test"
name: "fooscript000"
target: device_database
type: cli
- name: Verify script table
fortinet.fortimanager.fmgr_fact:
facts:
selector: "dvmdb_script"
params:
adom: "root"
script: "fooscript000"
register: info
failed_when: info.meta.response_code != 0
- name: Restore workspace mode
fortinet.fortimanager.fmgr_system_global:
system_global:
adom-status: enable
workspace-mode: disabled
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для этого модуля:
Ключ | Описание |
|---|---|
meta словарь | Результат запроса. Возвращается: всегда |
|
request_url строка |
Полный URL запроса. Возвращается: всегда Пример: |
|
response_code целое число |
Статус API запроса. Возвращается: всегда Пример: |
|
response_data список / элементы=строка |
Ответ API. Возвращается: всегда |
|
response_message строка |
Дескриптивное сообщение ответа API. Возвращается: всегда Пример: |
|
system_information словарь |
Информация о целевой системе. Возвращается: всегда |
rc целое число | Статус запроса. Возвращается: всегда Пример: |
version_check_warning список / элементы=строка | Предупреждение, если параметры, используемые в плейбуке, не поддерживаются текущей версией FortiManager. Возвращается: сложно |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/fortinet/fortimanager/fmgr_dvmdb_script_module.html