""" Silique (https://www.silique.fr) Copyright (C) 2024-2025 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . """ from .i18n import _ def get_rougail_config( *, backward_compatibility: bool = True, # pylint: disable=unused-argument ) -> dict: """get rougail config for ansible""" # redefine ansible family if already exists (for output) # or create a new only only for user data options = f""" ansible: description: {_("Configuration of user data Ansible")} disabled: type: jinja jinja: | {{% if 'ansible' not in step.user_data %}} disabled {{% endif %}} filename: description: {_("Ansible filename inventory")} type: unix_filename multi: true params: allow_relative: True test_existence: True types: - file disabled: type: jinja jinja: | {{% if 'ansible' not in step.user_data %}} disabled {{% endif %}} secret: description: {_("Secret to decrypt file")} type: secret disabled: type: jinja jinja: | {{% if 'ansible' not in step.user_data %}} disabled {{% endif %}} file_with_secrets: description: {_("Ansible file that may contain secrets")} default: all choices: - all - first - last - none """ return { "name": "ansible", "process": "user data", "options": options, "level": 60, } __all__ = ("get_rougail_config",)