Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit 62733b09 authored by Frederico SEQUEIRA's avatar Frederico SEQUEIRA
Browse files

:hammer: :card_box: Add template data and fix to universal script

parent 7508fcd6
No related branches found
No related tags found
1 merge request!140V3 custom script distribution
Pipeline #279336 passed
......@@ -113,28 +113,46 @@
"assigned_object": {"name":"vmware-auto","object_type":"clustertype"}
},
{
"object_type": "group",
"name": "SuperAccess"
"object_type": "providercredentials",
"provider_username": "vmware_username",
"provider_password_vault_path": "/path/vault/vmware/auto",
"assigned_object": {"name":"http://vmware/provider/auto","object_type":"cluster"}
},
{
"object_type": "group",
"name": "Administrator"
"object_type": "providercredentials",
"provider_username": "aws_username",
"provider_password_vault_path": "/path/vault/aws/auto",
"assigned_object": {"name":"http://aws/provider/auto","object_type":"cluster"}
},
{
"object_type": "providertypeextraConfig",
"extra_config_name": "vmwareauto-extraconfig",
"extra_config_description":"Extra Config for auto vmware",
"extra_config_structure": {"vmware": [{"dpg": {"type": "String","required": "true"},"datastore": {"type": "String","required": "true"},"esxi_hostname": {"type": "String","required": "true"}}]},
"assigned_object": {"name":"vmware-auto","object_type":"clustertype"}
},
{
"object_type": "providertypeextraConfig",
"extra_config_name": "awsauto-extraconfig",
"extra_config_description":"Extra Config for auto aws",
"extra_config_structure": {"aws": [{"vpc_id": {"type": "String","required": "true"},"ssh_key": {"type": "String","required": "true"},"assign_public_ip": {"type": "boolean","required": "true"},"security_group_id": {"type": "String","required": "true"}}]},
"assigned_object": {"name":"aws-auto","object_type":"clustertype"}
},
{
"object_type": "group",
"name": "Global Viewer"
"name": "SuperAccess"
},
{
"object_type": "group",
"name": "Overall Viewer"
"name": "Administrator"
},
{
"object_type": "group",
"name": "Euss"
"name": "Global Viewer"
},
{
"object_type": "group",
"name": "JRC"
"name": "Overall Viewer"
},
{
"object_type": "ObjectPermission",
......@@ -1179,12 +1197,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1204,9 +1216,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1226,9 +1235,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1248,9 +1254,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1276,12 +1279,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1301,9 +1298,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1323,9 +1317,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1345,9 +1336,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1373,12 +1361,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1398,9 +1380,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1420,9 +1399,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1442,9 +1418,6 @@
},
{
"name": "Administrator"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -1798,12 +1771,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -2050,12 +2017,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -2138,12 +2099,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -2226,12 +2181,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -2396,12 +2345,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -2812,12 +2755,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -4130,12 +4067,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -4300,12 +4231,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -4388,12 +4313,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -4476,12 +4395,6 @@
},
{
"name": "Overall Viewer"
},
{
"name": "JRC"
},
{
"name": "Euss"
}
],
"object_types": [
......@@ -7833,9 +7746,6 @@
},
{
"name": "Global Viewer"
},
{
"name": "JRC"
}
],
"object_types": [
......@@ -7915,9 +7825,6 @@
},
{
"name": "Global Viewer"
},
{
"name": "JRC"
}
],
"object_types": [
......@@ -11342,9 +11249,6 @@
},
{
"name": "Global Viewer"
},
{
"name": "JRC"
}
],
"object_types": [
......@@ -11364,9 +11268,6 @@
},
{
"name": "Administrator"
},
{
"name": "JRC"
}
],
"object_types": [
......@@ -11386,9 +11287,6 @@
},
{
"name": "Administrator"
},
{
"name": "JRC"
}
],
"object_types": [
......@@ -11408,9 +11306,6 @@
},
{
"name": "Administrator"
},
{
"name": "JRC"
}
],
"object_types": [
......
......@@ -44,7 +44,13 @@ class InitializeJsonDataScript(Script):
return
try:
content_type = ContentType.objects.filter(model=object_type.lower()).first()
#Specific logic for tag due to duplicated content type name
if object_type.lower() == "tag":
content_type = ContentType.objects.filter(model=object_type.lower(), app_label="extras").first()
else:
content_type = ContentType.objects.filter(model=object_type.lower()).first()
if not content_type:
self.log_failure(f"Error: ContentType '{object_type}' not found in NetBox.")
return
......@@ -67,6 +73,7 @@ class InitializeJsonDataScript(Script):
object_cts = []
for obj in value:
m2m_data["model_name"] = obj["model"]
m2m_data["app_label"] = obj["app_label"]
assigned_ct = ContentType.objects.filter(
model=obj["model"], app_label=obj["app_label"]
).first()
......@@ -133,7 +140,8 @@ class InitializeJsonDataScript(Script):
actions = [f"{permission_name}"]
if "object_types" in m2m_data:
model_name = m2m_data.pop("model_name")
permission_name = f"{permission_name.capitalize()} {model_name.capitalize()}"
app_name = m2m_data.pop("app_label")
permission_name = f"{permission_name.capitalize()} {model_name.capitalize()} ({app_name.capitalize()})"
filtered_data["name"] = permission_name
filtered_data["description"] = f"Automatically generated permission: {permission_name}"
filtered_data["actions"] = actions
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment