We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Rename custom_parameters.json to template_schema.json (inc in python code)


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `api_app/models/schemas/user_resource_template.py`
Content:
```
1 from pydantic import Field
2 
3 from models.domain.resource import ResourceType
4 from models.domain.resource_template import Property
5 from models.domain.user_resource_template import UserResourceTemplate
6 from models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse
7 
8 
9 def get_sample_user_resource_template_object(template_name: str = "guacamole-vm") -> UserResourceTemplate:
10     return UserResourceTemplate(
11         id="a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb",
12         name=template_name,
13         parentWorkspaceService="guacamole",
14         description="user resource bundle",
15         version="0.1.0",
16         resourceType=ResourceType.UserResource,
17         current=True,
18         type="object",
19         required=["display_name", "description"],
20         properties={
21             "display_name": Property(type="string"),
22             "description": Property(type="string")
23         }
24     )
25 
26 
27 def get_sample_user_resource_template() -> dict:
28     return get_sample_user_resource_template_object().dict()
29 
30 
31 def get_sample_user_resource_template_in_response() -> dict:
32     workspace_template = get_sample_user_resource_template()
33     return workspace_template
34 
35 
36 class UserResourceTemplateInCreate(ResourceTemplateInCreate):
37 
38     class Config:
39         schema_extra = {
40             "example": {
41                 "name": "my-tre-user-resource",
42                 "version": "0.0.1",
43                 "current": "true",
44                 "json_schema": {
45                     "$schema": "http://json-schema.org/draft-07/schema",
46                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/user_resource.json",
47                     "type": "object",
48                     "title": "My User Resource Template Custom Parameters",
49                     "description": "These parameters are specific to my user resource template",
50                     "required": [],
51                     "properties": {}
52                 }
53             }
54         }
55 
56 
57 class UserResourceTemplateInResponse(ResourceTemplateInResponse):
58     parentWorkspaceService: str = Field(title="Workspace type", description="Bundle name")
59 
60     class Config:
61         schema_extra = {
62             "example": get_sample_user_resource_template_in_response()
63         }
64
```

Path: `api_app/models/schemas/workspace_template.py`
Content:
```
1 from models.domain.resource import ResourceType
2 from models.domain.resource_template import ResourceTemplate, Property
3 from models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse
4 
5 
6 def get_sample_workspace_template_object(template_name: str = "tre-workspace-base") -> ResourceTemplate:
7     return ResourceTemplate(
8         id="a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb",
9         name=template_name,
10         description="base workspace bundle",
11         version="0.1.0",
12         resourceType=ResourceType.Workspace,
13         current=True,
14         type="object",
15         required=["display_name", "description", "app_id"],
16         properties={
17             "display_name": Property(type="string"),
18             "description": Property(type="string"),
19             "app_id": Property(type="string"),
20             "address_space": Property(type="string", default="10.2.1.0/24", description="VNet address space for the workspace services")
21         }
22     )
23 
24 
25 def get_sample_workspace_template_in_response() -> dict:
26     workspace_template = get_sample_workspace_template_object().dict()
27     workspace_template["system_properties"] = {
28         "tre_id": Property(type="string"),
29         "workspace_id": Property(type="string"),
30         "azure_location": Property(type="string"),
31     }
32     return workspace_template
33 
34 
35 class WorkspaceTemplateInCreate(ResourceTemplateInCreate):
36 
37     class Config:
38         schema_extra = {
39             "example": {
40                 "name": "my-tre-workspace",
41                 "version": "0.0.1",
42                 "current": "true",
43                 "json_schema": {
44                     "$schema": "http://json-schema.org/draft-07/schema",
45                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace.json",
46                     "type": "object",
47                     "title": "My Workspace Template Custom Parameters",
48                     "description": "These parameters are specific to my workspace template",
49                     "required": [
50                         "vm_size",
51                         "no_of_vms"
52                     ],
53                     "properties": {
54                         "vm_size": {
55                             "$id": "#/properties/vm_size",
56                             "type": "string",
57                             "title": "VM size",
58                             "description": "Size of the VMs in my workspace",
59                             "default": "Standard_A1",
60                             "enum": [
61                                 "Standard_A1",
62                                 "Standard_A2",
63                                 "Standard_A3"
64                             ]
65                         },
66                         "no_of_vms": {
67                             "$id": "#/properties/no_of_vms",
68                             "type": "integer",
69                             "title": "Number of VMs",
70                             "description": "Number of virtual machines to be deployed in the workspace",
71                             "default": 0
72                         }
73                     }
74                 }
75             }
76         }
77 
78 
79 class WorkspaceTemplateInResponse(ResourceTemplateInResponse):
80 
81     class Config:
82         schema_extra = {
83             "example": get_sample_workspace_template_in_response()
84         }
85
```

Path: `api_app/models/schemas/workspace_service_template.py`
Content:
```
1 from models.domain.resource import ResourceType
2 from models.domain.resource_template import ResourceTemplate, Property
3 from models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse
4 
5 
6 def get_sample_workspace_service_template_object(template_name: str = "tre-workspace-service") -> ResourceTemplate:
7     return ResourceTemplate(
8         id="a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb",
9         name=template_name,
10         description="workspace service bundle",
11         version="0.1.0",
12         resourceType=ResourceType.WorkspaceService,
13         current=True,
14         type="object",
15         required=["display_name", "description"],
16         properties={
17             "display_name": Property(type="string"),
18             "description": Property(type="string")
19         }
20     )
21 
22 
23 def get_sample_workspace_service_template() -> dict:
24     return get_sample_workspace_service_template_object().dict()
25 
26 
27 def get_sample_workspace_service_template_in_response() -> dict:
28     workspace_template = get_sample_workspace_service_template()
29     workspace_template["system_properties"] = {
30         "tre_id": Property(type="string"),
31         "workspace_id": Property(type="string"),
32         "azure_location": Property(type="string"),
33     }
34     return workspace_template
35 
36 
37 class WorkspaceServiceTemplateInCreate(ResourceTemplateInCreate):
38 
39     class Config:
40         schema_extra = {
41             "example": {
42                 "name": "my-tre-workspace-service",
43                 "version": "0.0.1",
44                 "current": "true",
45                 "json_schema": {
46                     "$schema": "http://json-schema.org/draft-07/schema",
47                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace_service.json",
48                     "type": "object",
49                     "title": "My Workspace Service Template Custom Parameters",
50                     "description": "These parameters are specific to my workspace service template",
51                     "required": [],
52                     "properties": {}
53                 }
54             }
55         }
56 
57 
58 class WorkspaceServiceTemplateInResponse(ResourceTemplateInResponse):
59 
60     class Config:
61         schema_extra = {
62             "example": get_sample_workspace_service_template_in_response()
63         }
64
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/api_app/models/schemas/user_resource_template.py b/api_app/models/schemas/user_resource_template.py
--- a/api_app/models/schemas/user_resource_template.py
+++ b/api_app/models/schemas/user_resource_template.py
@@ -45,8 +45,8 @@
                     "$schema": "http://json-schema.org/draft-07/schema",
                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/user_resource.json",
                     "type": "object",
-                    "title": "My User Resource Template Custom Parameters",
-                    "description": "These parameters are specific to my user resource template",
+                    "title": "My User Resource Template",
+                    "description": "These is a test user resource template schema",
                     "required": [],
                     "properties": {}
                 }
diff --git a/api_app/models/schemas/workspace_service_template.py b/api_app/models/schemas/workspace_service_template.py
--- a/api_app/models/schemas/workspace_service_template.py
+++ b/api_app/models/schemas/workspace_service_template.py
@@ -46,8 +46,8 @@
                     "$schema": "http://json-schema.org/draft-07/schema",
                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace_service.json",
                     "type": "object",
-                    "title": "My Workspace Service Template Custom Parameters",
-                    "description": "These parameters are specific to my workspace service template",
+                    "title": "My Workspace Service Template",
+                    "description": "These is a test workspace service resource template schema",
                     "required": [],
                     "properties": {}
                 }
diff --git a/api_app/models/schemas/workspace_template.py b/api_app/models/schemas/workspace_template.py
--- a/api_app/models/schemas/workspace_template.py
+++ b/api_app/models/schemas/workspace_template.py
@@ -44,8 +44,8 @@
                     "$schema": "http://json-schema.org/draft-07/schema",
                     "$id": "https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace.json",
                     "type": "object",
-                    "title": "My Workspace Template Custom Parameters",
-                    "description": "These parameters are specific to my workspace template",
+                    "title": "My Workspace Template",
+                    "description": "This is a test workspace template schema",
                     "required": [
                         "vm_size",
                         "no_of_vms"

{"golden_diff": "diff --git a/api_app/models/schemas/user_resource_template.py b/api_app/models/schemas/user_resource_template.py\n--- a/api_app/models/schemas/user_resource_template.py\n+++ b/api_app/models/schemas/user_resource_template.py\n@@ -45,8 +45,8 @@\n                     \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                     \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/user_resource.json\",\n                     \"type\": \"object\",\n-                    \"title\": \"My User Resource Template Custom Parameters\",\n-                    \"description\": \"These parameters are specific to my user resource template\",\n+                    \"title\": \"My User Resource Template\",\n+                    \"description\": \"These is a test user resource template schema\",\n                     \"required\": [],\n                     \"properties\": {}\n                 }\ndiff --git a/api_app/models/schemas/workspace_service_template.py b/api_app/models/schemas/workspace_service_template.py\n--- a/api_app/models/schemas/workspace_service_template.py\n+++ b/api_app/models/schemas/workspace_service_template.py\n@@ -46,8 +46,8 @@\n                     \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                     \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace_service.json\",\n                     \"type\": \"object\",\n-                    \"title\": \"My Workspace Service Template Custom Parameters\",\n-                    \"description\": \"These parameters are specific to my workspace service template\",\n+                    \"title\": \"My Workspace Service Template\",\n+                    \"description\": \"These is a test workspace service resource template schema\",\n                     \"required\": [],\n                     \"properties\": {}\n                 }\ndiff --git a/api_app/models/schemas/workspace_template.py b/api_app/models/schemas/workspace_template.py\n--- a/api_app/models/schemas/workspace_template.py\n+++ b/api_app/models/schemas/workspace_template.py\n@@ -44,8 +44,8 @@\n                     \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                     \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace.json\",\n                     \"type\": \"object\",\n-                    \"title\": \"My Workspace Template Custom Parameters\",\n-                    \"description\": \"These parameters are specific to my workspace template\",\n+                    \"title\": \"My Workspace Template\",\n+                    \"description\": \"This is a test workspace template schema\",\n                     \"required\": [\n                         \"vm_size\",\n                         \"no_of_vms\"\n", "issue": "Rename custom_parameters.json to template_schema.json (inc in python code)\n\n", "before_files": [{"content": "from pydantic import Field\n\nfrom models.domain.resource import ResourceType\nfrom models.domain.resource_template import Property\nfrom models.domain.user_resource_template import UserResourceTemplate\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_user_resource_template_object(template_name: str = \"guacamole-vm\") -> UserResourceTemplate:\n    return UserResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        parentWorkspaceService=\"guacamole\",\n        description=\"user resource bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.UserResource,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\")\n        }\n    )\n\n\ndef get_sample_user_resource_template() -> dict:\n    return get_sample_user_resource_template_object().dict()\n\n\ndef get_sample_user_resource_template_in_response() -> dict:\n    workspace_template = get_sample_user_resource_template()\n    return workspace_template\n\n\nclass UserResourceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-user-resource\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/user_resource.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My User Resource Template Custom Parameters\",\n                    \"description\": \"These parameters are specific to my user resource template\",\n                    \"required\": [],\n                    \"properties\": {}\n                }\n            }\n        }\n\n\nclass UserResourceTemplateInResponse(ResourceTemplateInResponse):\n    parentWorkspaceService: str = Field(title=\"Workspace type\", description=\"Bundle name\")\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_user_resource_template_in_response()\n        }\n", "path": "api_app/models/schemas/user_resource_template.py"}, {"content": "from models.domain.resource import ResourceType\nfrom models.domain.resource_template import ResourceTemplate, Property\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_workspace_template_object(template_name: str = \"tre-workspace-base\") -> ResourceTemplate:\n    return ResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        description=\"base workspace bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.Workspace,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\", \"app_id\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\"),\n            \"app_id\": Property(type=\"string\"),\n            \"address_space\": Property(type=\"string\", default=\"10.2.1.0/24\", description=\"VNet address space for the workspace services\")\n        }\n    )\n\n\ndef get_sample_workspace_template_in_response() -> dict:\n    workspace_template = get_sample_workspace_template_object().dict()\n    workspace_template[\"system_properties\"] = {\n        \"tre_id\": Property(type=\"string\"),\n        \"workspace_id\": Property(type=\"string\"),\n        \"azure_location\": Property(type=\"string\"),\n    }\n    return workspace_template\n\n\nclass WorkspaceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-workspace\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My Workspace Template Custom Parameters\",\n                    \"description\": \"These parameters are specific to my workspace template\",\n                    \"required\": [\n                        \"vm_size\",\n                        \"no_of_vms\"\n                    ],\n                    \"properties\": {\n                        \"vm_size\": {\n                            \"$id\": \"#/properties/vm_size\",\n                            \"type\": \"string\",\n                            \"title\": \"VM size\",\n                            \"description\": \"Size of the VMs in my workspace\",\n                            \"default\": \"Standard_A1\",\n                            \"enum\": [\n                                \"Standard_A1\",\n                                \"Standard_A2\",\n                                \"Standard_A3\"\n                            ]\n                        },\n                        \"no_of_vms\": {\n                            \"$id\": \"#/properties/no_of_vms\",\n                            \"type\": \"integer\",\n                            \"title\": \"Number of VMs\",\n                            \"description\": \"Number of virtual machines to be deployed in the workspace\",\n                            \"default\": 0\n                        }\n                    }\n                }\n            }\n        }\n\n\nclass WorkspaceTemplateInResponse(ResourceTemplateInResponse):\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_workspace_template_in_response()\n        }\n", "path": "api_app/models/schemas/workspace_template.py"}, {"content": "from models.domain.resource import ResourceType\nfrom models.domain.resource_template import ResourceTemplate, Property\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_workspace_service_template_object(template_name: str = \"tre-workspace-service\") -> ResourceTemplate:\n    return ResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        description=\"workspace service bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.WorkspaceService,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\")\n        }\n    )\n\n\ndef get_sample_workspace_service_template() -> dict:\n    return get_sample_workspace_service_template_object().dict()\n\n\ndef get_sample_workspace_service_template_in_response() -> dict:\n    workspace_template = get_sample_workspace_service_template()\n    workspace_template[\"system_properties\"] = {\n        \"tre_id\": Property(type=\"string\"),\n        \"workspace_id\": Property(type=\"string\"),\n        \"azure_location\": Property(type=\"string\"),\n    }\n    return workspace_template\n\n\nclass WorkspaceServiceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-workspace-service\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace_service.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My Workspace Service Template Custom Parameters\",\n                    \"description\": \"These parameters are specific to my workspace service template\",\n                    \"required\": [],\n                    \"properties\": {}\n                }\n            }\n        }\n\n\nclass WorkspaceServiceTemplateInResponse(ResourceTemplateInResponse):\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_workspace_service_template_in_response()\n        }\n", "path": "api_app/models/schemas/workspace_service_template.py"}], "after_files": [{"content": "from pydantic import Field\n\nfrom models.domain.resource import ResourceType\nfrom models.domain.resource_template import Property\nfrom models.domain.user_resource_template import UserResourceTemplate\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_user_resource_template_object(template_name: str = \"guacamole-vm\") -> UserResourceTemplate:\n    return UserResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        parentWorkspaceService=\"guacamole\",\n        description=\"user resource bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.UserResource,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\")\n        }\n    )\n\n\ndef get_sample_user_resource_template() -> dict:\n    return get_sample_user_resource_template_object().dict()\n\n\ndef get_sample_user_resource_template_in_response() -> dict:\n    workspace_template = get_sample_user_resource_template()\n    return workspace_template\n\n\nclass UserResourceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-user-resource\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/user_resource.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My User Resource Template\",\n                    \"description\": \"These is a test user resource template schema\",\n                    \"required\": [],\n                    \"properties\": {}\n                }\n            }\n        }\n\n\nclass UserResourceTemplateInResponse(ResourceTemplateInResponse):\n    parentWorkspaceService: str = Field(title=\"Workspace type\", description=\"Bundle name\")\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_user_resource_template_in_response()\n        }\n", "path": "api_app/models/schemas/user_resource_template.py"}, {"content": "from models.domain.resource import ResourceType\nfrom models.domain.resource_template import ResourceTemplate, Property\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_workspace_template_object(template_name: str = \"tre-workspace-base\") -> ResourceTemplate:\n    return ResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        description=\"base workspace bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.Workspace,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\", \"app_id\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\"),\n            \"app_id\": Property(type=\"string\"),\n            \"address_space\": Property(type=\"string\", default=\"10.2.1.0/24\", description=\"VNet address space for the workspace services\")\n        }\n    )\n\n\ndef get_sample_workspace_template_in_response() -> dict:\n    workspace_template = get_sample_workspace_template_object().dict()\n    workspace_template[\"system_properties\"] = {\n        \"tre_id\": Property(type=\"string\"),\n        \"workspace_id\": Property(type=\"string\"),\n        \"azure_location\": Property(type=\"string\"),\n    }\n    return workspace_template\n\n\nclass WorkspaceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-workspace\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My Workspace Template\",\n                    \"description\": \"This is a test workspace template schema\",\n                    \"required\": [\n                        \"vm_size\",\n                        \"no_of_vms\"\n                    ],\n                    \"properties\": {\n                        \"vm_size\": {\n                            \"$id\": \"#/properties/vm_size\",\n                            \"type\": \"string\",\n                            \"title\": \"VM size\",\n                            \"description\": \"Size of the VMs in my workspace\",\n                            \"default\": \"Standard_A1\",\n                            \"enum\": [\n                                \"Standard_A1\",\n                                \"Standard_A2\",\n                                \"Standard_A3\"\n                            ]\n                        },\n                        \"no_of_vms\": {\n                            \"$id\": \"#/properties/no_of_vms\",\n                            \"type\": \"integer\",\n                            \"title\": \"Number of VMs\",\n                            \"description\": \"Number of virtual machines to be deployed in the workspace\",\n                            \"default\": 0\n                        }\n                    }\n                }\n            }\n        }\n\n\nclass WorkspaceTemplateInResponse(ResourceTemplateInResponse):\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_workspace_template_in_response()\n        }\n", "path": "api_app/models/schemas/workspace_template.py"}, {"content": "from models.domain.resource import ResourceType\nfrom models.domain.resource_template import ResourceTemplate, Property\nfrom models.schemas.resource_template import ResourceTemplateInCreate, ResourceTemplateInResponse\n\n\ndef get_sample_workspace_service_template_object(template_name: str = \"tre-workspace-service\") -> ResourceTemplate:\n    return ResourceTemplate(\n        id=\"a7a7a7bd-7f4e-4a4e-b970-dc86a6b31dfb\",\n        name=template_name,\n        description=\"workspace service bundle\",\n        version=\"0.1.0\",\n        resourceType=ResourceType.WorkspaceService,\n        current=True,\n        type=\"object\",\n        required=[\"display_name\", \"description\"],\n        properties={\n            \"display_name\": Property(type=\"string\"),\n            \"description\": Property(type=\"string\")\n        }\n    )\n\n\ndef get_sample_workspace_service_template() -> dict:\n    return get_sample_workspace_service_template_object().dict()\n\n\ndef get_sample_workspace_service_template_in_response() -> dict:\n    workspace_template = get_sample_workspace_service_template()\n    workspace_template[\"system_properties\"] = {\n        \"tre_id\": Property(type=\"string\"),\n        \"workspace_id\": Property(type=\"string\"),\n        \"azure_location\": Property(type=\"string\"),\n    }\n    return workspace_template\n\n\nclass WorkspaceServiceTemplateInCreate(ResourceTemplateInCreate):\n\n    class Config:\n        schema_extra = {\n            \"example\": {\n                \"name\": \"my-tre-workspace-service\",\n                \"version\": \"0.0.1\",\n                \"current\": \"true\",\n                \"json_schema\": {\n                    \"$schema\": \"http://json-schema.org/draft-07/schema\",\n                    \"$id\": \"https://github.com/microsoft/AzureTRE/templates/workspaces/myworkspace/workspace_service.json\",\n                    \"type\": \"object\",\n                    \"title\": \"My Workspace Service Template\",\n                    \"description\": \"These is a test workspace service resource template schema\",\n                    \"required\": [],\n                    \"properties\": {}\n                }\n            }\n        }\n\n\nclass WorkspaceServiceTemplateInResponse(ResourceTemplateInResponse):\n\n    class Config:\n        schema_extra = {\n            \"example\": get_sample_workspace_service_template_in_response()\n        }\n", "path": "api_app/models/schemas/workspace_service_template.py"}]}