rougail-user-data-bitwarden/src/rougail/user_data_bitwarden/config.py
2025-12-20 20:36:44 +01:00

59 lines
1.8 KiB
Python

"""
Silique (https://www.silique.fr)
Copyright (C) 2025
distribued with GPL-2 or later license
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
"""
from .i18n import _
def get_rougail_config(
*,
backward_compatibility=True,
) -> dict:
options = f"""bitwarden:
description: {_("Secrets are in Bitwarden")}
help: |-
{_("Load the secrets from Bitwarden. The data is retrieved using the official command line \"bw\" or the alternative command \"rbw\" (faster). Before using Rougail, the command must be logged and unlocked.")}
disabled:
jinja: |-
{{{{ _.step.user_data is propertyerror or 'bitwarden' not in _.step.user_data }}}}
return_type: boolean
description: {_('if bitwarden is not set in "_.step.user_data"')}
command:
description: {_("Command line used to retrieve secrets")}
help: {_("Command line must be in PATH")}
choices:
- rbw
- bw
default:
- rbw
- bw
mock_enable: false # {_("Simulate password generation instead of retrieve them")}
"""
return {
"name": "bitwarden",
"process": "user data",
"options": options,
"level": 90,
}
__all__ = ("get_rougail_config",)