nautobot 2.0.0a3__py3-none-any.whl → 2.0.0b1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nautobot/apps/api.py +6 -8
- nautobot/apps/forms.py +0 -2
- nautobot/apps/ui.py +0 -8
- nautobot/circuits/api/serializers.py +9 -117
- nautobot/circuits/api/urls.py +1 -1
- nautobot/circuits/api/views.py +0 -1
- nautobot/circuits/forms.py +0 -65
- nautobot/circuits/migrations/0014_related_name_changes.py +1 -1
- nautobot/circuits/migrations/0016_tagsfield.py +34 -0
- nautobot/circuits/migrations/0017_fixup_null_statuses.py +22 -0
- nautobot/circuits/migrations/0018_status_nonnullable.py +22 -0
- nautobot/circuits/models.py +3 -87
- nautobot/circuits/navigation.py +14 -69
- nautobot/circuits/signals.py +0 -2
- nautobot/circuits/tables.py +39 -1
- nautobot/circuits/tests/integration/test_relationships.py +9 -9
- nautobot/circuits/tests/test_api.py +4 -8
- nautobot/circuits/tests/test_filters.py +10 -4
- nautobot/circuits/tests/test_models.py +5 -1
- nautobot/circuits/tests/test_views.py +27 -5
- nautobot/circuits/views.py +18 -10
- nautobot/core/api/__init__.py +8 -2
- nautobot/core/api/fields.py +15 -6
- nautobot/core/api/filter_backends.py +3 -2
- nautobot/core/api/metadata.py +237 -30
- nautobot/core/api/mixins.py +94 -0
- nautobot/core/api/pagination.py +4 -0
- nautobot/core/api/parsers.py +154 -0
- nautobot/core/api/renderers.py +153 -2
- nautobot/core/api/schema.py +46 -2
- nautobot/core/api/serializers.py +377 -35
- nautobot/core/api/urls.py +11 -3
- nautobot/core/api/utils.py +174 -2
- nautobot/core/api/versioning.py +32 -10
- nautobot/core/api/views.py +266 -72
- nautobot/core/apps/__init__.py +138 -220
- nautobot/core/celery/__init__.py +112 -41
- nautobot/core/celery/backends.py +19 -12
- nautobot/core/celery/control.py +46 -0
- nautobot/core/celery/encoders.py +53 -0
- nautobot/core/celery/log.py +38 -0
- nautobot/core/celery/schedulers.py +23 -4
- nautobot/core/celery/task.py +1 -16
- nautobot/core/checks.py +0 -27
- nautobot/core/choices.py +0 -113
- nautobot/core/{cli.py → cli/__init__.py} +1 -1
- nautobot/core/cli/__main__.py +3 -0
- nautobot/core/constants.py +0 -24
- nautobot/core/context_processors.py +12 -0
- nautobot/core/filters.py +2 -2
- nautobot/core/forms/__init__.py +0 -4
- nautobot/core/forms/fields.py +38 -65
- nautobot/core/forms/forms.py +4 -1
- nautobot/core/forms/utils.py +0 -52
- nautobot/core/graphql/schema.py +4 -27
- nautobot/core/jobs/__init__.py +75 -0
- nautobot/core/management/commands/build_ui.py +255 -0
- nautobot/core/management/commands/generate_test_data.py +3 -2
- nautobot/core/management/commands/post_upgrade.py +24 -24
- nautobot/core/models/__init__.py +26 -1
- nautobot/core/models/fields.py +24 -5
- nautobot/core/models/generics.py +2 -42
- nautobot/core/models/managers.py +5 -0
- nautobot/core/models/name_color_content_types.py +0 -14
- nautobot/core/models/tree_queries.py +14 -4
- nautobot/core/models/utils.py +5 -6
- nautobot/core/models/validators.py +17 -8
- nautobot/core/releases.py +8 -10
- nautobot/core/settings.py +80 -42
- nautobot/core/tables.py +5 -5
- nautobot/core/tasks.py +4 -7
- nautobot/core/templates/base.html +1 -49
- nautobot/core/templates/base_django.html +49 -0
- nautobot/core/templates/base_react.html +55 -0
- nautobot/core/templates/buttons/export.html +6 -4
- nautobot/core/templates/generic/object_bulk_create.html +10 -21
- nautobot/core/templates/generic/object_list.html +3 -1
- nautobot/core/templates/generic/object_retrieve_plugin_full_width.html +3 -0
- nautobot/core/templates/inc/footer.html +1 -0
- nautobot/core/templates/inc/javascript.html +0 -14
- nautobot/core/templates/inc/nav_menu.html +28 -33
- nautobot/core/templates/inc/object_details_advanced_panel.html +13 -0
- nautobot/core/templates/inc/relationships_table_rows.html +2 -2
- nautobot/core/templates/nautobot_config.py.j2 +8 -20
- nautobot/core/templates/plugin_template/__init__.py-tpl +1 -2
- nautobot/core/templates/rest_framework/api.html +8 -0
- nautobot/core/templatetags/buttons.py +32 -28
- nautobot/core/testing/__init__.py +47 -44
- nautobot/core/testing/api.py +362 -47
- nautobot/core/testing/filters.py +1 -1
- nautobot/core/testing/migrations.py +2 -0
- nautobot/core/testing/mixins.py +22 -9
- nautobot/core/testing/schema.py +2 -1
- nautobot/core/testing/views.py +21 -46
- nautobot/core/tests/integration/test_filters.py +17 -8
- nautobot/core/tests/integration/test_navbar.py +11 -34
- nautobot/core/tests/integration/test_plugin_navbar.py +9 -103
- nautobot/core/tests/nautobot_config.py +2 -3
- nautobot/core/tests/test_api.py +290 -21
- nautobot/core/tests/test_checks.py +0 -7
- nautobot/core/tests/test_filters.py +107 -59
- nautobot/core/tests/test_forms.py +26 -92
- nautobot/core/tests/test_graphql.py +110 -77
- nautobot/core/tests/test_logging.py +4 -0
- nautobot/core/tests/test_managers.py +3 -1
- nautobot/core/tests/test_models.py +2 -0
- nautobot/core/tests/test_paginator.py +3 -1
- nautobot/core/tests/test_releases.py +12 -12
- nautobot/core/tests/test_templatetags_helpers.py +4 -4
- nautobot/core/tests/test_utils.py +32 -68
- nautobot/core/tests/test_views.py +12 -15
- nautobot/core/utils/data.py +17 -0
- nautobot/core/utils/deprecation.py +9 -6
- nautobot/core/utils/filtering.py +8 -3
- nautobot/core/utils/git.py +12 -4
- nautobot/core/utils/lookup.py +3 -1
- nautobot/core/utils/requests.py +1 -104
- nautobot/core/views/__init__.py +1 -0
- nautobot/core/views/generic.py +75 -110
- nautobot/core/views/mixins.py +52 -61
- nautobot/core/views/renderers.py +6 -7
- nautobot/core/views/utils.py +80 -0
- nautobot/dcim/api/serializers.py +160 -667
- nautobot/dcim/api/urls.py +1 -1
- nautobot/dcim/api/views.py +7 -44
- nautobot/dcim/choices.py +2 -0
- nautobot/dcim/filters/__init__.py +21 -0
- nautobot/dcim/form_mixins.py +1 -27
- nautobot/dcim/forms.py +19 -765
- nautobot/dcim/migrations/0024_alter_device_and_rack_role_add_new_role.py +2 -1
- nautobot/dcim/migrations/0025_device_and_rack_roles_data_migrations.py +19 -13
- nautobot/dcim/migrations/0027_remove_device_role_and_rack_role.py +1 -1
- nautobot/dcim/migrations/0028_rename_foreignkey_fields.py +1 -1
- nautobot/dcim/migrations/0030_migrate_region_and_site_data_to_locations.py +2 -2
- nautobot/dcim/migrations/0035_related_name_changes.py +1 -1
- nautobot/dcim/migrations/0036_remove_region_and_site.py +1 -1
- nautobot/dcim/migrations/0040_tagsfield.py +109 -0
- nautobot/dcim/migrations/{0040_ipam__namespaces.py → 0041_ipam__namespaces.py} +1 -1
- nautobot/dcim/migrations/0042_fixup_null_statuses.py +51 -0
- nautobot/dcim/migrations/0043_status_nonnullable.py +72 -0
- nautobot/dcim/models/cables.py +3 -33
- nautobot/dcim/models/device_component_templates.py +6 -0
- nautobot/dcim/models/device_components.py +12 -198
- nautobot/dcim/models/devices.py +30 -143
- nautobot/dcim/models/locations.py +3 -64
- nautobot/dcim/models/power.py +3 -50
- nautobot/dcim/models/racks.py +7 -84
- nautobot/dcim/navigation.py +141 -467
- nautobot/dcim/signals.py +0 -2
- nautobot/dcim/tables/locations.py +2 -2
- nautobot/dcim/tables/power.py +1 -2
- nautobot/dcim/templates/dcim/console_port_connection_list.html +7 -0
- nautobot/dcim/templates/dcim/devicetype.html +2 -2
- nautobot/dcim/templates/dcim/interface_connection_list.html +7 -0
- nautobot/dcim/templates/dcim/location.html +16 -1
- nautobot/dcim/templates/dcim/locationtype.html +15 -0
- nautobot/dcim/templates/dcim/power_port_connection_list.html +7 -0
- nautobot/dcim/templates/dcim/rackgroup.html +0 -12
- nautobot/dcim/tests/test_api.py +166 -81
- nautobot/dcim/tests/test_cablepaths.py +41 -35
- nautobot/dcim/tests/test_filters.py +67 -23
- nautobot/dcim/tests/test_forms.py +5 -205
- nautobot/dcim/tests/test_graphql.py +7 -2
- nautobot/dcim/tests/test_migrations.py +6 -11
- nautobot/dcim/tests/test_models.py +182 -110
- nautobot/dcim/tests/test_natural_ordering.py +11 -8
- nautobot/dcim/tests/test_signals.py +6 -3
- nautobot/dcim/tests/test_views.py +197 -175
- nautobot/dcim/urls.py +11 -16
- nautobot/dcim/views.py +7 -134
- nautobot/docs/additional-features/caching.md +6 -87
- nautobot/docs/additional-features/job-scheduling-and-approvals.md +3 -0
- nautobot/docs/additional-features/jobs.md +177 -195
- nautobot/docs/administration/nautobot-server.md +6 -21
- nautobot/docs/administration/replicating-nautobot.md +0 -10
- nautobot/docs/configuration/optional-settings.md +32 -41
- nautobot/docs/configuration/required-settings.md +11 -52
- nautobot/docs/development/application-registry.md +2 -13
- nautobot/docs/development/extending-models.md +15 -17
- nautobot/docs/development/generic-views.md +0 -2
- nautobot/docs/development/getting-started.md +55 -5
- nautobot/docs/development/navigation-menu.md +22 -93
- nautobot/docs/development/react-ui.md +105 -0
- nautobot/docs/development/role-internals.md +1 -3
- nautobot/docs/development/style-guide.md +6 -4
- nautobot/docs/index.md +3 -2
- nautobot/docs/installation/migrating-from-netbox.md +11 -42
- nautobot/docs/installation/nautobot.md +1 -1
- nautobot/docs/installation/tables/v2-api-behavior-changes.yaml +70 -0
- nautobot/docs/installation/tables/v2-api-removed-fields.yaml +142 -0
- nautobot/docs/installation/tables/v2-api-renamed-fields.yaml +124 -0
- nautobot/docs/installation/tables/v2-code-location-changes.yaml +241 -0
- nautobot/docs/installation/tables/v2-code-removals.yaml +67 -0
- nautobot/docs/installation/tables/v2-database-behavior-changes.yaml +37 -0
- nautobot/docs/installation/tables/v2-database-removed-fields.yaml +166 -0
- nautobot/docs/installation/tables/v2-database-renamed-fields.yaml +340 -0
- nautobot/docs/installation/tables/v2-filters-corrected-fields.yaml +28 -0
- nautobot/docs/installation/tables/v2-filters-enhanced-fields.yaml +241 -0
- nautobot/docs/installation/tables/v2-filters-removed-fields.yaml +553 -0
- nautobot/docs/installation/tables/v2-filters-renamed-fields.yaml +223 -0
- nautobot/docs/installation/tables/v2-logging-renamed-loggers.yaml +23 -0
- nautobot/docs/installation/upgrading-from-nautobot-v1.md +170 -747
- nautobot/docs/models/dcim/device.md +3 -0
- nautobot/docs/models/dcim/deviceredundancygroup.md +3 -3
- nautobot/docs/models/extras/computedfield.md +4 -4
- nautobot/docs/models/extras/gitrepository.md +3 -0
- nautobot/docs/models/extras/job.md +1 -0
- nautobot/docs/models/extras/jobbutton.md +18 -13
- nautobot/docs/models/extras/jobhook.md +7 -4
- nautobot/docs/models/extras/jobresult.md +6 -2
- nautobot/docs/models/extras/relationship.md +2 -2
- nautobot/docs/models/extras/status.md +6 -19
- nautobot/docs/models/ipam/ipaddress.md +3 -0
- nautobot/docs/models/virtualization/virtualmachine.md +3 -0
- nautobot/docs/plugins/development.md +83 -21
- nautobot/docs/release-notes/version-1.5.md +53 -0
- nautobot/docs/release-notes/version-2.0.md +180 -0
- nautobot/docs/requirements.txt +1 -0
- nautobot/docs/rest-api/overview.md +384 -215
- nautobot/docs/rest-api/ui-related-endpoints.md +9 -0
- nautobot/extras/admin.py +3 -5
- nautobot/extras/api/customfields.py +15 -39
- nautobot/extras/api/fields.py +0 -11
- nautobot/extras/api/mixins.py +45 -0
- nautobot/extras/api/relationships.py +63 -158
- nautobot/extras/api/serializers.py +165 -700
- nautobot/extras/api/urls.py +1 -1
- nautobot/extras/api/views.py +294 -280
- nautobot/extras/apps.py +4 -7
- nautobot/extras/choices.py +11 -9
- nautobot/extras/constants.py +9 -3
- nautobot/extras/datasources/__init__.py +2 -0
- nautobot/extras/datasources/git.py +135 -186
- nautobot/extras/datasources/registry.py +25 -35
- nautobot/extras/filters/__init__.py +20 -19
- nautobot/extras/filters/mixins.py +4 -4
- nautobot/extras/forms/forms.py +63 -127
- nautobot/extras/forms/mixins.py +23 -51
- nautobot/extras/health_checks.py +0 -33
- nautobot/extras/jobs.py +387 -565
- nautobot/extras/management/commands/runjob.py +24 -62
- nautobot/extras/managers.py +30 -7
- nautobot/extras/migrations/0058_jobresult_add_time_status_idxs.py +38 -0
- nautobot/extras/migrations/{0058_joblogentry_scheduledjob_webhook_data_migration.py → 0059_joblogentry_scheduledjob_webhook_data_migration.py} +1 -1
- nautobot/extras/migrations/{0059_alter_joblogentry_scheduledjob_webhook_fields.py → 0060_alter_joblogentry_scheduledjob_webhook_fields.py} +1 -1
- nautobot/extras/migrations/{0060_role_and_alter_status.py → 0061_role_and_alter_status.py} +1 -7
- nautobot/extras/migrations/{0061_collect_roles_from_related_apps_roles.py → 0062_collect_roles_from_related_apps_roles.py} +33 -32
- nautobot/extras/migrations/{0062_alter_role_options.py → 0063_alter_role_options.py} +1 -1
- nautobot/extras/migrations/{0063_alter_configcontext_and_add_new_role.py → 0064_alter_configcontext_and_add_new_role.py} +1 -1
- nautobot/extras/migrations/0065_configcontext_data_migrations.py +44 -0
- nautobot/extras/migrations/{0065_rename_configcontext_role.py → 0066_rename_configcontext_role.py} +1 -1
- nautobot/extras/migrations/{0066_jobresult__add_celery_fields.py → 0067_jobresult__add_celery_fields.py} +36 -2
- nautobot/extras/migrations/{0067_created_datetime.py → 0068_created_datetime.py} +1 -1
- nautobot/extras/migrations/{0068_remove_site_and_region_attributes_from_config_context.py → 0069_remove_site_and_region_attributes_from_config_context.py} +1 -1
- nautobot/extras/migrations/{0069_replace_related_names.py → 0070_replace_related_names.py} +1 -1
- nautobot/extras/migrations/{0070_rename_model_fields.py → 0071_rename_model_fields.py} +1 -1
- nautobot/extras/migrations/0072_job__unique_name_data_migration.py +86 -0
- nautobot/extras/migrations/{0072_job__unique_name.py → 0073_job__unique_name.py} +13 -9
- nautobot/extras/migrations/{0073_remove_gitrepository_fields.py → 0074_remove_gitrepository_fields.py} +1 -1
- nautobot/extras/migrations/{0074_rename_slug_to_key_for_custom_field.py → 0075_rename_slug_to_key_for_custom_field.py} +1 -1
- nautobot/extras/migrations/{0075_migrate_custom_field_data.py → 0076_migrate_custom_field_data.py} +1 -1
- nautobot/extras/migrations/{0076_remove_name_field_and_make_label_field_non_nullable.py → 0077_remove_name_field_and_make_label_field_non_nullable.py} +1 -1
- nautobot/extras/migrations/{0077_remove_slug.py → 0078_remove_slug.py} +1 -5
- nautobot/extras/migrations/0079_tagsfield.py +28 -0
- nautobot/extras/migrations/0080_rename_relationship_slug_to_key.py +17 -0
- nautobot/extras/migrations/0081_rename_relationship_name_to_label.py +29 -0
- nautobot/extras/migrations/0082_ensure_relationship_keys_are_unique.py +43 -0
- nautobot/extras/migrations/0083_rename_computed_field_slug_to_key.py +21 -0
- nautobot/extras/migrations/0084_taggeditem_cleanup.py +43 -0
- nautobot/extras/migrations/0085_taggeditem_uniqueness.py +22 -0
- nautobot/extras/migrations/0086_job__celery_task_fields__dryrun_support.py +81 -0
- nautobot/extras/migrations/0087_job__commit_default_data_migration.py +26 -0
- nautobot/extras/migrations/0088_joblogentry__log_level_default.py +17 -0
- nautobot/extras/migrations/0089_joblogentry__log_level_data_migration.py +34 -0
- nautobot/extras/migrations/0090_scheduledjob__data_migration.py +57 -0
- nautobot/extras/models/__init__.py +2 -3
- nautobot/extras/models/change_logging.py +0 -36
- nautobot/extras/models/customfields.py +39 -33
- nautobot/extras/models/datasources.py +48 -50
- nautobot/extras/models/groups.py +5 -6
- nautobot/extras/models/jobs.py +189 -321
- nautobot/extras/models/mixins.py +0 -71
- nautobot/extras/models/models.py +0 -19
- nautobot/extras/models/relationships.py +19 -13
- nautobot/extras/models/roles.py +0 -34
- nautobot/extras/models/secrets.py +2 -26
- nautobot/extras/models/statuses.py +6 -5
- nautobot/extras/models/tags.py +2 -17
- nautobot/extras/navigation.py +89 -307
- nautobot/extras/plugins/__init__.py +3 -120
- nautobot/extras/plugins/utils.py +0 -3
- nautobot/extras/plugins/validators.py +5 -4
- nautobot/extras/plugins/views.py +16 -3
- nautobot/extras/querysets.py +1 -7
- nautobot/extras/registry.py +3 -0
- nautobot/extras/signals.py +26 -60
- nautobot/extras/tables.py +34 -40
- nautobot/extras/tasks.py +0 -12
- nautobot/extras/templates/extras/configcontext.html +1 -1
- nautobot/extras/templates/extras/configcontextschema.html +16 -1
- nautobot/extras/templates/extras/customfield.html +0 -13
- nautobot/extras/templates/extras/gitrepository.html +3 -3
- nautobot/extras/templates/extras/inc/jobresult.html +10 -0
- nautobot/extras/templates/extras/inc/panel_jobhistory.html +1 -1
- nautobot/extras/templates/extras/job.html +35 -25
- nautobot/extras/templates/extras/job_approval_request.html +15 -30
- nautobot/extras/templates/extras/job_detail.html +13 -31
- nautobot/extras/templates/extras/job_edit.html +15 -17
- nautobot/extras/templates/extras/jobresult.html +24 -6
- nautobot/extras/templates/extras/scheduledjob.html +2 -2
- nautobot/extras/templates/extras/secret.html +28 -0
- nautobot/extras/templatetags/job_buttons.py +1 -0
- nautobot/extras/{tests/example_jobs → test_jobs}/api_test_job.py +13 -6
- nautobot/extras/test_jobs/atomic_transaction.py +53 -0
- nautobot/extras/test_jobs/dry_run.py +29 -0
- nautobot/extras/{tests/example_jobs/test_duplicate_name.py → test_jobs/duplicate_name.py} +4 -0
- nautobot/extras/test_jobs/duplicate_name2.py +9 -0
- nautobot/extras/test_jobs/fail.py +23 -0
- nautobot/extras/{tests/example_jobs/test_field_default.py → test_jobs/field_default.py} +4 -0
- nautobot/extras/{tests/example_jobs/test_field_order.py → test_jobs/field_order.py} +4 -0
- nautobot/extras/{tests/example_jobs/test_file_upload_fail.py → test_jobs/file_upload_fail.py} +11 -6
- nautobot/extras/test_jobs/file_upload_pass.py +25 -0
- nautobot/extras/test_jobs/has_sensitive_variables.py +25 -0
- nautobot/extras/test_jobs/ipaddress_vars.py +66 -0
- nautobot/extras/test_jobs/job_button_receiver.py +28 -0
- nautobot/extras/test_jobs/job_hook_receiver.py +29 -0
- nautobot/extras/test_jobs/job_variables.py +88 -0
- nautobot/extras/test_jobs/location_with_custom_field.py +45 -0
- nautobot/extras/test_jobs/log_redaction.py +20 -0
- nautobot/extras/test_jobs/log_skip_db_logging.py +17 -0
- nautobot/extras/test_jobs/modify_db.py +25 -0
- nautobot/extras/{tests/example_jobs/test_no_field_order.py → test_jobs/no_field_order.py} +4 -0
- nautobot/extras/test_jobs/object_var_optional.py +21 -0
- nautobot/extras/test_jobs/object_var_required.py +21 -0
- nautobot/extras/test_jobs/object_vars.py +26 -0
- nautobot/extras/test_jobs/pass.py +25 -0
- nautobot/extras/test_jobs/profiling.py +32 -0
- nautobot/extras/test_jobs/read_only_job.py +15 -0
- nautobot/extras/{tests/example_jobs/test_required_args.py → test_jobs/required_args.py} +4 -0
- nautobot/extras/{tests/example_jobs/test_soft_time_limit_greater_than_time_limit.py → test_jobs/soft_time_limit_greater_than_time_limit.py} +5 -1
- nautobot/extras/{tests/example_jobs/test_task_queues.py → test_jobs/task_queues.py} +5 -1
- nautobot/extras/tests/integration/test_computedfields.py +1 -1
- nautobot/extras/tests/integration/test_configcontextschema.py +5 -3
- nautobot/extras/tests/integration/test_customfields.py +4 -2
- nautobot/extras/tests/integration/test_dynamicgroups.py +1 -1
- nautobot/extras/tests/integration/test_jobs.py +25 -27
- nautobot/extras/tests/integration/test_notes.py +8 -4
- nautobot/extras/tests/integration/test_relationships.py +2 -2
- nautobot/extras/tests/test_api.py +649 -642
- nautobot/extras/tests/test_changelog.py +3 -3
- nautobot/extras/tests/test_context_managers.py +5 -3
- nautobot/extras/tests/test_customfields.py +92 -50
- nautobot/extras/tests/test_datasources.py +189 -112
- nautobot/extras/tests/test_dynamicgroups.py +7 -8
- nautobot/extras/tests/test_filters.py +137 -89
- nautobot/extras/tests/test_forms.py +73 -75
- nautobot/extras/tests/{test_scripts.py → test_job_variables.py} +43 -49
- nautobot/extras/tests/test_jobs.py +262 -263
- nautobot/extras/tests/test_migrations.py +4 -3
- nautobot/extras/tests/test_models.py +116 -161
- nautobot/extras/tests/test_plugins.py +38 -60
- nautobot/extras/tests/test_relationships.py +167 -120
- nautobot/extras/tests/test_tags.py +6 -11
- nautobot/extras/tests/test_utils.py +31 -1
- nautobot/extras/tests/test_views.py +201 -145
- nautobot/extras/tests/test_webhooks.py +6 -2
- nautobot/extras/urls.py +42 -42
- nautobot/extras/utils.py +137 -163
- nautobot/extras/views.py +78 -152
- nautobot/ipam/api/fields.py +17 -0
- nautobot/ipam/api/serializers.py +58 -164
- nautobot/ipam/api/urls.py +1 -1
- nautobot/ipam/api/views.py +3 -2
- nautobot/ipam/apps.py +1 -2
- nautobot/ipam/filters.py +1 -10
- nautobot/ipam/forms.py +4 -177
- nautobot/ipam/lookups.py +1 -0
- nautobot/ipam/management/commands/__init__.py +0 -0
- nautobot/ipam/management/commands/fix_prefix_broadcast.py +17 -0
- nautobot/ipam/migrations/0010_alter_ipam_role_add_new_role.py +1 -1
- nautobot/ipam/migrations/0011_migrate_ipam_role_data.py +32 -38
- nautobot/ipam/migrations/0020_related_name_changes.py +1 -1
- nautobot/ipam/migrations/0022_aggregate_to_prefix_data_migration.py +2 -2
- nautobot/ipam/migrations/0028_tagsfield.py +44 -0
- nautobot/ipam/migrations/0029_ip_address_to_interface_uniqueness_constraints.py +18 -0
- nautobot/ipam/migrations/{0028_ipam__namespaces.py → 0030_ipam__namespaces.py} +77 -28
- nautobot/ipam/migrations/0031_ipam__prefix__add_parent.py +58 -0
- nautobot/ipam/migrations/0032_ipam__namespaces_finish.py +63 -0
- nautobot/ipam/migrations/0033_fixup_null_statuses.py +26 -0
- nautobot/ipam/migrations/0034_status_nonnullable.py +36 -0
- nautobot/ipam/models.py +100 -236
- nautobot/ipam/navigation.py +36 -181
- nautobot/ipam/querysets.py +20 -25
- nautobot/ipam/signals.py +49 -6
- nautobot/ipam/tables.py +10 -3
- nautobot/ipam/templates/ipam/namespace_ipaddresses.html +11 -0
- nautobot/ipam/templates/ipam/namespace_prefixes.html +11 -0
- nautobot/ipam/templates/ipam/namespace_retrieve.html +17 -4
- nautobot/ipam/templates/ipam/namespace_vrfs.html +11 -0
- nautobot/ipam/templates/ipam/prefix.html +1 -1
- nautobot/ipam/templates/ipam/vlangroup.html +0 -13
- nautobot/ipam/templates/ipam/vrf_edit.html +6 -0
- nautobot/ipam/tests/integration/test_prefixes.py +3 -26
- nautobot/ipam/tests/test_api.py +22 -19
- nautobot/ipam/tests/test_filters.py +59 -23
- nautobot/ipam/tests/test_migrations.py +6 -10
- nautobot/ipam/tests/test_models.py +323 -198
- nautobot/ipam/tests/test_ordering.py +2 -2
- nautobot/ipam/tests/test_querysets.py +44 -24
- nautobot/ipam/tests/test_views.py +73 -26
- nautobot/ipam/urls.py +16 -0
- nautobot/ipam/{utils.py → utils/__init__.py} +2 -2
- nautobot/ipam/utils/migrations.py +713 -0
- nautobot/ipam/views.py +137 -20
- nautobot/project-static/docs/404.html +1178 -10
- nautobot/project-static/docs/additional-features/caching.html +1224 -159
- nautobot/project-static/docs/additional-features/change-logging.html +1180 -12
- nautobot/project-static/docs/additional-features/config-contexts.html +1180 -12
- nautobot/project-static/docs/additional-features/graphql.html +1179 -11
- nautobot/project-static/docs/additional-features/healthcheck.html +1180 -12
- nautobot/project-static/docs/additional-features/job-scheduling-and-approvals.html +1184 -12
- nautobot/project-static/docs/additional-features/jobs.html +1514 -328
- nautobot/project-static/docs/additional-features/napalm.html +1180 -12
- nautobot/project-static/docs/additional-features/prometheus-metrics.html +1180 -12
- nautobot/project-static/docs/additional-features/template-filters.html +1180 -12
- nautobot/project-static/docs/administration/celery-queues.html +1178 -10
- nautobot/project-static/docs/administration/nautobot-server.html +1451 -304
- nautobot/project-static/docs/administration/nautobot-shell.html +1178 -10
- nautobot/project-static/docs/administration/permissions.html +1178 -10
- nautobot/project-static/docs/administration/replicating-nautobot.html +1262 -113
- nautobot/project-static/docs/apps/index.html +1178 -10
- nautobot/project-static/docs/apps/nautobot-apps.html +1178 -10
- nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +1580 -426
- nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +1178 -10
- nautobot/project-static/docs/code-reference/nautobot/apps/api.html +3481 -1838
- nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +1178 -10
- nautobot/project-static/docs/code-reference/nautobot/apps/config.html +1178 -10
- nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +1185 -11
- nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +1719 -551
- nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +2062 -930
- nautobot/project-static/docs/code-reference/nautobot/apps/models.html +1946 -659
- nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +1180 -12
- nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +1189 -21
- nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +9283 -6218
- nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +2734 -2122
- nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +1178 -10
- nautobot/project-static/docs/code-reference/nautobot/apps/views.html +2337 -1300
- nautobot/project-static/docs/configuration/authentication/ldap.html +1178 -10
- nautobot/project-static/docs/configuration/authentication/remote.html +1178 -10
- nautobot/project-static/docs/configuration/authentication/sso.html +1178 -10
- nautobot/project-static/docs/configuration/index.html +1178 -10
- nautobot/project-static/docs/configuration/optional-settings.html +1311 -160
- nautobot/project-static/docs/configuration/required-settings.html +1312 -211
- nautobot/project-static/docs/core-functionality/circuits.html +1178 -10
- nautobot/project-static/docs/core-functionality/device-types.html +1178 -10
- nautobot/project-static/docs/core-functionality/devices.html +1182 -10
- nautobot/project-static/docs/core-functionality/ipam.html +1182 -10
- nautobot/project-static/docs/core-functionality/power.html +1178 -10
- nautobot/project-static/docs/core-functionality/secrets.html +1178 -10
- nautobot/project-static/docs/core-functionality/services.html +1178 -10
- nautobot/project-static/docs/core-functionality/sites-and-racks.html +1178 -10
- nautobot/project-static/docs/core-functionality/tenancy.html +1178 -10
- nautobot/project-static/docs/core-functionality/virtualization.html +1182 -10
- nautobot/project-static/docs/core-functionality/vlans.html +1179 -11
- nautobot/project-static/docs/development/application-registry.html +1190 -42
- nautobot/project-static/docs/development/best-practices.html +1178 -10
- nautobot/project-static/docs/development/docker-compose-advanced-use-cases.html +1178 -10
- nautobot/project-static/docs/development/extending-models.html +1238 -83
- nautobot/project-static/docs/development/generic-views.html +1180 -14
- nautobot/project-static/docs/development/getting-started.html +1365 -90
- nautobot/project-static/docs/development/homepage.html +1178 -10
- nautobot/project-static/docs/development/index.html +1178 -10
- nautobot/project-static/docs/development/model-features.html +1178 -10
- nautobot/project-static/docs/development/natural-keys.html +1178 -10
- nautobot/project-static/docs/development/navigation-menu.html +1215 -125
- nautobot/project-static/docs/development/react-ui.html +4199 -0
- nautobot/project-static/docs/development/release-checklist.html +1178 -10
- nautobot/project-static/docs/development/role-internals.html +1179 -12
- nautobot/project-static/docs/development/style-guide.html +1188 -19
- nautobot/project-static/docs/development/templates.html +1178 -10
- nautobot/project-static/docs/development/testing.html +1178 -10
- nautobot/project-static/docs/development/user-preferences.html +1178 -10
- nautobot/project-static/docs/docker/index.html +1178 -10
- nautobot/project-static/docs/index.html +1183 -12
- nautobot/project-static/docs/installation/centos.html +1178 -10
- nautobot/project-static/docs/installation/external-authentication.html +1178 -10
- nautobot/project-static/docs/installation/http-server.html +1178 -10
- nautobot/project-static/docs/installation/index.html +1178 -10
- nautobot/project-static/docs/installation/migrating-from-netbox.html +1305 -189
- nautobot/project-static/docs/installation/migrating-from-postgresql.html +1178 -10
- nautobot/project-static/docs/installation/nautobot.html +1179 -11
- nautobot/project-static/docs/installation/region-and-site-data-migration-guide.html +1178 -10
- nautobot/project-static/docs/installation/selinux-troubleshooting.html +1178 -10
- nautobot/project-static/docs/installation/services.html +1178 -10
- nautobot/project-static/docs/installation/tables/v2-api-behavior-changes.yaml +70 -0
- nautobot/project-static/docs/installation/tables/v2-api-removed-fields.yaml +142 -0
- nautobot/project-static/docs/installation/tables/v2-api-renamed-fields.yaml +124 -0
- nautobot/project-static/docs/installation/tables/v2-code-location-changes.yaml +241 -0
- nautobot/project-static/docs/installation/tables/v2-code-removals.yaml +67 -0
- nautobot/project-static/docs/installation/tables/v2-database-behavior-changes.yaml +37 -0
- nautobot/project-static/docs/installation/tables/v2-database-removed-fields.yaml +166 -0
- nautobot/project-static/docs/installation/tables/v2-database-renamed-fields.yaml +340 -0
- nautobot/project-static/docs/installation/tables/v2-filters-corrected-fields.yaml +28 -0
- nautobot/project-static/docs/installation/tables/v2-filters-enhanced-fields.yaml +241 -0
- nautobot/project-static/docs/installation/tables/v2-filters-removed-fields.yaml +553 -0
- nautobot/project-static/docs/installation/tables/v2-filters-renamed-fields.yaml +223 -0
- nautobot/project-static/docs/installation/tables/v2-logging-renamed-loggers.yaml +23 -0
- nautobot/project-static/docs/installation/ubuntu.html +1178 -10
- nautobot/project-static/docs/installation/upgrading-from-nautobot-v1.html +3823 -2152
- nautobot/project-static/docs/installation/upgrading.html +1178 -10
- nautobot/project-static/docs/models/circuits/circuit.html +1293 -103
- nautobot/project-static/docs/models/circuits/circuittermination.html +1293 -103
- nautobot/project-static/docs/models/circuits/circuittype.html +1293 -103
- nautobot/project-static/docs/models/circuits/provider.html +1293 -103
- nautobot/project-static/docs/models/circuits/providernetwork.html +1293 -103
- nautobot/project-static/docs/models/dcim/cable.html +1324 -103
- nautobot/project-static/docs/models/dcim/consoleport.html +1293 -103
- nautobot/project-static/docs/models/dcim/consoleporttemplate.html +1293 -103
- nautobot/project-static/docs/models/dcim/consoleserverport.html +1293 -103
- nautobot/project-static/docs/models/dcim/consoleserverporttemplate.html +1293 -103
- nautobot/project-static/docs/models/dcim/device.html +1326 -132
- nautobot/project-static/docs/models/dcim/devicebay.html +1293 -103
- nautobot/project-static/docs/models/dcim/devicebaytemplate.html +1293 -103
- nautobot/project-static/docs/models/dcim/deviceredundancygroup.html +1379 -97
- nautobot/project-static/docs/models/dcim/devicetype.html +1293 -103
- nautobot/project-static/docs/models/dcim/frontport.html +1293 -103
- nautobot/project-static/docs/models/dcim/frontporttemplate.html +1293 -103
- nautobot/project-static/docs/models/dcim/interface.html +1293 -103
- nautobot/project-static/docs/models/dcim/interfacetemplate.html +1293 -103
- nautobot/project-static/docs/models/dcim/inventoryitem.html +1293 -103
- nautobot/project-static/docs/models/dcim/location.html +1293 -103
- nautobot/project-static/docs/models/dcim/locationtype.html +1293 -103
- nautobot/project-static/docs/models/dcim/manufacturer.html +1292 -102
- nautobot/project-static/docs/models/dcim/platform.html +1272 -82
- nautobot/project-static/docs/models/dcim/powerfeed.html +1270 -80
- nautobot/project-static/docs/models/dcim/poweroutlet.html +1272 -82
- nautobot/project-static/docs/models/dcim/poweroutlettemplate.html +1272 -82
- nautobot/project-static/docs/models/dcim/powerpanel.html +1270 -80
- nautobot/project-static/docs/models/dcim/powerport.html +1272 -82
- nautobot/project-static/docs/models/dcim/powerporttemplate.html +1272 -82
- nautobot/project-static/docs/models/dcim/rack.html +1272 -82
- nautobot/project-static/docs/models/dcim/rackgroup.html +1272 -82
- nautobot/project-static/docs/models/dcim/rackreservation.html +1272 -82
- nautobot/project-static/docs/models/dcim/rearport.html +1286 -96
- nautobot/project-static/docs/models/dcim/rearporttemplate.html +1286 -96
- nautobot/project-static/docs/models/dcim/region.html +1178 -10
- nautobot/project-static/docs/models/dcim/site.html +1178 -10
- nautobot/project-static/docs/models/dcim/virtualchassis.html +1284 -94
- nautobot/project-static/docs/models/extras/computedfield.html +1184 -16
- nautobot/project-static/docs/models/extras/configcontext.html +1314 -86
- nautobot/project-static/docs/models/extras/configcontextschema.html +1276 -86
- nautobot/project-static/docs/models/extras/customfield.html +1180 -12
- nautobot/project-static/docs/models/extras/customlink.html +1180 -12
- nautobot/project-static/docs/models/extras/dynamicgroup.html +1180 -12
- nautobot/project-static/docs/models/extras/exporttemplate.html +1180 -12
- nautobot/project-static/docs/models/extras/gitrepository.html +1184 -12
- nautobot/project-static/docs/models/extras/graphqlquery.html +1321 -86
- nautobot/project-static/docs/models/extras/imageattachment.html +1276 -86
- nautobot/project-static/docs/models/extras/job.html +1277 -86
- nautobot/project-static/docs/models/extras/jobbutton.html +1201 -29
- nautobot/project-static/docs/models/extras/jobhook.html +1188 -16
- nautobot/project-static/docs/models/extras/joblogentry.html +1274 -84
- nautobot/project-static/docs/models/extras/jobresult.html +1364 -169
- nautobot/project-static/docs/models/extras/note.html +1180 -12
- nautobot/project-static/docs/models/extras/relationship.html +1182 -14
- nautobot/project-static/docs/models/extras/role.html +1320 -86
- nautobot/project-static/docs/models/extras/secret.html +1314 -86
- nautobot/project-static/docs/models/extras/secretsgroup.html +1276 -86
- nautobot/project-static/docs/models/extras/status.html +1188 -59
- nautobot/project-static/docs/models/extras/tag.html +1180 -12
- nautobot/project-static/docs/models/extras/webhook.html +1180 -12
- nautobot/project-static/docs/models/ipam/ipaddress.html +1327 -102
- nautobot/project-static/docs/models/ipam/prefix.html +1276 -86
- nautobot/project-static/docs/models/ipam/rir.html +1276 -86
- nautobot/project-static/docs/models/ipam/routetarget.html +1276 -86
- nautobot/project-static/docs/models/ipam/service.html +1276 -86
- nautobot/project-static/docs/models/ipam/vlan.html +1276 -86
- nautobot/project-static/docs/models/ipam/vlangroup.html +1276 -86
- nautobot/project-static/docs/models/ipam/vrf.html +1276 -86
- nautobot/project-static/docs/models/tenancy/tenant.html +1276 -86
- nautobot/project-static/docs/models/tenancy/tenantgroup.html +1276 -86
- nautobot/project-static/docs/models/users/objectpermission.html +1314 -86
- nautobot/project-static/docs/models/users/token.html +1276 -86
- nautobot/project-static/docs/models/virtualization/cluster.html +1276 -86
- nautobot/project-static/docs/models/virtualization/clustergroup.html +1276 -86
- nautobot/project-static/docs/models/virtualization/clustertype.html +1276 -86
- nautobot/project-static/docs/models/virtualization/virtualmachine.html +1321 -127
- nautobot/project-static/docs/models/virtualization/vminterface.html +1276 -86
- nautobot/project-static/docs/objects.inv +0 -0
- nautobot/project-static/docs/plugins/development.html +1726 -495
- nautobot/project-static/docs/plugins/index.html +1178 -10
- nautobot/project-static/docs/plugins/porting-from-netbox.html +1178 -10
- nautobot/project-static/docs/release-notes/index.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.0.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.1.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.2.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.3.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.4.html +1178 -10
- nautobot/project-static/docs/release-notes/version-1.5.html +1608 -225
- nautobot/project-static/docs/release-notes/version-2.0.html +1547 -47
- nautobot/project-static/docs/requirements.txt +1 -0
- nautobot/project-static/docs/rest-api/authentication.html +1179 -11
- nautobot/project-static/docs/rest-api/filtering.html +1178 -10
- nautobot/project-static/docs/rest-api/overview.html +1841 -446
- nautobot/project-static/docs/rest-api/ui-related-endpoints.html +4057 -0
- nautobot/project-static/docs/search/search_index.json +1 -1
- nautobot/project-static/docs/sitemap.xml +197 -187
- nautobot/project-static/docs/sitemap.xml.gz +0 -0
- nautobot/project-static/docs/user-guides/custom-fields.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/creating-devices.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/index.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/interfaces.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/ipam.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/platforms.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/regions.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/search-bar.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/tenants.html +1178 -10
- nautobot/project-static/docs/user-guides/getting-started/vlans-and-vlan-groups.html +1178 -10
- nautobot/project-static/docs/user-guides/git-data-source.html +1178 -10
- nautobot/project-static/docs/user-guides/graphql.html +1178 -10
- nautobot/project-static/docs/user-guides/relationships.html +1178 -10
- nautobot/project-static/docs/user-guides/s3-django-storage.html +1178 -10
- nautobot/project-static/js/forms.js +16 -9
- nautobot/project-static/js/theme.js +5 -0
- nautobot/tenancy/api/serializers.py +4 -32
- nautobot/tenancy/api/urls.py +1 -1
- nautobot/tenancy/forms.py +0 -28
- nautobot/tenancy/migrations/0008_tagsfield.py +19 -0
- nautobot/tenancy/models.py +0 -25
- nautobot/tenancy/navigation.py +6 -39
- nautobot/tenancy/templates/tenancy/tenant.html +12 -12
- nautobot/tenancy/templates/tenancy/tenantgroup.html +1 -1
- nautobot/tenancy/tests/test_api.py +1 -3
- nautobot/tenancy/tests/test_filters.py +10 -5
- nautobot/tenancy/views.py +0 -2
- nautobot/ui/.eslintignore +6 -0
- nautobot/ui/.gitignore +10 -0
- nautobot/ui/.prettierignore +9 -0
- nautobot/ui/.prettierrc +4 -0
- nautobot/ui/README.md +33 -0
- nautobot/ui/app_imports.js.j2 +7 -0
- nautobot/ui/craco.config.js +46 -0
- nautobot/ui/jsconfig-base.json +11 -0
- nautobot/ui/jsconfig.json +5 -0
- nautobot/ui/lib/nautobot-craco-alias-plugin.js +40 -0
- nautobot/ui/package-lock.json +21451 -0
- nautobot/ui/package.json +70 -0
- nautobot/ui/public/index.html +47 -0
- nautobot/ui/public/logo192.png +0 -0
- nautobot/ui/public/logo512.png +0 -0
- nautobot/ui/public/manifest.json +25 -0
- nautobot/ui/public/nautobot_logo.svg +131 -0
- nautobot/ui/public/robots.txt +3 -0
- nautobot/ui/src/App.js +71 -0
- nautobot/ui/src/components/AppFullWidthComponents.js +8 -0
- nautobot/ui/src/components/AppTab.js +40 -0
- nautobot/ui/src/components/Apps.js +60 -0
- nautobot/ui/src/components/HomeChangelogPanel.js +98 -0
- nautobot/ui/src/components/HomePanel.js +58 -0
- nautobot/ui/src/components/JobHistoryTable.js +78 -0
- nautobot/ui/src/components/Layout.js +53 -0
- nautobot/ui/src/components/LoadingWidget.js +25 -0
- nautobot/ui/src/components/Navbar.js +116 -0
- nautobot/ui/src/components/NotificationPopover.js +27 -0
- nautobot/ui/src/components/ObjectListTable.js +209 -0
- nautobot/ui/src/components/ReferenceDataTag.js +35 -0
- nautobot/ui/src/components/RouterButton.js +10 -0
- nautobot/ui/src/components/RouterLink.js +10 -0
- nautobot/ui/src/components/SidebarNav.js +147 -0
- nautobot/ui/src/components/Table.js +48 -0
- nautobot/ui/src/components/TableItem.js +71 -0
- nautobot/ui/src/components/__tests__/AppFullWidthComponents.test.js +16 -0
- nautobot/ui/src/components/__tests__/AppTab.test.js +21 -0
- nautobot/ui/src/components/__tests__/Apps.test.js +14 -0
- nautobot/ui/src/components/__tests__/Layout.test.js +33 -0
- nautobot/ui/src/components/__tests__/Table.test.js +36 -0
- nautobot/ui/src/components/__tests__/TableItem.test.js +37 -0
- nautobot/ui/src/components/__tests__/paginator.test.js +43 -0
- nautobot/ui/src/components/__tests__/paginator_form.test.js +13 -0
- nautobot/ui/src/components/pagination.js +93 -0
- nautobot/ui/src/components/paginator.js +79 -0
- nautobot/ui/src/components/paginator_form.js +43 -0
- nautobot/ui/src/components/usePagination.js +57 -0
- nautobot/ui/src/constants/apiPath.js +10 -0
- nautobot/ui/src/constants/icons.js +15 -0
- nautobot/ui/src/constants/size.js +15 -0
- nautobot/ui/src/index.js +65 -0
- nautobot/ui/src/reportWebVitals.js +15 -0
- nautobot/ui/src/router.js +77 -0
- nautobot/ui/src/utils/api.js +131 -0
- nautobot/ui/src/utils/app-import.js +15 -0
- nautobot/ui/src/utils/color.js +15 -0
- nautobot/ui/src/utils/date.js +14 -0
- nautobot/ui/src/utils/index.js +15 -0
- nautobot/ui/src/utils/navigation.js +32 -0
- nautobot/ui/src/utils/session.js +64 -0
- nautobot/ui/src/utils/store.js +242 -0
- nautobot/ui/src/utils/string.js +6 -0
- nautobot/ui/src/utils/url.js +4 -0
- nautobot/ui/src/views/Home.js +138 -0
- nautobot/ui/src/views/InstalledApps.js +80 -0
- nautobot/ui/src/views/Login.js +48 -0
- nautobot/ui/src/views/Logout.js +20 -0
- nautobot/ui/src/views/__tests__/BSCreateViewTemplate.test.js +11 -0
- nautobot/ui/src/views/__tests__/BSListViewTemplate.test.js +107 -0
- nautobot/ui/src/views/__tests__/Login.test.js +15 -0
- nautobot/ui/src/views/generic/GenericView.js +142 -0
- nautobot/ui/src/views/generic/ObjectCreate.js +96 -0
- nautobot/ui/src/views/generic/ObjectList.js +127 -0
- nautobot/ui/src/views/generic/ObjectRetrieve.js +551 -0
- nautobot/users/admin.py +1 -1
- nautobot/users/api/serializers.py +51 -61
- nautobot/users/api/urls.py +1 -1
- nautobot/users/api/views.py +53 -2
- nautobot/users/tests/test_api.py +110 -25
- nautobot/virtualization/api/serializers.py +18 -130
- nautobot/virtualization/api/urls.py +1 -1
- nautobot/virtualization/api/views.py +1 -22
- nautobot/virtualization/forms.py +13 -99
- nautobot/virtualization/migrations/0012_alter_virtualmachine_role_add_new_role.py +1 -1
- nautobot/virtualization/migrations/0013_migrate_virtualmachine_role_data.py +18 -11
- nautobot/virtualization/migrations/0015_rename_foreignkey_fields.py +1 -1
- nautobot/virtualization/migrations/0018_related_name_changes.py +1 -1
- nautobot/virtualization/migrations/0021_tagsfield_and_vminterface_to_primarymodel.py +39 -0
- nautobot/virtualization/migrations/0022_vminterface_timestamps_data_migration.py +17 -0
- nautobot/virtualization/migrations/{0021_ipam__namespaces.py → 0023_ipam__namespaces.py} +2 -2
- nautobot/virtualization/migrations/0024_fixup_null_statuses.py +25 -0
- nautobot/virtualization/migrations/0025_status_nonnullable.py +29 -0
- nautobot/virtualization/models.py +31 -123
- nautobot/virtualization/navigation.py +18 -99
- nautobot/virtualization/templates/virtualization/virtualmachine.html +2 -1
- nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +6 -0
- nautobot/virtualization/tests/test_api.py +25 -26
- nautobot/virtualization/tests/test_filters.py +41 -15
- nautobot/virtualization/tests/test_models.py +31 -7
- nautobot/virtualization/tests/test_views.py +42 -25
- nautobot/virtualization/views.py +7 -6
- {nautobot-2.0.0a3.dist-info → nautobot-2.0.0b1.dist-info}/METADATA +3 -7
- {nautobot-2.0.0a3.dist-info → nautobot-2.0.0b1.dist-info}/RECORD +744 -602
- {nautobot-2.0.0a3.dist-info → nautobot-2.0.0b1.dist-info}/WHEEL +1 -1
- nautobot/circuits/api/nested_serializers.py +0 -69
- nautobot/core/templates/plugin_template/navigation.py-tpl +0 -22
- nautobot/dcim/api/nested_serializers.py +0 -356
- nautobot/dcim/templates/dcim/device_import.html +0 -5
- nautobot/dcim/templates/dcim/device_import_child.html +0 -5
- nautobot/dcim/templates/dcim/inc/device_import_header.html +0 -4
- nautobot/extras/api/nested_serializers.py +0 -353
- nautobot/extras/migrations/0064_configcontext_data_migrations.py +0 -41
- nautobot/extras/migrations/0071_job__unique_name_data_migration.py +0 -46
- nautobot/extras/reports.py +0 -60
- nautobot/extras/scripts.py +0 -72
- nautobot/extras/tests/example_jobs/script_variables.py +0 -67
- nautobot/extras/tests/example_jobs/test_duplicate_name2.py +0 -5
- nautobot/extras/tests/example_jobs/test_fail.py +0 -16
- nautobot/extras/tests/example_jobs/test_file_upload_pass.py +0 -20
- nautobot/extras/tests/example_jobs/test_ipaddress_vars.py +0 -52
- nautobot/extras/tests/example_jobs/test_job_button_receiver.py +0 -21
- nautobot/extras/tests/example_jobs/test_job_hook_receiver.py +0 -20
- nautobot/extras/tests/example_jobs/test_location_with_custom_field.py +0 -35
- nautobot/extras/tests/example_jobs/test_log_redaction.py +0 -14
- nautobot/extras/tests/example_jobs/test_modify_db.py +0 -18
- nautobot/extras/tests/example_jobs/test_object_var_optional.py +0 -14
- nautobot/extras/tests/example_jobs/test_object_var_required.py +0 -14
- nautobot/extras/tests/example_jobs/test_object_vars.py +0 -29
- nautobot/extras/tests/example_jobs/test_pass.py +0 -19
- nautobot/extras/tests/example_jobs/test_read_only_fail.py +0 -24
- nautobot/extras/tests/example_jobs/test_read_only_no_commit_field.py +0 -10
- nautobot/extras/tests/example_jobs/test_read_only_pass.py +0 -22
- nautobot/ipam/api/nested_serializers.py +0 -159
- nautobot/ipam/migrations/0029_ipam__prefix__add_parent.py +0 -31
- nautobot/ipam/migrations/0030_ipam__prefix__data_migration.py +0 -13
- nautobot/ipam/migrations/0031_ipam__ipaddress__add_parent.py +0 -41
- nautobot/ipam/migrations/0032_ipam__ipaddress__data_migration.py +0 -11
- nautobot/tenancy/api/nested_serializers.py +0 -31
- nautobot/users/api/nested_serializers.py +0 -67
- nautobot/virtualization/api/nested_serializers.py +0 -65
- /nautobot/extras/{tests/example_jobs → test_jobs}/__init__.py +0 -0
- /nautobot/{dcim/models/sites.py → ipam/management/__init__.py} +0 -0
- {nautobot-2.0.0a3.dist-info → nautobot-2.0.0b1.dist-info}/LICENSE.txt +0 -0
- {nautobot-2.0.0a3.dist-info → nautobot-2.0.0b1.dist-info}/entry_points.txt +0 -0
|
@@ -1346,12 +1346,1166 @@
|
|
|
1346
1346
|
|
|
1347
1347
|
|
|
1348
1348
|
<label class="md-nav__link" for="__nav_2_8" id="__nav_2_8_label" tabindex="0">
|
|
1349
|
+
Model Details
|
|
1350
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1351
|
+
</label>
|
|
1352
|
+
|
|
1353
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_8_label" aria-expanded="false">
|
|
1354
|
+
<label class="md-nav__title" for="__nav_2_8">
|
|
1355
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1356
|
+
Model Details
|
|
1357
|
+
</label>
|
|
1358
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
1359
|
+
|
|
1360
|
+
|
|
1361
|
+
|
|
1362
|
+
|
|
1363
|
+
|
|
1364
|
+
|
|
1365
|
+
|
|
1366
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
1367
|
+
|
|
1368
|
+
|
|
1369
|
+
|
|
1370
|
+
|
|
1371
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_1" >
|
|
1372
|
+
|
|
1373
|
+
|
|
1374
|
+
|
|
1375
|
+
<label class="md-nav__link" for="__nav_2_8_1" id="__nav_2_8_1_label" tabindex="0">
|
|
1376
|
+
Circuits
|
|
1377
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1378
|
+
</label>
|
|
1379
|
+
|
|
1380
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_1_label" aria-expanded="false">
|
|
1381
|
+
<label class="md-nav__title" for="__nav_2_8_1">
|
|
1382
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1383
|
+
Circuits
|
|
1384
|
+
</label>
|
|
1385
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
1386
|
+
|
|
1387
|
+
|
|
1388
|
+
|
|
1389
|
+
|
|
1390
|
+
|
|
1391
|
+
|
|
1392
|
+
<li class="md-nav__item">
|
|
1393
|
+
<a href="../models/circuits/circuit.html" class="md-nav__link">
|
|
1394
|
+
Circuit
|
|
1395
|
+
</a>
|
|
1396
|
+
</li>
|
|
1397
|
+
|
|
1398
|
+
|
|
1399
|
+
|
|
1400
|
+
|
|
1401
|
+
|
|
1402
|
+
|
|
1403
|
+
|
|
1404
|
+
|
|
1405
|
+
|
|
1406
|
+
<li class="md-nav__item">
|
|
1407
|
+
<a href="../models/circuits/circuittermination.html" class="md-nav__link">
|
|
1408
|
+
Circuit Termination
|
|
1409
|
+
</a>
|
|
1410
|
+
</li>
|
|
1411
|
+
|
|
1412
|
+
|
|
1413
|
+
|
|
1414
|
+
|
|
1415
|
+
|
|
1416
|
+
|
|
1417
|
+
|
|
1418
|
+
|
|
1419
|
+
|
|
1420
|
+
<li class="md-nav__item">
|
|
1421
|
+
<a href="../models/circuits/circuittype.html" class="md-nav__link">
|
|
1422
|
+
Circuit Type
|
|
1423
|
+
</a>
|
|
1424
|
+
</li>
|
|
1425
|
+
|
|
1426
|
+
|
|
1427
|
+
|
|
1428
|
+
|
|
1429
|
+
|
|
1430
|
+
|
|
1431
|
+
|
|
1432
|
+
|
|
1433
|
+
|
|
1434
|
+
<li class="md-nav__item">
|
|
1435
|
+
<a href="../models/circuits/provider.html" class="md-nav__link">
|
|
1436
|
+
Circuit Provider
|
|
1437
|
+
</a>
|
|
1438
|
+
</li>
|
|
1439
|
+
|
|
1440
|
+
|
|
1441
|
+
|
|
1442
|
+
|
|
1443
|
+
|
|
1444
|
+
|
|
1445
|
+
|
|
1446
|
+
|
|
1447
|
+
|
|
1448
|
+
<li class="md-nav__item">
|
|
1449
|
+
<a href="../models/circuits/providernetwork.html" class="md-nav__link">
|
|
1450
|
+
Circuit Provider Network
|
|
1451
|
+
</a>
|
|
1452
|
+
</li>
|
|
1453
|
+
|
|
1454
|
+
|
|
1455
|
+
|
|
1456
|
+
|
|
1457
|
+
</ul>
|
|
1458
|
+
</nav>
|
|
1459
|
+
</li>
|
|
1460
|
+
|
|
1461
|
+
|
|
1462
|
+
|
|
1463
|
+
|
|
1464
|
+
|
|
1465
|
+
|
|
1466
|
+
|
|
1467
|
+
|
|
1468
|
+
|
|
1469
|
+
|
|
1470
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
1471
|
+
|
|
1472
|
+
|
|
1473
|
+
|
|
1474
|
+
|
|
1475
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_2" >
|
|
1476
|
+
|
|
1477
|
+
|
|
1478
|
+
|
|
1479
|
+
<label class="md-nav__link" for="__nav_2_8_2" id="__nav_2_8_2_label" tabindex="0">
|
|
1480
|
+
DCIM
|
|
1481
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1482
|
+
</label>
|
|
1483
|
+
|
|
1484
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_2_label" aria-expanded="false">
|
|
1485
|
+
<label class="md-nav__title" for="__nav_2_8_2">
|
|
1486
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1487
|
+
DCIM
|
|
1488
|
+
</label>
|
|
1489
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
1490
|
+
|
|
1491
|
+
|
|
1492
|
+
|
|
1493
|
+
|
|
1494
|
+
|
|
1495
|
+
|
|
1496
|
+
<li class="md-nav__item">
|
|
1497
|
+
<a href="../models/dcim/cable.html" class="md-nav__link">
|
|
1498
|
+
Cable
|
|
1499
|
+
</a>
|
|
1500
|
+
</li>
|
|
1501
|
+
|
|
1502
|
+
|
|
1503
|
+
|
|
1504
|
+
|
|
1505
|
+
|
|
1506
|
+
|
|
1507
|
+
|
|
1508
|
+
|
|
1509
|
+
|
|
1510
|
+
<li class="md-nav__item">
|
|
1511
|
+
<a href="../models/dcim/consoleport.html" class="md-nav__link">
|
|
1512
|
+
Console Port
|
|
1513
|
+
</a>
|
|
1514
|
+
</li>
|
|
1515
|
+
|
|
1516
|
+
|
|
1517
|
+
|
|
1518
|
+
|
|
1519
|
+
|
|
1520
|
+
|
|
1521
|
+
|
|
1522
|
+
|
|
1523
|
+
|
|
1524
|
+
<li class="md-nav__item">
|
|
1525
|
+
<a href="../models/dcim/consoleporttemplate.html" class="md-nav__link">
|
|
1526
|
+
Console Port Template
|
|
1527
|
+
</a>
|
|
1528
|
+
</li>
|
|
1529
|
+
|
|
1530
|
+
|
|
1531
|
+
|
|
1532
|
+
|
|
1533
|
+
|
|
1534
|
+
|
|
1535
|
+
|
|
1536
|
+
|
|
1537
|
+
|
|
1538
|
+
<li class="md-nav__item">
|
|
1539
|
+
<a href="../models/dcim/consoleserverport.html" class="md-nav__link">
|
|
1540
|
+
Console Server Port
|
|
1541
|
+
</a>
|
|
1542
|
+
</li>
|
|
1543
|
+
|
|
1544
|
+
|
|
1545
|
+
|
|
1546
|
+
|
|
1547
|
+
|
|
1548
|
+
|
|
1549
|
+
|
|
1550
|
+
|
|
1551
|
+
|
|
1552
|
+
<li class="md-nav__item">
|
|
1553
|
+
<a href="../models/dcim/consoleserverporttemplate.html" class="md-nav__link">
|
|
1554
|
+
Console Server Port Template
|
|
1555
|
+
</a>
|
|
1556
|
+
</li>
|
|
1557
|
+
|
|
1558
|
+
|
|
1559
|
+
|
|
1560
|
+
|
|
1561
|
+
|
|
1562
|
+
|
|
1563
|
+
|
|
1564
|
+
|
|
1565
|
+
|
|
1566
|
+
<li class="md-nav__item">
|
|
1567
|
+
<a href="../models/dcim/device.html" class="md-nav__link">
|
|
1568
|
+
Device
|
|
1569
|
+
</a>
|
|
1570
|
+
</li>
|
|
1571
|
+
|
|
1572
|
+
|
|
1573
|
+
|
|
1574
|
+
|
|
1575
|
+
|
|
1576
|
+
|
|
1577
|
+
|
|
1578
|
+
|
|
1579
|
+
|
|
1580
|
+
<li class="md-nav__item">
|
|
1581
|
+
<a href="../models/dcim/devicebay.html" class="md-nav__link">
|
|
1582
|
+
Device Bay
|
|
1583
|
+
</a>
|
|
1584
|
+
</li>
|
|
1585
|
+
|
|
1586
|
+
|
|
1587
|
+
|
|
1588
|
+
|
|
1589
|
+
|
|
1590
|
+
|
|
1591
|
+
|
|
1592
|
+
|
|
1593
|
+
|
|
1594
|
+
<li class="md-nav__item">
|
|
1595
|
+
<a href="../models/dcim/devicebaytemplate.html" class="md-nav__link">
|
|
1596
|
+
Device Bay Template
|
|
1597
|
+
</a>
|
|
1598
|
+
</li>
|
|
1599
|
+
|
|
1600
|
+
|
|
1601
|
+
|
|
1602
|
+
|
|
1603
|
+
|
|
1604
|
+
|
|
1605
|
+
|
|
1606
|
+
|
|
1607
|
+
|
|
1608
|
+
<li class="md-nav__item">
|
|
1609
|
+
<a href="../models/dcim/deviceredundancygroup.html" class="md-nav__link">
|
|
1610
|
+
Device Redundancy Group
|
|
1611
|
+
</a>
|
|
1612
|
+
</li>
|
|
1613
|
+
|
|
1614
|
+
|
|
1615
|
+
|
|
1616
|
+
|
|
1617
|
+
|
|
1618
|
+
|
|
1619
|
+
|
|
1620
|
+
|
|
1621
|
+
|
|
1622
|
+
<li class="md-nav__item">
|
|
1623
|
+
<a href="../models/dcim/devicetype.html" class="md-nav__link">
|
|
1624
|
+
Device Type
|
|
1625
|
+
</a>
|
|
1626
|
+
</li>
|
|
1627
|
+
|
|
1628
|
+
|
|
1629
|
+
|
|
1630
|
+
|
|
1631
|
+
|
|
1632
|
+
|
|
1633
|
+
|
|
1634
|
+
|
|
1635
|
+
|
|
1636
|
+
<li class="md-nav__item">
|
|
1637
|
+
<a href="../models/dcim/frontport.html" class="md-nav__link">
|
|
1638
|
+
Front Port
|
|
1639
|
+
</a>
|
|
1640
|
+
</li>
|
|
1641
|
+
|
|
1642
|
+
|
|
1643
|
+
|
|
1644
|
+
|
|
1645
|
+
|
|
1646
|
+
|
|
1647
|
+
|
|
1648
|
+
|
|
1649
|
+
|
|
1650
|
+
<li class="md-nav__item">
|
|
1651
|
+
<a href="../models/dcim/frontporttemplate.html" class="md-nav__link">
|
|
1652
|
+
Front Port Template
|
|
1653
|
+
</a>
|
|
1654
|
+
</li>
|
|
1655
|
+
|
|
1656
|
+
|
|
1657
|
+
|
|
1658
|
+
|
|
1659
|
+
|
|
1660
|
+
|
|
1661
|
+
|
|
1662
|
+
|
|
1663
|
+
|
|
1664
|
+
<li class="md-nav__item">
|
|
1665
|
+
<a href="../models/dcim/interface.html" class="md-nav__link">
|
|
1666
|
+
Interface
|
|
1667
|
+
</a>
|
|
1668
|
+
</li>
|
|
1669
|
+
|
|
1670
|
+
|
|
1671
|
+
|
|
1672
|
+
|
|
1673
|
+
|
|
1674
|
+
|
|
1675
|
+
|
|
1676
|
+
|
|
1677
|
+
|
|
1678
|
+
<li class="md-nav__item">
|
|
1679
|
+
<a href="../models/dcim/interfacetemplate.html" class="md-nav__link">
|
|
1680
|
+
Interface Template
|
|
1681
|
+
</a>
|
|
1682
|
+
</li>
|
|
1683
|
+
|
|
1684
|
+
|
|
1685
|
+
|
|
1686
|
+
|
|
1687
|
+
|
|
1688
|
+
|
|
1689
|
+
|
|
1690
|
+
|
|
1691
|
+
|
|
1692
|
+
<li class="md-nav__item">
|
|
1693
|
+
<a href="../models/dcim/inventoryitem.html" class="md-nav__link">
|
|
1694
|
+
Inventory Item
|
|
1695
|
+
</a>
|
|
1696
|
+
</li>
|
|
1697
|
+
|
|
1698
|
+
|
|
1699
|
+
|
|
1700
|
+
|
|
1701
|
+
|
|
1702
|
+
|
|
1703
|
+
|
|
1704
|
+
|
|
1705
|
+
|
|
1706
|
+
<li class="md-nav__item">
|
|
1707
|
+
<a href="../models/dcim/location.html" class="md-nav__link">
|
|
1708
|
+
Location
|
|
1709
|
+
</a>
|
|
1710
|
+
</li>
|
|
1711
|
+
|
|
1712
|
+
|
|
1713
|
+
|
|
1714
|
+
|
|
1715
|
+
|
|
1716
|
+
|
|
1717
|
+
|
|
1718
|
+
|
|
1719
|
+
|
|
1720
|
+
<li class="md-nav__item">
|
|
1721
|
+
<a href="../models/dcim/locationtype.html" class="md-nav__link">
|
|
1722
|
+
Location Type
|
|
1723
|
+
</a>
|
|
1724
|
+
</li>
|
|
1725
|
+
|
|
1726
|
+
|
|
1727
|
+
|
|
1728
|
+
|
|
1729
|
+
|
|
1730
|
+
|
|
1731
|
+
|
|
1732
|
+
|
|
1733
|
+
|
|
1734
|
+
<li class="md-nav__item">
|
|
1735
|
+
<a href="../models/dcim/manufacturer.html" class="md-nav__link">
|
|
1736
|
+
Manufacturer
|
|
1737
|
+
</a>
|
|
1738
|
+
</li>
|
|
1739
|
+
|
|
1740
|
+
|
|
1741
|
+
|
|
1742
|
+
|
|
1743
|
+
|
|
1744
|
+
|
|
1745
|
+
|
|
1746
|
+
|
|
1747
|
+
|
|
1748
|
+
<li class="md-nav__item">
|
|
1749
|
+
<a href="../models/dcim/platform.html" class="md-nav__link">
|
|
1750
|
+
Platform
|
|
1751
|
+
</a>
|
|
1752
|
+
</li>
|
|
1753
|
+
|
|
1754
|
+
|
|
1755
|
+
|
|
1756
|
+
|
|
1757
|
+
|
|
1758
|
+
|
|
1759
|
+
|
|
1760
|
+
|
|
1761
|
+
|
|
1762
|
+
<li class="md-nav__item">
|
|
1763
|
+
<a href="../models/dcim/powerfeed.html" class="md-nav__link">
|
|
1764
|
+
Power Feed
|
|
1765
|
+
</a>
|
|
1766
|
+
</li>
|
|
1767
|
+
|
|
1768
|
+
|
|
1769
|
+
|
|
1770
|
+
|
|
1771
|
+
|
|
1772
|
+
|
|
1773
|
+
|
|
1774
|
+
|
|
1775
|
+
|
|
1776
|
+
<li class="md-nav__item">
|
|
1777
|
+
<a href="../models/dcim/poweroutlet.html" class="md-nav__link">
|
|
1778
|
+
Power Outlet
|
|
1779
|
+
</a>
|
|
1780
|
+
</li>
|
|
1781
|
+
|
|
1782
|
+
|
|
1783
|
+
|
|
1784
|
+
|
|
1785
|
+
|
|
1786
|
+
|
|
1787
|
+
|
|
1788
|
+
|
|
1789
|
+
|
|
1790
|
+
<li class="md-nav__item">
|
|
1791
|
+
<a href="../models/dcim/poweroutlettemplate.html" class="md-nav__link">
|
|
1792
|
+
Power Outlet Template
|
|
1793
|
+
</a>
|
|
1794
|
+
</li>
|
|
1795
|
+
|
|
1796
|
+
|
|
1797
|
+
|
|
1798
|
+
|
|
1799
|
+
|
|
1800
|
+
|
|
1801
|
+
|
|
1802
|
+
|
|
1803
|
+
|
|
1804
|
+
<li class="md-nav__item">
|
|
1805
|
+
<a href="../models/dcim/powerpanel.html" class="md-nav__link">
|
|
1806
|
+
Power Panel
|
|
1807
|
+
</a>
|
|
1808
|
+
</li>
|
|
1809
|
+
|
|
1810
|
+
|
|
1811
|
+
|
|
1812
|
+
|
|
1813
|
+
|
|
1814
|
+
|
|
1815
|
+
|
|
1816
|
+
|
|
1817
|
+
|
|
1818
|
+
<li class="md-nav__item">
|
|
1819
|
+
<a href="../models/dcim/powerport.html" class="md-nav__link">
|
|
1820
|
+
Power Port
|
|
1821
|
+
</a>
|
|
1822
|
+
</li>
|
|
1823
|
+
|
|
1824
|
+
|
|
1825
|
+
|
|
1826
|
+
|
|
1827
|
+
|
|
1828
|
+
|
|
1829
|
+
|
|
1830
|
+
|
|
1831
|
+
|
|
1832
|
+
<li class="md-nav__item">
|
|
1833
|
+
<a href="../models/dcim/powerporttemplate.html" class="md-nav__link">
|
|
1834
|
+
Power Port Template
|
|
1835
|
+
</a>
|
|
1836
|
+
</li>
|
|
1837
|
+
|
|
1838
|
+
|
|
1839
|
+
|
|
1840
|
+
|
|
1841
|
+
|
|
1842
|
+
|
|
1843
|
+
|
|
1844
|
+
|
|
1845
|
+
|
|
1846
|
+
<li class="md-nav__item">
|
|
1847
|
+
<a href="../models/dcim/rack.html" class="md-nav__link">
|
|
1848
|
+
Rack
|
|
1849
|
+
</a>
|
|
1850
|
+
</li>
|
|
1851
|
+
|
|
1852
|
+
|
|
1853
|
+
|
|
1854
|
+
|
|
1855
|
+
|
|
1856
|
+
|
|
1857
|
+
|
|
1858
|
+
|
|
1859
|
+
|
|
1860
|
+
<li class="md-nav__item">
|
|
1861
|
+
<a href="../models/dcim/rackgroup.html" class="md-nav__link">
|
|
1862
|
+
Rack Group
|
|
1863
|
+
</a>
|
|
1864
|
+
</li>
|
|
1865
|
+
|
|
1866
|
+
|
|
1867
|
+
|
|
1868
|
+
|
|
1869
|
+
|
|
1870
|
+
|
|
1871
|
+
|
|
1872
|
+
|
|
1873
|
+
|
|
1874
|
+
<li class="md-nav__item">
|
|
1875
|
+
<a href="../models/dcim/rackreservation.html" class="md-nav__link">
|
|
1876
|
+
Rack Reservation
|
|
1877
|
+
</a>
|
|
1878
|
+
</li>
|
|
1879
|
+
|
|
1880
|
+
|
|
1881
|
+
|
|
1882
|
+
|
|
1883
|
+
|
|
1884
|
+
|
|
1885
|
+
|
|
1886
|
+
|
|
1887
|
+
|
|
1888
|
+
<li class="md-nav__item">
|
|
1889
|
+
<a href="../models/dcim/rearport.html" class="md-nav__link">
|
|
1890
|
+
Rear Port
|
|
1891
|
+
</a>
|
|
1892
|
+
</li>
|
|
1893
|
+
|
|
1894
|
+
|
|
1895
|
+
|
|
1896
|
+
|
|
1897
|
+
|
|
1898
|
+
|
|
1899
|
+
|
|
1900
|
+
|
|
1901
|
+
|
|
1902
|
+
<li class="md-nav__item">
|
|
1903
|
+
<a href="../models/dcim/rearporttemplate.html" class="md-nav__link">
|
|
1904
|
+
Rear Port Template
|
|
1905
|
+
</a>
|
|
1906
|
+
</li>
|
|
1907
|
+
|
|
1908
|
+
|
|
1909
|
+
|
|
1910
|
+
|
|
1911
|
+
|
|
1912
|
+
|
|
1913
|
+
|
|
1914
|
+
|
|
1915
|
+
|
|
1916
|
+
<li class="md-nav__item">
|
|
1917
|
+
<a href="../models/dcim/virtualchassis.html" class="md-nav__link">
|
|
1918
|
+
Virtual Chassis
|
|
1919
|
+
</a>
|
|
1920
|
+
</li>
|
|
1921
|
+
|
|
1922
|
+
|
|
1923
|
+
|
|
1924
|
+
|
|
1925
|
+
</ul>
|
|
1926
|
+
</nav>
|
|
1927
|
+
</li>
|
|
1928
|
+
|
|
1929
|
+
|
|
1930
|
+
|
|
1931
|
+
|
|
1932
|
+
|
|
1933
|
+
|
|
1934
|
+
|
|
1935
|
+
|
|
1936
|
+
|
|
1937
|
+
|
|
1938
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
1939
|
+
|
|
1940
|
+
|
|
1941
|
+
|
|
1942
|
+
|
|
1943
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_3" >
|
|
1944
|
+
|
|
1945
|
+
|
|
1946
|
+
|
|
1947
|
+
<label class="md-nav__link" for="__nav_2_8_3" id="__nav_2_8_3_label" tabindex="0">
|
|
1948
|
+
Extras
|
|
1949
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1950
|
+
</label>
|
|
1951
|
+
|
|
1952
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_3_label" aria-expanded="false">
|
|
1953
|
+
<label class="md-nav__title" for="__nav_2_8_3">
|
|
1954
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1955
|
+
Extras
|
|
1956
|
+
</label>
|
|
1957
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
1958
|
+
|
|
1959
|
+
|
|
1960
|
+
|
|
1961
|
+
|
|
1962
|
+
|
|
1963
|
+
|
|
1964
|
+
<li class="md-nav__item">
|
|
1965
|
+
<a href="../models/extras/configcontext.html" class="md-nav__link">
|
|
1966
|
+
Config Context
|
|
1967
|
+
</a>
|
|
1968
|
+
</li>
|
|
1969
|
+
|
|
1970
|
+
|
|
1971
|
+
|
|
1972
|
+
|
|
1973
|
+
|
|
1974
|
+
|
|
1975
|
+
|
|
1976
|
+
|
|
1977
|
+
|
|
1978
|
+
<li class="md-nav__item">
|
|
1979
|
+
<a href="../models/extras/configcontextschema.html" class="md-nav__link">
|
|
1980
|
+
Config Context Schema
|
|
1981
|
+
</a>
|
|
1982
|
+
</li>
|
|
1983
|
+
|
|
1984
|
+
|
|
1985
|
+
|
|
1986
|
+
|
|
1987
|
+
|
|
1988
|
+
|
|
1989
|
+
|
|
1990
|
+
|
|
1991
|
+
|
|
1992
|
+
<li class="md-nav__item">
|
|
1993
|
+
<a href="../models/extras/graphqlquery.html" class="md-nav__link">
|
|
1994
|
+
GraphQL Query
|
|
1995
|
+
</a>
|
|
1996
|
+
</li>
|
|
1997
|
+
|
|
1998
|
+
|
|
1999
|
+
|
|
2000
|
+
|
|
2001
|
+
|
|
2002
|
+
|
|
2003
|
+
|
|
2004
|
+
|
|
2005
|
+
|
|
2006
|
+
<li class="md-nav__item">
|
|
2007
|
+
<a href="../models/extras/imageattachment.html" class="md-nav__link">
|
|
2008
|
+
Image Attachment
|
|
2009
|
+
</a>
|
|
2010
|
+
</li>
|
|
2011
|
+
|
|
2012
|
+
|
|
2013
|
+
|
|
2014
|
+
|
|
2015
|
+
|
|
2016
|
+
|
|
2017
|
+
|
|
2018
|
+
|
|
2019
|
+
|
|
2020
|
+
<li class="md-nav__item">
|
|
2021
|
+
<a href="../models/extras/job.html" class="md-nav__link">
|
|
2022
|
+
Job
|
|
2023
|
+
</a>
|
|
2024
|
+
</li>
|
|
2025
|
+
|
|
2026
|
+
|
|
2027
|
+
|
|
2028
|
+
|
|
2029
|
+
|
|
2030
|
+
|
|
2031
|
+
|
|
2032
|
+
|
|
2033
|
+
|
|
2034
|
+
<li class="md-nav__item">
|
|
2035
|
+
<a href="../models/extras/joblogentry.html" class="md-nav__link">
|
|
2036
|
+
Job Log Entry
|
|
2037
|
+
</a>
|
|
2038
|
+
</li>
|
|
2039
|
+
|
|
2040
|
+
|
|
2041
|
+
|
|
2042
|
+
|
|
2043
|
+
|
|
2044
|
+
|
|
2045
|
+
|
|
2046
|
+
|
|
2047
|
+
|
|
2048
|
+
<li class="md-nav__item">
|
|
2049
|
+
<a href="../models/extras/jobresult.html" class="md-nav__link">
|
|
2050
|
+
Job Result
|
|
2051
|
+
</a>
|
|
2052
|
+
</li>
|
|
2053
|
+
|
|
2054
|
+
|
|
2055
|
+
|
|
2056
|
+
|
|
2057
|
+
|
|
2058
|
+
|
|
2059
|
+
|
|
2060
|
+
|
|
2061
|
+
|
|
2062
|
+
<li class="md-nav__item">
|
|
2063
|
+
<a href="../models/extras/role.html" class="md-nav__link">
|
|
2064
|
+
Role
|
|
2065
|
+
</a>
|
|
2066
|
+
</li>
|
|
2067
|
+
|
|
2068
|
+
|
|
2069
|
+
|
|
2070
|
+
|
|
2071
|
+
|
|
2072
|
+
|
|
2073
|
+
|
|
2074
|
+
|
|
2075
|
+
|
|
2076
|
+
<li class="md-nav__item">
|
|
2077
|
+
<a href="../models/extras/secret.html" class="md-nav__link">
|
|
2078
|
+
Secret
|
|
2079
|
+
</a>
|
|
2080
|
+
</li>
|
|
2081
|
+
|
|
2082
|
+
|
|
2083
|
+
|
|
2084
|
+
|
|
2085
|
+
|
|
2086
|
+
|
|
2087
|
+
|
|
2088
|
+
|
|
2089
|
+
|
|
2090
|
+
<li class="md-nav__item">
|
|
2091
|
+
<a href="../models/extras/secretsgroup.html" class="md-nav__link">
|
|
2092
|
+
Secrets group
|
|
2093
|
+
</a>
|
|
2094
|
+
</li>
|
|
2095
|
+
|
|
2096
|
+
|
|
2097
|
+
|
|
2098
|
+
|
|
2099
|
+
</ul>
|
|
2100
|
+
</nav>
|
|
2101
|
+
</li>
|
|
2102
|
+
|
|
2103
|
+
|
|
2104
|
+
|
|
2105
|
+
|
|
2106
|
+
|
|
2107
|
+
|
|
2108
|
+
|
|
2109
|
+
|
|
2110
|
+
|
|
2111
|
+
|
|
2112
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
2113
|
+
|
|
2114
|
+
|
|
2115
|
+
|
|
2116
|
+
|
|
2117
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_4" >
|
|
2118
|
+
|
|
2119
|
+
|
|
2120
|
+
|
|
2121
|
+
<label class="md-nav__link" for="__nav_2_8_4" id="__nav_2_8_4_label" tabindex="0">
|
|
2122
|
+
IPAM
|
|
2123
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2124
|
+
</label>
|
|
2125
|
+
|
|
2126
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_4_label" aria-expanded="false">
|
|
2127
|
+
<label class="md-nav__title" for="__nav_2_8_4">
|
|
2128
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2129
|
+
IPAM
|
|
2130
|
+
</label>
|
|
2131
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
2132
|
+
|
|
2133
|
+
|
|
2134
|
+
|
|
2135
|
+
|
|
2136
|
+
|
|
2137
|
+
|
|
2138
|
+
<li class="md-nav__item">
|
|
2139
|
+
<a href="../models/ipam/ipaddress.html" class="md-nav__link">
|
|
2140
|
+
IP Address
|
|
2141
|
+
</a>
|
|
2142
|
+
</li>
|
|
2143
|
+
|
|
2144
|
+
|
|
2145
|
+
|
|
2146
|
+
|
|
2147
|
+
|
|
2148
|
+
|
|
2149
|
+
|
|
2150
|
+
|
|
2151
|
+
|
|
2152
|
+
<li class="md-nav__item">
|
|
2153
|
+
<a href="../models/ipam/prefix.html" class="md-nav__link">
|
|
2154
|
+
Prefix
|
|
2155
|
+
</a>
|
|
2156
|
+
</li>
|
|
2157
|
+
|
|
2158
|
+
|
|
2159
|
+
|
|
2160
|
+
|
|
2161
|
+
|
|
2162
|
+
|
|
2163
|
+
|
|
2164
|
+
|
|
2165
|
+
|
|
2166
|
+
<li class="md-nav__item">
|
|
2167
|
+
<a href="../models/ipam/rir.html" class="md-nav__link">
|
|
2168
|
+
Rir
|
|
2169
|
+
</a>
|
|
2170
|
+
</li>
|
|
2171
|
+
|
|
2172
|
+
|
|
2173
|
+
|
|
2174
|
+
|
|
2175
|
+
|
|
2176
|
+
|
|
2177
|
+
|
|
2178
|
+
|
|
2179
|
+
|
|
2180
|
+
<li class="md-nav__item">
|
|
2181
|
+
<a href="../models/ipam/routetarget.html" class="md-nav__link">
|
|
2182
|
+
Route Target
|
|
2183
|
+
</a>
|
|
2184
|
+
</li>
|
|
2185
|
+
|
|
2186
|
+
|
|
2187
|
+
|
|
2188
|
+
|
|
2189
|
+
|
|
2190
|
+
|
|
2191
|
+
|
|
2192
|
+
|
|
2193
|
+
|
|
2194
|
+
<li class="md-nav__item">
|
|
2195
|
+
<a href="../models/ipam/service.html" class="md-nav__link">
|
|
2196
|
+
Service
|
|
2197
|
+
</a>
|
|
2198
|
+
</li>
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
|
|
2202
|
+
|
|
2203
|
+
|
|
2204
|
+
|
|
2205
|
+
|
|
2206
|
+
|
|
2207
|
+
|
|
2208
|
+
<li class="md-nav__item">
|
|
2209
|
+
<a href="../models/ipam/vlan.html" class="md-nav__link">
|
|
2210
|
+
VLAN
|
|
2211
|
+
</a>
|
|
2212
|
+
</li>
|
|
2213
|
+
|
|
2214
|
+
|
|
2215
|
+
|
|
2216
|
+
|
|
2217
|
+
|
|
2218
|
+
|
|
2219
|
+
|
|
2220
|
+
|
|
2221
|
+
|
|
2222
|
+
<li class="md-nav__item">
|
|
2223
|
+
<a href="../models/ipam/vlangroup.html" class="md-nav__link">
|
|
2224
|
+
VLAN Group
|
|
2225
|
+
</a>
|
|
2226
|
+
</li>
|
|
2227
|
+
|
|
2228
|
+
|
|
2229
|
+
|
|
2230
|
+
|
|
2231
|
+
|
|
2232
|
+
|
|
2233
|
+
|
|
2234
|
+
|
|
2235
|
+
|
|
2236
|
+
<li class="md-nav__item">
|
|
2237
|
+
<a href="../models/ipam/vrf.html" class="md-nav__link">
|
|
2238
|
+
VRF
|
|
2239
|
+
</a>
|
|
2240
|
+
</li>
|
|
2241
|
+
|
|
2242
|
+
|
|
2243
|
+
|
|
2244
|
+
|
|
2245
|
+
</ul>
|
|
2246
|
+
</nav>
|
|
2247
|
+
</li>
|
|
2248
|
+
|
|
2249
|
+
|
|
2250
|
+
|
|
2251
|
+
|
|
2252
|
+
|
|
2253
|
+
|
|
2254
|
+
|
|
2255
|
+
|
|
2256
|
+
|
|
2257
|
+
|
|
2258
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
2259
|
+
|
|
2260
|
+
|
|
2261
|
+
|
|
2262
|
+
|
|
2263
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_5" >
|
|
2264
|
+
|
|
2265
|
+
|
|
2266
|
+
|
|
2267
|
+
<label class="md-nav__link" for="__nav_2_8_5" id="__nav_2_8_5_label" tabindex="0">
|
|
2268
|
+
Tenancy
|
|
2269
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2270
|
+
</label>
|
|
2271
|
+
|
|
2272
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_5_label" aria-expanded="false">
|
|
2273
|
+
<label class="md-nav__title" for="__nav_2_8_5">
|
|
2274
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2275
|
+
Tenancy
|
|
2276
|
+
</label>
|
|
2277
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
2278
|
+
|
|
2279
|
+
|
|
2280
|
+
|
|
2281
|
+
|
|
2282
|
+
|
|
2283
|
+
|
|
2284
|
+
<li class="md-nav__item">
|
|
2285
|
+
<a href="../models/tenancy/tenant.html" class="md-nav__link">
|
|
2286
|
+
Tenant
|
|
2287
|
+
</a>
|
|
2288
|
+
</li>
|
|
2289
|
+
|
|
2290
|
+
|
|
2291
|
+
|
|
2292
|
+
|
|
2293
|
+
|
|
2294
|
+
|
|
2295
|
+
|
|
2296
|
+
|
|
2297
|
+
|
|
2298
|
+
<li class="md-nav__item">
|
|
2299
|
+
<a href="../models/tenancy/tenantgroup.html" class="md-nav__link">
|
|
2300
|
+
Tenant Group
|
|
2301
|
+
</a>
|
|
2302
|
+
</li>
|
|
2303
|
+
|
|
2304
|
+
|
|
2305
|
+
|
|
2306
|
+
|
|
2307
|
+
</ul>
|
|
2308
|
+
</nav>
|
|
2309
|
+
</li>
|
|
2310
|
+
|
|
2311
|
+
|
|
2312
|
+
|
|
2313
|
+
|
|
2314
|
+
|
|
2315
|
+
|
|
2316
|
+
|
|
2317
|
+
|
|
2318
|
+
|
|
2319
|
+
|
|
2320
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
2321
|
+
|
|
2322
|
+
|
|
2323
|
+
|
|
2324
|
+
|
|
2325
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_6" >
|
|
2326
|
+
|
|
2327
|
+
|
|
2328
|
+
|
|
2329
|
+
<label class="md-nav__link" for="__nav_2_8_6" id="__nav_2_8_6_label" tabindex="0">
|
|
2330
|
+
Users
|
|
2331
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2332
|
+
</label>
|
|
2333
|
+
|
|
2334
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_6_label" aria-expanded="false">
|
|
2335
|
+
<label class="md-nav__title" for="__nav_2_8_6">
|
|
2336
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2337
|
+
Users
|
|
2338
|
+
</label>
|
|
2339
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
2340
|
+
|
|
2341
|
+
|
|
2342
|
+
|
|
2343
|
+
|
|
2344
|
+
|
|
2345
|
+
|
|
2346
|
+
<li class="md-nav__item">
|
|
2347
|
+
<a href="../models/users/objectpermission.html" class="md-nav__link">
|
|
2348
|
+
Object Permission
|
|
2349
|
+
</a>
|
|
2350
|
+
</li>
|
|
2351
|
+
|
|
2352
|
+
|
|
2353
|
+
|
|
2354
|
+
|
|
2355
|
+
|
|
2356
|
+
|
|
2357
|
+
|
|
2358
|
+
|
|
2359
|
+
|
|
2360
|
+
<li class="md-nav__item">
|
|
2361
|
+
<a href="../models/users/token.html" class="md-nav__link">
|
|
2362
|
+
Token
|
|
2363
|
+
</a>
|
|
2364
|
+
</li>
|
|
2365
|
+
|
|
2366
|
+
|
|
2367
|
+
|
|
2368
|
+
|
|
2369
|
+
</ul>
|
|
2370
|
+
</nav>
|
|
2371
|
+
</li>
|
|
2372
|
+
|
|
2373
|
+
|
|
2374
|
+
|
|
2375
|
+
|
|
2376
|
+
|
|
2377
|
+
|
|
2378
|
+
|
|
2379
|
+
|
|
2380
|
+
|
|
2381
|
+
|
|
2382
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
2383
|
+
|
|
2384
|
+
|
|
2385
|
+
|
|
2386
|
+
|
|
2387
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_7" >
|
|
2388
|
+
|
|
2389
|
+
|
|
2390
|
+
|
|
2391
|
+
<label class="md-nav__link" for="__nav_2_8_7" id="__nav_2_8_7_label" tabindex="0">
|
|
2392
|
+
Virtualization
|
|
2393
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2394
|
+
</label>
|
|
2395
|
+
|
|
2396
|
+
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_8_7_label" aria-expanded="false">
|
|
2397
|
+
<label class="md-nav__title" for="__nav_2_8_7">
|
|
2398
|
+
<span class="md-nav__icon md-icon"></span>
|
|
2399
|
+
Virtualization
|
|
2400
|
+
</label>
|
|
2401
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
2402
|
+
|
|
2403
|
+
|
|
2404
|
+
|
|
2405
|
+
|
|
2406
|
+
|
|
2407
|
+
|
|
2408
|
+
<li class="md-nav__item">
|
|
2409
|
+
<a href="../models/virtualization/cluster.html" class="md-nav__link">
|
|
2410
|
+
Cluster
|
|
2411
|
+
</a>
|
|
2412
|
+
</li>
|
|
2413
|
+
|
|
2414
|
+
|
|
2415
|
+
|
|
2416
|
+
|
|
2417
|
+
|
|
2418
|
+
|
|
2419
|
+
|
|
2420
|
+
|
|
2421
|
+
|
|
2422
|
+
<li class="md-nav__item">
|
|
2423
|
+
<a href="../models/virtualization/clustergroup.html" class="md-nav__link">
|
|
2424
|
+
Cluster Group
|
|
2425
|
+
</a>
|
|
2426
|
+
</li>
|
|
2427
|
+
|
|
2428
|
+
|
|
2429
|
+
|
|
2430
|
+
|
|
2431
|
+
|
|
2432
|
+
|
|
2433
|
+
|
|
2434
|
+
|
|
2435
|
+
|
|
2436
|
+
<li class="md-nav__item">
|
|
2437
|
+
<a href="../models/virtualization/clustertype.html" class="md-nav__link">
|
|
2438
|
+
Cluster Type
|
|
2439
|
+
</a>
|
|
2440
|
+
</li>
|
|
2441
|
+
|
|
2442
|
+
|
|
2443
|
+
|
|
2444
|
+
|
|
2445
|
+
|
|
2446
|
+
|
|
2447
|
+
|
|
2448
|
+
|
|
2449
|
+
|
|
2450
|
+
<li class="md-nav__item">
|
|
2451
|
+
<a href="../models/virtualization/virtualmachine.html" class="md-nav__link">
|
|
2452
|
+
Virtual Machine
|
|
2453
|
+
</a>
|
|
2454
|
+
</li>
|
|
2455
|
+
|
|
2456
|
+
|
|
2457
|
+
|
|
2458
|
+
|
|
2459
|
+
|
|
2460
|
+
|
|
2461
|
+
|
|
2462
|
+
|
|
2463
|
+
|
|
2464
|
+
<li class="md-nav__item">
|
|
2465
|
+
<a href="../models/virtualization/vminterface.html" class="md-nav__link">
|
|
2466
|
+
VM Interface
|
|
2467
|
+
</a>
|
|
2468
|
+
</li>
|
|
2469
|
+
|
|
2470
|
+
|
|
2471
|
+
|
|
2472
|
+
|
|
2473
|
+
</ul>
|
|
2474
|
+
</nav>
|
|
2475
|
+
</li>
|
|
2476
|
+
|
|
2477
|
+
|
|
2478
|
+
|
|
2479
|
+
|
|
2480
|
+
</ul>
|
|
2481
|
+
</nav>
|
|
2482
|
+
</li>
|
|
2483
|
+
|
|
2484
|
+
|
|
2485
|
+
|
|
2486
|
+
|
|
2487
|
+
|
|
2488
|
+
|
|
2489
|
+
|
|
2490
|
+
|
|
2491
|
+
|
|
2492
|
+
|
|
2493
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
2494
|
+
|
|
2495
|
+
|
|
2496
|
+
|
|
2497
|
+
|
|
2498
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_9" >
|
|
2499
|
+
|
|
2500
|
+
|
|
2501
|
+
|
|
2502
|
+
<label class="md-nav__link" for="__nav_2_9" id="__nav_2_9_label" tabindex="0">
|
|
1349
2503
|
Additional Features
|
|
1350
2504
|
<span class="md-nav__icon md-icon"></span>
|
|
1351
2505
|
</label>
|
|
1352
2506
|
|
|
1353
|
-
<nav class="md-nav" data-md-level="2" aria-labelledby="
|
|
1354
|
-
<label class="md-nav__title" for="
|
|
2507
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_9_label" aria-expanded="false">
|
|
2508
|
+
<label class="md-nav__title" for="__nav_2_9">
|
|
1355
2509
|
<span class="md-nav__icon md-icon"></span>
|
|
1356
2510
|
Additional Features
|
|
1357
2511
|
</label>
|
|
@@ -1683,17 +2837,17 @@
|
|
|
1683
2837
|
|
|
1684
2838
|
|
|
1685
2839
|
|
|
1686
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
2840
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_10" >
|
|
1687
2841
|
|
|
1688
2842
|
|
|
1689
2843
|
|
|
1690
|
-
<label class="md-nav__link" for="
|
|
2844
|
+
<label class="md-nav__link" for="__nav_2_10" id="__nav_2_10_label" tabindex="0">
|
|
1691
2845
|
REST API
|
|
1692
2846
|
<span class="md-nav__icon md-icon"></span>
|
|
1693
2847
|
</label>
|
|
1694
2848
|
|
|
1695
|
-
<nav class="md-nav" data-md-level="2" aria-labelledby="
|
|
1696
|
-
<label class="md-nav__title" for="
|
|
2849
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_10_label" aria-expanded="false">
|
|
2850
|
+
<label class="md-nav__title" for="__nav_2_10">
|
|
1697
2851
|
<span class="md-nav__icon md-icon"></span>
|
|
1698
2852
|
REST API
|
|
1699
2853
|
</label>
|
|
@@ -1741,6 +2895,20 @@
|
|
|
1741
2895
|
|
|
1742
2896
|
|
|
1743
2897
|
|
|
2898
|
+
|
|
2899
|
+
|
|
2900
|
+
|
|
2901
|
+
|
|
2902
|
+
|
|
2903
|
+
<li class="md-nav__item">
|
|
2904
|
+
<a href="../rest-api/ui-related-endpoints.html" class="md-nav__link">
|
|
2905
|
+
UI Endpoints
|
|
2906
|
+
</a>
|
|
2907
|
+
</li>
|
|
2908
|
+
|
|
2909
|
+
|
|
2910
|
+
|
|
2911
|
+
|
|
1744
2912
|
</ul>
|
|
1745
2913
|
</nav>
|
|
1746
2914
|
</li>
|
|
@@ -1759,17 +2927,17 @@
|
|
|
1759
2927
|
|
|
1760
2928
|
|
|
1761
2929
|
|
|
1762
|
-
<input class="md-nav__toggle md-toggle " type="checkbox" id="
|
|
2930
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_11" >
|
|
1763
2931
|
|
|
1764
2932
|
|
|
1765
2933
|
|
|
1766
|
-
<label class="md-nav__link" for="
|
|
2934
|
+
<label class="md-nav__link" for="__nav_2_11" id="__nav_2_11_label" tabindex="0">
|
|
1767
2935
|
GraphQL API
|
|
1768
2936
|
<span class="md-nav__icon md-icon"></span>
|
|
1769
2937
|
</label>
|
|
1770
2938
|
|
|
1771
|
-
<nav class="md-nav" data-md-level="2" aria-labelledby="
|
|
1772
|
-
<label class="md-nav__title" for="
|
|
2939
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_11_label" aria-expanded="false">
|
|
2940
|
+
<label class="md-nav__title" for="__nav_2_11">
|
|
1773
2941
|
<span class="md-nav__icon md-icon"></span>
|
|
1774
2942
|
GraphQL API
|
|
1775
2943
|
</label>
|
|
@@ -2466,6 +3634,13 @@
|
|
|
2466
3634
|
Added Site Fields to Location (#2954)
|
|
2467
3635
|
</a>
|
|
2468
3636
|
|
|
3637
|
+
</li>
|
|
3638
|
+
|
|
3639
|
+
<li class="md-nav__item">
|
|
3640
|
+
<a href="#added-depth-rest-api-query-parameter" class="md-nav__link">
|
|
3641
|
+
Added Depth REST API Query Parameter
|
|
3642
|
+
</a>
|
|
3643
|
+
|
|
2469
3644
|
</li>
|
|
2470
3645
|
|
|
2471
3646
|
<li class="md-nav__item">
|
|
@@ -2527,6 +3702,20 @@
|
|
|
2527
3702
|
Collapsed nautobot.utilities into nautobot.core (#2721)
|
|
2528
3703
|
</a>
|
|
2529
3704
|
|
|
3705
|
+
</li>
|
|
3706
|
+
|
|
3707
|
+
<li class="md-nav__item">
|
|
3708
|
+
<a href="#rest-api-versioning-behavior-2799" class="md-nav__link">
|
|
3709
|
+
REST API Versioning Behavior (#2799)
|
|
3710
|
+
</a>
|
|
3711
|
+
|
|
3712
|
+
</li>
|
|
3713
|
+
|
|
3714
|
+
<li class="md-nav__item">
|
|
3715
|
+
<a href="#revamped-csv-import-and-export-2569-3715" class="md-nav__link">
|
|
3716
|
+
Revamped CSV Import and Export (#2569, #3715)
|
|
3717
|
+
</a>
|
|
3718
|
+
|
|
2530
3719
|
</li>
|
|
2531
3720
|
|
|
2532
3721
|
<li class="md-nav__item">
|
|
@@ -2584,6 +3773,20 @@
|
|
|
2584
3773
|
<nav class="md-nav" aria-label="Removed">
|
|
2585
3774
|
<ul class="md-nav__list">
|
|
2586
3775
|
|
|
3776
|
+
<li class="md-nav__item">
|
|
3777
|
+
<a href="#removed-brief-rest-api-query-parameter" class="md-nav__link">
|
|
3778
|
+
Removed Brief REST API Query Parameter
|
|
3779
|
+
</a>
|
|
3780
|
+
|
|
3781
|
+
</li>
|
|
3782
|
+
|
|
3783
|
+
<li class="md-nav__item">
|
|
3784
|
+
<a href="#removed-django-cacheops-1721" class="md-nav__link">
|
|
3785
|
+
Removed django-cacheops (#1721)
|
|
3786
|
+
</a>
|
|
3787
|
+
|
|
3788
|
+
</li>
|
|
3789
|
+
|
|
2587
3790
|
<li class="md-nav__item">
|
|
2588
3791
|
<a href="#removed-redundant-filter-fields-2804" class="md-nav__link">
|
|
2589
3792
|
Removed Redundant Filter Fields (#2804)
|
|
@@ -2609,11 +3812,11 @@
|
|
|
2609
3812
|
</li>
|
|
2610
3813
|
|
|
2611
3814
|
<li class="md-nav__item">
|
|
2612
|
-
<a href="#v200-
|
|
2613
|
-
v2.0.0-
|
|
3815
|
+
<a href="#v200-beta1-2023-06-06" class="md-nav__link">
|
|
3816
|
+
v2.0.0-beta.1 (2023-06-06)
|
|
2614
3817
|
</a>
|
|
2615
3818
|
|
|
2616
|
-
<nav class="md-nav" aria-label="v2.0.0-
|
|
3819
|
+
<nav class="md-nav" aria-label="v2.0.0-beta.1 (2023-06-06)">
|
|
2617
3820
|
<ul class="md-nav__list">
|
|
2618
3821
|
|
|
2619
3822
|
<li class="md-nav__item">
|
|
@@ -2635,6 +3838,13 @@
|
|
|
2635
3838
|
Dependencies
|
|
2636
3839
|
</a>
|
|
2637
3840
|
|
|
3841
|
+
</li>
|
|
3842
|
+
|
|
3843
|
+
<li class="md-nav__item">
|
|
3844
|
+
<a href="#fixed" class="md-nav__link">
|
|
3845
|
+
Fixed
|
|
3846
|
+
</a>
|
|
3847
|
+
|
|
2638
3848
|
</li>
|
|
2639
3849
|
|
|
2640
3850
|
<li class="md-nav__item">
|
|
@@ -2650,11 +3860,11 @@
|
|
|
2650
3860
|
</li>
|
|
2651
3861
|
|
|
2652
3862
|
<li class="md-nav__item">
|
|
2653
|
-
<a href="#v200-
|
|
2654
|
-
v2.0.0-alpha.
|
|
3863
|
+
<a href="#v200-alpha3-2023-04-13" class="md-nav__link">
|
|
3864
|
+
v2.0.0-alpha.3 (2023-04-13)
|
|
2655
3865
|
</a>
|
|
2656
3866
|
|
|
2657
|
-
<nav class="md-nav" aria-label="v2.0.0-alpha.
|
|
3867
|
+
<nav class="md-nav" aria-label="v2.0.0-alpha.3 (2023-04-13)">
|
|
2658
3868
|
<ul class="md-nav__list">
|
|
2659
3869
|
|
|
2660
3870
|
<li class="md-nav__item">
|
|
@@ -2679,14 +3889,55 @@
|
|
|
2679
3889
|
</li>
|
|
2680
3890
|
|
|
2681
3891
|
<li class="md-nav__item">
|
|
2682
|
-
<a href="#
|
|
3892
|
+
<a href="#removed_2" class="md-nav__link">
|
|
3893
|
+
Removed
|
|
3894
|
+
</a>
|
|
3895
|
+
|
|
3896
|
+
</li>
|
|
3897
|
+
|
|
3898
|
+
</ul>
|
|
3899
|
+
</nav>
|
|
3900
|
+
|
|
3901
|
+
</li>
|
|
3902
|
+
|
|
3903
|
+
<li class="md-nav__item">
|
|
3904
|
+
<a href="#v200-alpha2-2023-03-29" class="md-nav__link">
|
|
3905
|
+
v2.0.0-alpha.2 (2023-03-29)
|
|
3906
|
+
</a>
|
|
3907
|
+
|
|
3908
|
+
<nav class="md-nav" aria-label="v2.0.0-alpha.2 (2023-03-29)">
|
|
3909
|
+
<ul class="md-nav__list">
|
|
3910
|
+
|
|
3911
|
+
<li class="md-nav__item">
|
|
3912
|
+
<a href="#added_3" class="md-nav__link">
|
|
3913
|
+
Added
|
|
3914
|
+
</a>
|
|
3915
|
+
|
|
3916
|
+
</li>
|
|
3917
|
+
|
|
3918
|
+
<li class="md-nav__item">
|
|
3919
|
+
<a href="#changed_3" class="md-nav__link">
|
|
3920
|
+
Changed
|
|
3921
|
+
</a>
|
|
3922
|
+
|
|
3923
|
+
</li>
|
|
3924
|
+
|
|
3925
|
+
<li class="md-nav__item">
|
|
3926
|
+
<a href="#dependencies_2" class="md-nav__link">
|
|
3927
|
+
Dependencies
|
|
3928
|
+
</a>
|
|
3929
|
+
|
|
3930
|
+
</li>
|
|
3931
|
+
|
|
3932
|
+
<li class="md-nav__item">
|
|
3933
|
+
<a href="#fixed_1" class="md-nav__link">
|
|
2683
3934
|
Fixed
|
|
2684
3935
|
</a>
|
|
2685
3936
|
|
|
2686
3937
|
</li>
|
|
2687
3938
|
|
|
2688
3939
|
<li class="md-nav__item">
|
|
2689
|
-
<a href="#
|
|
3940
|
+
<a href="#removed_3" class="md-nav__link">
|
|
2690
3941
|
Removed
|
|
2691
3942
|
</a>
|
|
2692
3943
|
|
|
@@ -2706,28 +3957,28 @@
|
|
|
2706
3957
|
<ul class="md-nav__list">
|
|
2707
3958
|
|
|
2708
3959
|
<li class="md-nav__item">
|
|
2709
|
-
<a href="#
|
|
3960
|
+
<a href="#added_4" class="md-nav__link">
|
|
2710
3961
|
Added
|
|
2711
3962
|
</a>
|
|
2712
3963
|
|
|
2713
3964
|
</li>
|
|
2714
3965
|
|
|
2715
3966
|
<li class="md-nav__item">
|
|
2716
|
-
<a href="#
|
|
3967
|
+
<a href="#changed_4" class="md-nav__link">
|
|
2717
3968
|
Changed
|
|
2718
3969
|
</a>
|
|
2719
3970
|
|
|
2720
3971
|
</li>
|
|
2721
3972
|
|
|
2722
3973
|
<li class="md-nav__item">
|
|
2723
|
-
<a href="#
|
|
3974
|
+
<a href="#fixed_2" class="md-nav__link">
|
|
2724
3975
|
Fixed
|
|
2725
3976
|
</a>
|
|
2726
3977
|
|
|
2727
3978
|
</li>
|
|
2728
3979
|
|
|
2729
3980
|
<li class="md-nav__item">
|
|
2730
|
-
<a href="#
|
|
3981
|
+
<a href="#removed_4" class="md-nav__link">
|
|
2731
3982
|
Removed
|
|
2732
3983
|
</a>
|
|
2733
3984
|
|
|
@@ -3115,6 +4366,13 @@
|
|
|
3115
4366
|
Added Site Fields to Location (#2954)
|
|
3116
4367
|
</a>
|
|
3117
4368
|
|
|
4369
|
+
</li>
|
|
4370
|
+
|
|
4371
|
+
<li class="md-nav__item">
|
|
4372
|
+
<a href="#added-depth-rest-api-query-parameter" class="md-nav__link">
|
|
4373
|
+
Added Depth REST API Query Parameter
|
|
4374
|
+
</a>
|
|
4375
|
+
|
|
3118
4376
|
</li>
|
|
3119
4377
|
|
|
3120
4378
|
<li class="md-nav__item">
|
|
@@ -3176,6 +4434,20 @@
|
|
|
3176
4434
|
Collapsed nautobot.utilities into nautobot.core (#2721)
|
|
3177
4435
|
</a>
|
|
3178
4436
|
|
|
4437
|
+
</li>
|
|
4438
|
+
|
|
4439
|
+
<li class="md-nav__item">
|
|
4440
|
+
<a href="#rest-api-versioning-behavior-2799" class="md-nav__link">
|
|
4441
|
+
REST API Versioning Behavior (#2799)
|
|
4442
|
+
</a>
|
|
4443
|
+
|
|
4444
|
+
</li>
|
|
4445
|
+
|
|
4446
|
+
<li class="md-nav__item">
|
|
4447
|
+
<a href="#revamped-csv-import-and-export-2569-3715" class="md-nav__link">
|
|
4448
|
+
Revamped CSV Import and Export (#2569, #3715)
|
|
4449
|
+
</a>
|
|
4450
|
+
|
|
3179
4451
|
</li>
|
|
3180
4452
|
|
|
3181
4453
|
<li class="md-nav__item">
|
|
@@ -3233,6 +4505,20 @@
|
|
|
3233
4505
|
<nav class="md-nav" aria-label="Removed">
|
|
3234
4506
|
<ul class="md-nav__list">
|
|
3235
4507
|
|
|
4508
|
+
<li class="md-nav__item">
|
|
4509
|
+
<a href="#removed-brief-rest-api-query-parameter" class="md-nav__link">
|
|
4510
|
+
Removed Brief REST API Query Parameter
|
|
4511
|
+
</a>
|
|
4512
|
+
|
|
4513
|
+
</li>
|
|
4514
|
+
|
|
4515
|
+
<li class="md-nav__item">
|
|
4516
|
+
<a href="#removed-django-cacheops-1721" class="md-nav__link">
|
|
4517
|
+
Removed django-cacheops (#1721)
|
|
4518
|
+
</a>
|
|
4519
|
+
|
|
4520
|
+
</li>
|
|
4521
|
+
|
|
3236
4522
|
<li class="md-nav__item">
|
|
3237
4523
|
<a href="#removed-redundant-filter-fields-2804" class="md-nav__link">
|
|
3238
4524
|
Removed Redundant Filter Fields (#2804)
|
|
@@ -3258,11 +4544,11 @@
|
|
|
3258
4544
|
</li>
|
|
3259
4545
|
|
|
3260
4546
|
<li class="md-nav__item">
|
|
3261
|
-
<a href="#v200-
|
|
3262
|
-
v2.0.0-
|
|
4547
|
+
<a href="#v200-beta1-2023-06-06" class="md-nav__link">
|
|
4548
|
+
v2.0.0-beta.1 (2023-06-06)
|
|
3263
4549
|
</a>
|
|
3264
4550
|
|
|
3265
|
-
<nav class="md-nav" aria-label="v2.0.0-
|
|
4551
|
+
<nav class="md-nav" aria-label="v2.0.0-beta.1 (2023-06-06)">
|
|
3266
4552
|
<ul class="md-nav__list">
|
|
3267
4553
|
|
|
3268
4554
|
<li class="md-nav__item">
|
|
@@ -3284,6 +4570,13 @@
|
|
|
3284
4570
|
Dependencies
|
|
3285
4571
|
</a>
|
|
3286
4572
|
|
|
4573
|
+
</li>
|
|
4574
|
+
|
|
4575
|
+
<li class="md-nav__item">
|
|
4576
|
+
<a href="#fixed" class="md-nav__link">
|
|
4577
|
+
Fixed
|
|
4578
|
+
</a>
|
|
4579
|
+
|
|
3287
4580
|
</li>
|
|
3288
4581
|
|
|
3289
4582
|
<li class="md-nav__item">
|
|
@@ -3299,11 +4592,11 @@
|
|
|
3299
4592
|
</li>
|
|
3300
4593
|
|
|
3301
4594
|
<li class="md-nav__item">
|
|
3302
|
-
<a href="#v200-
|
|
3303
|
-
v2.0.0-alpha.
|
|
4595
|
+
<a href="#v200-alpha3-2023-04-13" class="md-nav__link">
|
|
4596
|
+
v2.0.0-alpha.3 (2023-04-13)
|
|
3304
4597
|
</a>
|
|
3305
4598
|
|
|
3306
|
-
<nav class="md-nav" aria-label="v2.0.0-alpha.
|
|
4599
|
+
<nav class="md-nav" aria-label="v2.0.0-alpha.3 (2023-04-13)">
|
|
3307
4600
|
<ul class="md-nav__list">
|
|
3308
4601
|
|
|
3309
4602
|
<li class="md-nav__item">
|
|
@@ -3328,14 +4621,55 @@
|
|
|
3328
4621
|
</li>
|
|
3329
4622
|
|
|
3330
4623
|
<li class="md-nav__item">
|
|
3331
|
-
<a href="#
|
|
4624
|
+
<a href="#removed_2" class="md-nav__link">
|
|
4625
|
+
Removed
|
|
4626
|
+
</a>
|
|
4627
|
+
|
|
4628
|
+
</li>
|
|
4629
|
+
|
|
4630
|
+
</ul>
|
|
4631
|
+
</nav>
|
|
4632
|
+
|
|
4633
|
+
</li>
|
|
4634
|
+
|
|
4635
|
+
<li class="md-nav__item">
|
|
4636
|
+
<a href="#v200-alpha2-2023-03-29" class="md-nav__link">
|
|
4637
|
+
v2.0.0-alpha.2 (2023-03-29)
|
|
4638
|
+
</a>
|
|
4639
|
+
|
|
4640
|
+
<nav class="md-nav" aria-label="v2.0.0-alpha.2 (2023-03-29)">
|
|
4641
|
+
<ul class="md-nav__list">
|
|
4642
|
+
|
|
4643
|
+
<li class="md-nav__item">
|
|
4644
|
+
<a href="#added_3" class="md-nav__link">
|
|
4645
|
+
Added
|
|
4646
|
+
</a>
|
|
4647
|
+
|
|
4648
|
+
</li>
|
|
4649
|
+
|
|
4650
|
+
<li class="md-nav__item">
|
|
4651
|
+
<a href="#changed_3" class="md-nav__link">
|
|
4652
|
+
Changed
|
|
4653
|
+
</a>
|
|
4654
|
+
|
|
4655
|
+
</li>
|
|
4656
|
+
|
|
4657
|
+
<li class="md-nav__item">
|
|
4658
|
+
<a href="#dependencies_2" class="md-nav__link">
|
|
4659
|
+
Dependencies
|
|
4660
|
+
</a>
|
|
4661
|
+
|
|
4662
|
+
</li>
|
|
4663
|
+
|
|
4664
|
+
<li class="md-nav__item">
|
|
4665
|
+
<a href="#fixed_1" class="md-nav__link">
|
|
3332
4666
|
Fixed
|
|
3333
4667
|
</a>
|
|
3334
4668
|
|
|
3335
4669
|
</li>
|
|
3336
4670
|
|
|
3337
4671
|
<li class="md-nav__item">
|
|
3338
|
-
<a href="#
|
|
4672
|
+
<a href="#removed_3" class="md-nav__link">
|
|
3339
4673
|
Removed
|
|
3340
4674
|
</a>
|
|
3341
4675
|
|
|
@@ -3355,28 +4689,28 @@
|
|
|
3355
4689
|
<ul class="md-nav__list">
|
|
3356
4690
|
|
|
3357
4691
|
<li class="md-nav__item">
|
|
3358
|
-
<a href="#
|
|
4692
|
+
<a href="#added_4" class="md-nav__link">
|
|
3359
4693
|
Added
|
|
3360
4694
|
</a>
|
|
3361
4695
|
|
|
3362
4696
|
</li>
|
|
3363
4697
|
|
|
3364
4698
|
<li class="md-nav__item">
|
|
3365
|
-
<a href="#
|
|
4699
|
+
<a href="#changed_4" class="md-nav__link">
|
|
3366
4700
|
Changed
|
|
3367
4701
|
</a>
|
|
3368
4702
|
|
|
3369
4703
|
</li>
|
|
3370
4704
|
|
|
3371
4705
|
<li class="md-nav__item">
|
|
3372
|
-
<a href="#
|
|
4706
|
+
<a href="#fixed_2" class="md-nav__link">
|
|
3373
4707
|
Fixed
|
|
3374
4708
|
</a>
|
|
3375
4709
|
|
|
3376
4710
|
</li>
|
|
3377
4711
|
|
|
3378
4712
|
<li class="md-nav__item">
|
|
3379
|
-
<a href="#
|
|
4713
|
+
<a href="#removed_4" class="md-nav__link">
|
|
3380
4714
|
Removed
|
|
3381
4715
|
</a>
|
|
3382
4716
|
|
|
@@ -3416,6 +4750,8 @@
|
|
|
3416
4750
|
<p>DeviceRole, RackRole, IPAM Role, and IPAddressRoleChoices have all been merged into a single generic Role model. A role can now be created and associated to one or more of the content-types that previously implemented role as a field. These model content-types include dcim.device, dcim.rack, virtualization.virtualmachine, ipam.ipaddress, ipam.prefix, and ipam.vlan.</p>
|
|
3417
4751
|
<h4 id="added-site-fields-to-location-2954">Added Site Fields to Location (<a href="https://github.com/nautobot/nautobot/issues/2954">#2954</a>)<a class="headerlink" href="#added-site-fields-to-location-2954" title="Permanent link">¶</a></h4>
|
|
3418
4752
|
<p>Added Site Model Fields to Location. Location Model now has <code>asn</code>, <code>comments</code>, <code>contact_email</code>, <code>contact_name</code>, <code>contact_phone</code>, <code>facility</code>, <code>latitude</code>, <code>longitude</code>, <code>physical_address</code>, <code>shipping_address</code> and <code>time_zone</code> fields.</p>
|
|
4753
|
+
<h4 id="added-depth-rest-api-query-parameter">Added Depth REST API Query Parameter<a class="headerlink" href="#added-depth-rest-api-query-parameter" title="Permanent link">¶</a></h4>
|
|
4754
|
+
<p>Added the <code>?depth</code> query parameter in Nautobot v2.X to replace the <code>?brief</code> parameter in the REST API. It enables <a href="https://www.django-rest-framework.org/api-guide/serializers/#specifying-nested-serialization">nested serialization</a> functionality and offers a more dynamic and comprehensive browsable API. It allows users greater control of the API response data and it is available for both retrieving a single object and a list of objects. This parameter is a positive integer value that can range from 0 to 10. To learn more more, check out the <a href="../rest-api/overview.md/#depth-query-parameter">documentation on the <code>?depth</code> query parameter</a>.</p>
|
|
3419
4755
|
<h4 id="natural-key-support-across-nautobot-models-2900">Natural Key Support Across Nautobot Models (<a href="https://github.com/nautobot/nautobot/issues/2900">#2900</a>)<a class="headerlink" href="#natural-key-support-across-nautobot-models-2900" title="Permanent link">¶</a></h4>
|
|
3420
4756
|
<p>Nautobot's <code>BaseModel</code> base class and related classes now implement automatic support for Django <a href="https://docs.djangoproject.com/en/3.2/topics/serialization/#natural-keys">natural keys</a> for lookup and referencing, as well as supporting a <code>natural_key_slug</code> concept similar to that introduced by <code>django-natural-keys</code>. (Nautobot does not depend on <code>django-natural-keys</code> but its implementation is heavily inspired by that project.) For example:</p>
|
|
3421
4757
|
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="o">>>></span> <span class="n">DeviceType</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">first</span><span class="p">()</span><span class="o">.</span><span class="n">natural_key</span><span class="p">()</span>
|
|
@@ -3535,6 +4871,12 @@
|
|
|
3535
4871
|
<p>Check out the <a href="../installation/region-and-site-data-migration-guide.html#region-and-site-related-data-model-migration-guide-for-existing-nautobot-app-installations">Region and Site Related Data Model Migration Guide</a> to learn how to migrate your Nautobot Apps and data models from <code>Site</code> and <code>Region</code> to <code>Location</code>.</p>
|
|
3536
4872
|
<h4 id="collapsed-nautobotutilities-into-nautobotcore-2721">Collapsed <code>nautobot.utilities</code> into <code>nautobot.core</code> (<a href="https://github.com/nautobot/nautobot/issues/2721">#2721</a>)<a class="headerlink" href="#collapsed-nautobotutilities-into-nautobotcore-2721" title="Permanent link">¶</a></h4>
|
|
3537
4873
|
<p><code>nautobot.utilities</code> no longer exists as a separate Python module or Django app. Its functionality has been collapsed into the <code>nautobot.core</code> app. See details at <a href="../installation/upgrading-from-nautobot-v1.html#python-code-location-changes">Python Code Location Changes</a>.</p>
|
|
4874
|
+
<h4 id="rest-api-versioning-behavior-2799">REST API Versioning Behavior (<a href="https://github.com/nautobot/nautobot/issues/2799">#2799</a>)<a class="headerlink" href="#rest-api-versioning-behavior-2799" title="Permanent link">¶</a></h4>
|
|
4875
|
+
<p>In Nautobot 2.0 and later, the REST API defaults, when the caller doesn't request a specific API version, to using the latest available version of the REST API. This is a change from Nautobot 1.x, where the default behavior was to use the 1.2 version of the REST API even when newer versions were available.</p>
|
|
4876
|
+
<h4 id="revamped-csv-import-and-export-2569-3715">Revamped CSV Import and Export (<a href="https://github.com/nautobot/nautobot/issues/2569">#2569</a>, <a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a>)<a class="headerlink" href="#revamped-csv-import-and-export-2569-3715" title="Permanent link">¶</a></h4>
|
|
4877
|
+
<p>Exporting objects and lists of objects to CSV format has been totally reimplemented in a new framework for ease of use and maintainability. Instead of accessing <code>http://nautobot/<app>/<model>/?export</code> you will now use the URL pattern <code>http://nautobot/api/<app>/<model>/?format=csv</code>, as the new CSV renderer is based on the REST API serializer definitions. This results in substantially more comprehensive CSV representations of many models.</p>
|
|
4878
|
+
<p>Conversely, importing objects from CSV format has also been reimplemented in the same new framework. The REST API can now accept CSV files as well as the existing JSON support, and the UI for importing CSVs uses this same framework behind the scenes.</p>
|
|
4879
|
+
<p>An immediate benefit you can notice from this reimplementation is that CSVs should now <strong>generally</strong> be "round-trip" capable, meaning that you can export a set of records to CSV format and then import that CSV into a different Nautobot instance (or delete the records and use the CSV to recreate them) without needing to "massage" the CSV into a different set of columns or fields.</p>
|
|
3538
4880
|
<h4 id="renamed-database-foreign-keys-and-related-names-2520">Renamed Database Foreign Keys and Related Names (<a href="https://github.com/nautobot/nautobot/issues/2520">#2520</a>)<a class="headerlink" href="#renamed-database-foreign-keys-and-related-names-2520" title="Permanent link">¶</a></h4>
|
|
3539
4881
|
<p>Some Foreign Key fields have been renamed to follow a more self-consistent pattern across the Nautobot app. This change is aimed to offer more clarity and predictability when it comes to related object database operations:</p>
|
|
3540
4882
|
<p>For example in v1.x to create a circuit object with <code>type</code> "circuit-type-1", you would do:</p>
|
|
@@ -3596,6 +4938,11 @@
|
|
|
3596
4938
|
<p>Existing prefixes with a status of "Container" will be migrated to the "Container" type. Existing prefixes with <code>is_pool</code> set will be migrated to the "Pool" type. Prefixes with both <code>is_pool</code> set and a status of "Container" will be migrated to the "Pool" type.</p>
|
|
3597
4939
|
<p>The "Container" status will be removed and all prefixes will be migrated to the "Active" status if it exists. If the "Active" status was deleted, prefixes will be migrated to the first available prefix status in the database that is not "Container".</p>
|
|
3598
4940
|
<h3 id="removed">Removed<a class="headerlink" href="#removed" title="Permanent link">¶</a></h3>
|
|
4941
|
+
<h4 id="removed-brief-rest-api-query-parameter">Removed Brief REST API Query Parameter<a class="headerlink" href="#removed-brief-rest-api-query-parameter" title="Permanent link">¶</a></h4>
|
|
4942
|
+
<p>Support for <code>?brief</code> REST API query parameter and <code>Nested*Serializers</code> have been removed in Nautobot v2.X. They are replaced by the new <a href="../rest-api/overview.md/#depth-query-parameter"><code>?depth</code> query parameter</a>.</p>
|
|
4943
|
+
<h4 id="removed-django-cacheops-1721">Removed <code>django-cacheops</code> (<a href="https://github.com/nautobot/nautobot/issues/1721">#1721</a>)<a class="headerlink" href="#removed-django-cacheops-1721" title="Permanent link">¶</a></h4>
|
|
4944
|
+
<p>Nautobot no longer uses <code>django-cacheops</code> for caching of database queries or other information. In some cases this has been replaced by the use of Django's native Redis caching capabilities.</p>
|
|
4945
|
+
<p>The configuration settings <code>CACHEOPS</code>, <code>CACHEOPS_DEFAULTS</code>, <code>CACHEOPS_DEGRADE_ON_FAILURE</code>, <code>CACHEOPS_ENABLED</code>, <code>CACHEOPS_HEALTH_CHECK_ENABLED</code>, <code>CACHEOPS_REDIS</code>, etc. are now unused by Nautobot and may be removed from your configuration.</p>
|
|
3599
4946
|
<h4 id="removed-redundant-filter-fields-2804">Removed Redundant Filter Fields (<a href="https://github.com/nautobot/nautobot/pull/2804">#2804</a>)<a class="headerlink" href="#removed-redundant-filter-fields-2804" title="Permanent link">¶</a></h4>
|
|
3600
4947
|
<p>As a part of breaking changes made in v2.X, shadowed filter/filterset fields are being removed throughout Nautobot.</p>
|
|
3601
4948
|
<p>In Nautobot 1.x, for some of the foreign-key related fields:
|
|
@@ -3610,20 +4957,173 @@
|
|
|
3610
4957
|
<h4 id="removed-rq-support-2523">Removed RQ support (<a href="https://github.com/nautobot/nautobot/issue/2523">#2523</a>)<a class="headerlink" href="#removed-rq-support-2523" title="Permanent link">¶</a></h4>
|
|
3611
4958
|
<p>Support for RQ and <code>django-rq</code>, deprecated since Nautobot 1.1.0, has been fully removed from Nautobot 2.0.</p>
|
|
3612
4959
|
<!-- towncrier release notes start -->
|
|
3613
|
-
<h2 id="v200-
|
|
4960
|
+
<h2 id="v200-beta1-2023-06-06">v2.0.0-beta.1 (2023-06-06)<a class="headerlink" href="#v200-beta1-2023-06-06" title="Permanent link">¶</a></h2>
|
|
3614
4961
|
<h3 id="added_1">Added<a class="headerlink" href="#added_1" title="Permanent link">¶</a></h3>
|
|
3615
4962
|
<ul>
|
|
3616
|
-
<li><a href="https://github.com/nautobot/nautobot/issues/
|
|
4963
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/851">#851</a> - Added list view with CSV import/export buttons for <code>CircuitTermination</code> objects.</li>
|
|
4964
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1633">#1633</a> - Added <code>created</code> and <code>last_updated</code> fields on the <code>VMInterface</code> model. When migrating to this release, these fields will default to <code>None</code> for any pre-existing instances of this model.</li>
|
|
4965
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Added job stdout/stderr redirection to database <code>JobLogEntry</code> records.</li>
|
|
4966
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Added support to skip job logs from being written to the database.</li>
|
|
4967
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2901">#2901</a> - Added <code>get_absolute_url</code> method on <code>BaseModel</code> which will attempt to resolve the detail view route for all subclassed models.</li>
|
|
4968
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3192">#3192</a> - Added a data migration to migrate existing ScheduledJob instances to support new format.</li>
|
|
4969
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3203">#3203</a> - Added a <code>nautobot-server build_ui</code> command for building the web UI</li>
|
|
4970
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3237">#3237</a> - Added Node.JS to Docker final image, bundled <code>node_modules</code> to speed up rebuilds.</li>
|
|
4971
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3615">#3615</a> - Added toggle buttons between Legacy UI and New UI.</li>
|
|
4972
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3637">#3637</a> - Added <code>pre_delete</code> signal to nullify the device's <code>primary_ip</code> field/fields if its primary ips are removed from interface's <code>ip_addresses</code> m2m field.</li>
|
|
4973
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3637">#3637</a> - Added <code>pre_save</code> signal to catch invalid operations in manual creations of <code>IPAddressToInterface</code>.</li>
|
|
4974
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3637">#3637</a> - Added <code>unique_together</code> for through model <code>IPAddressToInterface</code>.</li>
|
|
4975
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3651">#3651</a> - Added <code>home_url</code>, <code>config_url</code>, and <code>docs_url</code> keys to the <code>/api/plugins/installed-plugins/</code> REST API endpoint.</li>
|
|
4976
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3679">#3679</a> - Added optional <code>api</code> argument to <code>BaseModel.get_absolute_url()</code>.</li>
|
|
4977
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3702">#3702</a> - Added basic Redis caching for <code>TreeModel.display</code> to reduce redundant queries when listing such objects.</li>
|
|
4978
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3708">#3708</a> - Added sorting support to the REST API via the <code>sort</code> query parameter.</li>
|
|
4979
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3713">#3713</a> - Added <code>celery_kwargs</code> field to <code>JobResult</code> and <code>ScheduledJob</code> models.</li>
|
|
4980
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3714">#3714</a> - Added generic test for GET/PUT round-trip in the REST API.</li>
|
|
4981
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3714">#3714</a> - Added support for <code>{"value": "x"}</code> format when writing to ChoiceFields in the REST API, making round-trip data easier.</li>
|
|
4982
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Added <code>NautobotCSVParser</code> class, providing the ability for the REST API to accept CSV as an input format.</li>
|
|
4983
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Added ability to specify a <code>parent_bay</code> when creating a Device via the REST API.</li>
|
|
4984
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Added <code>APIViewTestCases.CreateObjectViewTestCase.test_recreate_object_csv</code> generic test, testing the "round-trip" capability of each API endpoint's CSV export and import.</li>
|
|
4985
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Added (temporary) <code>natural_key_field_names</code> to <code>IPAddress</code>, <code>Prefix</code>, <code>RackReservation</code>, <code>ScheduledJob</code>, and <code>Service</code> models.</li>
|
|
4986
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3721">#3721</a> - Added App provided model view override.</li>
|
|
4987
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3722">#3722</a> - Added <code>termination_type</code> filter to <code>CableFilterSet</code>.</li>
|
|
4988
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3722">#3722</a> - Added <code>natural_key_slug</code> field to REST API serializers.</li>
|
|
4989
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3736">#3736</a> - Added App provided custom route view.</li>
|
|
4990
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3741">#3741</a> - Added natural-key-slug information to UI detail views.</li>
|
|
4991
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3754">#3754</a> - Added loading widget to the left of the ObjectListTable Buttons after initial data load.</li>
|
|
4992
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3759">#3759</a> - Implemented IPAM Namespace & parenting data migrations.</li>
|
|
4993
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3767">#3767</a> - Added <code>detail-view-config</code> API endpoint to <code>ModelViewSetMixin</code>.</li>
|
|
4994
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3804">#3804</a> - Added feature to redirect all add and edit views to legacy UI.</li>
|
|
4995
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Added <code>bool</code> return value for <code>Nautobot.extras.datasources.git.ensure_git_repository()</code> to indicate whether the filesystem was changed.</li>
|
|
3617
4996
|
</ul>
|
|
3618
4997
|
<h3 id="changed_1">Changed<a class="headerlink" href="#changed_1" title="Permanent link">¶</a></h3>
|
|
3619
4998
|
<ul>
|
|
4999
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1633">#1633</a> - The base class for all <code>tags</code> fields on <code>PrimaryModel</code> subclasses is now <code>nautobot.core.models.fields.TagsField</code> rather than <code>taggit.managers.TaggableManager</code>. Any apps using <code>PrimaryModel</code> as a base class will likely need to generate and run a schema migration to reflect this change.</li>
|
|
5000
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Changed <code>JobLogEntry.log_level</code> choices from <code>default</code>, <code>info</code>, <code>success</code>, <code>warning</code>, <code>failure</code> to Python default logging levels <code>debug</code>, <code>info</code>, <code>warning</code>, <code>error</code> and <code>critical</code>.</li>
|
|
5001
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Changed job logging from custom log methods on the <code>BaseJob</code> class to celery's <code>get_task_logger</code> logging implementation.</li>
|
|
5002
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2569">#2569</a> - Revamped CSV export functionality to use REST API serializers for more self-consistency and reduced boilerplate.</li>
|
|
5003
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2569">#2569</a> - Revised the natural key for <code>SecretsGroupAssociation</code> through-table model.</li>
|
|
5004
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2569">#2569</a> - Changed behavior of <code>JobLogEntry.display</code> REST API field to match the model behavior.</li>
|
|
5005
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2799">#2799</a> - Changed REST API versioning to default to latest instead of earliest when unspecified by the client.</li>
|
|
5006
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3042">#3042</a> - Removed all <code>Nested*Serializer</code> classes in favor of a <code>depth</code>-based REST API design.</li>
|
|
5007
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3042">#3042</a> - The <code>?brief=True</code> REST API parameter has been replaced by a new <code>?depth=<0-10></code> API parameter, allowing greater control of the returned data.</li>
|
|
5008
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3228">#3228</a> - Removed <code>run_job</code> Celery task and updated <code>BaseJob</code> to subclass Celery <code>Task</code>.</li>
|
|
5009
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3449">#3449</a> - Renamed <code>Relationship</code> model attribute <code>slug</code> to <code>key</code>.</li>
|
|
5010
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3449">#3449</a> - Renamed <code>Relationship</code> model attribute <code>name</code> to <code>label</code>.</li>
|
|
5011
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3450">#3450</a> - Renamed <code>ComputedField</code> model attribute <code>slug</code> to <code>key</code>.</li>
|
|
5012
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3465">#3465</a> - Renamed IPAddress <code>prefix_length</code> field to <code>mask_length</code>.</li>
|
|
5013
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3465">#3465</a> - Made IPAddress <code>host</code> field non-modifiable.</li>
|
|
5014
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3527">#3527</a> - Restructured navigation menus to context-centered design for 2.0.</li>
|
|
5015
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3552">#3552</a> - Extracted data tables from upgrading-from-nautobot-v1.md into separate YAML files.</li>
|
|
5016
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3586">#3586</a> - Changed REST API for Device and VirtualMachine to omit <code>config_context</code> by default and only include it when requested by using the <code>?include=config_context</code> query parameter.</li>
|
|
5017
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3607">#3607</a> - Changed the default <code>lookup_field</code> for <code>NautobotUIViewSet</code> to <code>"pk"</code> instead of <code>"slug"</code>.</li>
|
|
5018
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3650">#3650</a> - Updated ui 2.0 jsconfig.json to exclude <code>node_modules</code> and <code>build</code> directories.</li>
|
|
5019
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3663">#3663</a> - Modified <code>delete_button</code> and <code>edit_button</code> template tags to lookup <code>pk</code> and <code>slug</code> without the need to specify the lookup key.</li>
|
|
5020
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3679">#3679</a> - Changed <code>BaseModelSerializer</code> to inherit from <code>HyperlinkedModelSerializer</code> instead of <code>ModelSerializer</code>. This changed the REST API representation of related objects (at depth 0) from UUIDs to API hyperlinks to improve discoverability and usability of the API.</li>
|
|
5021
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3691">#3691</a> - Implemented <code>Meta.list_display_fields</code> for all serializers.</li>
|
|
5022
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3692">#3692</a> - Updated <code>JobResult</code> manager <code>store_result</code> method to censor sensitive variables.</li>
|
|
5023
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3702">#3702</a> - Changed nested serialization to never include tags, computed fields, relationships, and other M2M fields.</li>
|
|
5024
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3713">#3713</a> - Changed <code>Job.read_only</code> field to an informational field set by the job author and removed the ability for administrators to override this field. This field no longer changes the behavior of Nautobot core.</li>
|
|
5025
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Reworked CSV import to be based on the REST API implementation instead of custom forms and views.</li>
|
|
5026
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Changed the parameters and behavior of <code>CSVDataField</code> and <code>CSVFileField</code> in support of the new CSV import framework.</li>
|
|
5027
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Changed the <code>user</code> parameter on the RackReservation REST API to optional; if omitted, the requesting user will now be automatically selected as the owner of any created reservations.</li>
|
|
5028
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3742">#3742</a> - Centered the LoadingWidget component in UI.</li>
|
|
5029
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3742">#3742</a> - Lightened the color of the LoadingWidget text to gray-3.</li>
|
|
5030
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3742">#3742</a> - Lightened the color of the skeleton component when loading tables.</li>
|
|
5031
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3744">#3744</a> - A batch of improvements to state handling in the UI to solve loading bugs.</li>
|
|
5032
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3767">#3767</a> - Enhanced error handling for fetcher in React UI <code>ObjectRetrieveView</code>.</li>
|
|
5033
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3785">#3785</a> - Deprecated <code>StatusModel</code> mixin in favor of directly including a <code>StatusField</code> as needed.</li>
|
|
5034
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed Job <code>class_path</code> property from <code><source>/<module>/<ClassName></code> to simply <code><module>.<ClassName></code>.</li>
|
|
5035
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed GitRepository slugs to use underscores rather than dashes so they can be used as Python module names.</li>
|
|
5036
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed Job <code>module_name</code> for Git-derived Jobs to <code><git_repository_slug>.jobs.<module></code>.</li>
|
|
5037
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - System-provided Jobs are now enabled by default for running.</li>
|
|
5038
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed return signature for <code>Nautobot.core.utils.git.GitRepo.checkout()</code> to include whether the filesystem was changed.</li>
|
|
5039
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed <code>job</code> filter on JobButton, JobHook, JobResult, and ScheduledJob to be name-based rather than slug-based.</li>
|
|
5040
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed <code>Job.runnable</code> property to not consider whether the <code>job_class</code> is set, as a performance optimization.</li>
|
|
5041
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Moved test Jobs from <code>nautobot/extras/tests/example_jobs/test_*.py</code> to <code>nautobot/extras/test_jobs/*.py</code> to avoid unnecessary loading by the <code>unittest</code> runner.</li>
|
|
5042
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Changed client-side slug construction (legacy UI) to use underscores rather than dashes.</li>
|
|
5043
|
+
</ul>
|
|
5044
|
+
<h3 id="dependencies">Dependencies<a class="headerlink" href="#dependencies" title="Permanent link">¶</a></h3>
|
|
5045
|
+
<ul>
|
|
5046
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1721">#1721</a> - Removed dependency on <code>django-cacheops</code>.</li>
|
|
5047
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3672">#3672</a> - Changed <code>napalm</code> dependency to 4.x release in order to allow Netmiko 4.x to install. Dependency resolution resulted in removing the following packages: <code>ciscoconfparse</code>, <code>deprecat</code>, <code>dnspython</code>, <code>loguru</code>, <code>toml</code>, <code>win32-setctime</code>.</li>
|
|
5048
|
+
</ul>
|
|
5049
|
+
<h3 id="fixed">Fixed<a class="headerlink" href="#fixed" title="Permanent link">¶</a></h3>
|
|
5050
|
+
<ul>
|
|
5051
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3378">#3378</a> - Re-enabled skipped tests.</li>
|
|
5052
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3437">#3437</a> - Fixed the possibility of inadvertently applying the same <code>Tag</code> to the same object multiple times by adding appropriate uniqueness constraints on the <code>TaggedItem</code> through table.</li>
|
|
5053
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3518">#3518</a> - Fixed an error seen when running the <code>extras.0061_collect_roles_from_related_apps_roles</code> migration.</li>
|
|
5054
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3545">#3545</a> - Fixed a bug in Job edit view template where slug was missing, preventing creation from happening.</li>
|
|
5055
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3591">#3591</a> - Fixed a few errors in the v2.0 migration documentation.</li>
|
|
5056
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3592">#3592</a> - Fixed heuristic for duplicate calls to <code>populate_model_features_registry</code> causing skipped updates.</li>
|
|
5057
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3618">#3618</a> - Fix corrupted <code>package-lock.json</code> which was causing test failures.</li>
|
|
5058
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3675">#3675</a> - Fixed job edit form silently failing.</li>
|
|
5059
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3687">#3687</a> - Fixed a bug in <code>Prefix.reparent_ips()</code> that was too greedy in reparenting IP addresses when child prexies were deeply nested (such as /31)</li>
|
|
5060
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3702">#3702</a> - Added some missing <code>select_related</code> on <code>DeviceViewSet</code> and <code>PrefixViewSet</code> to improve performance.</li>
|
|
5061
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3714">#3714</a> - Fixed inability to set null via the REST API on <code>Interface.mac_address</code> and <code>VMInterface.mac_address</code>.</li>
|
|
5062
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3714">#3714</a> - Fixed inability to set null via the REST API on <code>DeviceType.front_image</code> and <code>DeviceType.rear_image</code>.</li>
|
|
5063
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3714">#3714</a> - Fixed <code>password</code> being incorrectly marked as a required field when editing a User via the REST API.</li>
|
|
5064
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Fixed inability to set the <code>failover_strategy</code> field as unspecified/blank when creating/updating <code>DeviceRedundancyGroup</code> via the REST API.</li>
|
|
5065
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Fixed incorrect interim natural key definition for <code>Device</code> and <code>VRF</code> models.</li>
|
|
5066
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Fixed the possibility of setting values for nonexistent custom fields via the REST API.</li>
|
|
5067
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Fixed incorrect password-handling logic when creating/updating a <code>User</code> via the REST API.</li>
|
|
5068
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3716">#3716</a> - Fixed an error when attempting to edit a user via the Nautobot admin UI.</li>
|
|
5069
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3722">#3722</a> - Fixed incorrect filter forms on console-connections, power-connections, and interface-connections list views.</li>
|
|
5070
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3729">#3729</a> - Fixed a bug that references a non-existent Relationship model attribute in Relationship migration file.</li>
|
|
5071
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3731">#3731</a> - Fixed <code>debugpy</code> workflow not working with the removal of <code>manage.py</code>.</li>
|
|
5072
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3737">#3737</a> - Fixed broken <code>--cache_test_fixtures</code> when running tests.</li>
|
|
5073
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3740">#3740</a> - Fixed container builds failed resulting from #3731.</li>
|
|
5074
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3741">#3741</a> - Fixed missing time-zone information on various Job-related tests in <code>nautobot.extras.tests.test_views</code>.</li>
|
|
5075
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3741">#3741</a> - Fixed various cable-termination API serializers incorrectly reporting the <code>cable</code> field as writable.</li>
|
|
5076
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3768">#3768</a> - Fixed new UI homepage breaks if recent object-changes reference objects that no longer exist.</li>
|
|
5077
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3785">#3785</a> - Fixed undesirable nullability of <code>status</code> fields to correctly match their intended usage.</li>
|
|
5078
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3786">#3786</a> - Fixed default descriptions of REST API actions in the OpenAPI schema to be more accurate.</li>
|
|
5079
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3792">#3792</a> - Fixed logging output not being suppressed during unit and integration tests.</li>
|
|
5080
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3828">#3828</a> - Fixed a bug caused by <a href="https://github.com/nautobot/nautobot/issues/3637">#3637</a> that prevents devices with primary_ip from being deleted.</li>
|
|
5081
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3829">#3829</a> - Fixed build failure caused by registered App missing ui/index.js.</li>
|
|
5082
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3833">#3833</a> - Fixed build failure caused by registered App missing urls.py file or a urlpatterns.</li>
|
|
5083
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Removed leftover/non-functional <code>Source</code> tab from job_approval_request.html.</li>
|
|
5084
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3864">#3864</a> - Fixed cases where Device.role was null, incongruent with the enforcement in the API and UI.</li>
|
|
5085
|
+
</ul>
|
|
5086
|
+
<h3 id="removed_1">Removed<a class="headerlink" href="#removed_1" title="Permanent link">¶</a></h3>
|
|
5087
|
+
<ul>
|
|
5088
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1633">#1633</a> - Removed monkey-patching of <code>taggit.managers.TaggableManager</code>.</li>
|
|
5089
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1633">#1633</a> - Removed <code>nautobot.extras.utils.is_taggable</code>; use <code>nautobot.core.models.utils.is_taggable</code> instead.</li>
|
|
5090
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1633">#1633</a> - Removed backward-compatibility with <code>taggit</code> 1.x Python API; instead of <code>object.tags.set(tag1, tag2, tag3)</code> you must now do <code>object.tags.set([tag1, tag2, tag3])</code>.</li>
|
|
5091
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/1721">#1721</a> - Removed dependency on and usage of <code>django-cacheops</code>.</li>
|
|
5092
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Removed custom <code>BaseJob</code> logging methods <code>_log</code>, <code>log</code>, <code>log_debug</code>, <code>log_success</code>, <code>log_info</code>, <code>log_warning</code> and <code>log_failure</code>.</li>
|
|
5093
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2331">#2331</a> - Removed <code>active_test</code> and <code>failed</code> properties from <code>BaseJob</code> class.</li>
|
|
5094
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2569">#2569</a> - Removed <code>csv_headers</code> and <code>to_csv()</code> from all models as they are no longer needed.</li>
|
|
5095
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/2885">#2885</a> - Removed <code>changelog_url</code> from <code>ObjectView</code>'s context.</li>
|
|
5096
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3228">#3228</a> - Removed atomic transaction from Jobs.</li>
|
|
5097
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3228">#3228</a> - Removed support for <code>test_*</code> and <code>post_run</code> methods in Jobs.</li>
|
|
5098
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3465">#3465</a> - Removed <code>broadcast</code> field from IPAddress.</li>
|
|
5099
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3527">#3527</a> - Removed <code>NavMenuButton</code> and its subclasses as they are not a part of the 2.0 UI.</li>
|
|
5100
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3527">#3527</a> - Removed <code>NavMenuTab.weight</code> property as the menu tabs/contexts are not reorderable in 2.0.</li>
|
|
5101
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3623">#3623</a> - Removed remaining erroneous slug references from tenant.html and tenantgroup.html.</li>
|
|
5102
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3651">#3651</a> - Removed misspelled <code>verison</code> key from <code>/api/plugins/installed-plugins</code> REST API endpoint.</li>
|
|
5103
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3679">#3679</a> - Removed explicit <code>url</code> field declarations from most REST API serializers as they are now derived automatically.</li>
|
|
5104
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3713">#3713</a> - Removed <code>Job.read_only_override</code>, <code>JobResult.obj_type</code>, <code>JobResult.periodic_task_name</code>, and <code>JobResult.task_id</code> fields.</li>
|
|
5105
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3713">#3713</a> - Removed <code>NautobotFakeRequest</code> and associated methods, variables and logic.</li>
|
|
5106
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Removed <code>LocatableModelCSVFormMixin</code>, <code>RoleModelCSVFormMixin</code>, <code>RoleRequiredRoleModelCSVFormMixin</code>, and <code>StatusModelCSVFormMixin</code> classes, as they are no longer needed after reworking how CSV import is handled.</li>
|
|
5107
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Removed <code>bulk_create_form_class</code> field from <code>NautobotUIViewSet</code> as it's no longer used or needed.</li>
|
|
5108
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3715">#3715</a> - Removed <code>model_form</code> and <code>widget_attrs</code> fields from <code>BulkImportView</code> as they are no longer used or needed.</li>
|
|
5109
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Removed <code>Job.slug</code>, <code>Job.source</code>, and <code>Job.git_repository</code> database fields.</li>
|
|
5110
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Removed <code>source</code> and <code>slug</code> filters for Jobs.</li>
|
|
5111
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3840">#3840</a> - Removed <code>get_jobs()</code>, <code>get_job_classpaths()</code>, <code>jobs_in_directory()</code> functions.</li>
|
|
5112
|
+
</ul>
|
|
5113
|
+
<h2 id="v200-alpha3-2023-04-13">v2.0.0-alpha.3 (2023-04-13)<a class="headerlink" href="#v200-alpha3-2023-04-13" title="Permanent link">¶</a></h2>
|
|
5114
|
+
<h3 id="added_2">Added<a class="headerlink" href="#added_2" title="Permanent link">¶</a></h3>
|
|
5115
|
+
<ul>
|
|
5116
|
+
<li><a href="https://github.com/nautobot/nautobot/issues/3337">#3337</a> - Add <code>Namespace</code> model to IPAM.</li>
|
|
5117
|
+
</ul>
|
|
5118
|
+
<h3 id="changed_2">Changed<a class="headerlink" href="#changed_2" title="Permanent link">¶</a></h3>
|
|
5119
|
+
<ul>
|
|
3620
5120
|
<li><a href="https://github.com/nautobot/nautobot/issues/2915">#2915</a> - Implemented a concrete <code>parent</code> relationship from <code>Prefix</code> to itself.</li>
|
|
3621
5121
|
<li><a href="https://github.com/nautobot/nautobot/issues/3337">#3337</a> - Changed Prefix and other model uniqueness to center around Namespace model.</li>
|
|
3622
5122
|
<li><a href="https://github.com/nautobot/nautobot/issues/3337">#3337</a> - TODO: Update with many more changes.</li>
|
|
3623
5123
|
<li><a href="https://github.com/nautobot/nautobot/issues/3439">#3439</a> - Changed the GraphQL <code>execute_saved_query</code> function's argument from <code>saved_query_slug</code> to <code>saved_query_name</code>.</li>
|
|
3624
5124
|
<li><a href="https://github.com/nautobot/nautobot/issues/3523">#3523</a> - Renamed <code>nat_outside</code> field on IPAddress serializer to <code>nat_outside_list</code> for self-consistency.</li>
|
|
3625
5125
|
</ul>
|
|
3626
|
-
<h3 id="
|
|
5126
|
+
<h3 id="dependencies_1">Dependencies<a class="headerlink" href="#dependencies_1" title="Permanent link">¶</a></h3>
|
|
3627
5127
|
<ul>
|
|
3628
5128
|
<li><a href="https://github.com/nautobot/nautobot/issues/2316">#2316</a> - Dropped support for Python 3.7. Python 3.8 is now the minimum version required by Nautobot.</li>
|
|
3629
5129
|
<li><a href="https://github.com/nautobot/nautobot/issues/2316">#2316</a> - Updated <code>django-auth-ldap</code> dependency to <code>~4.2.0</code>.</li>
|
|
@@ -3640,13 +5140,13 @@
|
|
|
3640
5140
|
<li><a href="https://github.com/nautobot/nautobot/issues/2316">#2316</a> - Updated various development-only dependencies to the latest available versions.</li>
|
|
3641
5141
|
<li><a href="https://github.com/nautobot/nautobot/issues/3525">#3525</a> - Added explicit dependency on <code>packaging</code> that had been inadvertently omitted.</li>
|
|
3642
5142
|
</ul>
|
|
3643
|
-
<h3 id="
|
|
5143
|
+
<h3 id="removed_2">Removed<a class="headerlink" href="#removed_2" title="Permanent link">¶</a></h3>
|
|
3644
5144
|
<ul>
|
|
3645
5145
|
<li><a href="https://github.com/nautobot/nautobot/issues/3439">#3439</a> - Removed <code>slug</code> field from many database models.</li>
|
|
3646
5146
|
<li><a href="https://github.com/nautobot/nautobot/issues/3523">#3523</a> - Removed <code>nat_outside</code> getter-setter in IPAddress model.</li>
|
|
3647
5147
|
</ul>
|
|
3648
5148
|
<h2 id="v200-alpha2-2023-03-29">v2.0.0-alpha.2 (2023-03-29)<a class="headerlink" href="#v200-alpha2-2023-03-29" title="Permanent link">¶</a></h2>
|
|
3649
|
-
<h3 id="
|
|
5149
|
+
<h3 id="added_3">Added<a class="headerlink" href="#added_3" title="Permanent link">¶</a></h3>
|
|
3650
5150
|
<ul>
|
|
3651
5151
|
<li><a href="https://github.com/nautobot/nautobot/issues/2900">#2900</a> - Added natural-key support to most Nautobot models, inspired by the <code>django-natural-keys</code> library.</li>
|
|
3652
5152
|
<li><a href="https://github.com/nautobot/nautobot/issues/2957">#2957</a> - Added Location constraints for objects (CircuitTermination, Device, PowerPanel, PowerFeed, RackGroup, Rack, Prefix, VLAN, VLANGroup, Cluster).</li>
|
|
@@ -3663,7 +5163,7 @@
|
|
|
3663
5163
|
<li><a href="https://github.com/nautobot/nautobot/issues/3403">#3403</a> - Added support for Nautobot Apps to provide Django Constance Fields for the settings.</li>
|
|
3664
5164
|
<li><a href="https://github.com/nautobot/nautobot/issues/3418">#3418</a> - Added ObjectPermission Data Migration from Region/Site to Location.</li>
|
|
3665
5165
|
</ul>
|
|
3666
|
-
<h3 id="
|
|
5166
|
+
<h3 id="changed_3">Changed<a class="headerlink" href="#changed_3" title="Permanent link">¶</a></h3>
|
|
3667
5167
|
<ul>
|
|
3668
5168
|
<li><a href="https://github.com/nautobot/nautobot/issues/824">#824</a> - Renamed <code>slug</code> field to <code>key</code> on CustomField model class.</li>
|
|
3669
5169
|
<li><a href="https://github.com/nautobot/nautobot/issues/824">#824</a> - Changed validation of CustomField <code>key</code> to enforce that it is valid as a GraphQL identifier.</li>
|
|
@@ -3707,12 +5207,12 @@
|
|
|
3707
5207
|
<li><a href="https://github.com/nautobot/nautobot/issues/3351">#3351</a> - Changed extras abstract model ForeignKeys to use ForeignKeyWithAutoRelatedName.</li>
|
|
3708
5208
|
<li><a href="https://github.com/nautobot/nautobot/issues/3354">#3354</a> - Synced in fixes from 1.5.x LTM branch up through v1.5.11.</li>
|
|
3709
5209
|
</ul>
|
|
3710
|
-
<h3 id="
|
|
5210
|
+
<h3 id="dependencies_2">Dependencies<a class="headerlink" href="#dependencies_2" title="Permanent link">¶</a></h3>
|
|
3711
5211
|
<ul>
|
|
3712
5212
|
<li><a href="https://github.com/nautobot/nautobot/issues/2521">#2521</a> - Removed dependency on <code>django-cryptography</code>.</li>
|
|
3713
5213
|
<li><a href="https://github.com/nautobot/nautobot/issues/2524">#2524</a> - Removed no-longer-used <code>drf-yasg</code> dependency.</li>
|
|
3714
5214
|
</ul>
|
|
3715
|
-
<h3 id="
|
|
5215
|
+
<h3 id="fixed_1">Fixed<a class="headerlink" href="#fixed_1" title="Permanent link">¶</a></h3>
|
|
3716
5216
|
<ul>
|
|
3717
5217
|
<li><a href="https://github.com/nautobot/nautobot/issues/633">#633</a> - Fixed job result not updating when job hard time limit is reached.</li>
|
|
3718
5218
|
<li><a href="https://github.com/nautobot/nautobot/issues/1362">#1362</a> - Fixed migrations for <code>Prefix.type</code>.</li>
|
|
@@ -3727,7 +5227,7 @@
|
|
|
3727
5227
|
<li><a href="https://github.com/nautobot/nautobot/issues/3342">#3342</a> - Fixed BaseFilterSet not using multiple choice filters for CharFields with choices.</li>
|
|
3728
5228
|
<li><a href="https://github.com/nautobot/nautobot/issues/3457">#3457</a> - Fixed bug preventing scheduled job from running.</li>
|
|
3729
5229
|
</ul>
|
|
3730
|
-
<h3 id="
|
|
5230
|
+
<h3 id="removed_3">Removed<a class="headerlink" href="#removed_3" title="Permanent link">¶</a></h3>
|
|
3731
5231
|
<ul>
|
|
3732
5232
|
<li><a href="https://github.com/nautobot/nautobot/issues/824">#824</a> - Removed <code>name</code> field from CustomField model class.</li>
|
|
3733
5233
|
<li><a href="https://github.com/nautobot/nautobot/issues/1634">#1634</a> - Removed unnecessary legacy <code>manage.py</code> file from Nautobot repository.</li>
|
|
@@ -3744,7 +5244,7 @@
|
|
|
3744
5244
|
<li><a href="https://github.com/nautobot/nautobot/issues/3302">#3302</a> - Removed <code>Aggregate</code> and migrated all existing instances to <code>Prefix</code>.</li>
|
|
3745
5245
|
</ul>
|
|
3746
5246
|
<h2 id="v200-alpha1-2023-01-31">v2.0.0-alpha.1 (2023-01-31)<a class="headerlink" href="#v200-alpha1-2023-01-31" title="Permanent link">¶</a></h2>
|
|
3747
|
-
<h3 id="
|
|
5247
|
+
<h3 id="added_4">Added<a class="headerlink" href="#added_4" title="Permanent link">¶</a></h3>
|
|
3748
5248
|
<ul>
|
|
3749
5249
|
<li><a href="https://github.com/nautobot/nautobot/issues/204">#204</a> - Added style guide documentation for importing python modules in Nautobot.</li>
|
|
3750
5250
|
<li><a href="https://github.com/nautobot/nautobot/issues/1731">#1731</a> - Added missing filters to <code>circuits</code> app.</li>
|
|
@@ -3753,7 +5253,7 @@
|
|
|
3753
5253
|
<li><a href="https://github.com/nautobot/nautobot/issues/2955">#2955</a> - Added "Region" and "Site" <code>LocationTypes</code> and their respective locations based on existing <code>Site</code> and <code>Region</code> instances.</li>
|
|
3754
5254
|
<li><a href="https://github.com/nautobot/nautobot/issues/3132">#3132</a> - Added the ability for apps to register their models for inclusion in the global Nautobot search.</li>
|
|
3755
5255
|
</ul>
|
|
3756
|
-
<h3 id="
|
|
5256
|
+
<h3 id="changed_4">Changed<a class="headerlink" href="#changed_4" title="Permanent link">¶</a></h3>
|
|
3757
5257
|
<ul>
|
|
3758
5258
|
<li><a href="https://github.com/nautobot/nautobot/issues/204">#204</a> - Changed imports to use module namespaces in <code>utilities/filters.py</code>.</li>
|
|
3759
5259
|
<li><a href="https://github.com/nautobot/nautobot/issues/510">#510</a> - The <code>Region</code>, <code>RackGroup</code>, <code>TenantGroup</code>, and <code>InventoryItem</code> models are now based on <code>django-tree-queries</code> instead of <code>django-mptt</code>. This does change the API for certain tree operations on these models, for example <code>get_ancestors()</code> is now <code>ancestors()</code> and <code>get_descendants()</code> is now <code>descendants()</code>.</li>
|
|
@@ -3783,7 +5283,7 @@
|
|
|
3783
5283
|
<li><a href="https://github.com/nautobot/nautobot/issues/3069">#3069</a> - Renamed foreign key fields and related names in Virtualization and DCIM apps to follow a common naming convention. See v2 upgrade guide for full list of changes.</li>
|
|
3784
5284
|
<li><a href="https://github.com/nautobot/nautobot/issues/3177">#3177</a> - Updated <code>VLANFactory</code> to generate longer and more "realistic" <code>VLAN</code> names.</li>
|
|
3785
5285
|
</ul>
|
|
3786
|
-
<h3 id="
|
|
5286
|
+
<h3 id="fixed_2">Fixed<a class="headerlink" href="#fixed_2" title="Permanent link">¶</a></h3>
|
|
3787
5287
|
<ul>
|
|
3788
5288
|
<li><a href="https://github.com/nautobot/nautobot/issues/1982">#1982</a> - Fixed a UI presentation/validation issue with dynamic-groups using foreign-key filters that aren't explicitly defined in the corresponding FilterForm.</li>
|
|
3789
5289
|
<li><a href="https://github.com/nautobot/nautobot/issues/2808">#2808</a> - Fixed incorrectly named filters in <code>circuits</code> app.</li>
|
|
@@ -3792,7 +5292,7 @@
|
|
|
3792
5292
|
<li><a href="https://github.com/nautobot/nautobot/issues/3167">#3167</a> - Fixed <code>ObjectChange</code> records not being migrated and <code>legacy_role__name</code> not being a property in <code>Role</code> migrations.</li>
|
|
3793
5293
|
<li><a href="https://github.com/nautobot/nautobot/issues/3177">#3177</a> - Fixed a spurious failure in <code>BulkEditObjectsViewTestCase.test_bulk_edit_objects_with_constrained_permission</code>.</li>
|
|
3794
5294
|
</ul>
|
|
3795
|
-
<h3 id="
|
|
5295
|
+
<h3 id="removed_4">Removed<a class="headerlink" href="#removed_4" title="Permanent link">¶</a></h3>
|
|
3796
5296
|
<ul>
|
|
3797
5297
|
<li><a href="https://github.com/nautobot/nautobot/issues/510">#510</a> - Removed dependency on <code>django-mptt</code>. Models (<code>Region</code>, <code>RackGroup</code>, <code>TenantGroup</code>, <code>InventoryItem</code>) that previously were based on MPTT are now implemented using <code>django-tree-queries</code> instead.</li>
|
|
3798
5298
|
<li><a href="https://github.com/nautobot/nautobot/issues/1731">#1731</a> - Removed redundant filters from <code>circuits</code> app.</li>
|