Commit Graph

2450 Commits

Author SHA1 Message Date
Jeremy Stretch
dd2a6a41da Fixes #2687: Correct naming of before/after filters for changelog entries 2018-12-13 14:43:05 -05:00
Jeremy Stretch
a6c8c615eb Closes #2674: Enable filtering changelog by object type under web UI 2018-12-13 14:37:03 -05:00
Jeremy Stretch
0d3b1bfca4 Fixes #2683: Fix exception when connecting a cable to a RearPort with no corresponding FrontPort 2018-12-12 16:40:34 -05:00
Jeremy Stretch
edd763b1aa Fixes #2684: Fix custom field filtering 2018-12-12 16:06:50 -05:00
Jeremy Stretch
2418fed65b Fixes #2663: Prevent duplicate interfaces from appearing under VLAN members view 2018-12-12 13:18:42 -05:00
Jeremy Stretch
ee038bd77b Closes #2655: Add 128GFC Fibrechannel interface type 2018-12-12 09:48:17 -05:00
Jeremy Stretch
6460c95e00 Fixes #2678: Fix error when viewing webhook in admin UI without write permission 2018-12-12 09:30:31 -05:00
Jeremy Stretch
b0a6781623 Fixes #2680: Disallow POST requests to /dcim/interface-connections/ API endpoint 2018-12-12 09:20:07 -05:00
Jeremy Stretch
8364e56e86 Fixes #2676: Fix exception when passing dictionary value to a ChoiceField 2018-12-11 17:00:20 -05:00
Jeremy Stretch
b8a4316297 Changelog for #2666 2018-12-11 13:47:24 -05:00
dansheps
b4f79f1667 Fixes #2666: Uses correct function for displaying choices label
* Changes record.length_type to record.get_length_type_display
2018-12-11 12:40:07 -06:00
Jeremy Stretch
b697c30941 #2627: Removed reference to provider from Circuit.__str__() 2018-12-11 11:15:45 -05:00
Jeremy Stretch
93c95fdfa8 Post-release version bump 2018-12-10 10:29:51 -05:00
Jeremy Stretch
acbe5f6418 Release v2.5.0 2018-12-10 10:22:32 -05:00
Jeremy Stretch
7d4fa69595 Fixes #2657: Fix typo 2018-12-10 09:54:30 -05:00
Jeremy Stretch
44a2919a29 Django 2.1 requires Python 3.5+ 2018-12-07 14:44:36 -05:00
Jeremy Stretch
77fbc42f75 Relax Python version requirement to 3.4 2018-12-07 14:29:17 -05:00
Jeremy Stretch
65edffea63 Merge v2.5 work 2018-12-07 10:51:28 -05:00
Jeremy Stretch
869194354c Release v2.4.9 2018-12-07 10:19:57 -05:00
Jeremy Stretch
aa8c836b94 Closes #2611: Fix error handling when assigning a clustered device to a different site 2018-12-07 09:57:55 -05:00
Jeremy Stretch
9689ba2c4f Fix representation of connected_endpoint_type for non-connected components 2018-12-06 16:39:03 -05:00
Jeremy Stretch
703be259fd Normalize connection_status for non-connected device components during migration 2018-12-06 16:32:42 -05:00
Jeremy Stretch
45a1dfbd8a Closes #2649: Add connected_endpoint_type to connectable device component API representations 2018-12-06 16:14:03 -05:00
Jeremy Stretch
360303f86c Closes #2474: Add cabled and connection_status filters for device components 2018-12-06 12:39:12 -05:00
Jeremy Stretch
64d37cd450 Closes #2648: Include the connection_status field in nested represenations of connectable device components 2018-12-06 12:14:54 -05:00
Jeremy Stretch
71dee2758b Simplified filter_device() for Interfaces 2018-12-06 11:33:24 -05:00
Jeremy Stretch
870edbb44a Fixes #2626: Remove extraneous permissions generated from proxy models 2018-12-05 16:53:58 -05:00
Jeremy Stretch
2a07e8f3f0 Move queryset_to_csv() utility into ObjectListView to allow overriding by individual views 2018-12-05 16:35:59 -05:00
Jeremy Stretch
686a65880e Closes #2495: Enable deep-merging of config context data 2018-12-05 14:34:49 -05:00
Jeremy Stretch
d3d6c83fbb Fixes #2634: Enforce consistent representation of unnamed devices in rack view 2018-12-04 15:29:58 -05:00
Jeremy Stretch
f0874f4be0 Add missing choices for new cable and rack fields 2018-12-04 15:15:40 -05:00
Jeremy Stretch
dffa2d3556 Closes #2632: Change representation of null values from 0 to 'null' 2018-12-04 15:09:07 -05:00
Jeremy Stretch
7bbf33ee39 Don't force the docs to open in a new window 2018-12-04 09:44:25 -05:00
John Anderson
0dcab07519 fixes #2623 - model class being passed to rqworker 2018-12-04 00:40:54 -05:00
Jeremy Stretch
a3ade01224 Fixes #2639: Fix preservation of length/dimensions unit for racks and cables 2018-12-03 11:13:37 -05:00
Jeremy Stretch
d1cd366dc9 Fixes #2616: Convert Rack outer_unit and Cable length_unit to integer-based choice fields 2018-11-30 12:26:28 -05:00
Jeremy Stretch
ca0248c3a2 Closes #2089: Add SONET interface form factors 2018-11-30 09:28:56 -05:00
Jeremy Stretch
a43fc0d3d3 Closes #2560: Add slug to DeviceType UI view 2018-11-28 16:19:05 -05:00
Jeremy Stretch
08b4b24296 Fixes #2622: Enable filtering cables by multiple types/colors 2018-11-28 14:22:55 -05:00
Jeremy Stretch
5acd429c55 Fixes #2624: Delete associated content type and permissions when removing InterfaceConnection model 2018-11-28 13:45:02 -05:00
Jeremy Stretch
6c2a9107dd Closes #2597: Add FibreChannel SFP28 (32GFC) interface form factor 2018-11-28 09:56:48 -05:00
Jeremy Stretch
c6d048ca51 Fixes #2576: Correct type for count_* fields in site API representation 2018-11-27 16:27:47 -05:00
Tatsushi Demachi
c3cdf8e97e Fix type mismatches in API view (#2429)
* Fix tags field to be shown as array in API view

`tags` field in serializers is defineded as `TagListSerializerField`.
It should be shown as an array value in API view but actually, it is a
simple string value.

This fixes it by introducing a new `FieldInspector` to handle
`TagListSerializerField` type field as an array. It doesn't affects any
other type fields.

* Fix SerializedPKRelatedField type API expression

A field definded as `SerializedPKRelatedField` should be shown as an
array of child serializer objects in a response value definition in API
view but it is shown as an array of primary key values (usually
`integer` type) of a child serializer.

This fixes it by introducing a new `FieldInspector` to handle the field.
It doesn't affect any other type fields.

* Fix request parameter representation in API view

In API view, representation of a parameter defined as a sub class of
`WritableNestedSerializer` should be vary between a request and a
response. For example, `tenant` field in `IPAddressSerializer` should be
shown like following as a request body:

```
tenant: integer ...
```

while it should be shown like following as a response body:

```
tenant: {
    id: integer ...,
    url: string ...,
    name: string ...,
    slug: string ...
}
```

But in both cases, it is shown as a response body type expression. This
causes an error at sending an API request with that type value.

It is only an API view issue, API can handle a request if a request
parameter is structured as an expected request body by ignoring the
wrong expression.

This fixes the issue by replacing an implicitly used default auto schema
generator class by its sub class and returning a pseudo serializer with
'Writable' prefix at generating a request body. The reason to introduce
a new generator class is that there is no other point which can
distinguish a request and a response. It is not enough to distinguish
POST, PUT, PATCH methods from GET because former cases may return a JSON
object as a response but it is also represented as same as a request
body, causes another mismatch.

This also fixes `SerializedPKRelatedField` type field representation. It
should be shown as an array of primary keys in a request body.

Fixed #2400
2018-11-27 16:14:45 -05:00
Jeremy Stretch
d2744700c6 Fixes #2615: Tweak live search widget to use brief format for API requests 2018-11-27 12:41:00 -05:00
Jeremy Stretch
5d07a5a670 Fixes #2613: Decrease live search minimum characters to three 2018-11-27 12:20:52 -05:00
Jeremy Stretch
4da755e75f Formatting cleanup 2018-11-27 11:57:29 -05:00
Jeremy Stretch
bd7aee7c1f Closes #2614: Simplify calls of super() for Python 3 2018-11-27 10:52:24 -05:00
Jeremy Stretch
3f1b42d466 Release v2.5-beta2 2018-11-26 16:27:57 -05:00
Daniel Sheppard
7346083b26 Fixes #2606 - Added MultipleChoiceFilter for form_factor (#2610)
* Fixes #2606 - Added MultipleChoiceFilter for form_factor

* Fixes #2606 - Add MultipleChoiceField for form_factor
Fixes error with too many lines.
2018-11-26 14:19:05 -05:00
Tyler Bigler
f052bbc36e Refactor Extras Migration Version Check (#2604)
* Add constant for DB_MINIMUM_VERSION

* Refactor verify_postgresql_version to use Django connection pg_version method for comparing versions.

* Remove StrictVersion import

* Remove DB_MINIMUM_VERSION as not necessary in constants.

* Define DB_MINIMUM_VERSION locally to freeze to migration.

* Refactor database version verification to use django builtin methods.
2018-11-26 14:16:37 -05:00
Jeremy Stretch
7d8ae5e763 Fixes #2609: Fixed exception when ChoiceField integer value is passed as a string 2018-11-26 14:05:57 -05:00
Jeremy Stretch
2bae50f501 Enforce consistent ordering of value/label keys for ChoiceField 2018-11-26 14:02:38 -05:00
Jeremy Stretch
a46f68c6e4 Fixes #2608: Fixed null outer_unit error on rack import 2018-11-26 13:41:35 -05:00
Jeremy Stretch
d59be2912e Closes #2601: Added a description field to pass-through ports 2018-11-20 21:28:19 -05:00
Jeremy Stretch
240d22696f Strip annotations from queryset when retrieving object count for API pagination 2018-11-20 21:02:06 -05:00
Jeremy Stretch
89622f1ddf Fixes #2602: Return HTTP 204 when no new IPs/prefixes are available for provisioning 2018-11-20 13:03:59 -05:00
Jeremy Stretch
874acab90f Merge v2.4.8 2018-11-20 12:28:24 -05:00
Jeremy Stretch
34bfb899d1 Post-release version bump 2018-11-20 11:58:19 -05:00
Jeremy Stretch
55c153c5a9 Release v2.4.8 2018-11-20 11:56:14 -05:00
Jeremy Stretch
c29ae9b785 Added missing import buttons to cables list 2018-11-20 09:41:38 -05:00
Jeremy Stretch
5ce955a719 Fixed toggling of connection status for cable path endpoints 2018-11-20 09:23:30 -05:00
Jeremy Stretch
8c3a294384 Standardized behavior and display of connection_status 2018-11-19 15:26:06 -05:00
Jeremy Stretch
55cc327e05 Updated migrations 2018-11-19 13:44:18 -05:00
Jeremy Stretch
a324638f1f Improved logic for recording cable path connection status 2018-11-19 12:37:53 -05:00
Jeremy Stretch
3366a6ae3d Closes #2557: Added object view for tags 2018-11-15 16:47:41 -05:00
Jeremy Stretch
7dde370ee1 Fixes #2593: Fix toggling of connected cable's status 2018-11-15 14:23:23 -05:00
John Anderson
fd9b2f2fda cleanup component filters and UI filter forms for device and device type - #2583 2018-11-15 00:42:01 -05:00
John Anderson
3c0181ef35 added logic to append &type=physical to interface API query for cable creation - #2585 2018-11-14 23:35:15 -05:00
Jeremy Stretch
641254b23a Closes #2053: Introduced the LOGIN_TIMEOUT configuration setting 2018-11-14 14:18:32 -05:00
Jeremy Stretch
63bd48003e Clean up cable termination types 2018-11-14 12:17:18 -05:00
Jeremy Stretch
23cde65add Fixes #2589: Virtual machine API serializer should require cluster assignment 2018-11-14 10:38:53 -05:00
Jeremy Stretch
408f632636 Fixes #2588: Catch all exceptions from failed NAPALM API Calls 2018-11-14 10:12:35 -05:00
Jeremy Stretch
83be0b5db4 Closes #2490: Added bulk editing for config contexts 2018-11-13 15:08:55 -05:00
Jeremy Stretch
7bed48f5fe Expanded device interfaces display to include MTU, MAC address, and tags 2018-11-13 14:18:00 -05:00
Jeremy Stretch
2fce7ebd8f Fixes #2565: Improved rendering of Markdown tables 2018-11-13 11:02:48 -05:00
Jeremy Stretch
f8e6cfbeba Closes #2426: Introduced SESSION_FILE_PATH configuration setting for authentication without write access to database 2018-11-13 10:31:44 -05:00
John Anderson
fc41359df6 removed blank line 2018-11-12 23:34:14 -05:00
John Anderson
65bc8f0254 resolved #2586 - tests for the Cable model clean method 2018-11-12 23:26:08 -05:00
John Anderson
8a6913fe19 fixed #2585 - connections with virtual interfaces 2018-11-12 23:18:23 -05:00
John Anderson
9543b5e716 fixed #2584 - validation for connecting front port to corresponding rear port 2018-11-12 22:15:06 -05:00
Jeremy Stretch
bc8dbfde7c Merge branch 'develop' into develop-2.5 2018-11-12 16:03:52 -05:00
Jeremy Stretch
0c33af2140 Fixes #2558: Filter on all tags when multiple are passed 2018-11-12 15:48:58 -05:00
Jeremy Stretch
59589fdd29 Fixes #2580: Remove erroneous CSS class from "add components" button 2018-11-12 12:04:04 -05:00
Jeremy Stretch
75f0d8ee90 Closes #2578: Reorganized nested serializers 2018-11-12 11:36:44 -05:00
Jeremy Stretch
04ae6ec7af Fixes #2554: Fix cable trace display when following a rear port with no cable attached 2018-11-09 15:22:34 -05:00
Jeremy Stretch
3bbf4a3352 Fixes #2579: Add missing cable disconnect buttons for front/rear ports 2018-11-09 15:17:42 -05:00
Jeremy Stretch
0316072863 Fixes #2574: Remove duplicate interface links from topology maps 2018-11-09 09:54:30 -05:00
Jeremy Stretch
845d467fd9 Fixes #2575: Correct model specified for rack roles table 2018-11-09 09:46:30 -05:00
Jeremy Stretch
be5bf6b711 Closes #2570: Add bulk disconnect view for front/rear pass-through ports 2018-11-08 15:12:24 -05:00
Jeremy Stretch
788847edaa Fixes #2573: Fix bulk console/power/interface disconnections 2018-11-08 15:04:34 -05:00
Jeremy Stretch
30f8fb4c11 Fixes #2572: Add button to disconnect cable from circuit termination 2018-11-08 12:27:15 -05:00
Jeremy Stretch
3e92aa9fe7 Fixes #2571: Enforce deletion of attached cable when deleting a termination point 2018-11-08 12:15:56 -05:00
Jeremy Stretch
bb5432de7d PEP8 fix 2018-11-08 11:13:03 -05:00
Jeremy Stretch
21fd889810 Fix regression from #2566 2018-11-08 11:11:52 -05:00
Jeremy Stretch
a228f1e1c2 Closes #2569: Added LSH fiber type; removed SC duplex/simplex designations 2018-11-08 10:49:26 -05:00
Jeremy Stretch
4b5181d640 Fixes #2566: Prevent both ends of a cable from connecting to the same termination point 2018-11-08 10:40:17 -05:00
Jeremy Stretch
0dee55885b Fixes #2567: Introduced proxy models to represent console/power/interface connections 2018-11-08 09:51:47 -05:00
Jeremy Stretch
d4e266d48c Fixes #2563: Enable export templates for cables 2018-11-07 15:49:45 -05:00
Jeremy Stretch
69d829ce8d Fixes #2473: Fix encoding of long (>127 character) secrets 2018-11-07 13:44:16 -05:00
Jeremy Stretch
c1838104ae Add lag description to lag column 2018-11-07 12:20:14 -05:00
Jeremy Stretch
c716ca1e87 Changelog query optimization 2018-11-07 10:42:04 -05:00
mmahacek
c063961e4a Add Cable count to home page (#2556)
* Add stats.cable_count

* Add Cable count to home page
2018-11-07 10:36:04 -05:00
Jeremy Stretch
f61cea695b Release v2.5-beta1 2018-11-06 15:59:46 -05:00
Jeremy Stretch
338ce737c8 Removed deprecated expand_numeric_pattern() 2018-11-06 15:39:38 -05:00
Jeremy Stretch
f41f141130 Removed unused class NullableModelMultipleChoiceField 2018-11-06 15:32:59 -05:00
Jeremy Stretch
9f0169286b Standardize usage of NaturalOrderingManager 2018-11-06 14:05:23 -05:00
Jeremy Stretch
60452a7b0c Implemented DeviceComponentManager; removed natsort as a dependency 2018-11-06 12:43:30 -05:00
Jeremy Stretch
6140dd955a Set unit_length to empty string when not specified during cable import 2018-11-06 12:12:06 -05:00
Jeremy Stretch
5e06c5a9ea Added cable connection views for front/rear ports 2018-11-06 12:04:46 -05:00
Jeremy Stretch
ad4e1f01aa Improved templates for cable creation 2018-11-06 11:52:41 -05:00
Jeremy Stretch
bb114ea66b Re-implemented connected device API view & test 2018-11-06 11:44:32 -05:00
Jeremy Stretch
ce00226bc6 Merge release v2.4.7 into develop-2.5 2018-11-06 11:19:38 -05:00
Jeremy Stretch
8bad25b860 Post-release version bump 2018-11-06 10:57:38 -05:00
Jeremy Stretch
99edb8b8d5 Release v2.4.7 2018-11-06 10:49:44 -05:00
Jeremy Stretch
b4998f4b01 Closes #2388: Enable filtering of devices/VMs by region 2018-11-06 10:31:56 -05:00
John Anderson
51295389c6 add temporary support for hyphenated query params for #2549 2018-11-06 10:08:00 -05:00
Jeremy Stretch
fd4a9db13e Closes #2512: Add device field to inventory item filter form 2018-11-06 09:24:05 -05:00
John Anderson
817dc89279 fixed test for #2549 2018-11-06 00:54:57 -05:00
John Anderson
798a87b31e fixed #2549 - incorrect naming of peer-device and peer-interface 2018-11-06 00:51:55 -05:00
Jeremy Stretch
bd3ccfe020 Fixes #2528: Enable creating circuit terminations with interface assignment via API 2018-11-05 16:10:01 -05:00
Jeremy Stretch
ded90df01b Filter cleanup 2018-11-05 15:45:21 -05:00
Daniel Sheppard
82b4aad585 Fixes 2427: Added filtering interfaces by vlan id(vlan=#) and vlan pk(vlan_id=#) (#2521) 2018-11-05 15:37:52 -05:00
knobix
0c86fd89ca Update models.py (#2502)
Fix the handling of shared IPs (VIP, VRRF, etc.) when unique IP space enforcement is set.

Add parentheses for the logical OR-statement to make the evaluation valid.

Fixes: #2501
2018-11-05 15:33:10 -05:00
Jeremy Stretch
e57b3bc4ab Closes #2057: Added description columns to interface connections list 2018-11-05 14:41:51 -05:00
Jeremy Stretch
46e594f1f1 Closes #1931: Added a count of assigned IP addresses to the interface API serializer 2018-11-05 14:32:22 -05:00
Jeremy Stretch
1847e82d04 Closes #867: Add a 'description' field to CircuitTermination 2018-11-05 13:53:22 -05:00
Jeremy Stretch
045856c9ac Introduced a placeholder template filter 2018-11-05 13:00:46 -05:00
Jeremy Stretch
976388f29c Removed 'interface_ordering' field from DeviceType 2018-11-05 12:02:55 -05:00
Jeremy Stretch
e5f12109c5 Closes #2165: Re-implemented natural ordering for interfaces 2018-11-05 11:51:38 -05:00
Juho Juopperi
319869c22e Update django is_safe_url calls to new API (#2546) 2018-11-05 08:52:00 -05:00
Jeremy Stretch
66ef5c726c Removed deprecated CableQuerySet 2018-11-02 15:33:31 -04:00
Jeremy Stretch
f8a961b568 Cleaned up import statements 2018-11-02 15:20:08 -04:00
Jeremy Stretch
521a989d23 Removed Python2 hack 2018-11-02 14:59:48 -04:00
Jeremy Stretch
0a71c63583 Upgraded to Django 2.1 2018-11-02 14:42:15 -04:00
Jeremy Stretch
b05171b126 Upgraded django-tables2 to v2.0.2 2018-11-02 14:27:17 -04:00
Jeremy Stretch
516faac73f Fixed deprecation warnings from DRF 3.9 2018-11-02 13:48:44 -04:00
Jeremy Stretch
29d546a3f1 Upgraded django-filter to 2.0.0 2018-11-02 13:46:28 -04:00
Jeremy Stretch
bb5c0989f3 Fixed compatability with Django REST Framework v3.9.0 2018-11-02 13:16:44 -04:00
Jeremy Stretch
3ea2978df4 Standardized naming of reverse relationships from component templates to DeviceType 2018-11-02 11:55:52 -04:00
Jeremy Stretch
cf9c8f35a0 Normalize ordering of cables by PK 2018-11-02 11:27:26 -04:00
Jeremy Stretch
cefec1be60 Show connected circuit termination on interface view 2018-11-02 11:15:09 -04:00
Jeremy Stretch
16d8308fa8 Deprecated CableTermination.get_connected_cable() 2018-11-02 11:04:21 -04:00
Jeremy Stretch
af95ba48aa Replaced is_console_server, is_pdu, and is_network_device filters on Device and DeviceType 2018-11-02 10:45:31 -04:00
Jeremy Stretch
c60c5502f6 Closes #450: Add 'outer_width' and 'outer_depth' fields to Rack 2018-11-02 09:51:17 -04:00
Jeremy Stretch
4ffe1866c5 Closes #1444: Add field to Rack model 2018-11-02 09:17:51 -04:00
Jeremy Stretch
fa6c4db13b Closes #2104: Add 'status' field to Rack 2018-11-01 16:03:42 -04:00
Jeremy Stretch
91ce6c2420 Cable migration for ExportTemplate 2018-11-01 14:54:53 -04:00
Jeremy Stretch
62da0778ee Suppress print() output from migrations during testing 2018-11-01 14:54:36 -04:00
Jeremy Stretch
7ffb5f16dd Fix color display for cables 2018-11-01 14:32:43 -04:00
Jeremy Stretch
623de7d210 Fixed cable list display for circuit terminations 2018-11-01 14:14:31 -04:00