fix: transfert part a secretmanager in rougail
This commit is contained in:
parent
9a10e641f7
commit
cd7f148963
17 changed files with 96 additions and 37 deletions
|
|
@ -1,6 +1,6 @@
|
|||
"""
|
||||
Silique (https://www.silique.fr)
|
||||
Copyright (C) 2025
|
||||
Copyright (C) 2025-2026
|
||||
|
||||
distribued with GPL-2 or later license
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"""
|
||||
Silique (https://www.silique.fr)
|
||||
Copyright (C) 2025
|
||||
Copyright (C) 2025-2026
|
||||
|
||||
distribued with GPL-2 or later license
|
||||
|
||||
|
|
@ -44,7 +44,4 @@ class Annotator(Walk):
|
|||
path = variable.path
|
||||
self.objectspace.informations.add(path, "bitwarden", True)
|
||||
self.objectspace.informations.add(path, "default_value_makes_sense", False)
|
||||
if "force_default_on_freeze" in self.objectspace.properties.get(path):
|
||||
self.objectspace.properties.remove(path, "force_default_on_freeze")
|
||||
self.objectspace.properties.add(path, "novalidator", True)
|
||||
variable.default = variable.secret_manager
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"""
|
||||
Silique (https://www.silique.fr)
|
||||
Copyright (C) 2025
|
||||
Copyright (C) 2025-2026
|
||||
|
||||
distribued with GPL-2 or later license
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"""
|
||||
Silique (https://www.silique.fr)
|
||||
Copyright (C) 2025
|
||||
Copyright (C) 2025-2026
|
||||
|
||||
distribued with GPL-2 or later license
|
||||
|
||||
|
|
@ -214,7 +214,7 @@ def set_password(cache, command, *, option):
|
|||
cache[key] = data.copy()
|
||||
if not data:
|
||||
raise ConfigError(
|
||||
_('item "{0}" in Bitwarden is not found"').format(
|
||||
_('item "{0}" in Bitwarden is not found').format(
|
||||
key
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
"""
|
||||
Silique (https://www.silique.fr)
|
||||
Copyright (C) 2025
|
||||
Copyright (C) 2025-2026
|
||||
|
||||
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
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
"item \"1_secret_unknown - environment - service - user\" in Bitwarden is not found\""
|
||||
"item \"1_secret_unknown - environment - service - user\" in Bitwarden is not found"
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"errors": [],
|
||||
"warnings": []
|
||||
}
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"errors": [],
|
||||
"warnings": []
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"rougail.leader.username": [
|
||||
{
|
||||
"rougail.leader.username": "bitwarden_username",
|
||||
"rougail.leader.secret": "bitwarden_password"
|
||||
},
|
||||
{
|
||||
"rougail.leader.username": "bitwarden_username_2",
|
||||
"rougail.leader.secret": "bitwarden_password_2"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
"rougail.leader.username": [
|
||||
{
|
||||
"rougail.leader.username": "example_login",
|
||||
"rougail.leader.secret": "Ex4mpL3_P4ssw0rD"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -3,38 +3,17 @@
|
|||
"warnings": [
|
||||
[
|
||||
[
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\", it will be ignored",
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found, it will be ignored",
|
||||
"rougail.leader.username",
|
||||
null
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\", it will be ignored",
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found, it will be ignored",
|
||||
"rougail.leader.username",
|
||||
null
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\", it will be ignored when loading from Bitwarden",
|
||||
"rougail.leader.secret",
|
||||
null
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\", it will be ignored when loading from Bitwarden",
|
||||
"rougail.leader.secret",
|
||||
null
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\", it will be ignored when loading from Bitwarden",
|
||||
"rougail.leader.secret",
|
||||
null
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
|
|
@ -1 +1 @@
|
|||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found\""
|
||||
"item \"3_leadership_secret - environment - service - unknown\" in Bitwarden is not found"
|
||||
|
|
@ -1,6 +1,12 @@
|
|||
{
|
||||
"errors": [],
|
||||
"warnings": [
|
||||
"variable or family \"rougail.modified_variable_single\" does not exist, it will be ignored when loading from By Hand"
|
||||
[
|
||||
[
|
||||
"variable or family \"modified_variable_single\" does not exist so cannot load \"rougail.modified_variable_single\", it will be ignored when loading from By Hand",
|
||||
"rougail",
|
||||
null
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
|
|
@ -1,6 +1,12 @@
|
|||
{
|
||||
"errors": [],
|
||||
"warnings": [
|
||||
"variable or family \"rougail.modified_variable\" does not exist, it will be ignored when loading from By Hand"
|
||||
[
|
||||
[
|
||||
"variable or family \"modified_variable\" does not exist so cannot load \"rougail.modified_variable\", it will be ignored when loading from By Hand",
|
||||
"rougail",
|
||||
null
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
|
|
@ -1,6 +1,12 @@
|
|||
{
|
||||
"errors": [],
|
||||
"warnings": [
|
||||
"variable or family \"rougail.modified_variable\" does not exist, it will be ignored when loading from By Hand"
|
||||
[
|
||||
[
|
||||
"variable or family \"modified_variable\" does not exist so cannot load \"rougail.modified_variable\", it will be ignored when loading from By Hand",
|
||||
"rougail",
|
||||
null
|
||||
]
|
||||
]
|
||||
]
|
||||
}
|
||||
26
tests/structures/3_leadership_secret_hidden/00-base.yml
Normal file
26
tests/structures/3_leadership_secret_hidden/00-base.yml
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
---
|
||||
version: 1.1
|
||||
|
||||
leader:
|
||||
type: leadership
|
||||
|
||||
username:
|
||||
description: the username
|
||||
type: unix_user
|
||||
secret_manager:
|
||||
host: test
|
||||
project: 3_leadership_secret
|
||||
environment: environment
|
||||
service: service
|
||||
user: user
|
||||
|
||||
secret:
|
||||
description: the secret
|
||||
type: secret
|
||||
secret_manager:
|
||||
host: test
|
||||
project: 3_leadership_secret
|
||||
environment: environment
|
||||
service: service
|
||||
user: user
|
||||
hidden: true
|
||||
|
|
@ -33,6 +33,7 @@ def _test_structural_files(test_dir, command, *, env=False, modified=False, mock
|
|||
if modified:
|
||||
generated_user_data.insert(0, {'source': 'By Hand', 'errors': [], 'warnings': [], 'values': {'rougail.modified_variable': ['user_1', 'user_2'], 'rougail.modified_variable_single': 'user_2'}})
|
||||
errors = rougail.user_data(generated_user_data)
|
||||
config.property.read_only()
|
||||
#expected output
|
||||
try:
|
||||
config_dict = dict(config_to_dict(config.value.get()))
|
||||
|
|
@ -119,6 +120,16 @@ def test_structural_files_2_username_secret_invalid_bw():
|
|||
_test_structural_files(test_dir / '2_username_secret_invalid', 'bw')
|
||||
|
||||
|
||||
def test_structural_files_3_leadership_secret_hidden_rbw():
|
||||
"tests the output"
|
||||
_test_structural_files(test_dir / '3_leadership_secret_hidden', 'rbw')
|
||||
|
||||
|
||||
def test_structural_files_3_leadership_secret_hidden_bw():
|
||||
"tests the output"
|
||||
_test_structural_files(test_dir / '3_leadership_secret_hidden', 'bw')
|
||||
|
||||
|
||||
def test_structural_files_3_leadership_secret_rbw():
|
||||
"tests the output"
|
||||
_test_structural_files(test_dir / '3_leadership_secret', 'rbw')
|
||||
|
|
|
|||
Loading…
Reference in a new issue