nautobot 2.0.0a2__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/__init__.py +1 -5
- nautobot/apps/api.py +6 -8
- nautobot/apps/forms.py +0 -2
- nautobot/apps/ui.py +0 -8
- nautobot/circuits/api/serializers.py +9 -119
- nautobot/circuits/api/urls.py +1 -1
- nautobot/circuits/api/views.py +0 -1
- nautobot/circuits/choices.py +0 -2
- nautobot/circuits/filters.py +7 -6
- nautobot/circuits/forms.py +3 -73
- nautobot/circuits/migrations/0001_initial_part_1.py +0 -1
- nautobot/circuits/migrations/0002_initial_part_2.py +0 -1
- nautobot/circuits/migrations/0003_auto_slug.py +0 -1
- nautobot/circuits/migrations/0004_increase_provider_account_length.py +0 -1
- nautobot/circuits/migrations/0005_providernetwork.py +0 -1
- nautobot/circuits/migrations/0006_cache_circuit_terminations.py +0 -1
- nautobot/circuits/migrations/0007_circuitterminations_primary_model.py +0 -1
- nautobot/circuits/migrations/0008_add_natural_indexing.py +0 -1
- nautobot/circuits/migrations/0009_circuittermination_location.py +0 -1
- nautobot/circuits/migrations/0010_rename_foreign_keys_and_related_names.py +0 -1
- nautobot/circuits/migrations/0011_remove_site_foreign_key_from_circuit_termination_class.py +0 -1
- nautobot/circuits/migrations/0012_created_datetime.py +0 -1
- nautobot/circuits/migrations/0013_alter_circuittermination__path.py +0 -1
- nautobot/circuits/migrations/0014_related_name_changes.py +1 -2
- nautobot/circuits/migrations/0015_remove_circuittype_provider_slug.py +20 -0
- 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 -93
- nautobot/circuits/navigation.py +14 -69
- nautobot/circuits/signals.py +0 -2
- nautobot/circuits/tables.py +42 -5
- nautobot/circuits/templates/circuits/circuit_retrieve.html +1 -1
- nautobot/circuits/templates/circuits/circuittermination_retrieve.html +1 -1
- nautobot/circuits/templates/circuits/circuittype_retrieve.html +1 -1
- nautobot/circuits/templates/circuits/provider_create.html +0 -1
- nautobot/circuits/templates/circuits/provider_retrieve.html +1 -1
- nautobot/circuits/tests/integration/test_relationships.py +13 -16
- nautobot/circuits/tests/test_api.py +13 -43
- nautobot/circuits/tests/test_filters.py +20 -15
- nautobot/circuits/tests/test_models.py +7 -3
- nautobot/circuits/tests/test_views.py +57 -67
- nautobot/circuits/views.py +18 -9
- nautobot/core/api/__init__.py +8 -2
- nautobot/core/api/authentication.py +0 -3
- 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 +3 -3
- nautobot/core/api/parsers.py +154 -0
- nautobot/core/api/renderers.py +153 -2
- nautobot/core/api/schema.py +47 -3
- nautobot/core/api/serializers.py +377 -37
- 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 -75
- nautobot/core/apps/__init__.py +138 -221
- nautobot/core/celery/__init__.py +112 -41
- nautobot/core/celery/backends.py +19 -13
- 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 +21 -113
- nautobot/core/{cli.py → cli/__init__.py} +1 -2
- nautobot/core/cli/__main__.py +3 -0
- nautobot/core/constants.py +25 -43
- 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 +39 -68
- nautobot/core/forms/forms.py +27 -27
- nautobot/core/forms/utils.py +7 -59
- nautobot/core/forms/widgets.py +0 -1
- nautobot/core/graphql/__init__.py +2 -2
- 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/celery.py +0 -1
- nautobot/core/management/commands/generate_test_data.py +18 -13
- nautobot/core/management/commands/post_upgrade.py +24 -24
- nautobot/core/management/commands/validate_models.py +0 -1
- nautobot/core/middleware.py +0 -1
- nautobot/core/models/__init__.py +26 -1
- nautobot/core/models/fields.py +24 -5
- nautobot/core/models/generics.py +2 -46
- nautobot/core/models/managers.py +5 -0
- nautobot/core/models/name_color_content_types.py +1 -19
- nautobot/core/models/tree_queries.py +14 -4
- nautobot/core/models/utils.py +9 -10
- nautobot/core/models/validators.py +17 -8
- nautobot/core/releases.py +8 -10
- nautobot/core/settings.py +81 -53
- 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 +4 -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 -25
- 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 -29
- nautobot/core/templatetags/helpers.py +1 -1
- nautobot/core/testing/__init__.py +47 -44
- nautobot/core/testing/api.py +365 -47
- nautobot/core/testing/filters.py +12 -7
- nautobot/core/testing/integration.py +1 -1
- nautobot/core/testing/migrations.py +2 -0
- nautobot/core/testing/mixins.py +22 -12
- nautobot/core/testing/schema.py +2 -1
- nautobot/core/testing/views.py +28 -51
- 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/runner.py +0 -1
- nautobot/core/tests/test_api.py +290 -24
- nautobot/core/tests/test_authentication.py +57 -14
- nautobot/core/tests/test_checks.py +0 -7
- nautobot/core/tests/test_choices.py +0 -1
- nautobot/core/tests/test_filters.py +117 -110
- nautobot/core/tests/test_forms.py +47 -110
- nautobot/core/tests/test_graphql.py +158 -135
- nautobot/core/tests/test_logging.py +4 -1
- nautobot/core/tests/test_managers.py +3 -5
- nautobot/core/tests/test_models.py +2 -0
- nautobot/core/tests/test_ordering.py +0 -2
- nautobot/core/tests/test_paginator.py +3 -1
- nautobot/core/tests/test_releases.py +12 -12
- nautobot/core/tests/test_templatetags_helpers.py +7 -4
- nautobot/core/tests/test_utils.py +112 -78
- nautobot/core/tests/test_views.py +12 -17
- nautobot/core/tests/test_views_utils.py +6 -9
- nautobot/core/utils/data.py +17 -0
- nautobot/core/utils/deprecation.py +13 -20
- nautobot/core/utils/filtering.py +53 -9
- nautobot/core/utils/git.py +12 -4
- nautobot/core/utils/lookup.py +3 -1
- nautobot/core/utils/requests.py +23 -116
- nautobot/core/views/__init__.py +1 -2
- nautobot/core/views/generic.py +131 -119
- nautobot/core/views/mixins.py +53 -62
- nautobot/core/views/paginator.py +0 -1
- nautobot/core/views/renderers.py +14 -12
- nautobot/core/views/utils.py +87 -4
- nautobot/dcim/api/serializers.py +160 -672
- nautobot/dcim/api/urls.py +1 -1
- nautobot/dcim/api/views.py +7 -46
- nautobot/dcim/choices.py +2 -25
- nautobot/dcim/elevations.py +0 -1
- nautobot/dcim/factory.py +15 -4
- nautobot/dcim/filters/__init__.py +42 -13
- nautobot/dcim/form_mixins.py +1 -27
- nautobot/dcim/forms.py +58 -797
- nautobot/dcim/management/commands/trace_paths.py +0 -1
- nautobot/dcim/migrations/0001_initial_part_1.py +0 -1
- nautobot/dcim/migrations/0002_initial_part_2.py +0 -1
- nautobot/dcim/migrations/0003_initial_part_3.py +0 -1
- nautobot/dcim/migrations/0004_initial_part_4.py +0 -1
- nautobot/dcim/migrations/0005_device_local_context_schema.py +0 -1
- nautobot/dcim/migrations/0006_auto_slug.py +0 -1
- nautobot/dcim/migrations/0007_device_secrets_group.py +0 -1
- nautobot/dcim/migrations/0008_increase_all_serial_lengths.py +0 -1
- nautobot/dcim/migrations/0009_add_natural_indexing.py +0 -1
- nautobot/dcim/migrations/0010_interface_status.py +0 -1
- nautobot/dcim/migrations/0011_interface_status_data_migration.py +0 -1
- nautobot/dcim/migrations/0012_interface_parent_bridge.py +0 -1
- nautobot/dcim/migrations/0013_location_location_type.py +0 -1
- nautobot/dcim/migrations/0014_location_status_data_migration.py +0 -1
- nautobot/dcim/migrations/0015_device_components__changeloggedmodel.py +0 -1
- nautobot/dcim/migrations/0016_device_components__timestamp_data_migration.py +0 -1
- nautobot/dcim/migrations/0017_locationtype_nestable.py +0 -1
- nautobot/dcim/migrations/0018_device_redundancy_group.py +0 -1
- nautobot/dcim/migrations/0019_device_redundancy_group_data_migration.py +0 -1
- nautobot/dcim/migrations/0020_move_site_fields_to_location_model.py +0 -1
- nautobot/dcim/migrations/0021_mptt_to_tree_queries.py +0 -1
- nautobot/dcim/migrations/0022_interface_mac_address_data_migration.py +0 -1
- nautobot/dcim/migrations/0023_alter_interface_mac_address.py +0 -1
- nautobot/dcim/migrations/0024_alter_device_and_rack_role_add_new_role.py +2 -2
- nautobot/dcim/migrations/0025_device_and_rack_roles_data_migrations.py +19 -14
- nautobot/dcim/migrations/0026_rename_device_and_rack_role.py +0 -1
- nautobot/dcim/migrations/0027_remove_device_role_and_rack_role.py +1 -2
- nautobot/dcim/migrations/0028_rename_foreignkey_fields.py +1 -2
- nautobot/dcim/migrations/0029_add_tree_managers_and_foreign_keys_pre_data_migration.py +0 -1
- nautobot/dcim/migrations/0030_migrate_region_and_site_data_to_locations.py +2 -2
- nautobot/dcim/migrations/0031_rename_path_end_point_related_name.py +0 -1
- nautobot/dcim/migrations/0032_remove_site_foreign_key_from_dcim_models.py +0 -1
- nautobot/dcim/migrations/0033_created_datetime.py +0 -1
- nautobot/dcim/migrations/0034_fixup_fks_and_related_names.py +0 -1
- nautobot/dcim/migrations/0035_related_name_changes.py +1 -2
- nautobot/dcim/migrations/0036_remove_region_and_site.py +1 -2
- nautobot/dcim/migrations/0037_interface_ip_addresses_m2m.py +0 -1
- nautobot/dcim/migrations/0038_alter_location_managers.py +0 -1
- nautobot/dcim/migrations/0039_remove_slug.py +24 -0
- nautobot/dcim/migrations/0040_tagsfield.py +109 -0
- nautobot/dcim/migrations/0041_ipam__namespaces.py +25 -0
- nautobot/dcim/migrations/0042_fixup_null_statuses.py +51 -0
- nautobot/dcim/migrations/0043_status_nonnullable.py +72 -0
- nautobot/dcim/models/cables.py +4 -35
- nautobot/dcim/models/device_component_templates.py +7 -2
- nautobot/dcim/models/device_components.py +26 -203
- nautobot/dcim/models/devices.py +30 -152
- nautobot/dcim/models/locations.py +3 -64
- nautobot/dcim/models/power.py +3 -51
- nautobot/dcim/models/racks.py +7 -86
- nautobot/dcim/navigation.py +141 -467
- nautobot/dcim/signals.py +0 -2
- nautobot/dcim/tables/devices.py +8 -5
- nautobot/dcim/tables/devicetypes.py +1 -1
- nautobot/dcim/tables/locations.py +2 -2
- nautobot/dcim/tables/power.py +2 -2
- nautobot/dcim/templates/dcim/console_port_connection_list.html +7 -0
- nautobot/dcim/templates/dcim/device.html +15 -4
- nautobot/dcim/templates/dcim/device_edit.html +6 -0
- nautobot/dcim/templates/dcim/deviceredundancygroup_create.html +0 -1
- nautobot/dcim/templates/dcim/devicetype.html +2 -2
- nautobot/dcim/templates/dcim/interface.html +4 -0
- nautobot/dcim/templates/dcim/interface_connection_list.html +7 -0
- nautobot/dcim/templates/dcim/interface_edit.html +1 -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/integration/test_cable_connect_form.py +4 -4
- nautobot/dcim/tests/test_api.py +202 -130
- nautobot/dcim/tests/test_cablepaths.py +47 -42
- nautobot/dcim/tests/test_filters.py +156 -134
- nautobot/dcim/tests/test_forms.py +12 -213
- nautobot/dcim/tests/test_graphql.py +8 -3
- nautobot/dcim/tests/test_migrations.py +6 -11
- nautobot/dcim/tests/test_models.py +208 -158
- nautobot/dcim/tests/test_natural_ordering.py +12 -14
- nautobot/dcim/tests/test_signals.py +7 -4
- nautobot/dcim/tests/test_views.py +270 -264
- nautobot/dcim/urls.py +21 -26
- nautobot/dcim/views.py +14 -156
- 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 +179 -197
- nautobot/docs/administration/nautobot-server.md +9 -24
- nautobot/docs/administration/nautobot-shell.md +6 -6
- nautobot/docs/administration/replicating-nautobot.md +0 -10
- nautobot/docs/configuration/index.md +9 -9
- nautobot/docs/configuration/optional-settings.md +32 -61
- nautobot/docs/configuration/required-settings.md +11 -52
- nautobot/docs/development/application-registry.md +2 -13
- nautobot/docs/development/best-practices.md +2 -1
- nautobot/docs/development/docker-compose-advanced-use-cases.md +1 -1
- nautobot/docs/development/extending-models.md +15 -17
- nautobot/docs/development/generic-views.md +0 -2
- nautobot/docs/development/getting-started.md +56 -6
- nautobot/docs/development/navigation-menu.md +22 -93
- nautobot/docs/development/react-ui.md +105 -0
- nautobot/docs/development/release-checklist.md +3 -3
- nautobot/docs/development/role-internals.md +1 -3
- nautobot/docs/development/style-guide.md +6 -4
- nautobot/docs/development/templates.md +2 -1
- nautobot/docs/docker/index.md +16 -14
- nautobot/docs/index.md +7 -3
- nautobot/docs/installation/index.md +4 -1
- nautobot/docs/installation/migrating-from-netbox.md +12 -43
- nautobot/docs/installation/migrating-from-postgresql.md +1 -1
- 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 +190 -636
- nautobot/docs/installation/upgrading.md +5 -2
- 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/dynamicgroup.md +9 -9
- 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/ipam/vrf.md +0 -3
- nautobot/docs/models/virtualization/virtualmachine.md +3 -0
- nautobot/docs/plugins/development.md +92 -24
- nautobot/docs/release-notes/version-1.5.md +96 -0
- nautobot/docs/release-notes/version-2.0.md +216 -0
- nautobot/docs/requirements.txt +5 -4
- 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 -159
- nautobot/extras/api/serializers.py +165 -706
- nautobot/extras/api/urls.py +1 -1
- nautobot/extras/api/views.py +295 -282
- nautobot/extras/apps.py +4 -7
- nautobot/extras/choices.py +11 -22
- 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/factory.py +1 -3
- nautobot/extras/filters/__init__.py +49 -47
- nautobot/extras/filters/mixins.py +10 -8
- nautobot/extras/forms/forms.py +72 -148
- nautobot/extras/forms/mixins.py +34 -57
- nautobot/extras/health_checks.py +0 -33
- nautobot/extras/jobs.py +387 -566
- nautobot/extras/management/__init__.py +55 -48
- nautobot/extras/management/commands/renaturalize.py +0 -1
- nautobot/extras/management/commands/runjob.py +24 -62
- nautobot/extras/management/commands/webhook_receiver.py +0 -1
- nautobot/extras/managers.py +30 -7
- nautobot/extras/migrations/0001_initial_part_1.py +0 -1
- nautobot/extras/migrations/0002_initial_part_2.py +0 -1
- nautobot/extras/migrations/0003_initial_part_3.py +0 -1
- nautobot/extras/migrations/0004_populate_default_status_records.py +0 -1
- nautobot/extras/migrations/0005_configcontext_device_types.py +0 -1
- nautobot/extras/migrations/0006_graphqlquery.py +0 -1
- nautobot/extras/migrations/0007_configcontextschema.py +0 -1
- nautobot/extras/migrations/0008_jobresult__custom_field_data.py +0 -1
- nautobot/extras/migrations/0009_computedfield.py +0 -1
- nautobot/extras/migrations/0010_change_cf_validation_max_min_field_to_bigint.py +0 -1
- nautobot/extras/migrations/0011_fileattachment_fileproxy.py +0 -1
- nautobot/extras/migrations/0012_healthchecktestmodel.py +0 -1
- nautobot/extras/migrations/0013_default_fallback_value_computedfield.py +0 -1
- nautobot/extras/migrations/0014_auto_slug.py +0 -1
- nautobot/extras/migrations/0015_scheduled_job.py +0 -1
- nautobot/extras/migrations/0016_secret.py +0 -1
- nautobot/extras/migrations/0017_joblogentry.py +0 -1
- nautobot/extras/migrations/0018_joblog_data_migration.py +0 -2
- nautobot/extras/migrations/0019_joblogentry__meta_options__related_name.py +0 -1
- nautobot/extras/migrations/0020_customfield_changelog.py +0 -1
- nautobot/extras/migrations/0021_customfield_changelog_data.py +0 -1
- nautobot/extras/migrations/0022_objectchange_object_datav2.py +0 -1
- nautobot/extras/migrations/0023_job_model.py +0 -1
- nautobot/extras/migrations/0024_job_data_migration.py +0 -1
- nautobot/extras/migrations/0025_add_advanced_ui_boolean_to_customfield_conputedfield_and_relationship.py +0 -1
- nautobot/extras/migrations/0026_job_add_gitrepository_fk.py +0 -1
- nautobot/extras/migrations/0027_job_gitrepository_data_migration.py +0 -1
- nautobot/extras/migrations/0028_job_reduce_source.py +0 -1
- nautobot/extras/migrations/0029_dynamicgroup.py +0 -1
- nautobot/extras/migrations/0030_webhook_alter_unique_together.py +0 -1
- nautobot/extras/migrations/0031_tag_content_types.py +0 -1
- nautobot/extras/migrations/0032_tag_content_types_data_migration.py +0 -1
- nautobot/extras/migrations/0033_add__optimized_indexing.py +0 -1
- nautobot/extras/migrations/0034_alter_fileattachment_mimetype.py +0 -1
- nautobot/extras/migrations/0035_scheduledjob_crontab.py +0 -1
- nautobot/extras/migrations/0036_job_add_has_sensitive_variables.py +0 -1
- nautobot/extras/migrations/0037_configcontextschema__remove_name_unique__create_constraint_unique_name_owner.py +0 -1
- nautobot/extras/migrations/0038_configcontext_locations.py +0 -1
- nautobot/extras/migrations/0039_objectchange__add_change_context.py +0 -1
- nautobot/extras/migrations/0040_dynamicgroup__dynamicgroupmembership.py +0 -1
- nautobot/extras/migrations/0041_jobresult_job_kwargs.py +0 -1
- nautobot/extras/migrations/0042_job__add_is_job_hook_receiver.py +0 -1
- nautobot/extras/migrations/0043_note.py +0 -1
- nautobot/extras/migrations/0044_add_job_hook.py +0 -1
- nautobot/extras/migrations/0045_add_custom_field_slug.py +0 -1
- nautobot/extras/migrations/0046_populate_custom_field_slug_label.py +0 -1
- nautobot/extras/migrations/0047_enforce_custom_field_slug.py +0 -1
- nautobot/extras/migrations/0048_alter_objectchange_change_context_detail.py +0 -1
- nautobot/extras/migrations/0049_alter_tag_slug.py +0 -1
- nautobot/extras/migrations/0050_customfield_grouping.py +0 -1
- nautobot/extras/migrations/0051_add_job_task_queues.py +0 -1
- nautobot/extras/migrations/0052_configcontext_device_redundancy_groups.py +0 -1
- nautobot/extras/migrations/0053_relationship_required_on.py +0 -1
- nautobot/extras/migrations/0054_scheduledjob_kwargs_request_user_change.py +0 -1
- nautobot/extras/migrations/0055_configcontext_dynamic_groups.py +0 -1
- nautobot/extras/migrations/0056_objectchange_add_reverse_time_idx.py +0 -1
- nautobot/extras/migrations/0057_jobbutton.py +0 -1
- 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 -2
- nautobot/extras/migrations/{0059_alter_joblogentry_scheduledjob_webhook_fields.py → 0060_alter_joblogentry_scheduledjob_webhook_fields.py} +1 -2
- nautobot/extras/migrations/{0060_role_and_alter_status.py → 0061_role_and_alter_status.py} +1 -8
- nautobot/extras/migrations/{0061_collect_roles_from_related_apps_roles.py → 0062_collect_roles_from_related_apps_roles.py} +33 -33
- nautobot/extras/migrations/{0062_alter_role_options.py → 0063_alter_role_options.py} +1 -2
- nautobot/extras/migrations/{0063_alter_configcontext_and_add_new_role.py → 0064_alter_configcontext_and_add_new_role.py} +1 -2
- nautobot/extras/migrations/0065_configcontext_data_migrations.py +44 -0
- nautobot/extras/migrations/{0065_rename_configcontext_role.py → 0066_rename_configcontext_role.py} +1 -2
- nautobot/extras/migrations/{0066_jobresult__add_celery_fields.py → 0067_jobresult__add_celery_fields.py} +36 -3
- nautobot/extras/migrations/{0067_created_datetime.py → 0068_created_datetime.py} +1 -2
- nautobot/extras/migrations/{0068_remove_site_and_region_attributes_from_config_context.py → 0069_remove_site_and_region_attributes_from_config_context.py} +1 -2
- 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 -2
- 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 -10
- nautobot/extras/migrations/{0073_remove_gitrepository_fields.py → 0074_remove_gitrepository_fields.py} +1 -2
- 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/0078_remove_slug.py +45 -0
- 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 -12
- nautobot/extras/models/jobs.py +190 -323
- nautobot/extras/models/mixins.py +0 -71
- nautobot/extras/models/models.py +1 -22
- nautobot/extras/models/relationships.py +20 -21
- nautobot/extras/models/roles.py +0 -23
- nautobot/extras/models/secrets.py +2 -31
- 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 -121
- nautobot/extras/plugins/utils.py +0 -3
- nautobot/extras/plugins/validators.py +5 -4
- nautobot/extras/plugins/views.py +16 -4
- nautobot/extras/querysets.py +1 -7
- nautobot/extras/registry.py +3 -0
- nautobot/extras/signals.py +26 -60
- nautobot/extras/tables.py +42 -49
- 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/dynamicgroup_edit.html +0 -1
- 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 +14 -17
- nautobot/extras/templates/extras/jobresult.html +24 -6
- nautobot/extras/templates/extras/objectchange_list.html +1 -1
- nautobot/extras/templates/extras/scheduledjob.html +2 -2
- nautobot/extras/templates/extras/secret.html +28 -0
- nautobot/extras/templates/extras/secret_edit.html +0 -1
- nautobot/extras/templates/extras/secretsgroup_edit.html +0 -1
- nautobot/extras/templatetags/custom_links.py +0 -2
- nautobot/extras/templatetags/job_buttons.py +1 -0
- nautobot/extras/templatetags/plugins.py +0 -1
- 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/__init__.py +3 -3
- nautobot/extras/tests/integration/test_computedfields.py +1 -1
- nautobot/extras/tests/integration/test_configcontextschema.py +7 -5
- nautobot/extras/tests/integration/test_customfields.py +4 -2
- nautobot/extras/tests/integration/test_dynamicgroups.py +2 -2
- nautobot/extras/tests/integration/test_jobs.py +25 -27
- nautobot/extras/tests/integration/test_notes.py +8 -4
- nautobot/extras/tests/integration/test_plugins.py +4 -4
- nautobot/extras/tests/integration/test_relationships.py +2 -2
- nautobot/extras/tests/test_api.py +371 -381
- nautobot/extras/tests/test_changelog.py +17 -16
- nautobot/extras/tests/test_context_managers.py +5 -6
- nautobot/extras/tests/test_customfields.py +112 -73
- nautobot/extras/tests/test_datasources.py +191 -117
- nautobot/extras/tests/test_dynamicgroups.py +45 -68
- nautobot/extras/tests/test_filters.py +170 -130
- nautobot/extras/tests/test_forms.py +107 -109
- nautobot/extras/tests/{test_scripts.py → test_job_variables.py} +43 -49
- nautobot/extras/tests/test_jobs.py +271 -273
- nautobot/extras/tests/test_management.py +3 -6
- nautobot/extras/tests/test_migrations.py +5 -3
- nautobot/extras/tests/test_models.py +121 -173
- nautobot/extras/tests/test_notes.py +0 -1
- nautobot/extras/tests/test_plugins.py +55 -89
- nautobot/extras/tests/test_relationships.py +174 -130
- nautobot/extras/tests/test_tags.py +6 -12
- nautobot/extras/tests/test_utils.py +31 -1
- nautobot/extras/tests/test_views.py +223 -184
- nautobot/extras/tests/test_webhooks.py +16 -15
- nautobot/extras/urls.py +69 -69
- nautobot/extras/utils.py +137 -163
- nautobot/extras/views.py +81 -153
- nautobot/ipam/api/fields.py +17 -0
- nautobot/ipam/api/serializers.py +77 -164
- nautobot/ipam/api/urls.py +4 -1
- nautobot/ipam/api/views.py +28 -19
- nautobot/ipam/apps.py +1 -0
- nautobot/ipam/choices.py +5 -12
- nautobot/ipam/constants.py +1 -0
- nautobot/ipam/factory.py +41 -30
- nautobot/ipam/filters.py +58 -25
- nautobot/ipam/forms.py +82 -211
- nautobot/ipam/graphql/types.py +0 -9
- nautobot/ipam/lookups.py +13 -8
- nautobot/ipam/management/commands/__init__.py +0 -0
- nautobot/ipam/management/commands/fix_prefix_broadcast.py +17 -0
- nautobot/ipam/migrations/0001_initial_part_1.py +0 -1
- nautobot/ipam/migrations/0002_initial_part_2.py +0 -1
- nautobot/ipam/migrations/0003_remove_max_length.py +0 -1
- nautobot/ipam/migrations/0004_fixup_p2p_broadcast.py +0 -1
- nautobot/ipam/migrations/0005_auto_slug.py +0 -1
- nautobot/ipam/migrations/0006_ipaddress_nat_outside_list.py +0 -1
- nautobot/ipam/migrations/0007_add_natural_indexing.py +0 -1
- nautobot/ipam/migrations/0008_prefix_vlan_vlangroup_location.py +0 -1
- nautobot/ipam/migrations/0009_alter_vlan_name.py +0 -1
- nautobot/ipam/migrations/0010_alter_ipam_role_add_new_role.py +1 -2
- nautobot/ipam/migrations/0011_migrate_ipam_role_data.py +32 -39
- nautobot/ipam/migrations/0012_rename_ipam_roles.py +0 -1
- nautobot/ipam/migrations/0013_delete_role.py +0 -1
- nautobot/ipam/migrations/0014_rename_foreign_keys_and_related_names.py +0 -1
- nautobot/ipam/migrations/0015_prefix_add_type.py +0 -1
- nautobot/ipam/migrations/0016_prefix_type_data_migration.py +0 -3
- nautobot/ipam/migrations/0017_prefix_remove_is_pool.py +0 -1
- nautobot/ipam/migrations/0018_remove_site_foreign_key_from_ipam_models.py +0 -1
- nautobot/ipam/migrations/0019_created_datetime.py +0 -1
- nautobot/ipam/migrations/0020_related_name_changes.py +1 -2
- nautobot/ipam/migrations/0021_prefix_add_rir_and_date_allocated.py +0 -1
- nautobot/ipam/migrations/0022_aggregate_to_prefix_data_migration.py +3 -5
- nautobot/ipam/migrations/0023_delete_aggregate.py +0 -1
- nautobot/ipam/migrations/0024_interface_to_ipaddress_m2m.py +0 -1
- nautobot/ipam/migrations/0025_interface_ipaddress_m2m_data_migration.py +0 -1
- nautobot/ipam/migrations/0026_ipaddress_remove_assigned_object.py +0 -1
- nautobot/ipam/migrations/0027_remove_rir_slug.py +16 -0
- nautobot/ipam/migrations/0028_tagsfield.py +44 -0
- nautobot/ipam/migrations/0029_ip_address_to_interface_uniqueness_constraints.py +18 -0
- nautobot/ipam/migrations/0030_ipam__namespaces.py +231 -0
- 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 +579 -368
- nautobot/ipam/navigation.py +36 -159
- nautobot/ipam/querysets.py +117 -90
- nautobot/ipam/signals.py +89 -0
- nautobot/ipam/tables.py +86 -28
- nautobot/ipam/templates/ipam/ipaddress.html +14 -30
- nautobot/ipam/templates/ipam/ipaddress_edit.html +1 -0
- 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 +42 -0
- nautobot/ipam/templates/ipam/namespace_vrfs.html +11 -0
- nautobot/ipam/templates/ipam/prefix.html +27 -33
- nautobot/ipam/templates/ipam/prefix_edit.html +7 -1
- nautobot/ipam/templates/ipam/vlangroup.html +0 -13
- nautobot/ipam/templates/ipam/vrf.html +6 -4
- nautobot/ipam/templates/ipam/vrf_edit.html +20 -2
- nautobot/ipam/tests/integration/test_prefixes.py +4 -27
- nautobot/ipam/tests/test_api.py +60 -61
- nautobot/ipam/tests/test_filters.py +187 -126
- nautobot/ipam/tests/test_forms.py +12 -6
- nautobot/ipam/tests/test_graphql.py +8 -6
- nautobot/ipam/tests/test_migrations.py +8 -13
- nautobot/ipam/tests/test_models.py +426 -274
- nautobot/ipam/tests/test_ordering.py +6 -3
- nautobot/ipam/tests/test_querysets.py +340 -96
- nautobot/ipam/tests/test_views.py +100 -55
- nautobot/ipam/urls.py +28 -5
- nautobot/ipam/{utils.py → utils/__init__.py} +2 -2
- nautobot/ipam/utils/migrations.py +713 -0
- nautobot/ipam/views.py +237 -122
- nautobot/project-static/docs/404.html +1399 -166
- nautobot/project-static/docs/additional-features/caching.html +1416 -320
- nautobot/project-static/docs/additional-features/change-logging.html +1389 -190
- nautobot/project-static/docs/additional-features/config-contexts.html +1389 -190
- nautobot/project-static/docs/additional-features/graphql.html +1389 -190
- nautobot/project-static/docs/additional-features/healthcheck.html +1389 -190
- nautobot/project-static/docs/additional-features/job-scheduling-and-approvals.html +1393 -190
- nautobot/project-static/docs/additional-features/jobs.html +1677 -460
- nautobot/project-static/docs/additional-features/napalm.html +1389 -190
- nautobot/project-static/docs/additional-features/prometheus-metrics.html +1389 -190
- nautobot/project-static/docs/additional-features/template-filters.html +1389 -190
- nautobot/project-static/docs/administration/celery-queues.html +1389 -190
- nautobot/project-static/docs/administration/nautobot-server.html +1553 -375
- nautobot/project-static/docs/administration/nautobot-shell.html +1395 -196
- nautobot/project-static/docs/administration/permissions.html +1389 -190
- nautobot/project-static/docs/administration/replicating-nautobot.html +1387 -207
- nautobot/project-static/docs/apps/index.html +1389 -190
- nautobot/project-static/docs/apps/nautobot-apps.html +1387 -175
- nautobot/project-static/docs/assets/javascripts/bundle.51198bba.min.js +29 -0
- nautobot/project-static/docs/assets/javascripts/bundle.51198bba.min.js.map +8 -0
- nautobot/project-static/docs/assets/javascripts/workers/{search.16e2a7d4.min.js → search.208ed371.min.js} +9 -15
- nautobot/project-static/docs/assets/javascripts/workers/{search.16e2a7d4.min.js.map → search.208ed371.min.js.map} +4 -4
- nautobot/project-static/docs/assets/stylesheets/main.ded33207.min.css +1 -0
- nautobot/project-static/docs/assets/stylesheets/main.ded33207.min.css.map +1 -0
- nautobot/project-static/docs/assets/stylesheets/palette.a0c5b2b5.min.css +1 -0
- nautobot/project-static/docs/assets/stylesheets/palette.a0c5b2b5.min.css.map +1 -0
- nautobot/project-static/docs/code-reference/nautobot/apps/__init__.html +1775 -590
- nautobot/project-static/docs/code-reference/nautobot/apps/admin.html +1389 -190
- nautobot/project-static/docs/code-reference/nautobot/apps/api.html +3588 -1922
- nautobot/project-static/docs/code-reference/nautobot/apps/choices.html +1461 -262
- nautobot/project-static/docs/code-reference/nautobot/apps/config.html +1401 -170
- nautobot/project-static/docs/code-reference/nautobot/apps/datasources.html +1396 -191
- nautobot/project-static/docs/code-reference/nautobot/apps/filters.html +2095 -894
- nautobot/project-static/docs/code-reference/nautobot/apps/forms.html +2357 -1194
- nautobot/project-static/docs/code-reference/nautobot/apps/models.html +2258 -940
- nautobot/project-static/docs/code-reference/nautobot/apps/secrets.html +1389 -190
- nautobot/project-static/docs/code-reference/nautobot/apps/tables.html +1400 -201
- nautobot/project-static/docs/code-reference/nautobot/apps/testing.html +11068 -7861
- nautobot/project-static/docs/code-reference/nautobot/apps/ui.html +2867 -2224
- nautobot/project-static/docs/code-reference/nautobot/apps/urls.html +1389 -190
- nautobot/project-static/docs/code-reference/nautobot/apps/views.html +2641 -1573
- nautobot/project-static/docs/configuration/authentication/ldap.html +1389 -190
- nautobot/project-static/docs/configuration/authentication/remote.html +1389 -190
- nautobot/project-static/docs/configuration/authentication/sso.html +1389 -190
- nautobot/project-static/docs/configuration/index.html +1398 -199
- nautobot/project-static/docs/configuration/optional-settings.html +1418 -274
- nautobot/project-static/docs/configuration/required-settings.html +1419 -287
- nautobot/project-static/docs/core-functionality/circuits.html +1446 -247
- nautobot/project-static/docs/core-functionality/device-types.html +1448 -249
- nautobot/project-static/docs/core-functionality/devices.html +1452 -249
- nautobot/project-static/docs/core-functionality/ipam.html +1452 -253
- nautobot/project-static/docs/core-functionality/power.html +1448 -249
- nautobot/project-static/docs/core-functionality/secrets.html +1448 -249
- nautobot/project-static/docs/core-functionality/services.html +1448 -249
- nautobot/project-static/docs/core-functionality/sites-and-racks.html +1448 -249
- nautobot/project-static/docs/core-functionality/tenancy.html +1448 -249
- nautobot/project-static/docs/core-functionality/virtualization.html +1452 -249
- nautobot/project-static/docs/core-functionality/vlans.html +1448 -249
- nautobot/project-static/docs/development/application-registry.html +1393 -214
- nautobot/project-static/docs/development/best-practices.html +1392 -192
- nautobot/project-static/docs/development/docker-compose-advanced-use-cases.html +1390 -191
- nautobot/project-static/docs/development/extending-models.html +1443 -257
- nautobot/project-static/docs/development/generic-views.html +1403 -174
- nautobot/project-static/docs/development/getting-started.html +1568 -262
- nautobot/project-static/docs/development/homepage.html +1389 -190
- nautobot/project-static/docs/development/index.html +1389 -190
- nautobot/project-static/docs/development/model-features.html +1389 -190
- nautobot/project-static/docs/development/natural-keys.html +1389 -190
- nautobot/project-static/docs/development/navigation-menu.html +1451 -330
- nautobot/project-static/docs/development/react-ui.html +4199 -0
- nautobot/project-static/docs/development/release-checklist.html +1392 -193
- nautobot/project-static/docs/development/role-internals.html +1402 -172
- nautobot/project-static/docs/development/style-guide.html +1399 -199
- nautobot/project-static/docs/development/templates.html +1391 -191
- nautobot/project-static/docs/development/testing.html +1389 -190
- nautobot/project-static/docs/development/user-preferences.html +1389 -190
- nautobot/project-static/docs/docker/index.html +1408 -206
- nautobot/project-static/docs/index.html +1397 -180
- nautobot/project-static/docs/installation/centos.html +1401 -170
- nautobot/project-static/docs/installation/external-authentication.html +1389 -190
- nautobot/project-static/docs/installation/http-server.html +1389 -190
- nautobot/project-static/docs/installation/index.html +1394 -191
- nautobot/project-static/docs/installation/migrating-from-netbox.html +1452 -305
- nautobot/project-static/docs/installation/migrating-from-postgresql.html +1390 -191
- nautobot/project-static/docs/installation/nautobot.html +1390 -191
- nautobot/project-static/docs/installation/region-and-site-data-migration-guide.html +1389 -190
- nautobot/project-static/docs/installation/selinux-troubleshooting.html +1401 -170
- nautobot/project-static/docs/installation/services.html +1389 -190
- 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 +1401 -170
- nautobot/project-static/docs/installation/upgrading-from-nautobot-v1.html +4254 -1923
- nautobot/project-static/docs/installation/upgrading.html +1395 -192
- nautobot/project-static/docs/models/circuits/circuit.html +1427 -174
- nautobot/project-static/docs/models/circuits/circuittermination.html +1427 -174
- nautobot/project-static/docs/models/circuits/circuittype.html +1427 -174
- nautobot/project-static/docs/models/circuits/provider.html +1427 -174
- nautobot/project-static/docs/models/circuits/providernetwork.html +1427 -174
- nautobot/project-static/docs/models/dcim/cable.html +1458 -174
- nautobot/project-static/docs/models/dcim/consoleport.html +1427 -174
- nautobot/project-static/docs/models/dcim/consoleporttemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/consoleserverport.html +1427 -174
- nautobot/project-static/docs/models/dcim/consoleserverporttemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/device.html +1431 -174
- nautobot/project-static/docs/models/dcim/devicebay.html +1427 -174
- nautobot/project-static/docs/models/dcim/devicebaytemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/deviceredundancygroup.html +1522 -177
- nautobot/project-static/docs/models/dcim/devicetype.html +1427 -174
- nautobot/project-static/docs/models/dcim/frontport.html +1427 -174
- nautobot/project-static/docs/models/dcim/frontporttemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/interface.html +1427 -174
- nautobot/project-static/docs/models/dcim/interfacetemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/inventoryitem.html +1427 -174
- nautobot/project-static/docs/models/dcim/location.html +1427 -174
- nautobot/project-static/docs/models/dcim/locationtype.html +1427 -174
- nautobot/project-static/docs/models/dcim/manufacturer.html +1427 -174
- nautobot/project-static/docs/models/dcim/platform.html +1427 -174
- nautobot/project-static/docs/models/dcim/powerfeed.html +1425 -172
- nautobot/project-static/docs/models/dcim/poweroutlet.html +1427 -174
- nautobot/project-static/docs/models/dcim/poweroutlettemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/powerpanel.html +1425 -172
- nautobot/project-static/docs/models/dcim/powerport.html +1427 -174
- nautobot/project-static/docs/models/dcim/powerporttemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/rack.html +1427 -174
- nautobot/project-static/docs/models/dcim/rackgroup.html +1427 -174
- nautobot/project-static/docs/models/dcim/rackreservation.html +1427 -174
- nautobot/project-static/docs/models/dcim/rearport.html +1427 -174
- nautobot/project-static/docs/models/dcim/rearporttemplate.html +1427 -174
- nautobot/project-static/docs/models/dcim/region.html +1401 -170
- nautobot/project-static/docs/models/dcim/site.html +1401 -170
- nautobot/project-static/docs/models/dcim/virtualchassis.html +1425 -172
- nautobot/project-static/docs/models/extras/computedfield.html +1393 -194
- nautobot/project-static/docs/models/extras/configcontext.html +1465 -174
- nautobot/project-static/docs/models/extras/configcontextschema.html +1421 -168
- nautobot/project-static/docs/models/extras/customfield.html +1389 -190
- nautobot/project-static/docs/models/extras/customlink.html +1389 -190
- nautobot/project-static/docs/models/extras/dynamicgroup.html +1398 -199
- nautobot/project-static/docs/models/extras/exporttemplate.html +1389 -190
- nautobot/project-static/docs/models/extras/gitrepository.html +1393 -190
- nautobot/project-static/docs/models/extras/graphqlquery.html +1469 -171
- nautobot/project-static/docs/models/extras/imageattachment.html +1434 -181
- nautobot/project-static/docs/models/extras/job.html +1411 -157
- nautobot/project-static/docs/models/extras/jobbutton.html +1410 -207
- nautobot/project-static/docs/models/extras/jobhook.html +1397 -194
- nautobot/project-static/docs/models/extras/joblogentry.html +1408 -155
- nautobot/project-static/docs/models/extras/jobresult.html +1417 -159
- nautobot/project-static/docs/models/extras/note.html +1389 -190
- nautobot/project-static/docs/models/extras/relationship.html +1391 -192
- nautobot/project-static/docs/models/extras/role.html +1495 -198
- nautobot/project-static/docs/models/extras/secret.html +1492 -201
- nautobot/project-static/docs/models/extras/secretsgroup.html +1410 -157
- nautobot/project-static/docs/models/extras/status.html +1381 -221
- nautobot/project-static/docs/models/extras/tag.html +1389 -190
- nautobot/project-static/docs/models/extras/webhook.html +1389 -190
- nautobot/project-static/docs/models/ipam/ipaddress.html +1488 -200
- nautobot/project-static/docs/models/ipam/prefix.html +1410 -157
- nautobot/project-static/docs/models/ipam/rir.html +1410 -157
- nautobot/project-static/docs/models/ipam/routetarget.html +1410 -157
- nautobot/project-static/docs/models/ipam/service.html +1410 -157
- nautobot/project-static/docs/models/ipam/vlan.html +1410 -157
- nautobot/project-static/docs/models/ipam/vlangroup.html +1410 -157
- nautobot/project-static/docs/models/ipam/vrf.html +1410 -161
- nautobot/project-static/docs/models/tenancy/tenant.html +1412 -159
- nautobot/project-static/docs/models/tenancy/tenantgroup.html +1412 -159
- nautobot/project-static/docs/models/users/objectpermission.html +1462 -171
- nautobot/project-static/docs/models/users/token.html +1410 -157
- nautobot/project-static/docs/models/virtualization/cluster.html +1410 -157
- nautobot/project-static/docs/models/virtualization/clustergroup.html +1410 -157
- nautobot/project-static/docs/models/virtualization/clustertype.html +1410 -157
- nautobot/project-static/docs/models/virtualization/virtualmachine.html +1414 -157
- nautobot/project-static/docs/models/virtualization/vminterface.html +1410 -157
- nautobot/project-static/docs/objects.inv +0 -0
- nautobot/project-static/docs/plugins/development.html +1916 -646
- nautobot/project-static/docs/plugins/index.html +1389 -190
- nautobot/project-static/docs/plugins/porting-from-netbox.html +1389 -190
- nautobot/project-static/docs/release-notes/index.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.0.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.1.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.2.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.3.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.4.html +1389 -190
- nautobot/project-static/docs/release-notes/version-1.5.html +2016 -397
- nautobot/project-static/docs/release-notes/version-2.0.html +1935 -287
- nautobot/project-static/docs/requirements.txt +5 -4
- nautobot/project-static/docs/rest-api/authentication.html +1389 -190
- nautobot/project-static/docs/rest-api/filtering.html +1389 -190
- nautobot/project-static/docs/rest-api/overview.html +2002 -576
- 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 +1390 -191
- nautobot/project-static/docs/user-guides/getting-started/creating-devices.html +1392 -193
- nautobot/project-static/docs/user-guides/getting-started/index.html +1388 -189
- nautobot/project-static/docs/user-guides/getting-started/interfaces.html +1388 -189
- nautobot/project-static/docs/user-guides/getting-started/ipam.html +1386 -187
- nautobot/project-static/docs/user-guides/getting-started/platforms.html +1448 -249
- nautobot/project-static/docs/user-guides/getting-started/regions.html +1411 -212
- nautobot/project-static/docs/user-guides/getting-started/search-bar.html +1395 -196
- nautobot/project-static/docs/user-guides/getting-started/tenants.html +1448 -249
- nautobot/project-static/docs/user-guides/getting-started/vlans-and-vlan-groups.html +1448 -249
- nautobot/project-static/docs/user-guides/git-data-source.html +1405 -206
- nautobot/project-static/docs/user-guides/graphql.html +1402 -203
- nautobot/project-static/docs/user-guides/relationships.html +1448 -249
- nautobot/project-static/docs/user-guides/s3-django-storage.html +1448 -249
- nautobot/project-static/js/forms.js +16 -9
- nautobot/project-static/js/theme.js +5 -0
- nautobot/tenancy/api/serializers.py +4 -34
- nautobot/tenancy/api/urls.py +1 -1
- nautobot/tenancy/filters/__init__.py +9 -7
- nautobot/tenancy/filters/mixins.py +3 -2
- nautobot/tenancy/forms.py +3 -36
- nautobot/tenancy/migrations/0001_initial.py +0 -1
- nautobot/tenancy/migrations/0002_auto_slug.py +0 -1
- nautobot/tenancy/migrations/0003_mptt_to_tree_queries.py +0 -1
- nautobot/tenancy/migrations/0004_change_tree_manager_on_tree_models.py +0 -1
- nautobot/tenancy/migrations/0005_rename_foreign_keys_and_related_names.py +0 -1
- nautobot/tenancy/migrations/0006_created_datetime.py +0 -1
- nautobot/tenancy/migrations/0007_remove_tenant_tenantgroup_slug.py +20 -0
- nautobot/tenancy/migrations/0008_tagsfield.py +19 -0
- nautobot/tenancy/models.py +0 -30
- nautobot/tenancy/navigation.py +6 -39
- nautobot/tenancy/tables.py +4 -4
- nautobot/tenancy/templates/tenancy/tenant.html +12 -12
- nautobot/tenancy/templates/tenancy/tenant_edit.html +0 -1
- nautobot/tenancy/templates/tenancy/tenantgroup.html +1 -1
- nautobot/tenancy/tests/test_api.py +1 -12
- nautobot/tenancy/tests/test_filters.py +20 -12
- nautobot/tenancy/tests/test_views.py +11 -29
- nautobot/tenancy/urls.py +10 -10
- nautobot/tenancy/views.py +0 -3
- 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/migrations/0001_initial.py +0 -1
- nautobot/users/migrations/0002_token_ordering_by_created.py +0 -1
- nautobot/users/migrations/0003_alter_user_options.py +0 -1
- nautobot/users/migrations/0004_alter_user_managers.py +0 -1
- nautobot/users/tests/test_api.py +109 -28
- nautobot/users/tests/test_filters.py +0 -4
- nautobot/users/tests/test_models.py +0 -1
- nautobot/users/views.py +0 -7
- nautobot/virtualization/api/serializers.py +18 -132
- nautobot/virtualization/api/urls.py +1 -1
- nautobot/virtualization/api/views.py +1 -22
- nautobot/virtualization/choices.py +0 -2
- nautobot/virtualization/filters.py +12 -7
- nautobot/virtualization/forms.py +21 -117
- nautobot/virtualization/migrations/0001_initial.py +0 -1
- nautobot/virtualization/migrations/0002_virtualmachine_local_context_schema.py +0 -1
- nautobot/virtualization/migrations/0003_vminterface_verbose_name.py +0 -1
- nautobot/virtualization/migrations/0004_auto_slug.py +0 -1
- nautobot/virtualization/migrations/0005_add_natural_indexing.py +0 -1
- nautobot/virtualization/migrations/0006_vminterface_status.py +0 -1
- nautobot/virtualization/migrations/0007_vminterface_status_data_migration.py +0 -1
- nautobot/virtualization/migrations/0008_vminterface_parent.py +0 -1
- nautobot/virtualization/migrations/0009_cluster_location.py +0 -1
- nautobot/virtualization/migrations/0010_vminterface_mac_address_data_migration.py +0 -1
- nautobot/virtualization/migrations/0011_alter_vminterface_mac_address.py +0 -1
- nautobot/virtualization/migrations/0012_alter_virtualmachine_role_add_new_role.py +1 -2
- nautobot/virtualization/migrations/0013_migrate_virtualmachine_role_data.py +18 -12
- nautobot/virtualization/migrations/0014_rename_virtualmachine_roles.py +0 -1
- nautobot/virtualization/migrations/0015_rename_foreignkey_fields.py +1 -2
- nautobot/virtualization/migrations/0016_remove_site_foreign_key_from_cluster_class.py +0 -1
- nautobot/virtualization/migrations/0017_created_datetime.py +0 -1
- nautobot/virtualization/migrations/0018_related_name_changes.py +1 -2
- nautobot/virtualization/migrations/0019_vminterface_ip_addresses_m2m.py +0 -1
- nautobot/virtualization/migrations/0020_remove_clustergroup_clustertype_slug.py +20 -0
- 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/0023_ipam__namespaces.py +25 -0
- nautobot/virtualization/migrations/0024_fixup_null_statuses.py +25 -0
- nautobot/virtualization/migrations/0025_status_nonnullable.py +29 -0
- nautobot/virtualization/models.py +39 -131
- nautobot/virtualization/navigation.py +18 -99
- nautobot/virtualization/tables.py +4 -4
- nautobot/virtualization/templates/virtualization/virtualmachine.html +13 -2
- nautobot/virtualization/templates/virtualization/virtualmachine_edit.html +6 -0
- nautobot/virtualization/tests/test_api.py +42 -52
- nautobot/virtualization/tests/test_filters.py +98 -75
- nautobot/virtualization/tests/test_models.py +36 -13
- nautobot/virtualization/tests/test_views.py +68 -73
- nautobot/virtualization/urls.py +10 -10
- nautobot/virtualization/views.py +8 -14
- {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/METADATA +15 -22
- {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/RECORD +987 -834
- {nautobot-2.0.0a2.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 -42
- nautobot/extras/migrations/0071_job__unique_name_data_migration.py +0 -47
- 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 -19
- 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 -143
- nautobot/project-static/docs/assets/javascripts/bundle.5a2dcb6a.min.js +0 -29
- nautobot/project-static/docs/assets/javascripts/bundle.5a2dcb6a.min.js.map +0 -8
- nautobot/project-static/docs/assets/javascripts/extra/bundle.5f09fbc3.min.js +0 -18
- nautobot/project-static/docs/assets/javascripts/extra/bundle.5f09fbc3.min.js.map +0 -8
- nautobot/project-static/docs/assets/stylesheets/extra.0d2c79a8.min.css +0 -1
- nautobot/project-static/docs/assets/stylesheets/extra.0d2c79a8.min.css.map +0 -1
- nautobot/project-static/docs/assets/stylesheets/main.975780f9.min.css +0 -1
- nautobot/project-static/docs/assets/stylesheets/main.975780f9.min.css.map +0 -1
- nautobot/project-static/docs/assets/stylesheets/palette.2505c338.min.css +0 -1
- nautobot/project-static/docs/assets/stylesheets/palette.2505c338.min.css.map +0 -1
- 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.0a2.dist-info → nautobot-2.0.0b1.dist-info}/LICENSE.txt +0 -0
- {nautobot-2.0.0a2.dist-info → nautobot-2.0.0b1.dist-info}/entry_points.txt +0 -0
|
@@ -10,8 +10,14 @@
|
|
|
10
10
|
|
|
11
11
|
<link rel="canonical" href="https://docs.nautobot.com/projects/core/en/stable/development/extending-models.html">
|
|
12
12
|
|
|
13
|
+
|
|
14
|
+
<link rel="prev" href="style-guide.html">
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<link rel="next" href="testing.html">
|
|
18
|
+
|
|
13
19
|
<link rel="icon" href="../assets/favicon.ico">
|
|
14
|
-
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-
|
|
20
|
+
<meta name="generator" content="mkdocs-1.4.2, mkdocs-material-9.1.6">
|
|
15
21
|
|
|
16
22
|
|
|
17
23
|
|
|
@@ -19,11 +25,10 @@
|
|
|
19
25
|
|
|
20
26
|
|
|
21
27
|
|
|
22
|
-
<link rel="stylesheet" href="../assets/stylesheets/main.
|
|
28
|
+
<link rel="stylesheet" href="../assets/stylesheets/main.ded33207.min.css">
|
|
23
29
|
|
|
24
30
|
|
|
25
|
-
<link rel="stylesheet" href="../assets/stylesheets/palette.
|
|
26
|
-
|
|
31
|
+
<link rel="stylesheet" href="../assets/stylesheets/palette.a0c5b2b5.min.css">
|
|
27
32
|
|
|
28
33
|
|
|
29
34
|
|
|
@@ -86,7 +91,7 @@
|
|
|
86
91
|
|
|
87
92
|
|
|
88
93
|
|
|
89
|
-
<header class="md-header md-header--lifted" data-md-component="header">
|
|
94
|
+
<header class="md-header md-header--shadow md-header--lifted" data-md-component="header">
|
|
90
95
|
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
91
96
|
<a href="../index.html" title="Nautobot Documentation" class="md-header__button md-logo" aria-label="Nautobot Documentation" data-md-component="logo">
|
|
92
97
|
|
|
@@ -116,8 +121,6 @@
|
|
|
116
121
|
<form class="md-header__option" data-md-component="palette">
|
|
117
122
|
|
|
118
123
|
|
|
119
|
-
|
|
120
|
-
|
|
121
124
|
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="black" data-md-color-accent="" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
|
|
122
125
|
|
|
123
126
|
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
|
|
@@ -126,8 +129,6 @@
|
|
|
126
129
|
|
|
127
130
|
|
|
128
131
|
|
|
129
|
-
|
|
130
|
-
|
|
131
132
|
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_2">
|
|
132
133
|
|
|
133
134
|
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
|
|
@@ -171,7 +172,7 @@
|
|
|
171
172
|
<div class="md-search-result__meta">
|
|
172
173
|
Initializing search
|
|
173
174
|
</div>
|
|
174
|
-
<ol class="md-search-result__list"></ol>
|
|
175
|
+
<ol class="md-search-result__list" role="presentation"></ol>
|
|
175
176
|
</div>
|
|
176
177
|
</div>
|
|
177
178
|
</div>
|
|
@@ -183,7 +184,7 @@
|
|
|
183
184
|
<a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
|
|
184
185
|
<div class="md-source__icon md-icon">
|
|
185
186
|
|
|
186
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.
|
|
187
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
|
|
187
188
|
</div>
|
|
188
189
|
<div class="md-source__repository">
|
|
189
190
|
GitHub
|
|
@@ -196,7 +197,7 @@
|
|
|
196
197
|
|
|
197
198
|
|
|
198
199
|
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
|
|
199
|
-
<div class="md-
|
|
200
|
+
<div class="md-grid">
|
|
200
201
|
<ul class="md-tabs__list">
|
|
201
202
|
|
|
202
203
|
|
|
@@ -351,7 +352,7 @@
|
|
|
351
352
|
<a href="https://github.com/nautobot/nautobot" title="Go to repository" class="md-source" data-md-component="source">
|
|
352
353
|
<div class="md-source__icon md-icon">
|
|
353
354
|
|
|
354
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.
|
|
355
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
|
|
355
356
|
</div>
|
|
356
357
|
<div class="md-source__repository">
|
|
357
358
|
GitHub
|
|
@@ -387,17 +388,18 @@
|
|
|
387
388
|
<li class="md-nav__item md-nav__item--nested">
|
|
388
389
|
|
|
389
390
|
|
|
390
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2" type="checkbox" id="__nav_2" >
|
|
391
391
|
|
|
392
392
|
|
|
393
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
|
|
394
|
+
|
|
393
395
|
|
|
394
396
|
|
|
395
|
-
<label class="md-nav__link" for="__nav_2">
|
|
397
|
+
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
|
396
398
|
Documentation
|
|
397
399
|
<span class="md-nav__icon md-icon"></span>
|
|
398
400
|
</label>
|
|
399
401
|
|
|
400
|
-
<nav class="md-nav" aria-
|
|
402
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
|
401
403
|
<label class="md-nav__title" for="__nav_2">
|
|
402
404
|
<span class="md-nav__icon md-icon"></span>
|
|
403
405
|
Documentation
|
|
@@ -413,17 +415,18 @@
|
|
|
413
415
|
<li class="md-nav__item md-nav__item--nested">
|
|
414
416
|
|
|
415
417
|
|
|
416
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_1" type="checkbox" id="__nav_2_1" >
|
|
417
418
|
|
|
418
419
|
|
|
420
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1" >
|
|
419
421
|
|
|
420
422
|
|
|
421
|
-
|
|
423
|
+
|
|
424
|
+
<label class="md-nav__link" for="__nav_2_1" id="__nav_2_1_label" tabindex="0">
|
|
422
425
|
Installation
|
|
423
426
|
<span class="md-nav__icon md-icon"></span>
|
|
424
427
|
</label>
|
|
425
428
|
|
|
426
|
-
<nav class="md-nav" aria-
|
|
429
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_1_label" aria-expanded="false">
|
|
427
430
|
<label class="md-nav__title" for="__nav_2_1">
|
|
428
431
|
<span class="md-nav__icon md-icon"></span>
|
|
429
432
|
Installation
|
|
@@ -530,17 +533,18 @@
|
|
|
530
533
|
<li class="md-nav__item md-nav__item--nested">
|
|
531
534
|
|
|
532
535
|
|
|
533
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_2" type="checkbox" id="__nav_2_2" >
|
|
534
536
|
|
|
535
537
|
|
|
538
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2" >
|
|
539
|
+
|
|
536
540
|
|
|
537
541
|
|
|
538
|
-
<label class="md-nav__link" for="__nav_2_2">
|
|
542
|
+
<label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
|
|
539
543
|
Migration
|
|
540
544
|
<span class="md-nav__icon md-icon"></span>
|
|
541
545
|
</label>
|
|
542
546
|
|
|
543
|
-
<nav class="md-nav" aria-
|
|
547
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="false">
|
|
544
548
|
<label class="md-nav__title" for="__nav_2_2">
|
|
545
549
|
<span class="md-nav__icon md-icon"></span>
|
|
546
550
|
Migration
|
|
@@ -633,17 +637,18 @@
|
|
|
633
637
|
<li class="md-nav__item md-nav__item--nested">
|
|
634
638
|
|
|
635
639
|
|
|
636
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_3" type="checkbox" id="__nav_2_3" >
|
|
637
640
|
|
|
638
641
|
|
|
642
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_3" >
|
|
639
643
|
|
|
640
644
|
|
|
641
|
-
|
|
645
|
+
|
|
646
|
+
<label class="md-nav__link" for="__nav_2_3" id="__nav_2_3_label" tabindex="0">
|
|
642
647
|
Configuration
|
|
643
648
|
<span class="md-nav__icon md-icon"></span>
|
|
644
649
|
</label>
|
|
645
650
|
|
|
646
|
-
<nav class="md-nav" aria-
|
|
651
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_3_label" aria-expanded="false">
|
|
647
652
|
<label class="md-nav__title" for="__nav_2_3">
|
|
648
653
|
<span class="md-nav__icon md-icon"></span>
|
|
649
654
|
Configuration
|
|
@@ -708,17 +713,18 @@
|
|
|
708
713
|
<li class="md-nav__item md-nav__item--nested">
|
|
709
714
|
|
|
710
715
|
|
|
711
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_4" type="checkbox" id="__nav_2_4" >
|
|
712
716
|
|
|
713
717
|
|
|
718
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4" >
|
|
719
|
+
|
|
714
720
|
|
|
715
721
|
|
|
716
|
-
<label class="md-nav__link" for="__nav_2_4">
|
|
722
|
+
<label class="md-nav__link" for="__nav_2_4" id="__nav_2_4_label" tabindex="0">
|
|
717
723
|
External Authentication
|
|
718
724
|
<span class="md-nav__icon md-icon"></span>
|
|
719
725
|
</label>
|
|
720
726
|
|
|
721
|
-
<nav class="md-nav"
|
|
727
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_4_label" aria-expanded="false">
|
|
722
728
|
<label class="md-nav__title" for="__nav_2_4">
|
|
723
729
|
<span class="md-nav__icon md-icon"></span>
|
|
724
730
|
External Authentication
|
|
@@ -783,17 +789,18 @@
|
|
|
783
789
|
<li class="md-nav__item md-nav__item--nested">
|
|
784
790
|
|
|
785
791
|
|
|
786
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_5" type="checkbox" id="__nav_2_5" >
|
|
787
792
|
|
|
788
793
|
|
|
794
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5" >
|
|
789
795
|
|
|
790
796
|
|
|
791
|
-
|
|
797
|
+
|
|
798
|
+
<label class="md-nav__link" for="__nav_2_5" id="__nav_2_5_label" tabindex="0">
|
|
792
799
|
Administration
|
|
793
800
|
<span class="md-nav__icon md-icon"></span>
|
|
794
801
|
</label>
|
|
795
802
|
|
|
796
|
-
<nav class="md-nav" aria-
|
|
803
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_5_label" aria-expanded="false">
|
|
797
804
|
<label class="md-nav__title" for="__nav_2_5">
|
|
798
805
|
<span class="md-nav__icon md-icon"></span>
|
|
799
806
|
Administration
|
|
@@ -886,17 +893,18 @@
|
|
|
886
893
|
<li class="md-nav__item md-nav__item--nested">
|
|
887
894
|
|
|
888
895
|
|
|
889
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_6" type="checkbox" id="__nav_2_6" >
|
|
890
896
|
|
|
891
897
|
|
|
898
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_6" >
|
|
899
|
+
|
|
892
900
|
|
|
893
901
|
|
|
894
|
-
<label class="md-nav__link" for="__nav_2_6">
|
|
902
|
+
<label class="md-nav__link" for="__nav_2_6" id="__nav_2_6_label" tabindex="0">
|
|
895
903
|
User Guides
|
|
896
904
|
<span class="md-nav__icon md-icon"></span>
|
|
897
905
|
</label>
|
|
898
906
|
|
|
899
|
-
<nav class="md-nav"
|
|
907
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_6_label" aria-expanded="false">
|
|
900
908
|
<label class="md-nav__title" for="__nav_2_6">
|
|
901
909
|
<span class="md-nav__icon md-icon"></span>
|
|
902
910
|
User Guides
|
|
@@ -951,8 +959,1081 @@
|
|
|
951
959
|
|
|
952
960
|
|
|
953
961
|
<li class="md-nav__item">
|
|
954
|
-
<a href="../user-guides/git-data-source.html" class="md-nav__link">
|
|
955
|
-
Git as a Data Source
|
|
962
|
+
<a href="../user-guides/git-data-source.html" class="md-nav__link">
|
|
963
|
+
Git as a Data Source
|
|
964
|
+
</a>
|
|
965
|
+
</li>
|
|
966
|
+
|
|
967
|
+
|
|
968
|
+
|
|
969
|
+
|
|
970
|
+
|
|
971
|
+
|
|
972
|
+
|
|
973
|
+
|
|
974
|
+
|
|
975
|
+
<li class="md-nav__item">
|
|
976
|
+
<a href="../user-guides/graphql.html" class="md-nav__link">
|
|
977
|
+
GraphQL
|
|
978
|
+
</a>
|
|
979
|
+
</li>
|
|
980
|
+
|
|
981
|
+
|
|
982
|
+
|
|
983
|
+
|
|
984
|
+
|
|
985
|
+
|
|
986
|
+
|
|
987
|
+
|
|
988
|
+
|
|
989
|
+
<li class="md-nav__item">
|
|
990
|
+
<a href="../user-guides/getting-started/interfaces.html" class="md-nav__link">
|
|
991
|
+
Interfaces
|
|
992
|
+
</a>
|
|
993
|
+
</li>
|
|
994
|
+
|
|
995
|
+
|
|
996
|
+
|
|
997
|
+
|
|
998
|
+
|
|
999
|
+
|
|
1000
|
+
|
|
1001
|
+
|
|
1002
|
+
|
|
1003
|
+
<li class="md-nav__item">
|
|
1004
|
+
<a href="../user-guides/getting-started/ipam.html" class="md-nav__link">
|
|
1005
|
+
IP Address Management
|
|
1006
|
+
</a>
|
|
1007
|
+
</li>
|
|
1008
|
+
|
|
1009
|
+
|
|
1010
|
+
|
|
1011
|
+
|
|
1012
|
+
|
|
1013
|
+
|
|
1014
|
+
|
|
1015
|
+
|
|
1016
|
+
|
|
1017
|
+
<li class="md-nav__item">
|
|
1018
|
+
<a href="../user-guides/getting-started/platforms.html" class="md-nav__link">
|
|
1019
|
+
Platforms
|
|
1020
|
+
</a>
|
|
1021
|
+
</li>
|
|
1022
|
+
|
|
1023
|
+
|
|
1024
|
+
|
|
1025
|
+
|
|
1026
|
+
|
|
1027
|
+
|
|
1028
|
+
|
|
1029
|
+
|
|
1030
|
+
|
|
1031
|
+
<li class="md-nav__item">
|
|
1032
|
+
<a href="../user-guides/getting-started/regions.html" class="md-nav__link">
|
|
1033
|
+
Regions
|
|
1034
|
+
</a>
|
|
1035
|
+
</li>
|
|
1036
|
+
|
|
1037
|
+
|
|
1038
|
+
|
|
1039
|
+
|
|
1040
|
+
|
|
1041
|
+
|
|
1042
|
+
|
|
1043
|
+
|
|
1044
|
+
|
|
1045
|
+
<li class="md-nav__item">
|
|
1046
|
+
<a href="../user-guides/getting-started/tenants.html" class="md-nav__link">
|
|
1047
|
+
Tenants
|
|
1048
|
+
</a>
|
|
1049
|
+
</li>
|
|
1050
|
+
|
|
1051
|
+
|
|
1052
|
+
|
|
1053
|
+
|
|
1054
|
+
|
|
1055
|
+
|
|
1056
|
+
|
|
1057
|
+
|
|
1058
|
+
|
|
1059
|
+
<li class="md-nav__item">
|
|
1060
|
+
<a href="../user-guides/getting-started/search-bar.html" class="md-nav__link">
|
|
1061
|
+
The Search Bar
|
|
1062
|
+
</a>
|
|
1063
|
+
</li>
|
|
1064
|
+
|
|
1065
|
+
|
|
1066
|
+
|
|
1067
|
+
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
|
|
1071
|
+
|
|
1072
|
+
|
|
1073
|
+
<li class="md-nav__item">
|
|
1074
|
+
<a href="../user-guides/git-data-source.html" class="md-nav__link">
|
|
1075
|
+
Git as a Data Source
|
|
1076
|
+
</a>
|
|
1077
|
+
</li>
|
|
1078
|
+
|
|
1079
|
+
|
|
1080
|
+
|
|
1081
|
+
|
|
1082
|
+
|
|
1083
|
+
|
|
1084
|
+
|
|
1085
|
+
|
|
1086
|
+
|
|
1087
|
+
<li class="md-nav__item">
|
|
1088
|
+
<a href="../user-guides/graphql.html" class="md-nav__link">
|
|
1089
|
+
GraphQL
|
|
1090
|
+
</a>
|
|
1091
|
+
</li>
|
|
1092
|
+
|
|
1093
|
+
|
|
1094
|
+
|
|
1095
|
+
|
|
1096
|
+
|
|
1097
|
+
|
|
1098
|
+
|
|
1099
|
+
|
|
1100
|
+
|
|
1101
|
+
<li class="md-nav__item">
|
|
1102
|
+
<a href="../user-guides/relationships.html" class="md-nav__link">
|
|
1103
|
+
Relationships
|
|
1104
|
+
</a>
|
|
1105
|
+
</li>
|
|
1106
|
+
|
|
1107
|
+
|
|
1108
|
+
|
|
1109
|
+
|
|
1110
|
+
|
|
1111
|
+
|
|
1112
|
+
|
|
1113
|
+
|
|
1114
|
+
|
|
1115
|
+
<li class="md-nav__item">
|
|
1116
|
+
<a href="../user-guides/s3-django-storage.html" class="md-nav__link">
|
|
1117
|
+
Django Storages with S3
|
|
1118
|
+
</a>
|
|
1119
|
+
</li>
|
|
1120
|
+
|
|
1121
|
+
|
|
1122
|
+
|
|
1123
|
+
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
|
|
1127
|
+
|
|
1128
|
+
|
|
1129
|
+
<li class="md-nav__item">
|
|
1130
|
+
<a href="../user-guides/getting-started/vlans-and-vlan-groups.html" class="md-nav__link">
|
|
1131
|
+
VLANS and VLAN Groups
|
|
1132
|
+
</a>
|
|
1133
|
+
</li>
|
|
1134
|
+
|
|
1135
|
+
|
|
1136
|
+
|
|
1137
|
+
|
|
1138
|
+
</ul>
|
|
1139
|
+
</nav>
|
|
1140
|
+
</li>
|
|
1141
|
+
|
|
1142
|
+
|
|
1143
|
+
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
|
|
1147
|
+
|
|
1148
|
+
|
|
1149
|
+
|
|
1150
|
+
|
|
1151
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
1152
|
+
|
|
1153
|
+
|
|
1154
|
+
|
|
1155
|
+
|
|
1156
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_7" >
|
|
1157
|
+
|
|
1158
|
+
|
|
1159
|
+
|
|
1160
|
+
<label class="md-nav__link" for="__nav_2_7" id="__nav_2_7_label" tabindex="0">
|
|
1161
|
+
Core Functionality
|
|
1162
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1163
|
+
</label>
|
|
1164
|
+
|
|
1165
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_7_label" aria-expanded="false">
|
|
1166
|
+
<label class="md-nav__title" for="__nav_2_7">
|
|
1167
|
+
<span class="md-nav__icon md-icon"></span>
|
|
1168
|
+
Core Functionality
|
|
1169
|
+
</label>
|
|
1170
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
1171
|
+
|
|
1172
|
+
|
|
1173
|
+
|
|
1174
|
+
|
|
1175
|
+
|
|
1176
|
+
|
|
1177
|
+
<li class="md-nav__item">
|
|
1178
|
+
<a href="../core-functionality/circuits.html" class="md-nav__link">
|
|
1179
|
+
Circuits
|
|
1180
|
+
</a>
|
|
1181
|
+
</li>
|
|
1182
|
+
|
|
1183
|
+
|
|
1184
|
+
|
|
1185
|
+
|
|
1186
|
+
|
|
1187
|
+
|
|
1188
|
+
|
|
1189
|
+
|
|
1190
|
+
|
|
1191
|
+
<li class="md-nav__item">
|
|
1192
|
+
<a href="../core-functionality/devices.html" class="md-nav__link">
|
|
1193
|
+
Devices and Cabling
|
|
1194
|
+
</a>
|
|
1195
|
+
</li>
|
|
1196
|
+
|
|
1197
|
+
|
|
1198
|
+
|
|
1199
|
+
|
|
1200
|
+
|
|
1201
|
+
|
|
1202
|
+
|
|
1203
|
+
|
|
1204
|
+
|
|
1205
|
+
<li class="md-nav__item">
|
|
1206
|
+
<a href="../core-functionality/device-types.html" class="md-nav__link">
|
|
1207
|
+
Device Types
|
|
1208
|
+
</a>
|
|
1209
|
+
</li>
|
|
1210
|
+
|
|
1211
|
+
|
|
1212
|
+
|
|
1213
|
+
|
|
1214
|
+
|
|
1215
|
+
|
|
1216
|
+
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
<li class="md-nav__item">
|
|
1220
|
+
<a href="../core-functionality/ipam.html" class="md-nav__link">
|
|
1221
|
+
IP Address Management
|
|
1222
|
+
</a>
|
|
1223
|
+
</li>
|
|
1224
|
+
|
|
1225
|
+
|
|
1226
|
+
|
|
1227
|
+
|
|
1228
|
+
|
|
1229
|
+
|
|
1230
|
+
|
|
1231
|
+
|
|
1232
|
+
|
|
1233
|
+
<li class="md-nav__item">
|
|
1234
|
+
<a href="../core-functionality/power.html" class="md-nav__link">
|
|
1235
|
+
Power Tracking
|
|
1236
|
+
</a>
|
|
1237
|
+
</li>
|
|
1238
|
+
|
|
1239
|
+
|
|
1240
|
+
|
|
1241
|
+
|
|
1242
|
+
|
|
1243
|
+
|
|
1244
|
+
|
|
1245
|
+
|
|
1246
|
+
|
|
1247
|
+
<li class="md-nav__item">
|
|
1248
|
+
<a href="../core-functionality/secrets.html" class="md-nav__link">
|
|
1249
|
+
Secrets
|
|
1250
|
+
</a>
|
|
1251
|
+
</li>
|
|
1252
|
+
|
|
1253
|
+
|
|
1254
|
+
|
|
1255
|
+
|
|
1256
|
+
|
|
1257
|
+
|
|
1258
|
+
|
|
1259
|
+
|
|
1260
|
+
|
|
1261
|
+
<li class="md-nav__item">
|
|
1262
|
+
<a href="../core-functionality/services.html" class="md-nav__link">
|
|
1263
|
+
Service Mapping
|
|
1264
|
+
</a>
|
|
1265
|
+
</li>
|
|
1266
|
+
|
|
1267
|
+
|
|
1268
|
+
|
|
1269
|
+
|
|
1270
|
+
|
|
1271
|
+
|
|
1272
|
+
|
|
1273
|
+
|
|
1274
|
+
|
|
1275
|
+
<li class="md-nav__item">
|
|
1276
|
+
<a href="../core-functionality/sites-and-racks.html" class="md-nav__link">
|
|
1277
|
+
Sites, Locations, and Racks
|
|
1278
|
+
</a>
|
|
1279
|
+
</li>
|
|
1280
|
+
|
|
1281
|
+
|
|
1282
|
+
|
|
1283
|
+
|
|
1284
|
+
|
|
1285
|
+
|
|
1286
|
+
|
|
1287
|
+
|
|
1288
|
+
|
|
1289
|
+
<li class="md-nav__item">
|
|
1290
|
+
<a href="../core-functionality/tenancy.html" class="md-nav__link">
|
|
1291
|
+
Tenancy
|
|
1292
|
+
</a>
|
|
1293
|
+
</li>
|
|
1294
|
+
|
|
1295
|
+
|
|
1296
|
+
|
|
1297
|
+
|
|
1298
|
+
|
|
1299
|
+
|
|
1300
|
+
|
|
1301
|
+
|
|
1302
|
+
|
|
1303
|
+
<li class="md-nav__item">
|
|
1304
|
+
<a href="../core-functionality/virtualization.html" class="md-nav__link">
|
|
1305
|
+
Virtualization
|
|
1306
|
+
</a>
|
|
1307
|
+
</li>
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
|
|
1311
|
+
|
|
1312
|
+
|
|
1313
|
+
|
|
1314
|
+
|
|
1315
|
+
|
|
1316
|
+
|
|
1317
|
+
<li class="md-nav__item">
|
|
1318
|
+
<a href="../core-functionality/vlans.html" class="md-nav__link">
|
|
1319
|
+
VLAN Management
|
|
1320
|
+
</a>
|
|
1321
|
+
</li>
|
|
1322
|
+
|
|
1323
|
+
|
|
1324
|
+
|
|
1325
|
+
|
|
1326
|
+
</ul>
|
|
1327
|
+
</nav>
|
|
1328
|
+
</li>
|
|
1329
|
+
|
|
1330
|
+
|
|
1331
|
+
|
|
1332
|
+
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
|
|
1338
|
+
|
|
1339
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
1340
|
+
|
|
1341
|
+
|
|
1342
|
+
|
|
1343
|
+
|
|
1344
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8" >
|
|
1345
|
+
|
|
1346
|
+
|
|
1347
|
+
|
|
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
|
|
956
2037
|
</a>
|
|
957
2038
|
</li>
|
|
958
2039
|
|
|
@@ -965,8 +2046,8 @@
|
|
|
965
2046
|
|
|
966
2047
|
|
|
967
2048
|
<li class="md-nav__item">
|
|
968
|
-
<a href="../
|
|
969
|
-
|
|
2049
|
+
<a href="../models/extras/jobresult.html" class="md-nav__link">
|
|
2050
|
+
Job Result
|
|
970
2051
|
</a>
|
|
971
2052
|
</li>
|
|
972
2053
|
|
|
@@ -979,8 +2060,8 @@
|
|
|
979
2060
|
|
|
980
2061
|
|
|
981
2062
|
<li class="md-nav__item">
|
|
982
|
-
<a href="../
|
|
983
|
-
|
|
2063
|
+
<a href="../models/extras/role.html" class="md-nav__link">
|
|
2064
|
+
Role
|
|
984
2065
|
</a>
|
|
985
2066
|
</li>
|
|
986
2067
|
|
|
@@ -993,8 +2074,8 @@
|
|
|
993
2074
|
|
|
994
2075
|
|
|
995
2076
|
<li class="md-nav__item">
|
|
996
|
-
<a href="../
|
|
997
|
-
|
|
2077
|
+
<a href="../models/extras/secret.html" class="md-nav__link">
|
|
2078
|
+
Secret
|
|
998
2079
|
</a>
|
|
999
2080
|
</li>
|
|
1000
2081
|
|
|
@@ -1007,22 +2088,56 @@
|
|
|
1007
2088
|
|
|
1008
2089
|
|
|
1009
2090
|
<li class="md-nav__item">
|
|
1010
|
-
<a href="../
|
|
1011
|
-
|
|
2091
|
+
<a href="../models/extras/secretsgroup.html" class="md-nav__link">
|
|
2092
|
+
Secrets group
|
|
1012
2093
|
</a>
|
|
1013
2094
|
</li>
|
|
1014
2095
|
|
|
1015
2096
|
|
|
1016
2097
|
|
|
1017
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
|
+
|
|
1018
2133
|
|
|
1019
2134
|
|
|
1020
2135
|
|
|
1021
2136
|
|
|
1022
2137
|
|
|
1023
2138
|
<li class="md-nav__item">
|
|
1024
|
-
<a href="../
|
|
1025
|
-
|
|
2139
|
+
<a href="../models/ipam/ipaddress.html" class="md-nav__link">
|
|
2140
|
+
IP Address
|
|
1026
2141
|
</a>
|
|
1027
2142
|
</li>
|
|
1028
2143
|
|
|
@@ -1035,8 +2150,8 @@
|
|
|
1035
2150
|
|
|
1036
2151
|
|
|
1037
2152
|
<li class="md-nav__item">
|
|
1038
|
-
<a href="../
|
|
1039
|
-
|
|
2153
|
+
<a href="../models/ipam/prefix.html" class="md-nav__link">
|
|
2154
|
+
Prefix
|
|
1040
2155
|
</a>
|
|
1041
2156
|
</li>
|
|
1042
2157
|
|
|
@@ -1049,8 +2164,8 @@
|
|
|
1049
2164
|
|
|
1050
2165
|
|
|
1051
2166
|
<li class="md-nav__item">
|
|
1052
|
-
<a href="../
|
|
1053
|
-
|
|
2167
|
+
<a href="../models/ipam/rir.html" class="md-nav__link">
|
|
2168
|
+
Rir
|
|
1054
2169
|
</a>
|
|
1055
2170
|
</li>
|
|
1056
2171
|
|
|
@@ -1063,8 +2178,8 @@
|
|
|
1063
2178
|
|
|
1064
2179
|
|
|
1065
2180
|
<li class="md-nav__item">
|
|
1066
|
-
<a href="../
|
|
1067
|
-
|
|
2181
|
+
<a href="../models/ipam/routetarget.html" class="md-nav__link">
|
|
2182
|
+
Route Target
|
|
1068
2183
|
</a>
|
|
1069
2184
|
</li>
|
|
1070
2185
|
|
|
@@ -1077,8 +2192,8 @@
|
|
|
1077
2192
|
|
|
1078
2193
|
|
|
1079
2194
|
<li class="md-nav__item">
|
|
1080
|
-
<a href="../
|
|
1081
|
-
|
|
2195
|
+
<a href="../models/ipam/service.html" class="md-nav__link">
|
|
2196
|
+
Service
|
|
1082
2197
|
</a>
|
|
1083
2198
|
</li>
|
|
1084
2199
|
|
|
@@ -1091,8 +2206,8 @@
|
|
|
1091
2206
|
|
|
1092
2207
|
|
|
1093
2208
|
<li class="md-nav__item">
|
|
1094
|
-
<a href="../
|
|
1095
|
-
|
|
2209
|
+
<a href="../models/ipam/vlan.html" class="md-nav__link">
|
|
2210
|
+
VLAN
|
|
1096
2211
|
</a>
|
|
1097
2212
|
</li>
|
|
1098
2213
|
|
|
@@ -1105,8 +2220,8 @@
|
|
|
1105
2220
|
|
|
1106
2221
|
|
|
1107
2222
|
<li class="md-nav__item">
|
|
1108
|
-
<a href="../
|
|
1109
|
-
|
|
2223
|
+
<a href="../models/ipam/vlangroup.html" class="md-nav__link">
|
|
2224
|
+
VLAN Group
|
|
1110
2225
|
</a>
|
|
1111
2226
|
</li>
|
|
1112
2227
|
|
|
@@ -1119,8 +2234,8 @@
|
|
|
1119
2234
|
|
|
1120
2235
|
|
|
1121
2236
|
<li class="md-nav__item">
|
|
1122
|
-
<a href="../
|
|
1123
|
-
|
|
2237
|
+
<a href="../models/ipam/vrf.html" class="md-nav__link">
|
|
2238
|
+
VRF
|
|
1124
2239
|
</a>
|
|
1125
2240
|
</li>
|
|
1126
2241
|
|
|
@@ -1143,20 +2258,21 @@
|
|
|
1143
2258
|
<li class="md-nav__item md-nav__item--nested">
|
|
1144
2259
|
|
|
1145
2260
|
|
|
1146
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_7" type="checkbox" id="__nav_2_7" >
|
|
1147
2261
|
|
|
1148
2262
|
|
|
2263
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_8_5" >
|
|
1149
2264
|
|
|
1150
2265
|
|
|
1151
|
-
|
|
1152
|
-
|
|
2266
|
+
|
|
2267
|
+
<label class="md-nav__link" for="__nav_2_8_5" id="__nav_2_8_5_label" tabindex="0">
|
|
2268
|
+
Tenancy
|
|
1153
2269
|
<span class="md-nav__icon md-icon"></span>
|
|
1154
2270
|
</label>
|
|
1155
2271
|
|
|
1156
|
-
<nav class="md-nav"
|
|
1157
|
-
<label class="md-nav__title" for="
|
|
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">
|
|
1158
2274
|
<span class="md-nav__icon md-icon"></span>
|
|
1159
|
-
|
|
2275
|
+
Tenancy
|
|
1160
2276
|
</label>
|
|
1161
2277
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
1162
2278
|
|
|
@@ -1166,8 +2282,8 @@
|
|
|
1166
2282
|
|
|
1167
2283
|
|
|
1168
2284
|
<li class="md-nav__item">
|
|
1169
|
-
<a href="../
|
|
1170
|
-
|
|
2285
|
+
<a href="../models/tenancy/tenant.html" class="md-nav__link">
|
|
2286
|
+
Tenant
|
|
1171
2287
|
</a>
|
|
1172
2288
|
</li>
|
|
1173
2289
|
|
|
@@ -1180,27 +2296,47 @@
|
|
|
1180
2296
|
|
|
1181
2297
|
|
|
1182
2298
|
<li class="md-nav__item">
|
|
1183
|
-
<a href="../
|
|
1184
|
-
|
|
2299
|
+
<a href="../models/tenancy/tenantgroup.html" class="md-nav__link">
|
|
2300
|
+
Tenant Group
|
|
1185
2301
|
</a>
|
|
1186
2302
|
</li>
|
|
1187
2303
|
|
|
1188
2304
|
|
|
1189
2305
|
|
|
1190
2306
|
|
|
2307
|
+
</ul>
|
|
2308
|
+
</nav>
|
|
2309
|
+
</li>
|
|
2310
|
+
|
|
2311
|
+
|
|
2312
|
+
|
|
2313
|
+
|
|
1191
2314
|
|
|
1192
2315
|
|
|
1193
2316
|
|
|
1194
2317
|
|
|
1195
2318
|
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
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>
|
|
1204
2340
|
|
|
1205
2341
|
|
|
1206
2342
|
|
|
@@ -1208,8 +2344,8 @@
|
|
|
1208
2344
|
|
|
1209
2345
|
|
|
1210
2346
|
<li class="md-nav__item">
|
|
1211
|
-
<a href="../
|
|
1212
|
-
|
|
2347
|
+
<a href="../models/users/objectpermission.html" class="md-nav__link">
|
|
2348
|
+
Object Permission
|
|
1213
2349
|
</a>
|
|
1214
2350
|
</li>
|
|
1215
2351
|
|
|
@@ -1222,27 +2358,47 @@
|
|
|
1222
2358
|
|
|
1223
2359
|
|
|
1224
2360
|
<li class="md-nav__item">
|
|
1225
|
-
<a href="../
|
|
1226
|
-
|
|
2361
|
+
<a href="../models/users/token.html" class="md-nav__link">
|
|
2362
|
+
Token
|
|
1227
2363
|
</a>
|
|
1228
2364
|
</li>
|
|
1229
2365
|
|
|
1230
2366
|
|
|
1231
2367
|
|
|
1232
2368
|
|
|
2369
|
+
</ul>
|
|
2370
|
+
</nav>
|
|
2371
|
+
</li>
|
|
2372
|
+
|
|
2373
|
+
|
|
2374
|
+
|
|
2375
|
+
|
|
1233
2376
|
|
|
1234
2377
|
|
|
1235
2378
|
|
|
1236
2379
|
|
|
1237
2380
|
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
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>
|
|
1246
2402
|
|
|
1247
2403
|
|
|
1248
2404
|
|
|
@@ -1250,8 +2406,8 @@
|
|
|
1250
2406
|
|
|
1251
2407
|
|
|
1252
2408
|
<li class="md-nav__item">
|
|
1253
|
-
<a href="../
|
|
1254
|
-
|
|
2409
|
+
<a href="../models/virtualization/cluster.html" class="md-nav__link">
|
|
2410
|
+
Cluster
|
|
1255
2411
|
</a>
|
|
1256
2412
|
</li>
|
|
1257
2413
|
|
|
@@ -1264,8 +2420,8 @@
|
|
|
1264
2420
|
|
|
1265
2421
|
|
|
1266
2422
|
<li class="md-nav__item">
|
|
1267
|
-
<a href="../
|
|
1268
|
-
|
|
2423
|
+
<a href="../models/virtualization/clustergroup.html" class="md-nav__link">
|
|
2424
|
+
Cluster Group
|
|
1269
2425
|
</a>
|
|
1270
2426
|
</li>
|
|
1271
2427
|
|
|
@@ -1278,8 +2434,8 @@
|
|
|
1278
2434
|
|
|
1279
2435
|
|
|
1280
2436
|
<li class="md-nav__item">
|
|
1281
|
-
<a href="../
|
|
1282
|
-
|
|
2437
|
+
<a href="../models/virtualization/clustertype.html" class="md-nav__link">
|
|
2438
|
+
Cluster Type
|
|
1283
2439
|
</a>
|
|
1284
2440
|
</li>
|
|
1285
2441
|
|
|
@@ -1292,8 +2448,8 @@
|
|
|
1292
2448
|
|
|
1293
2449
|
|
|
1294
2450
|
<li class="md-nav__item">
|
|
1295
|
-
<a href="../
|
|
1296
|
-
|
|
2451
|
+
<a href="../models/virtualization/virtualmachine.html" class="md-nav__link">
|
|
2452
|
+
Virtual Machine
|
|
1297
2453
|
</a>
|
|
1298
2454
|
</li>
|
|
1299
2455
|
|
|
@@ -1306,8 +2462,8 @@
|
|
|
1306
2462
|
|
|
1307
2463
|
|
|
1308
2464
|
<li class="md-nav__item">
|
|
1309
|
-
<a href="../
|
|
1310
|
-
|
|
2465
|
+
<a href="../models/virtualization/vminterface.html" class="md-nav__link">
|
|
2466
|
+
VM Interface
|
|
1311
2467
|
</a>
|
|
1312
2468
|
</li>
|
|
1313
2469
|
|
|
@@ -1321,6 +2477,13 @@
|
|
|
1321
2477
|
|
|
1322
2478
|
|
|
1323
2479
|
|
|
2480
|
+
</ul>
|
|
2481
|
+
</nav>
|
|
2482
|
+
</li>
|
|
2483
|
+
|
|
2484
|
+
|
|
2485
|
+
|
|
2486
|
+
|
|
1324
2487
|
|
|
1325
2488
|
|
|
1326
2489
|
|
|
@@ -1330,18 +2493,19 @@
|
|
|
1330
2493
|
<li class="md-nav__item md-nav__item--nested">
|
|
1331
2494
|
|
|
1332
2495
|
|
|
1333
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_8" type="checkbox" id="__nav_2_8" >
|
|
1334
2496
|
|
|
1335
2497
|
|
|
2498
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_9" >
|
|
1336
2499
|
|
|
1337
2500
|
|
|
1338
|
-
|
|
2501
|
+
|
|
2502
|
+
<label class="md-nav__link" for="__nav_2_9" id="__nav_2_9_label" tabindex="0">
|
|
1339
2503
|
Additional Features
|
|
1340
2504
|
<span class="md-nav__icon md-icon"></span>
|
|
1341
2505
|
</label>
|
|
1342
2506
|
|
|
1343
|
-
<nav class="md-nav"
|
|
1344
|
-
<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">
|
|
1345
2509
|
<span class="md-nav__icon md-icon"></span>
|
|
1346
2510
|
Additional Features
|
|
1347
2511
|
</label>
|
|
@@ -1671,18 +2835,19 @@
|
|
|
1671
2835
|
<li class="md-nav__item md-nav__item--nested">
|
|
1672
2836
|
|
|
1673
2837
|
|
|
1674
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_9" type="checkbox" id="__nav_2_9" >
|
|
1675
2838
|
|
|
1676
2839
|
|
|
2840
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_10" >
|
|
2841
|
+
|
|
1677
2842
|
|
|
1678
2843
|
|
|
1679
|
-
<label class="md-nav__link" for="
|
|
2844
|
+
<label class="md-nav__link" for="__nav_2_10" id="__nav_2_10_label" tabindex="0">
|
|
1680
2845
|
REST API
|
|
1681
2846
|
<span class="md-nav__icon md-icon"></span>
|
|
1682
2847
|
</label>
|
|
1683
2848
|
|
|
1684
|
-
<nav class="md-nav"
|
|
1685
|
-
<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">
|
|
1686
2851
|
<span class="md-nav__icon md-icon"></span>
|
|
1687
2852
|
REST API
|
|
1688
2853
|
</label>
|
|
@@ -1730,6 +2895,20 @@
|
|
|
1730
2895
|
|
|
1731
2896
|
|
|
1732
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
|
+
|
|
1733
2912
|
</ul>
|
|
1734
2913
|
</nav>
|
|
1735
2914
|
</li>
|
|
@@ -1746,18 +2925,19 @@
|
|
|
1746
2925
|
<li class="md-nav__item md-nav__item--nested">
|
|
1747
2926
|
|
|
1748
2927
|
|
|
1749
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_2_10" type="checkbox" id="__nav_2_10" >
|
|
1750
2928
|
|
|
1751
2929
|
|
|
2930
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_11" >
|
|
1752
2931
|
|
|
1753
2932
|
|
|
1754
|
-
|
|
2933
|
+
|
|
2934
|
+
<label class="md-nav__link" for="__nav_2_11" id="__nav_2_11_label" tabindex="0">
|
|
1755
2935
|
GraphQL API
|
|
1756
2936
|
<span class="md-nav__icon md-icon"></span>
|
|
1757
2937
|
</label>
|
|
1758
2938
|
|
|
1759
|
-
<nav class="md-nav"
|
|
1760
|
-
<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">
|
|
1761
2941
|
<span class="md-nav__icon md-icon"></span>
|
|
1762
2942
|
GraphQL API
|
|
1763
2943
|
</label>
|
|
@@ -1815,17 +2995,18 @@
|
|
|
1815
2995
|
<li class="md-nav__item md-nav__item--nested">
|
|
1816
2996
|
|
|
1817
2997
|
|
|
1818
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3" type="checkbox" id="__nav_3" >
|
|
1819
2998
|
|
|
1820
2999
|
|
|
3000
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
|
1821
3001
|
|
|
1822
3002
|
|
|
1823
|
-
|
|
3003
|
+
|
|
3004
|
+
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
|
1824
3005
|
App Developer Guide
|
|
1825
3006
|
<span class="md-nav__icon md-icon"></span>
|
|
1826
3007
|
</label>
|
|
1827
3008
|
|
|
1828
|
-
<nav class="md-nav"
|
|
3009
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
|
1829
3010
|
<label class="md-nav__title" for="__nav_3">
|
|
1830
3011
|
<span class="md-nav__icon md-icon"></span>
|
|
1831
3012
|
App Developer Guide
|
|
@@ -1869,17 +3050,18 @@
|
|
|
1869
3050
|
<li class="md-nav__item md-nav__item--nested">
|
|
1870
3051
|
|
|
1871
3052
|
|
|
1872
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3_3" type="checkbox" id="__nav_3_3" >
|
|
1873
3053
|
|
|
1874
3054
|
|
|
3055
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_3" >
|
|
3056
|
+
|
|
1875
3057
|
|
|
1876
3058
|
|
|
1877
|
-
<label class="md-nav__link" for="__nav_3_3">
|
|
3059
|
+
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
|
|
1878
3060
|
Code Reference
|
|
1879
3061
|
<span class="md-nav__icon md-icon"></span>
|
|
1880
3062
|
</label>
|
|
1881
3063
|
|
|
1882
|
-
<nav class="md-nav"
|
|
3064
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
|
|
1883
3065
|
<label class="md-nav__title" for="__nav_3_3">
|
|
1884
3066
|
<span class="md-nav__icon md-icon"></span>
|
|
1885
3067
|
Code Reference
|
|
@@ -2108,17 +3290,18 @@
|
|
|
2108
3290
|
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
|
|
2109
3291
|
|
|
2110
3292
|
|
|
2111
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_4" type="checkbox" id="__nav_4" checked>
|
|
2112
3293
|
|
|
2113
3294
|
|
|
3295
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" checked>
|
|
2114
3296
|
|
|
2115
3297
|
|
|
2116
|
-
|
|
3298
|
+
|
|
3299
|
+
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
|
|
2117
3300
|
Core Developer Guide
|
|
2118
3301
|
<span class="md-nav__icon md-icon"></span>
|
|
2119
3302
|
</label>
|
|
2120
3303
|
|
|
2121
|
-
<nav class="md-nav"
|
|
3304
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="true">
|
|
2122
3305
|
<label class="md-nav__title" for="__nav_4">
|
|
2123
3306
|
<span class="md-nav__icon md-icon"></span>
|
|
2124
3307
|
Core Developer Guide
|
|
@@ -2204,7 +3387,7 @@
|
|
|
2204
3387
|
|
|
2205
3388
|
<li class="md-nav__item md-nav__item--active">
|
|
2206
3389
|
|
|
2207
|
-
<input class="md-nav__toggle md-toggle"
|
|
3390
|
+
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
|
2208
3391
|
|
|
2209
3392
|
|
|
2210
3393
|
|
|
@@ -2235,85 +3418,78 @@
|
|
|
2235
3418
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
2236
3419
|
|
|
2237
3420
|
<li class="md-nav__item">
|
|
2238
|
-
<a href="#
|
|
2239
|
-
|
|
2240
|
-
</a>
|
|
2241
|
-
|
|
2242
|
-
</li>
|
|
2243
|
-
|
|
2244
|
-
<li class="md-nav__item">
|
|
2245
|
-
<a href="#2-add-validation-logic-to-clean" class="md-nav__link">
|
|
2246
|
-
2. Add validation logic to clean()
|
|
3421
|
+
<a href="#generate-and-run-database-migrations" class="md-nav__link">
|
|
3422
|
+
Generate and run database migrations
|
|
2247
3423
|
</a>
|
|
2248
3424
|
|
|
2249
3425
|
</li>
|
|
2250
3426
|
|
|
2251
3427
|
<li class="md-nav__item">
|
|
2252
|
-
<a href="#
|
|
2253
|
-
|
|
3428
|
+
<a href="#add-validation-logic-to-clean" class="md-nav__link">
|
|
3429
|
+
Add validation logic to clean()
|
|
2254
3430
|
</a>
|
|
2255
3431
|
|
|
2256
3432
|
</li>
|
|
2257
3433
|
|
|
2258
3434
|
<li class="md-nav__item">
|
|
2259
|
-
<a href="#
|
|
2260
|
-
|
|
3435
|
+
<a href="#update-relevant-querysets" class="md-nav__link">
|
|
3436
|
+
Update relevant querysets
|
|
2261
3437
|
</a>
|
|
2262
3438
|
|
|
2263
3439
|
</li>
|
|
2264
3440
|
|
|
2265
3441
|
<li class="md-nav__item">
|
|
2266
|
-
<a href="#
|
|
2267
|
-
|
|
3442
|
+
<a href="#update-api-serializer" class="md-nav__link">
|
|
3443
|
+
Update API serializer
|
|
2268
3444
|
</a>
|
|
2269
3445
|
|
|
2270
3446
|
</li>
|
|
2271
3447
|
|
|
2272
3448
|
<li class="md-nav__item">
|
|
2273
|
-
<a href="#
|
|
2274
|
-
|
|
3449
|
+
<a href="#add-field-to-forms" class="md-nav__link">
|
|
3450
|
+
Add field to forms
|
|
2275
3451
|
</a>
|
|
2276
3452
|
|
|
2277
3453
|
</li>
|
|
2278
3454
|
|
|
2279
3455
|
<li class="md-nav__item">
|
|
2280
|
-
<a href="#
|
|
2281
|
-
|
|
3456
|
+
<a href="#extend-object-filter-set" class="md-nav__link">
|
|
3457
|
+
Extend object filter set
|
|
2282
3458
|
</a>
|
|
2283
3459
|
|
|
2284
3460
|
</li>
|
|
2285
3461
|
|
|
2286
3462
|
<li class="md-nav__item">
|
|
2287
|
-
<a href="#
|
|
2288
|
-
|
|
3463
|
+
<a href="#add-column-to-object-table" class="md-nav__link">
|
|
3464
|
+
Add column to object table
|
|
2289
3465
|
</a>
|
|
2290
3466
|
|
|
2291
3467
|
</li>
|
|
2292
3468
|
|
|
2293
3469
|
<li class="md-nav__item">
|
|
2294
|
-
<a href="#
|
|
2295
|
-
|
|
3470
|
+
<a href="#update-the-ui-templates" class="md-nav__link">
|
|
3471
|
+
Update the UI templates
|
|
2296
3472
|
</a>
|
|
2297
3473
|
|
|
2298
3474
|
</li>
|
|
2299
3475
|
|
|
2300
3476
|
<li class="md-nav__item">
|
|
2301
|
-
<a href="#
|
|
2302
|
-
|
|
3477
|
+
<a href="#validate-the-new-field-in-graphql" class="md-nav__link">
|
|
3478
|
+
Validate the new field in GraphQL
|
|
2303
3479
|
</a>
|
|
2304
3480
|
|
|
2305
3481
|
</li>
|
|
2306
3482
|
|
|
2307
3483
|
<li class="md-nav__item">
|
|
2308
|
-
<a href="#
|
|
2309
|
-
|
|
3484
|
+
<a href="#createextend-test-cases" class="md-nav__link">
|
|
3485
|
+
Create/extend test cases
|
|
2310
3486
|
</a>
|
|
2311
3487
|
|
|
2312
3488
|
</li>
|
|
2313
3489
|
|
|
2314
3490
|
<li class="md-nav__item">
|
|
2315
|
-
<a href="#
|
|
2316
|
-
|
|
3491
|
+
<a href="#update-the-models-documentation" class="md-nav__link">
|
|
3492
|
+
Update the model's documentation
|
|
2317
3493
|
</a>
|
|
2318
3494
|
|
|
2319
3495
|
</li>
|
|
@@ -2470,17 +3646,18 @@
|
|
|
2470
3646
|
<li class="md-nav__item md-nav__item--nested">
|
|
2471
3647
|
|
|
2472
3648
|
|
|
2473
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" >
|
|
2474
3649
|
|
|
2475
3650
|
|
|
3651
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
|
|
2476
3652
|
|
|
2477
3653
|
|
|
2478
|
-
|
|
3654
|
+
|
|
3655
|
+
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
|
|
2479
3656
|
Release Notes
|
|
2480
3657
|
<span class="md-nav__icon md-icon"></span>
|
|
2481
3658
|
</label>
|
|
2482
3659
|
|
|
2483
|
-
<nav class="md-nav"
|
|
3660
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
|
|
2484
3661
|
<label class="md-nav__title" for="__nav_5">
|
|
2485
3662
|
<span class="md-nav__icon md-icon"></span>
|
|
2486
3663
|
Release Notes
|
|
@@ -2616,17 +3793,18 @@
|
|
|
2616
3793
|
<li class="md-nav__item md-nav__item--nested">
|
|
2617
3794
|
|
|
2618
3795
|
|
|
2619
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
|
|
2620
3796
|
|
|
2621
3797
|
|
|
3798
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
|
|
3799
|
+
|
|
2622
3800
|
|
|
2623
3801
|
|
|
2624
|
-
<label class="md-nav__link" for="__nav_6">
|
|
3802
|
+
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
|
|
2625
3803
|
Nautobot Apps
|
|
2626
3804
|
<span class="md-nav__icon md-icon"></span>
|
|
2627
3805
|
</label>
|
|
2628
3806
|
|
|
2629
|
-
<nav class="md-nav"
|
|
3807
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
|
|
2630
3808
|
<label class="md-nav__title" for="__nav_6">
|
|
2631
3809
|
<span class="md-nav__icon md-icon"></span>
|
|
2632
3810
|
Nautobot Apps
|
|
@@ -2656,17 +3834,18 @@
|
|
|
2656
3834
|
<li class="md-nav__item md-nav__item--nested">
|
|
2657
3835
|
|
|
2658
3836
|
|
|
2659
|
-
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6_2" type="checkbox" id="__nav_6_2" >
|
|
2660
3837
|
|
|
2661
3838
|
|
|
3839
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
|
|
2662
3840
|
|
|
2663
3841
|
|
|
2664
|
-
|
|
3842
|
+
|
|
3843
|
+
<label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
|
|
2665
3844
|
Network to Code App Docs
|
|
2666
3845
|
<span class="md-nav__icon md-icon"></span>
|
|
2667
3846
|
</label>
|
|
2668
3847
|
|
|
2669
|
-
<nav class="md-nav"
|
|
3848
|
+
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
|
|
2670
3849
|
<label class="md-nav__title" for="__nav_6_2">
|
|
2671
3850
|
<span class="md-nav__icon md-icon"></span>
|
|
2672
3851
|
Network to Code App Docs
|
|
@@ -2693,8 +3872,8 @@
|
|
|
2693
3872
|
|
|
2694
3873
|
|
|
2695
3874
|
<li class="md-nav__item">
|
|
2696
|
-
<a href="https://nautobot
|
|
2697
|
-
Nautobot
|
|
3875
|
+
<a href="https://docs.nautobot.com/projects/circuit-maintenance/en/latest/" class="md-nav__link">
|
|
3876
|
+
Nautobot Circuit Maintenance
|
|
2698
3877
|
</a>
|
|
2699
3878
|
</li>
|
|
2700
3879
|
|
|
@@ -2707,8 +3886,36 @@
|
|
|
2707
3886
|
|
|
2708
3887
|
|
|
2709
3888
|
<li class="md-nav__item">
|
|
2710
|
-
<a href="https://docs.nautobot.com/projects/
|
|
2711
|
-
Nautobot
|
|
3889
|
+
<a href="https://docs.nautobot.com/projects/device-lifecycle/en/latest/" class="md-nav__link">
|
|
3890
|
+
Nautobot Device LifeCycle Management
|
|
3891
|
+
</a>
|
|
3892
|
+
</li>
|
|
3893
|
+
|
|
3894
|
+
|
|
3895
|
+
|
|
3896
|
+
|
|
3897
|
+
|
|
3898
|
+
|
|
3899
|
+
|
|
3900
|
+
|
|
3901
|
+
|
|
3902
|
+
<li class="md-nav__item">
|
|
3903
|
+
<a href="https://docs.nautobot.com/projects/device-onboarding/en/latest/" class="md-nav__link">
|
|
3904
|
+
Nautobot Device Onboarding
|
|
3905
|
+
</a>
|
|
3906
|
+
</li>
|
|
3907
|
+
|
|
3908
|
+
|
|
3909
|
+
|
|
3910
|
+
|
|
3911
|
+
|
|
3912
|
+
|
|
3913
|
+
|
|
3914
|
+
|
|
3915
|
+
|
|
3916
|
+
<li class="md-nav__item">
|
|
3917
|
+
<a href="https://nautobot-plugin-firewall-models.readthedocs.io/en/latest/" class="md-nav__link">
|
|
3918
|
+
Nautobot Firewall Models
|
|
2712
3919
|
</a>
|
|
2713
3920
|
</li>
|
|
2714
3921
|
|
|
@@ -2735,7 +3942,21 @@
|
|
|
2735
3942
|
|
|
2736
3943
|
|
|
2737
3944
|
<li class="md-nav__item">
|
|
2738
|
-
<a href="https://nautobot
|
|
3945
|
+
<a href="https://docs.nautobot.com/projects/plugin-nornir/en/latest/" class="md-nav__link">
|
|
3946
|
+
Nautobot Plugin Nornir
|
|
3947
|
+
</a>
|
|
3948
|
+
</li>
|
|
3949
|
+
|
|
3950
|
+
|
|
3951
|
+
|
|
3952
|
+
|
|
3953
|
+
|
|
3954
|
+
|
|
3955
|
+
|
|
3956
|
+
|
|
3957
|
+
|
|
3958
|
+
<li class="md-nav__item">
|
|
3959
|
+
<a href="https://docs.nautobot.com/projects/ssot/en/latest/" class="md-nav__link">
|
|
2739
3960
|
Nautobot Single Source of Truth
|
|
2740
3961
|
</a>
|
|
2741
3962
|
</li>
|
|
@@ -2812,85 +4033,78 @@
|
|
|
2812
4033
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
2813
4034
|
|
|
2814
4035
|
<li class="md-nav__item">
|
|
2815
|
-
<a href="#
|
|
2816
|
-
|
|
2817
|
-
</a>
|
|
2818
|
-
|
|
2819
|
-
</li>
|
|
2820
|
-
|
|
2821
|
-
<li class="md-nav__item">
|
|
2822
|
-
<a href="#2-add-validation-logic-to-clean" class="md-nav__link">
|
|
2823
|
-
2. Add validation logic to clean()
|
|
4036
|
+
<a href="#generate-and-run-database-migrations" class="md-nav__link">
|
|
4037
|
+
Generate and run database migrations
|
|
2824
4038
|
</a>
|
|
2825
4039
|
|
|
2826
4040
|
</li>
|
|
2827
4041
|
|
|
2828
4042
|
<li class="md-nav__item">
|
|
2829
|
-
<a href="#
|
|
2830
|
-
|
|
4043
|
+
<a href="#add-validation-logic-to-clean" class="md-nav__link">
|
|
4044
|
+
Add validation logic to clean()
|
|
2831
4045
|
</a>
|
|
2832
4046
|
|
|
2833
4047
|
</li>
|
|
2834
4048
|
|
|
2835
4049
|
<li class="md-nav__item">
|
|
2836
|
-
<a href="#
|
|
2837
|
-
|
|
4050
|
+
<a href="#update-relevant-querysets" class="md-nav__link">
|
|
4051
|
+
Update relevant querysets
|
|
2838
4052
|
</a>
|
|
2839
4053
|
|
|
2840
4054
|
</li>
|
|
2841
4055
|
|
|
2842
4056
|
<li class="md-nav__item">
|
|
2843
|
-
<a href="#
|
|
2844
|
-
|
|
4057
|
+
<a href="#update-api-serializer" class="md-nav__link">
|
|
4058
|
+
Update API serializer
|
|
2845
4059
|
</a>
|
|
2846
4060
|
|
|
2847
4061
|
</li>
|
|
2848
4062
|
|
|
2849
4063
|
<li class="md-nav__item">
|
|
2850
|
-
<a href="#
|
|
2851
|
-
|
|
4064
|
+
<a href="#add-field-to-forms" class="md-nav__link">
|
|
4065
|
+
Add field to forms
|
|
2852
4066
|
</a>
|
|
2853
4067
|
|
|
2854
4068
|
</li>
|
|
2855
4069
|
|
|
2856
4070
|
<li class="md-nav__item">
|
|
2857
|
-
<a href="#
|
|
2858
|
-
|
|
4071
|
+
<a href="#extend-object-filter-set" class="md-nav__link">
|
|
4072
|
+
Extend object filter set
|
|
2859
4073
|
</a>
|
|
2860
4074
|
|
|
2861
4075
|
</li>
|
|
2862
4076
|
|
|
2863
4077
|
<li class="md-nav__item">
|
|
2864
|
-
<a href="#
|
|
2865
|
-
|
|
4078
|
+
<a href="#add-column-to-object-table" class="md-nav__link">
|
|
4079
|
+
Add column to object table
|
|
2866
4080
|
</a>
|
|
2867
4081
|
|
|
2868
4082
|
</li>
|
|
2869
4083
|
|
|
2870
4084
|
<li class="md-nav__item">
|
|
2871
|
-
<a href="#
|
|
2872
|
-
|
|
4085
|
+
<a href="#update-the-ui-templates" class="md-nav__link">
|
|
4086
|
+
Update the UI templates
|
|
2873
4087
|
</a>
|
|
2874
4088
|
|
|
2875
4089
|
</li>
|
|
2876
4090
|
|
|
2877
4091
|
<li class="md-nav__item">
|
|
2878
|
-
<a href="#
|
|
2879
|
-
|
|
4092
|
+
<a href="#validate-the-new-field-in-graphql" class="md-nav__link">
|
|
4093
|
+
Validate the new field in GraphQL
|
|
2880
4094
|
</a>
|
|
2881
4095
|
|
|
2882
4096
|
</li>
|
|
2883
4097
|
|
|
2884
4098
|
<li class="md-nav__item">
|
|
2885
|
-
<a href="#
|
|
2886
|
-
|
|
4099
|
+
<a href="#createextend-test-cases" class="md-nav__link">
|
|
4100
|
+
Create/extend test cases
|
|
2887
4101
|
</a>
|
|
2888
4102
|
|
|
2889
4103
|
</li>
|
|
2890
4104
|
|
|
2891
4105
|
<li class="md-nav__item">
|
|
2892
|
-
<a href="#
|
|
2893
|
-
|
|
4106
|
+
<a href="#update-the-models-documentation" class="md-nav__link">
|
|
4107
|
+
Update the model's documentation
|
|
2894
4108
|
</a>
|
|
2895
4109
|
|
|
2896
4110
|
</li>
|
|
@@ -2909,15 +4123,13 @@
|
|
|
2909
4123
|
|
|
2910
4124
|
|
|
2911
4125
|
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25Z"/></svg>
|
|
2915
|
-
</a>
|
|
4126
|
+
|
|
4127
|
+
|
|
2916
4128
|
|
|
2917
4129
|
|
|
2918
4130
|
<h1 id="extending-models">Extending Models<a class="headerlink" href="#extending-models" title="Permanent link">¶</a></h1>
|
|
2919
4131
|
<p>Below is a list of tasks to consider when adding a new field to a core model.</p>
|
|
2920
|
-
<h2 id="
|
|
4132
|
+
<h2 id="generate-and-run-database-migrations">Generate and run database migrations<a class="headerlink" href="#generate-and-run-database-migrations" title="Permanent link">¶</a></h2>
|
|
2921
4133
|
<p>Django migrations are used to express changes to the database schema. In most cases, Django can generate these automatically, however very complex changes may require manual intervention. Always remember to specify a short but descriptive name when generating a new migration.</p>
|
|
2922
4134
|
<div class="admonition warning">
|
|
2923
4135
|
<p class="admonition-title">Warning</p>
|
|
@@ -2931,7 +4143,7 @@
|
|
|
2931
4143
|
<p class="admonition-title">Note</p>
|
|
2932
4144
|
<p>Migrations can only be merged within a release. Once a new release has been published, its migrations cannot be altered (other than for the purpose of correcting a bug).</p>
|
|
2933
4145
|
</div>
|
|
2934
|
-
<h2 id="
|
|
4146
|
+
<h2 id="add-validation-logic-to-clean">Add validation logic to <code>clean()</code><a class="headerlink" href="#add-validation-logic-to-clean" title="Permanent link">¶</a></h2>
|
|
2935
4147
|
<p>If the new field introduces additional validation requirements (beyond what's included with the field itself), implement them in the model's <code>clean()</code> method. Remember to call the model's original method using <code>super()</code> before or after your custom validation as appropriate:</p>
|
|
2936
4148
|
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="k">class</span> <span class="nc">Foo</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">Model</span><span class="p">):</span>
|
|
2937
4149
|
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a>
|
|
@@ -2943,31 +4155,32 @@
|
|
|
2943
4155
|
<a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a> <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">bar</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
|
|
2944
4156
|
<a id="__codelineno-1-9" name="__codelineno-1-9" href="#__codelineno-1-9"></a> <span class="k">raise</span> <span class="n">ValidationError</span><span class="p">()</span>
|
|
2945
4157
|
</code></pre></div>
|
|
2946
|
-
<h2 id="
|
|
2947
|
-
<p>Add the name of the new field to <code>csv_headers</code> and included a CSV-friendly representation of its data in the model's <code>to_csv()</code> method. These will be used when exporting objects in CSV format.</p>
|
|
2948
|
-
<h2 id="4-update-relevant-querysets">4. Update relevant querysets<a class="headerlink" href="#4-update-relevant-querysets" title="Permanent link">¶</a></h2>
|
|
4158
|
+
<h2 id="update-relevant-querysets">Update relevant querysets<a class="headerlink" href="#update-relevant-querysets" title="Permanent link">¶</a></h2>
|
|
2949
4159
|
<p>If you're adding a relational field (e.g. <code>ForeignKey</code>) and intend to include the data when retrieving a list of objects, be sure to include the field using <code>select_related()</code> (for <code>ForeignKey</code> forward lookups) and/or <code>prefetch_related()</code> (for <code>ForeignKey</code> reverse lookups and <code>ManyToManyField</code> lookups) as appropriate. This will optimize the view and avoid extraneous database queries.</p>
|
|
2950
|
-
<h2 id="
|
|
2951
|
-
<p>Extend the model's API serializer in <code>nautobot.<app>.api.serializers</code> to include the new field
|
|
2952
|
-
<
|
|
4160
|
+
<h2 id="update-api-serializer">Update API serializer<a class="headerlink" href="#update-api-serializer" title="Permanent link">¶</a></h2>
|
|
4161
|
+
<p>Extend the model's API serializer in <code>nautobot.<app>.api.serializers</code> to include the new field, if necessary.</p>
|
|
4162
|
+
<div class="admonition version-added">
|
|
4163
|
+
<p class="admonition-title">Added in version 2.0.0</p>
|
|
4164
|
+
</div>
|
|
4165
|
+
<p>Most model serializers now use <code>fields = [__all__]</code>, in which case you do not have to explicitly include the new field in the model's API serializer. The serializer will automatically pick up the field and render it according to Nautobot standards. If the default rendering does not meet your API needs, you can explicitly declare the field on the serializer.</p>
|
|
4166
|
+
<h2 id="add-field-to-forms">Add field to forms<a class="headerlink" href="#add-field-to-forms" title="Permanent link">¶</a></h2>
|
|
2953
4167
|
<p>Extend any forms to include the new field as appropriate. Common forms include:</p>
|
|
2954
4168
|
<ul>
|
|
2955
4169
|
<li><strong>Create/edit</strong> - Manipulating a single object</li>
|
|
2956
4170
|
<li><strong>Bulk edit</strong> - Performing a change on many objects at once</li>
|
|
2957
|
-
<li><strong>CSV import</strong> - The form used when bulk importing objects in CSV format</li>
|
|
2958
4171
|
<li><strong>Filter</strong> - Displays the options available for filtering a list of objects (both UI and API)</li>
|
|
2959
4172
|
</ul>
|
|
2960
|
-
<h2 id="
|
|
4173
|
+
<h2 id="extend-object-filter-set">Extend object filter set<a class="headerlink" href="#extend-object-filter-set" title="Permanent link">¶</a></h2>
|
|
2961
4174
|
<p>If the new field should be filterable, add it to the <code>FilterSet</code> for the model. If the field should be searchable, remember to reference it in the FilterSet's <code>SearchFilter</code> definition.</p>
|
|
2962
4175
|
<p>All filtersets should inherit from <code>BaseFilterSet</code> or <code>NautobotFilterSet</code> as appropriate to the scope of the model's functionality.</p>
|
|
2963
|
-
<h2 id="
|
|
4176
|
+
<h2 id="add-column-to-object-table">Add column to object table<a class="headerlink" href="#add-column-to-object-table" title="Permanent link">¶</a></h2>
|
|
2964
4177
|
<p>If the new field will be included in the object list view, add a column to the model's table. For simple fields, adding the field name to <code>Meta.fields</code> will be sufficient. More complex fields may require declaring a custom column.</p>
|
|
2965
|
-
<h2 id="
|
|
4178
|
+
<h2 id="update-the-ui-templates">Update the UI templates<a class="headerlink" href="#update-the-ui-templates" title="Permanent link">¶</a></h2>
|
|
2966
4179
|
<p>Edit the object's view template to display the new field. There may also be a custom add/edit form template that needs to be updated.</p>
|
|
2967
|
-
<h2 id="
|
|
4180
|
+
<h2 id="validate-the-new-field-in-graphql">Validate the new field in GraphQL<a class="headerlink" href="#validate-the-new-field-in-graphql" title="Permanent link">¶</a></h2>
|
|
2968
4181
|
<p>If the model is already part of the GraphQL schema, the new field will be included automatically. Validate that the new field is rendering properly in GraphQL. If the field is not compatible with GraphQL or shouldn't be included in GraphQL it's possible to exclude a specific field in the GraphQL Type Object associated with this specific model. You can refer to the <a href="https://docs.graphene-python.org/projects/django/en/latest/queries/#specifying-which-fields-to-include">graphene-django documentation</a> for additional information.</p>
|
|
2969
4182
|
<p>Note that if you're using the <code>convert_django_field</code> registry to override the default GraphQL representation for any field type, this override must be registered within the relevant app's <code>ready()</code> function, rather than at module import time.</p>
|
|
2970
|
-
<h2 id="
|
|
4183
|
+
<h2 id="createextend-test-cases">Create/extend test cases<a class="headerlink" href="#createextend-test-cases" title="Permanent link">¶</a></h2>
|
|
2971
4184
|
<p>Create or extend the relevant test cases to verify that the new field and any accompanying validation logic perform as expected. This is especially important for relational fields. Nautobot incorporates various test suites, including:</p>
|
|
2972
4185
|
<ul>
|
|
2973
4186
|
<li>API serializer/view tests (should be based on <code>nautobot.core.testing.api.APIViewTestCases</code>)</li>
|
|
@@ -2977,7 +4190,7 @@
|
|
|
2977
4190
|
<li>View tests (should be based on <code>nautobot.core.testing.views.ViewTestCases</code>)</li>
|
|
2978
4191
|
</ul>
|
|
2979
4192
|
<p>Be diligent to ensure all of the relevant test suites are adapted or extended as necessary to test any new functionality.</p>
|
|
2980
|
-
<h2 id="
|
|
4193
|
+
<h2 id="update-the-models-documentation">Update the model's documentation<a class="headerlink" href="#update-the-models-documentation" title="Permanent link">¶</a></h2>
|
|
2981
4194
|
<p>Each model has a dedicated page in the documentation, at <code>models/<app>/<model>.md</code>. Update this file to include any relevant information about the new field.</p>
|
|
2982
4195
|
<p>Note that this documentation page will be accessible through the web UI via a "question mark" icon on the corresponding model create/edit page.</p>
|
|
2983
4196
|
|
|
@@ -2996,42 +4209,6 @@
|
|
|
2996
4209
|
|
|
2997
4210
|
<footer class="md-footer">
|
|
2998
4211
|
|
|
2999
|
-
|
|
3000
|
-
<nav class="md-footer__inner md-grid" aria-label="Footer" >
|
|
3001
|
-
|
|
3002
|
-
|
|
3003
|
-
<a href="style-guide.html" class="md-footer__link md-footer__link--prev" aria-label="Previous: Style Guide" rel="prev">
|
|
3004
|
-
<div class="md-footer__button md-icon">
|
|
3005
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
|
|
3006
|
-
</div>
|
|
3007
|
-
<div class="md-footer__title">
|
|
3008
|
-
<div class="md-ellipsis">
|
|
3009
|
-
<span class="md-footer__direction">
|
|
3010
|
-
Previous
|
|
3011
|
-
</span>
|
|
3012
|
-
Style Guide
|
|
3013
|
-
</div>
|
|
3014
|
-
</div>
|
|
3015
|
-
</a>
|
|
3016
|
-
|
|
3017
|
-
|
|
3018
|
-
|
|
3019
|
-
<a href="testing.html" class="md-footer__link md-footer__link--next" aria-label="Next: Testing" rel="next">
|
|
3020
|
-
<div class="md-footer__title">
|
|
3021
|
-
<div class="md-ellipsis">
|
|
3022
|
-
<span class="md-footer__direction">
|
|
3023
|
-
Next
|
|
3024
|
-
</span>
|
|
3025
|
-
Testing
|
|
3026
|
-
</div>
|
|
3027
|
-
</div>
|
|
3028
|
-
<div class="md-footer__button md-icon">
|
|
3029
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4Z"/></svg>
|
|
3030
|
-
</div>
|
|
3031
|
-
</a>
|
|
3032
|
-
|
|
3033
|
-
</nav>
|
|
3034
|
-
|
|
3035
4212
|
<div class="md-footer-meta md-typeset">
|
|
3036
4213
|
<div class="md-footer-meta__inner md-grid">
|
|
3037
4214
|
<div class="md-copyright">
|
|
@@ -3059,32 +4236,42 @@
|
|
|
3059
4236
|
|
|
3060
4237
|
|
|
3061
4238
|
|
|
4239
|
+
|
|
4240
|
+
|
|
3062
4241
|
<a href="https://blog.networktocode.com/blog/tags/nautobot" target="_blank" rel="noopener" title="Network to Code Blog" class="md-social__link">
|
|
3063
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.
|
|
4242
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M0 64c0-17.7 14.3-32 32-32 229.8 0 416 186.2 416 416 0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96 14.3 96 0 81.7 0 64zm0 352a64 64 0 1 1 128 0 64 64 0 1 1-128 0zm32-256c159.1 0 288 128.9 288 288 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>
|
|
3064
4243
|
</a>
|
|
3065
4244
|
|
|
3066
4245
|
|
|
3067
4246
|
|
|
4247
|
+
|
|
4248
|
+
|
|
3068
4249
|
<a href="https://www.youtube.com/playlist?list=PLjA0bhxgryJ2Ts4GJMDA-tPzVWEncv4pb" target="_blank" rel="noopener" title="Nautobot Videos" class="md-social__link">
|
|
3069
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.
|
|
4250
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>
|
|
3070
4251
|
</a>
|
|
3071
4252
|
|
|
3072
4253
|
|
|
3073
4254
|
|
|
4255
|
+
|
|
4256
|
+
|
|
3074
4257
|
<a href="https://www.networktocode.com/community/" target="_blank" rel="noopener" title="Network to Code Community" class="md-social__link">
|
|
3075
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.
|
|
4258
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"/></svg>
|
|
3076
4259
|
</a>
|
|
3077
4260
|
|
|
3078
4261
|
|
|
3079
4262
|
|
|
4263
|
+
|
|
4264
|
+
|
|
3080
4265
|
<a href="https://github.com/nautobot/nautobot" target="_blank" rel="noopener" title="GitHub Repo" class="md-social__link">
|
|
3081
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.
|
|
4266
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
|
|
3082
4267
|
</a>
|
|
3083
4268
|
|
|
3084
4269
|
|
|
3085
4270
|
|
|
4271
|
+
|
|
4272
|
+
|
|
3086
4273
|
<a href="https://twitter.com/networktocode" target="_blank" rel="noopener" title="Network to Code Twitter" class="md-social__link">
|
|
3087
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.
|
|
4274
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
|
|
3088
4275
|
</a>
|
|
3089
4276
|
|
|
3090
4277
|
</div>
|
|
@@ -3098,14 +4285,13 @@
|
|
|
3098
4285
|
<div class="md-dialog__inner md-typeset"></div>
|
|
3099
4286
|
</div>
|
|
3100
4287
|
|
|
3101
|
-
<script id="__config" type="application/json">{"base": "..", "features": ["navigation.tracking", "navigation.tabs", "navigation.tabs.sticky", "search.suggest", "search.highlight", "search.share"], "search": "../assets/javascripts/workers/search.
|
|
4288
|
+
<script id="__config" type="application/json">{"base": "..", "features": ["navigation.tracking", "navigation.tabs", "navigation.tabs.sticky", "search.suggest", "search.highlight", "search.share"], "search": "../assets/javascripts/workers/search.208ed371.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
|
|
3102
4289
|
|
|
3103
4290
|
|
|
3104
|
-
<script src="../assets/javascripts/bundle.
|
|
4291
|
+
<script src="../assets/javascripts/bundle.51198bba.min.js"></script>
|
|
3105
4292
|
|
|
3106
4293
|
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
|
3107
4294
|
|
|
3108
4295
|
|
|
3109
|
-
|
|
3110
4296
|
</body>
|
|
3111
4297
|
</html>
|