We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Set NAUTOBOT_INSTALLATION_METRICS_ENABLED=false in the dockerfile dev stage
<!--
    NOTE: This template is for use by maintainers only. Please do not submit
    an issue using this template unless you have been specifically asked to
    do so.
-->
### Proposed Changes

This should propagate to all of the app dev instances since they base off of nautobot dev images. Make sure to unset this in the final stage

<!-- Provide justification for the proposed change(s). -->
### Justification

We don't want to send metrics for dev environments

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `development/nautobot_config.py`
Content:
```
1 """Nautobot development configuration file."""
2 import os
3 
4 from nautobot.core.settings import *  # noqa: F403
5 from nautobot.core.settings_funcs import is_truthy
6 
7 #
8 # Debugging defaults to True rather than False for the development environment
9 #
10 DEBUG = is_truthy(os.getenv("NAUTOBOT_DEBUG", "True"))
11 
12 # Django Debug Toolbar - enabled only when debugging
13 if DEBUG:
14     if "debug_toolbar" not in INSTALLED_APPS:  # noqa: F405
15         INSTALLED_APPS.append("debug_toolbar")  # noqa: F405
16     if "debug_toolbar.middleware.DebugToolbarMiddleware" not in MIDDLEWARE:  # noqa: F405
17         MIDDLEWARE.insert(0, "debug_toolbar.middleware.DebugToolbarMiddleware")  # noqa: F405
18     # By default the toolbar only displays when the request is coming from one of INTERNAL_IPS.
19     # For the Docker dev environment, we don't know in advance what that IP may be, so override to skip that check
20     DEBUG_TOOLBAR_CONFIG = {"SHOW_TOOLBAR_CALLBACK": lambda _request: DEBUG}
21 
22 #
23 # Logging for the development environment, taking into account the redefinition of DEBUG above
24 #
25 
26 LOG_LEVEL = "DEBUG" if DEBUG else "INFO"
27 LOGGING["loggers"]["nautobot"]["handlers"] = ["verbose_console" if DEBUG else "normal_console"]  # noqa: F405
28 LOGGING["loggers"]["nautobot"]["level"] = LOG_LEVEL  # noqa: F405
29 
30 #
31 # Plugins
32 #
33 
34 PLUGINS = [
35     "example_plugin",
36 ]
37 
38 
39 #
40 # Development Environment for SSO
41 # Configure `invoke.yml` based on example for SSO development environment
42 #
43 
44 # OIDC Dev ENV
45 if is_truthy(os.getenv("ENABLE_OIDC", "False")):
46     import requests
47 
48     AUTHENTICATION_BACKENDS = (
49         "social_core.backends.keycloak.KeycloakOAuth2",
50         "nautobot.core.authentication.ObjectPermissionBackend",
51     )
52     SOCIAL_AUTH_KEYCLOAK_KEY = "nautobot"
53     SOCIAL_AUTH_KEYCLOAK_SECRET = "7b1c3527-8702-4742-af69-2b74ee5742e8"
54     SOCIAL_AUTH_KEYCLOAK_PUBLIC_KEY = requests.get("http://keycloak:8087/realms/nautobot/", timeout=15).json()[
55         "public_key"
56     ]
57     SOCIAL_AUTH_KEYCLOAK_AUTHORIZATION_URL = "http://localhost:8087/realms/nautobot/protocol/openid-connect/auth"
58     SOCIAL_AUTH_KEYCLOAK_ACCESS_TOKEN_URL = "http://keycloak:8087/realms/nautobot/protocol/openid-connect/token"
59     SOCIAL_AUTH_KEYCLOAK_VERIFY_SSL = False
60 
61 METRICS_ENABLED = True
62 
63 CELERY_WORKER_PROMETHEUS_PORTS = [8080]
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/development/nautobot_config.py b/development/nautobot_config.py
--- a/development/nautobot_config.py
+++ b/development/nautobot_config.py
@@ -19,6 +19,9 @@
     # For the Docker dev environment, we don't know in advance what that IP may be, so override to skip that check
     DEBUG_TOOLBAR_CONFIG = {"SHOW_TOOLBAR_CALLBACK": lambda _request: DEBUG}
 
+# Do *not* send anonymized install metrics when post_upgrade or send_installation_metrics management commands are run
+INSTALLATION_METRICS_ENABLED = is_truthy(os.getenv("NAUTOBOT_INSTALLATION_METRICS_ENABLED", "False"))
+
 #
 # Logging for the development environment, taking into account the redefinition of DEBUG above
 #

{"golden_diff": "diff --git a/development/nautobot_config.py b/development/nautobot_config.py\n--- a/development/nautobot_config.py\n+++ b/development/nautobot_config.py\n@@ -19,6 +19,9 @@\n     # For the Docker dev environment, we don't know in advance what that IP may be, so override to skip that check\n     DEBUG_TOOLBAR_CONFIG = {\"SHOW_TOOLBAR_CALLBACK\": lambda _request: DEBUG}\n \n+# Do *not* send anonymized install metrics when post_upgrade or send_installation_metrics management commands are run\n+INSTALLATION_METRICS_ENABLED = is_truthy(os.getenv(\"NAUTOBOT_INSTALLATION_METRICS_ENABLED\", \"False\"))\n+\n #\n # Logging for the development environment, taking into account the redefinition of DEBUG above\n #\n", "issue": "Set NAUTOBOT_INSTALLATION_METRICS_ENABLED=false in the dockerfile dev stage\n<!--\r\n    NOTE: This template is for use by maintainers only. Please do not submit\r\n    an issue using this template unless you have been specifically asked to\r\n    do so.\r\n-->\r\n### Proposed Changes\r\n\r\nThis should propagate to all of the app dev instances since they base off of nautobot dev images. Make sure to unset this in the final stage\r\n\r\n<!-- Provide justification for the proposed change(s). -->\r\n### Justification\r\n\r\nWe don't want to send metrics for dev environments\n", "before_files": [{"content": "\"\"\"Nautobot development configuration file.\"\"\"\nimport os\n\nfrom nautobot.core.settings import *  # noqa: F403\nfrom nautobot.core.settings_funcs import is_truthy\n\n#\n# Debugging defaults to True rather than False for the development environment\n#\nDEBUG = is_truthy(os.getenv(\"NAUTOBOT_DEBUG\", \"True\"))\n\n# Django Debug Toolbar - enabled only when debugging\nif DEBUG:\n    if \"debug_toolbar\" not in INSTALLED_APPS:  # noqa: F405\n        INSTALLED_APPS.append(\"debug_toolbar\")  # noqa: F405\n    if \"debug_toolbar.middleware.DebugToolbarMiddleware\" not in MIDDLEWARE:  # noqa: F405\n        MIDDLEWARE.insert(0, \"debug_toolbar.middleware.DebugToolbarMiddleware\")  # noqa: F405\n    # By default the toolbar only displays when the request is coming from one of INTERNAL_IPS.\n    # For the Docker dev environment, we don't know in advance what that IP may be, so override to skip that check\n    DEBUG_TOOLBAR_CONFIG = {\"SHOW_TOOLBAR_CALLBACK\": lambda _request: DEBUG}\n\n#\n# Logging for the development environment, taking into account the redefinition of DEBUG above\n#\n\nLOG_LEVEL = \"DEBUG\" if DEBUG else \"INFO\"\nLOGGING[\"loggers\"][\"nautobot\"][\"handlers\"] = [\"verbose_console\" if DEBUG else \"normal_console\"]  # noqa: F405\nLOGGING[\"loggers\"][\"nautobot\"][\"level\"] = LOG_LEVEL  # noqa: F405\n\n#\n# Plugins\n#\n\nPLUGINS = [\n    \"example_plugin\",\n]\n\n\n#\n# Development Environment for SSO\n# Configure `invoke.yml` based on example for SSO development environment\n#\n\n# OIDC Dev ENV\nif is_truthy(os.getenv(\"ENABLE_OIDC\", \"False\")):\n    import requests\n\n    AUTHENTICATION_BACKENDS = (\n        \"social_core.backends.keycloak.KeycloakOAuth2\",\n        \"nautobot.core.authentication.ObjectPermissionBackend\",\n    )\n    SOCIAL_AUTH_KEYCLOAK_KEY = \"nautobot\"\n    SOCIAL_AUTH_KEYCLOAK_SECRET = \"7b1c3527-8702-4742-af69-2b74ee5742e8\"\n    SOCIAL_AUTH_KEYCLOAK_PUBLIC_KEY = requests.get(\"http://keycloak:8087/realms/nautobot/\", timeout=15).json()[\n        \"public_key\"\n    ]\n    SOCIAL_AUTH_KEYCLOAK_AUTHORIZATION_URL = \"http://localhost:8087/realms/nautobot/protocol/openid-connect/auth\"\n    SOCIAL_AUTH_KEYCLOAK_ACCESS_TOKEN_URL = \"http://keycloak:8087/realms/nautobot/protocol/openid-connect/token\"\n    SOCIAL_AUTH_KEYCLOAK_VERIFY_SSL = False\n\nMETRICS_ENABLED = True\n\nCELERY_WORKER_PROMETHEUS_PORTS = [8080]\n", "path": "development/nautobot_config.py"}], "after_files": [{"content": "\"\"\"Nautobot development configuration file.\"\"\"\nimport os\n\nfrom nautobot.core.settings import *  # noqa: F403\nfrom nautobot.core.settings_funcs import is_truthy\n\n#\n# Debugging defaults to True rather than False for the development environment\n#\nDEBUG = is_truthy(os.getenv(\"NAUTOBOT_DEBUG\", \"True\"))\n\n# Django Debug Toolbar - enabled only when debugging\nif DEBUG:\n    if \"debug_toolbar\" not in INSTALLED_APPS:  # noqa: F405\n        INSTALLED_APPS.append(\"debug_toolbar\")  # noqa: F405\n    if \"debug_toolbar.middleware.DebugToolbarMiddleware\" not in MIDDLEWARE:  # noqa: F405\n        MIDDLEWARE.insert(0, \"debug_toolbar.middleware.DebugToolbarMiddleware\")  # noqa: F405\n    # By default the toolbar only displays when the request is coming from one of INTERNAL_IPS.\n    # For the Docker dev environment, we don't know in advance what that IP may be, so override to skip that check\n    DEBUG_TOOLBAR_CONFIG = {\"SHOW_TOOLBAR_CALLBACK\": lambda _request: DEBUG}\n\n# Do *not* send anonymized install metrics when post_upgrade or send_installation_metrics management commands are run\nINSTALLATION_METRICS_ENABLED = is_truthy(os.getenv(\"NAUTOBOT_INSTALLATION_METRICS_ENABLED\", \"False\"))\n\n#\n# Logging for the development environment, taking into account the redefinition of DEBUG above\n#\n\nLOG_LEVEL = \"DEBUG\" if DEBUG else \"INFO\"\nLOGGING[\"loggers\"][\"nautobot\"][\"handlers\"] = [\"verbose_console\" if DEBUG else \"normal_console\"]  # noqa: F405\nLOGGING[\"loggers\"][\"nautobot\"][\"level\"] = LOG_LEVEL  # noqa: F405\n\n#\n# Plugins\n#\n\nPLUGINS = [\n    \"example_plugin\",\n]\n\n\n#\n# Development Environment for SSO\n# Configure `invoke.yml` based on example for SSO development environment\n#\n\n# OIDC Dev ENV\nif is_truthy(os.getenv(\"ENABLE_OIDC\", \"False\")):\n    import requests\n\n    AUTHENTICATION_BACKENDS = (\n        \"social_core.backends.keycloak.KeycloakOAuth2\",\n        \"nautobot.core.authentication.ObjectPermissionBackend\",\n    )\n    SOCIAL_AUTH_KEYCLOAK_KEY = \"nautobot\"\n    SOCIAL_AUTH_KEYCLOAK_SECRET = \"7b1c3527-8702-4742-af69-2b74ee5742e8\"\n    SOCIAL_AUTH_KEYCLOAK_PUBLIC_KEY = requests.get(\"http://keycloak:8087/realms/nautobot/\", timeout=15).json()[\n        \"public_key\"\n    ]\n    SOCIAL_AUTH_KEYCLOAK_AUTHORIZATION_URL = \"http://localhost:8087/realms/nautobot/protocol/openid-connect/auth\"\n    SOCIAL_AUTH_KEYCLOAK_ACCESS_TOKEN_URL = \"http://keycloak:8087/realms/nautobot/protocol/openid-connect/token\"\n    SOCIAL_AUTH_KEYCLOAK_VERIFY_SSL = False\n\nMETRICS_ENABLED = True\n\nCELERY_WORKER_PROMETHEUS_PORTS = [8080]\n", "path": "development/nautobot_config.py"}]}