Skip to content

Commit 7cc099f

Browse files
authored
Export applications and portfolios permissions as list (#2061)
1 parent ee89b91 commit 7cc099f

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

sonar/applications.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ def export(self, export_settings: types.ConfigSettings) -> types.ObjectJsonRepr:
340340
"visibility": self.visibility(),
341341
# 'projects': self.projects(),
342342
"branches": {br.name: br.export() for br in self.branches().values()},
343-
"permissions": self.permissions().export(export_settings=export_settings),
343+
"permissions": util.perms_to_list(self.permissions().export(export_settings=export_settings)),
344344
"tags": self.get_tags(),
345345
}
346346
)

sonar/portfolios.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ def to_json(self, export_settings: types.ConfigSettings) -> types.ObjectJsonRepr
368368
subportfolios = self.sub_portfolios()
369369
if not self.is_sub_portfolio():
370370
json_data["visibility"] = self._visibility
371-
json_data["permissions"] = self.permissions().export(export_settings=export_settings)
371+
json_data["permissions"] = util.perms_to_list(self.permissions().export(export_settings=export_settings))
372372
json_data["tags"] = self._tags
373373
if subportfolios:
374374
json_data["portfolios"] = {}

sonar/utilities.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -855,4 +855,6 @@ def order_list(l: list[str], *key_order) -> list[str]:
855855

856856
def perms_to_list(perms: dict[str, Any]) -> list[str, Any]:
857857
"""Converts permissions in dict format to list format"""
858+
if not perms:
859+
return perms
858860
return dict_to_list(perms.get("groups", {}), "group", "permissions") + dict_to_list(perms.get("users", {}), "user", "permissions")

0 commit comments

Comments
 (0)