We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Example ADMINS should show a tuple
### Change Type

Correction

### Area

Configuration parameters

### Proposed Changes

[configuration.example.py](https://github.com/netbox-community/netbox/blob/v2.11.10/netbox/netbox/configuration.example.py#L69-L73) says "Specify one or more name and email address tuples representing NetBox administrators"

However the example given shows a list, not a tuple:

```
    # ['John Doe', 'jdoe@example.com'],
```

This does work, but a tuple would be correct according to the [Django documentation](https://docs.djangoproject.com/en/3.2/ref/settings/#admins)

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `netbox/netbox/configuration.example.py`
Content:
```
1 #########################
2 #                       #
3 #   Required settings   #
4 #                       #
5 #########################
6 
7 # This is a list of valid fully-qualified domain names (FQDNs) for the NetBox server. NetBox will not permit write
8 # access to the server via any other hostnames. The first FQDN in the list will be treated as the preferred name.
9 #
10 # Example: ALLOWED_HOSTS = ['netbox.example.com', 'netbox.internal.local']
11 ALLOWED_HOSTS = []
12 
13 # PostgreSQL database configuration. See the Django documentation for a complete list of available parameters:
14 #   https://docs.djangoproject.com/en/stable/ref/settings/#databases
15 DATABASE = {
16     'NAME': 'netbox',         # Database name
17     'USER': '',               # PostgreSQL username
18     'PASSWORD': '',           # PostgreSQL password
19     'HOST': 'localhost',      # Database server
20     'PORT': '',               # Database port (leave blank for default)
21     'CONN_MAX_AGE': 300,      # Max database connection age
22 }
23 
24 # Redis database settings. Redis is used for caching and for queuing background tasks such as webhook events. A separate
25 # configuration exists for each. Full connection details are required in both sections, and it is strongly recommended
26 # to use two separate database IDs.
27 REDIS = {
28     'tasks': {
29         'HOST': 'localhost',
30         'PORT': 6379,
31         # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel
32         # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],
33         # 'SENTINEL_SERVICE': 'netbox',
34         'PASSWORD': '',
35         'DATABASE': 0,
36         'SSL': False,
37         # Set this to True to skip TLS certificate verification
38         # This can expose the connection to attacks, be careful
39         # 'INSECURE_SKIP_TLS_VERIFY': False,
40     },
41     'caching': {
42         'HOST': 'localhost',
43         'PORT': 6379,
44         # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel
45         # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],
46         # 'SENTINEL_SERVICE': 'netbox',
47         'PASSWORD': '',
48         'DATABASE': 1,
49         'SSL': False,
50         # Set this to True to skip TLS certificate verification
51         # This can expose the connection to attacks, be careful
52         # 'INSECURE_SKIP_TLS_VERIFY': False,
53     }
54 }
55 
56 # This key is used for secure generation of random numbers and strings. It must never be exposed outside of this file.
57 # For optimal security, SECRET_KEY should be at least 50 characters in length and contain a mix of letters, numbers, and
58 # symbols. NetBox will not run without this defined. For more information, see
59 # https://docs.djangoproject.com/en/stable/ref/settings/#std:setting-SECRET_KEY
60 SECRET_KEY = ''
61 
62 
63 #########################
64 #                       #
65 #   Optional settings   #
66 #                       #
67 #########################
68 
69 # Specify one or more name and email address tuples representing NetBox administrators. These people will be notified of
70 # application errors (assuming correct email settings are provided).
71 ADMINS = [
72     # ['John Doe', 'jdoe@example.com'],
73 ]
74 
75 # URL schemes that are allowed within links in NetBox
76 ALLOWED_URL_SCHEMES = (
77     'file', 'ftp', 'ftps', 'http', 'https', 'irc', 'mailto', 'sftp', 'ssh', 'tel', 'telnet', 'tftp', 'vnc', 'xmpp',
78 )
79 
80 # Optionally display a persistent banner at the top and/or bottom of every page. HTML is allowed. To display the same
81 # content in both banners, define BANNER_TOP and set BANNER_BOTTOM = BANNER_TOP.
82 BANNER_TOP = ''
83 BANNER_BOTTOM = ''
84 
85 # Text to include on the login page above the login form. HTML is allowed.
86 BANNER_LOGIN = ''
87 
88 # Base URL path if accessing NetBox within a directory. For example, if installed at https://example.com/netbox/, set:
89 # BASE_PATH = 'netbox/'
90 BASE_PATH = ''
91 
92 # Cache timeout in seconds. Defaults to zero (disabled).
93 CACHE_TIMEOUT = 0
94 
95 # Maximum number of days to retain logged changes. Set to 0 to retain changes indefinitely. (Default: 90)
96 CHANGELOG_RETENTION = 90
97 
98 # API Cross-Origin Resource Sharing (CORS) settings. If CORS_ORIGIN_ALLOW_ALL is set to True, all origins will be
99 # allowed. Otherwise, define a list of allowed origins using either CORS_ORIGIN_WHITELIST or
100 # CORS_ORIGIN_REGEX_WHITELIST. For more information, see https://github.com/ottoyiu/django-cors-headers
101 CORS_ORIGIN_ALLOW_ALL = False
102 CORS_ORIGIN_WHITELIST = [
103     # 'https://hostname.example.com',
104 ]
105 CORS_ORIGIN_REGEX_WHITELIST = [
106     # r'^(https?://)?(\w+\.)?example\.com$',
107 ]
108 
109 # Set to True to enable server debugging. WARNING: Debugging introduces a substantial performance penalty and may reveal
110 # sensitive information about your installation. Only enable debugging while performing testing. Never enable debugging
111 # on a production system.
112 DEBUG = False
113 
114 # Email settings
115 EMAIL = {
116     'SERVER': 'localhost',
117     'PORT': 25,
118     'USERNAME': '',
119     'PASSWORD': '',
120     'USE_SSL': False,
121     'USE_TLS': False,
122     'TIMEOUT': 10,  # seconds
123     'FROM_EMAIL': '',
124 }
125 
126 # Enforcement of unique IP space can be toggled on a per-VRF basis. To enforce unique IP space within the global table
127 # (all prefixes and IP addresses not assigned to a VRF), set ENFORCE_GLOBAL_UNIQUE to True.
128 ENFORCE_GLOBAL_UNIQUE = False
129 
130 # Exempt certain models from the enforcement of view permissions. Models listed here will be viewable by all users and
131 # by anonymous users. List models in the form `<app>.<model>`. Add '*' to this list to exempt all models.
132 EXEMPT_VIEW_PERMISSIONS = [
133     # 'dcim.site',
134     # 'dcim.region',
135     # 'ipam.prefix',
136 ]
137 
138 # HTTP proxies NetBox should use when sending outbound HTTP requests (e.g. for webhooks).
139 # HTTP_PROXIES = {
140 #     'http': 'http://10.10.1.10:3128',
141 #     'https': 'http://10.10.1.10:1080',
142 # }
143 
144 # IP addresses recognized as internal to the system. The debugging toolbar will be available only to clients accessing
145 # NetBox from an internal IP.
146 INTERNAL_IPS = ('127.0.0.1', '::1')
147 
148 # Enable custom logging. Please see the Django documentation for detailed guidance on configuring custom logs:
149 #   https://docs.djangoproject.com/en/stable/topics/logging/
150 LOGGING = {}
151 
152 # Setting this to True will permit only authenticated users to access any part of NetBox. By default, anonymous users
153 # are permitted to access most data in NetBox (excluding secrets) but not make any changes.
154 LOGIN_REQUIRED = False
155 
156 # The length of time (in seconds) for which a user will remain logged into the web UI before being prompted to
157 # re-authenticate. (Default: 1209600 [14 days])
158 LOGIN_TIMEOUT = None
159 
160 # Setting this to True will display a "maintenance mode" banner at the top of every page.
161 MAINTENANCE_MODE = False
162 
163 # The URL to use when mapping physical addresses or GPS coordinates
164 MAPS_URL = 'https://maps.google.com/?q='
165 
166 # An API consumer can request an arbitrary number of objects =by appending the "limit" parameter to the URL (e.g.
167 # "?limit=1000"). This setting defines the maximum limit. Setting it to 0 or None will allow an API consumer to request
168 # all objects by specifying "?limit=0".
169 MAX_PAGE_SIZE = 1000
170 
171 # The file path where uploaded media such as image attachments are stored. A trailing slash is not needed. Note that
172 # the default value of this setting is derived from the installed location.
173 # MEDIA_ROOT = '/opt/netbox/netbox/media'
174 
175 # By default uploaded media is stored on the local filesystem. Using Django-storages is also supported. Provide the
176 # class path of the storage driver in STORAGE_BACKEND and any configuration options in STORAGE_CONFIG. For example:
177 # STORAGE_BACKEND = 'storages.backends.s3boto3.S3Boto3Storage'
178 # STORAGE_CONFIG = {
179 #     'AWS_ACCESS_KEY_ID': 'Key ID',
180 #     'AWS_SECRET_ACCESS_KEY': 'Secret',
181 #     'AWS_STORAGE_BUCKET_NAME': 'netbox',
182 #     'AWS_S3_REGION_NAME': 'eu-west-1',
183 # }
184 
185 # Expose Prometheus monitoring metrics at the HTTP endpoint '/metrics'
186 METRICS_ENABLED = False
187 
188 # Credentials that NetBox will uses to authenticate to devices when connecting via NAPALM.
189 NAPALM_USERNAME = ''
190 NAPALM_PASSWORD = ''
191 
192 # NAPALM timeout (in seconds). (Default: 30)
193 NAPALM_TIMEOUT = 30
194 
195 # NAPALM optional arguments (see https://napalm.readthedocs.io/en/latest/support/#optional-arguments). Arguments must
196 # be provided as a dictionary.
197 NAPALM_ARGS = {}
198 
199 # Determine how many objects to display per page within a list. (Default: 50)
200 PAGINATE_COUNT = 50
201 
202 # Enable installed plugins. Add the name of each plugin to the list.
203 PLUGINS = []
204 
205 # Plugins configuration settings. These settings are used by various plugins that the user may have installed.
206 # Each key in the dictionary is the name of an installed plugin and its value is a dictionary of settings.
207 # PLUGINS_CONFIG = {
208 #     'my_plugin': {
209 #         'foo': 'bar',
210 #         'buzz': 'bazz'
211 #     }
212 # }
213 
214 # When determining the primary IP address for a device, IPv6 is preferred over IPv4 by default. Set this to True to
215 # prefer IPv4 instead.
216 PREFER_IPV4 = False
217 
218 # Rack elevation size defaults, in pixels. For best results, the ratio of width to height should be roughly 10:1.
219 RACK_ELEVATION_DEFAULT_UNIT_HEIGHT = 22
220 RACK_ELEVATION_DEFAULT_UNIT_WIDTH = 220
221 
222 # Remote authentication support
223 REMOTE_AUTH_ENABLED = False
224 REMOTE_AUTH_BACKEND = 'netbox.authentication.RemoteUserBackend'
225 REMOTE_AUTH_HEADER = 'HTTP_REMOTE_USER'
226 REMOTE_AUTH_AUTO_CREATE_USER = True
227 REMOTE_AUTH_DEFAULT_GROUPS = []
228 REMOTE_AUTH_DEFAULT_PERMISSIONS = {}
229 
230 # This determines how often the GitHub API is called to check the latest release of NetBox. Must be at least 1 hour.
231 RELEASE_CHECK_TIMEOUT = 24 * 3600
232 
233 # This repository is used to check whether there is a new release of NetBox available. Set to None to disable the
234 # version check or use the URL below to check for release in the official NetBox repository.
235 RELEASE_CHECK_URL = None
236 # RELEASE_CHECK_URL = 'https://api.github.com/repos/netbox-community/netbox/releases'
237 
238 # The file path where custom reports will be stored. A trailing slash is not needed. Note that the default value of
239 # this setting is derived from the installed location.
240 # REPORTS_ROOT = '/opt/netbox/netbox/reports'
241 
242 # Maximum execution time for background tasks, in seconds.
243 RQ_DEFAULT_TIMEOUT = 300
244 
245 # The file path where custom scripts will be stored. A trailing slash is not needed. Note that the default value of
246 # this setting is derived from the installed location.
247 # SCRIPTS_ROOT = '/opt/netbox/netbox/scripts'
248 
249 # The name to use for the session cookie.
250 SESSION_COOKIE_NAME = 'sessionid'
251 
252 # By default, NetBox will store session data in the database. Alternatively, a file path can be specified here to use
253 # local file storage instead. (This can be useful for enabling authentication on a standby instance with read-only
254 # database access.) Note that the user as which NetBox runs must have read and write permissions to this path.
255 SESSION_FILE_PATH = None
256 
257 # Time zone (default: UTC)
258 TIME_ZONE = 'UTC'
259 
260 # Date/time formatting. See the following link for supported formats:
261 # https://docs.djangoproject.com/en/stable/ref/templates/builtins/#date
262 DATE_FORMAT = 'N j, Y'
263 SHORT_DATE_FORMAT = 'Y-m-d'
264 TIME_FORMAT = 'g:i a'
265 SHORT_TIME_FORMAT = 'H:i:s'
266 DATETIME_FORMAT = 'N j, Y g:i a'
267 SHORT_DATETIME_FORMAT = 'Y-m-d H:i'
268
```
--- 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/netbox/netbox/configuration.example.py b/netbox/netbox/configuration.example.py
--- a/netbox/netbox/configuration.example.py
+++ b/netbox/netbox/configuration.example.py
@@ -69,7 +69,7 @@
 # Specify one or more name and email address tuples representing NetBox administrators. These people will be notified of
 # application errors (assuming correct email settings are provided).
 ADMINS = [
-    # ['John Doe', 'jdoe@example.com'],
+    # ('John Doe', 'jdoe@example.com'),
 ]
 
 # URL schemes that are allowed within links in NetBox

{"golden_diff": "diff --git a/netbox/netbox/configuration.example.py b/netbox/netbox/configuration.example.py\n--- a/netbox/netbox/configuration.example.py\n+++ b/netbox/netbox/configuration.example.py\n@@ -69,7 +69,7 @@\n # Specify one or more name and email address tuples representing NetBox administrators. These people will be notified of\n # application errors (assuming correct email settings are provided).\n ADMINS = [\n-    # ['John Doe', 'jdoe@example.com'],\n+    # ('John Doe', 'jdoe@example.com'),\n ]\n \n # URL schemes that are allowed within links in NetBox\n", "issue": "Example ADMINS should show a tuple\n### Change Type\n\nCorrection\n\n### Area\n\nConfiguration parameters\n\n### Proposed Changes\n\n[configuration.example.py](https://github.com/netbox-community/netbox/blob/v2.11.10/netbox/netbox/configuration.example.py#L69-L73) says \"Specify one or more name and email address tuples representing NetBox administrators\"\r\n\r\nHowever the example given shows a list, not a tuple:\r\n\r\n```\r\n    # ['John Doe', 'jdoe@example.com'],\r\n```\r\n\r\nThis does work, but a tuple would be correct according to the [Django documentation](https://docs.djangoproject.com/en/3.2/ref/settings/#admins)\n", "before_files": [{"content": "#########################\n#                       #\n#   Required settings   #\n#                       #\n#########################\n\n# This is a list of valid fully-qualified domain names (FQDNs) for the NetBox server. NetBox will not permit write\n# access to the server via any other hostnames. The first FQDN in the list will be treated as the preferred name.\n#\n# Example: ALLOWED_HOSTS = ['netbox.example.com', 'netbox.internal.local']\nALLOWED_HOSTS = []\n\n# PostgreSQL database configuration. See the Django documentation for a complete list of available parameters:\n#   https://docs.djangoproject.com/en/stable/ref/settings/#databases\nDATABASE = {\n    'NAME': 'netbox',         # Database name\n    'USER': '',               # PostgreSQL username\n    'PASSWORD': '',           # PostgreSQL password\n    'HOST': 'localhost',      # Database server\n    'PORT': '',               # Database port (leave blank for default)\n    'CONN_MAX_AGE': 300,      # Max database connection age\n}\n\n# Redis database settings. Redis is used for caching and for queuing background tasks such as webhook events. A separate\n# configuration exists for each. Full connection details are required in both sections, and it is strongly recommended\n# to use two separate database IDs.\nREDIS = {\n    'tasks': {\n        'HOST': 'localhost',\n        'PORT': 6379,\n        # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel\n        # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],\n        # 'SENTINEL_SERVICE': 'netbox',\n        'PASSWORD': '',\n        'DATABASE': 0,\n        'SSL': False,\n        # Set this to True to skip TLS certificate verification\n        # This can expose the connection to attacks, be careful\n        # 'INSECURE_SKIP_TLS_VERIFY': False,\n    },\n    'caching': {\n        'HOST': 'localhost',\n        'PORT': 6379,\n        # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel\n        # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],\n        # 'SENTINEL_SERVICE': 'netbox',\n        'PASSWORD': '',\n        'DATABASE': 1,\n        'SSL': False,\n        # Set this to True to skip TLS certificate verification\n        # This can expose the connection to attacks, be careful\n        # 'INSECURE_SKIP_TLS_VERIFY': False,\n    }\n}\n\n# This key is used for secure generation of random numbers and strings. It must never be exposed outside of this file.\n# For optimal security, SECRET_KEY should be at least 50 characters in length and contain a mix of letters, numbers, and\n# symbols. NetBox will not run without this defined. For more information, see\n# https://docs.djangoproject.com/en/stable/ref/settings/#std:setting-SECRET_KEY\nSECRET_KEY = ''\n\n\n#########################\n#                       #\n#   Optional settings   #\n#                       #\n#########################\n\n# Specify one or more name and email address tuples representing NetBox administrators. These people will be notified of\n# application errors (assuming correct email settings are provided).\nADMINS = [\n    # ['John Doe', 'jdoe@example.com'],\n]\n\n# URL schemes that are allowed within links in NetBox\nALLOWED_URL_SCHEMES = (\n    'file', 'ftp', 'ftps', 'http', 'https', 'irc', 'mailto', 'sftp', 'ssh', 'tel', 'telnet', 'tftp', 'vnc', 'xmpp',\n)\n\n# Optionally display a persistent banner at the top and/or bottom of every page. HTML is allowed. To display the same\n# content in both banners, define BANNER_TOP and set BANNER_BOTTOM = BANNER_TOP.\nBANNER_TOP = ''\nBANNER_BOTTOM = ''\n\n# Text to include on the login page above the login form. HTML is allowed.\nBANNER_LOGIN = ''\n\n# Base URL path if accessing NetBox within a directory. For example, if installed at https://example.com/netbox/, set:\n# BASE_PATH = 'netbox/'\nBASE_PATH = ''\n\n# Cache timeout in seconds. Defaults to zero (disabled).\nCACHE_TIMEOUT = 0\n\n# Maximum number of days to retain logged changes. Set to 0 to retain changes indefinitely. (Default: 90)\nCHANGELOG_RETENTION = 90\n\n# API Cross-Origin Resource Sharing (CORS) settings. If CORS_ORIGIN_ALLOW_ALL is set to True, all origins will be\n# allowed. Otherwise, define a list of allowed origins using either CORS_ORIGIN_WHITELIST or\n# CORS_ORIGIN_REGEX_WHITELIST. For more information, see https://github.com/ottoyiu/django-cors-headers\nCORS_ORIGIN_ALLOW_ALL = False\nCORS_ORIGIN_WHITELIST = [\n    # 'https://hostname.example.com',\n]\nCORS_ORIGIN_REGEX_WHITELIST = [\n    # r'^(https?://)?(\\w+\\.)?example\\.com$',\n]\n\n# Set to True to enable server debugging. WARNING: Debugging introduces a substantial performance penalty and may reveal\n# sensitive information about your installation. Only enable debugging while performing testing. Never enable debugging\n# on a production system.\nDEBUG = False\n\n# Email settings\nEMAIL = {\n    'SERVER': 'localhost',\n    'PORT': 25,\n    'USERNAME': '',\n    'PASSWORD': '',\n    'USE_SSL': False,\n    'USE_TLS': False,\n    'TIMEOUT': 10,  # seconds\n    'FROM_EMAIL': '',\n}\n\n# Enforcement of unique IP space can be toggled on a per-VRF basis. To enforce unique IP space within the global table\n# (all prefixes and IP addresses not assigned to a VRF), set ENFORCE_GLOBAL_UNIQUE to True.\nENFORCE_GLOBAL_UNIQUE = False\n\n# Exempt certain models from the enforcement of view permissions. Models listed here will be viewable by all users and\n# by anonymous users. List models in the form `<app>.<model>`. Add '*' to this list to exempt all models.\nEXEMPT_VIEW_PERMISSIONS = [\n    # 'dcim.site',\n    # 'dcim.region',\n    # 'ipam.prefix',\n]\n\n# HTTP proxies NetBox should use when sending outbound HTTP requests (e.g. for webhooks).\n# HTTP_PROXIES = {\n#     'http': 'http://10.10.1.10:3128',\n#     'https': 'http://10.10.1.10:1080',\n# }\n\n# IP addresses recognized as internal to the system. The debugging toolbar will be available only to clients accessing\n# NetBox from an internal IP.\nINTERNAL_IPS = ('127.0.0.1', '::1')\n\n# Enable custom logging. Please see the Django documentation for detailed guidance on configuring custom logs:\n#   https://docs.djangoproject.com/en/stable/topics/logging/\nLOGGING = {}\n\n# Setting this to True will permit only authenticated users to access any part of NetBox. By default, anonymous users\n# are permitted to access most data in NetBox (excluding secrets) but not make any changes.\nLOGIN_REQUIRED = False\n\n# The length of time (in seconds) for which a user will remain logged into the web UI before being prompted to\n# re-authenticate. (Default: 1209600 [14 days])\nLOGIN_TIMEOUT = None\n\n# Setting this to True will display a \"maintenance mode\" banner at the top of every page.\nMAINTENANCE_MODE = False\n\n# The URL to use when mapping physical addresses or GPS coordinates\nMAPS_URL = 'https://maps.google.com/?q='\n\n# An API consumer can request an arbitrary number of objects =by appending the \"limit\" parameter to the URL (e.g.\n# \"?limit=1000\"). This setting defines the maximum limit. Setting it to 0 or None will allow an API consumer to request\n# all objects by specifying \"?limit=0\".\nMAX_PAGE_SIZE = 1000\n\n# The file path where uploaded media such as image attachments are stored. A trailing slash is not needed. Note that\n# the default value of this setting is derived from the installed location.\n# MEDIA_ROOT = '/opt/netbox/netbox/media'\n\n# By default uploaded media is stored on the local filesystem. Using Django-storages is also supported. Provide the\n# class path of the storage driver in STORAGE_BACKEND and any configuration options in STORAGE_CONFIG. For example:\n# STORAGE_BACKEND = 'storages.backends.s3boto3.S3Boto3Storage'\n# STORAGE_CONFIG = {\n#     'AWS_ACCESS_KEY_ID': 'Key ID',\n#     'AWS_SECRET_ACCESS_KEY': 'Secret',\n#     'AWS_STORAGE_BUCKET_NAME': 'netbox',\n#     'AWS_S3_REGION_NAME': 'eu-west-1',\n# }\n\n# Expose Prometheus monitoring metrics at the HTTP endpoint '/metrics'\nMETRICS_ENABLED = False\n\n# Credentials that NetBox will uses to authenticate to devices when connecting via NAPALM.\nNAPALM_USERNAME = ''\nNAPALM_PASSWORD = ''\n\n# NAPALM timeout (in seconds). (Default: 30)\nNAPALM_TIMEOUT = 30\n\n# NAPALM optional arguments (see https://napalm.readthedocs.io/en/latest/support/#optional-arguments). Arguments must\n# be provided as a dictionary.\nNAPALM_ARGS = {}\n\n# Determine how many objects to display per page within a list. (Default: 50)\nPAGINATE_COUNT = 50\n\n# Enable installed plugins. Add the name of each plugin to the list.\nPLUGINS = []\n\n# Plugins configuration settings. These settings are used by various plugins that the user may have installed.\n# Each key in the dictionary is the name of an installed plugin and its value is a dictionary of settings.\n# PLUGINS_CONFIG = {\n#     'my_plugin': {\n#         'foo': 'bar',\n#         'buzz': 'bazz'\n#     }\n# }\n\n# When determining the primary IP address for a device, IPv6 is preferred over IPv4 by default. Set this to True to\n# prefer IPv4 instead.\nPREFER_IPV4 = False\n\n# Rack elevation size defaults, in pixels. For best results, the ratio of width to height should be roughly 10:1.\nRACK_ELEVATION_DEFAULT_UNIT_HEIGHT = 22\nRACK_ELEVATION_DEFAULT_UNIT_WIDTH = 220\n\n# Remote authentication support\nREMOTE_AUTH_ENABLED = False\nREMOTE_AUTH_BACKEND = 'netbox.authentication.RemoteUserBackend'\nREMOTE_AUTH_HEADER = 'HTTP_REMOTE_USER'\nREMOTE_AUTH_AUTO_CREATE_USER = True\nREMOTE_AUTH_DEFAULT_GROUPS = []\nREMOTE_AUTH_DEFAULT_PERMISSIONS = {}\n\n# This determines how often the GitHub API is called to check the latest release of NetBox. Must be at least 1 hour.\nRELEASE_CHECK_TIMEOUT = 24 * 3600\n\n# This repository is used to check whether there is a new release of NetBox available. Set to None to disable the\n# version check or use the URL below to check for release in the official NetBox repository.\nRELEASE_CHECK_URL = None\n# RELEASE_CHECK_URL = 'https://api.github.com/repos/netbox-community/netbox/releases'\n\n# The file path where custom reports will be stored. A trailing slash is not needed. Note that the default value of\n# this setting is derived from the installed location.\n# REPORTS_ROOT = '/opt/netbox/netbox/reports'\n\n# Maximum execution time for background tasks, in seconds.\nRQ_DEFAULT_TIMEOUT = 300\n\n# The file path where custom scripts will be stored. A trailing slash is not needed. Note that the default value of\n# this setting is derived from the installed location.\n# SCRIPTS_ROOT = '/opt/netbox/netbox/scripts'\n\n# The name to use for the session cookie.\nSESSION_COOKIE_NAME = 'sessionid'\n\n# By default, NetBox will store session data in the database. Alternatively, a file path can be specified here to use\n# local file storage instead. (This can be useful for enabling authentication on a standby instance with read-only\n# database access.) Note that the user as which NetBox runs must have read and write permissions to this path.\nSESSION_FILE_PATH = None\n\n# Time zone (default: UTC)\nTIME_ZONE = 'UTC'\n\n# Date/time formatting. See the following link for supported formats:\n# https://docs.djangoproject.com/en/stable/ref/templates/builtins/#date\nDATE_FORMAT = 'N j, Y'\nSHORT_DATE_FORMAT = 'Y-m-d'\nTIME_FORMAT = 'g:i a'\nSHORT_TIME_FORMAT = 'H:i:s'\nDATETIME_FORMAT = 'N j, Y g:i a'\nSHORT_DATETIME_FORMAT = 'Y-m-d H:i'\n", "path": "netbox/netbox/configuration.example.py"}], "after_files": [{"content": "#########################\n#                       #\n#   Required settings   #\n#                       #\n#########################\n\n# This is a list of valid fully-qualified domain names (FQDNs) for the NetBox server. NetBox will not permit write\n# access to the server via any other hostnames. The first FQDN in the list will be treated as the preferred name.\n#\n# Example: ALLOWED_HOSTS = ['netbox.example.com', 'netbox.internal.local']\nALLOWED_HOSTS = []\n\n# PostgreSQL database configuration. See the Django documentation for a complete list of available parameters:\n#   https://docs.djangoproject.com/en/stable/ref/settings/#databases\nDATABASE = {\n    'NAME': 'netbox',         # Database name\n    'USER': '',               # PostgreSQL username\n    'PASSWORD': '',           # PostgreSQL password\n    'HOST': 'localhost',      # Database server\n    'PORT': '',               # Database port (leave blank for default)\n    'CONN_MAX_AGE': 300,      # Max database connection age\n}\n\n# Redis database settings. Redis is used for caching and for queuing background tasks such as webhook events. A separate\n# configuration exists for each. Full connection details are required in both sections, and it is strongly recommended\n# to use two separate database IDs.\nREDIS = {\n    'tasks': {\n        'HOST': 'localhost',\n        'PORT': 6379,\n        # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel\n        # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],\n        # 'SENTINEL_SERVICE': 'netbox',\n        'PASSWORD': '',\n        'DATABASE': 0,\n        'SSL': False,\n        # Set this to True to skip TLS certificate verification\n        # This can expose the connection to attacks, be careful\n        # 'INSECURE_SKIP_TLS_VERIFY': False,\n    },\n    'caching': {\n        'HOST': 'localhost',\n        'PORT': 6379,\n        # Comment out `HOST` and `PORT` lines and uncomment the following if using Redis Sentinel\n        # 'SENTINELS': [('mysentinel.redis.example.com', 6379)],\n        # 'SENTINEL_SERVICE': 'netbox',\n        'PASSWORD': '',\n        'DATABASE': 1,\n        'SSL': False,\n        # Set this to True to skip TLS certificate verification\n        # This can expose the connection to attacks, be careful\n        # 'INSECURE_SKIP_TLS_VERIFY': False,\n    }\n}\n\n# This key is used for secure generation of random numbers and strings. It must never be exposed outside of this file.\n# For optimal security, SECRET_KEY should be at least 50 characters in length and contain a mix of letters, numbers, and\n# symbols. NetBox will not run without this defined. For more information, see\n# https://docs.djangoproject.com/en/stable/ref/settings/#std:setting-SECRET_KEY\nSECRET_KEY = ''\n\n\n#########################\n#                       #\n#   Optional settings   #\n#                       #\n#########################\n\n# Specify one or more name and email address tuples representing NetBox administrators. These people will be notified of\n# application errors (assuming correct email settings are provided).\nADMINS = [\n    # ('John Doe', 'jdoe@example.com'),\n]\n\n# URL schemes that are allowed within links in NetBox\nALLOWED_URL_SCHEMES = (\n    'file', 'ftp', 'ftps', 'http', 'https', 'irc', 'mailto', 'sftp', 'ssh', 'tel', 'telnet', 'tftp', 'vnc', 'xmpp',\n)\n\n# Optionally display a persistent banner at the top and/or bottom of every page. HTML is allowed. To display the same\n# content in both banners, define BANNER_TOP and set BANNER_BOTTOM = BANNER_TOP.\nBANNER_TOP = ''\nBANNER_BOTTOM = ''\n\n# Text to include on the login page above the login form. HTML is allowed.\nBANNER_LOGIN = ''\n\n# Base URL path if accessing NetBox within a directory. For example, if installed at https://example.com/netbox/, set:\n# BASE_PATH = 'netbox/'\nBASE_PATH = ''\n\n# Cache timeout in seconds. Defaults to zero (disabled).\nCACHE_TIMEOUT = 0\n\n# Maximum number of days to retain logged changes. Set to 0 to retain changes indefinitely. (Default: 90)\nCHANGELOG_RETENTION = 90\n\n# API Cross-Origin Resource Sharing (CORS) settings. If CORS_ORIGIN_ALLOW_ALL is set to True, all origins will be\n# allowed. Otherwise, define a list of allowed origins using either CORS_ORIGIN_WHITELIST or\n# CORS_ORIGIN_REGEX_WHITELIST. For more information, see https://github.com/ottoyiu/django-cors-headers\nCORS_ORIGIN_ALLOW_ALL = False\nCORS_ORIGIN_WHITELIST = [\n    # 'https://hostname.example.com',\n]\nCORS_ORIGIN_REGEX_WHITELIST = [\n    # r'^(https?://)?(\\w+\\.)?example\\.com$',\n]\n\n# Set to True to enable server debugging. WARNING: Debugging introduces a substantial performance penalty and may reveal\n# sensitive information about your installation. Only enable debugging while performing testing. Never enable debugging\n# on a production system.\nDEBUG = False\n\n# Email settings\nEMAIL = {\n    'SERVER': 'localhost',\n    'PORT': 25,\n    'USERNAME': '',\n    'PASSWORD': '',\n    'USE_SSL': False,\n    'USE_TLS': False,\n    'TIMEOUT': 10,  # seconds\n    'FROM_EMAIL': '',\n}\n\n# Enforcement of unique IP space can be toggled on a per-VRF basis. To enforce unique IP space within the global table\n# (all prefixes and IP addresses not assigned to a VRF), set ENFORCE_GLOBAL_UNIQUE to True.\nENFORCE_GLOBAL_UNIQUE = False\n\n# Exempt certain models from the enforcement of view permissions. Models listed here will be viewable by all users and\n# by anonymous users. List models in the form `<app>.<model>`. Add '*' to this list to exempt all models.\nEXEMPT_VIEW_PERMISSIONS = [\n    # 'dcim.site',\n    # 'dcim.region',\n    # 'ipam.prefix',\n]\n\n# HTTP proxies NetBox should use when sending outbound HTTP requests (e.g. for webhooks).\n# HTTP_PROXIES = {\n#     'http': 'http://10.10.1.10:3128',\n#     'https': 'http://10.10.1.10:1080',\n# }\n\n# IP addresses recognized as internal to the system. The debugging toolbar will be available only to clients accessing\n# NetBox from an internal IP.\nINTERNAL_IPS = ('127.0.0.1', '::1')\n\n# Enable custom logging. Please see the Django documentation for detailed guidance on configuring custom logs:\n#   https://docs.djangoproject.com/en/stable/topics/logging/\nLOGGING = {}\n\n# Setting this to True will permit only authenticated users to access any part of NetBox. By default, anonymous users\n# are permitted to access most data in NetBox (excluding secrets) but not make any changes.\nLOGIN_REQUIRED = False\n\n# The length of time (in seconds) for which a user will remain logged into the web UI before being prompted to\n# re-authenticate. (Default: 1209600 [14 days])\nLOGIN_TIMEOUT = None\n\n# Setting this to True will display a \"maintenance mode\" banner at the top of every page.\nMAINTENANCE_MODE = False\n\n# The URL to use when mapping physical addresses or GPS coordinates\nMAPS_URL = 'https://maps.google.com/?q='\n\n# An API consumer can request an arbitrary number of objects =by appending the \"limit\" parameter to the URL (e.g.\n# \"?limit=1000\"). This setting defines the maximum limit. Setting it to 0 or None will allow an API consumer to request\n# all objects by specifying \"?limit=0\".\nMAX_PAGE_SIZE = 1000\n\n# The file path where uploaded media such as image attachments are stored. A trailing slash is not needed. Note that\n# the default value of this setting is derived from the installed location.\n# MEDIA_ROOT = '/opt/netbox/netbox/media'\n\n# By default uploaded media is stored on the local filesystem. Using Django-storages is also supported. Provide the\n# class path of the storage driver in STORAGE_BACKEND and any configuration options in STORAGE_CONFIG. For example:\n# STORAGE_BACKEND = 'storages.backends.s3boto3.S3Boto3Storage'\n# STORAGE_CONFIG = {\n#     'AWS_ACCESS_KEY_ID': 'Key ID',\n#     'AWS_SECRET_ACCESS_KEY': 'Secret',\n#     'AWS_STORAGE_BUCKET_NAME': 'netbox',\n#     'AWS_S3_REGION_NAME': 'eu-west-1',\n# }\n\n# Expose Prometheus monitoring metrics at the HTTP endpoint '/metrics'\nMETRICS_ENABLED = False\n\n# Credentials that NetBox will uses to authenticate to devices when connecting via NAPALM.\nNAPALM_USERNAME = ''\nNAPALM_PASSWORD = ''\n\n# NAPALM timeout (in seconds). (Default: 30)\nNAPALM_TIMEOUT = 30\n\n# NAPALM optional arguments (see https://napalm.readthedocs.io/en/latest/support/#optional-arguments). Arguments must\n# be provided as a dictionary.\nNAPALM_ARGS = {}\n\n# Determine how many objects to display per page within a list. (Default: 50)\nPAGINATE_COUNT = 50\n\n# Enable installed plugins. Add the name of each plugin to the list.\nPLUGINS = []\n\n# Plugins configuration settings. These settings are used by various plugins that the user may have installed.\n# Each key in the dictionary is the name of an installed plugin and its value is a dictionary of settings.\n# PLUGINS_CONFIG = {\n#     'my_plugin': {\n#         'foo': 'bar',\n#         'buzz': 'bazz'\n#     }\n# }\n\n# When determining the primary IP address for a device, IPv6 is preferred over IPv4 by default. Set this to True to\n# prefer IPv4 instead.\nPREFER_IPV4 = False\n\n# Rack elevation size defaults, in pixels. For best results, the ratio of width to height should be roughly 10:1.\nRACK_ELEVATION_DEFAULT_UNIT_HEIGHT = 22\nRACK_ELEVATION_DEFAULT_UNIT_WIDTH = 220\n\n# Remote authentication support\nREMOTE_AUTH_ENABLED = False\nREMOTE_AUTH_BACKEND = 'netbox.authentication.RemoteUserBackend'\nREMOTE_AUTH_HEADER = 'HTTP_REMOTE_USER'\nREMOTE_AUTH_AUTO_CREATE_USER = True\nREMOTE_AUTH_DEFAULT_GROUPS = []\nREMOTE_AUTH_DEFAULT_PERMISSIONS = {}\n\n# This determines how often the GitHub API is called to check the latest release of NetBox. Must be at least 1 hour.\nRELEASE_CHECK_TIMEOUT = 24 * 3600\n\n# This repository is used to check whether there is a new release of NetBox available. Set to None to disable the\n# version check or use the URL below to check for release in the official NetBox repository.\nRELEASE_CHECK_URL = None\n# RELEASE_CHECK_URL = 'https://api.github.com/repos/netbox-community/netbox/releases'\n\n# The file path where custom reports will be stored. A trailing slash is not needed. Note that the default value of\n# this setting is derived from the installed location.\n# REPORTS_ROOT = '/opt/netbox/netbox/reports'\n\n# Maximum execution time for background tasks, in seconds.\nRQ_DEFAULT_TIMEOUT = 300\n\n# The file path where custom scripts will be stored. A trailing slash is not needed. Note that the default value of\n# this setting is derived from the installed location.\n# SCRIPTS_ROOT = '/opt/netbox/netbox/scripts'\n\n# The name to use for the session cookie.\nSESSION_COOKIE_NAME = 'sessionid'\n\n# By default, NetBox will store session data in the database. Alternatively, a file path can be specified here to use\n# local file storage instead. (This can be useful for enabling authentication on a standby instance with read-only\n# database access.) Note that the user as which NetBox runs must have read and write permissions to this path.\nSESSION_FILE_PATH = None\n\n# Time zone (default: UTC)\nTIME_ZONE = 'UTC'\n\n# Date/time formatting. See the following link for supported formats:\n# https://docs.djangoproject.com/en/stable/ref/templates/builtins/#date\nDATE_FORMAT = 'N j, Y'\nSHORT_DATE_FORMAT = 'Y-m-d'\nTIME_FORMAT = 'g:i a'\nSHORT_TIME_FORMAT = 'H:i:s'\nDATETIME_FORMAT = 'N j, Y g:i a'\nSHORT_DATETIME_FORMAT = 'Y-m-d H:i'\n", "path": "netbox/netbox/configuration.example.py"}]}