* Fixes: #14044 - Allow regex renaming of unnamed devices
* Allow regex renaming of unnamed devices (already allowed actually)
* Catch errors relating to unnamed devices or integrity errors as a result of the rename process
* Move validation to ensure all renames are eligible
* Update to treat null name an empty string
* Fixes#17490: Config Template unable to dynamically include templates
* Cast the generator returned by find_referenced_templates() to an iterable to avoid exhausting it on the check for None
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Apply the path__in filter to avoid duplicating code
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Remove extra if None not in referenced_templates
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Add status to rack elevation device tooltip
* Use get method for status display
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Move {module} substitution help text to main ComponentCreateForm.__init__ so it applies to all component types, and fix formatting
* Simplify help text replacement string for component forms with 'module' field
* Reuse help text string in both ComponentCreateForm and ModularComponentTemplateForm
* Remove help text override from regular (direct) object creation of device components
* Re-add space
* Tweak help text
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Wait until job1 exists in Redis before enqueueing job2
* Job can exist but not have status
* Catch InvalidJobOperation and use as trigger for retry
* Catch InvalidJobOperation when deleting/canceling job
* Remove testing code
* Fix non-null constraint for script execution
With c34a0e2, validation of job object fields is enabled, so ScriptJob
must not set required fields to empty strings. This commit reverts
b18f193 and (hopefully) fixes this issue not only for UI views, but for
all interactions with scripts.
Fixes: #17923
* Fix name of recurring jobs
For recurring jobs, the name must be passed to the next job object when
the job is rescheduled.
* Fixes: #18037 - Bound VLANGroup VLAN ID max by `VLAN_VID_MAX`
* Correct exception string
* Validate min & max VID values
* Fix min/max VID validation
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
* Extend register_model_view() to enable registering list views
* Register circuits list views with register_model_view()
* Register core list views with register_model_view()
* Fix bulk_edit & bulk_delete URL paths
* Register dcim list views with register_model_view() (WIP)
* Register dcim list views with register_model_view()
* Register extras list views with register_model_view()
* Register ipam list views with register_model_view()
* Register tenancy list views with register_model_view()
* Register users list views with register_model_view()
* Register virtualization list views with register_model_view()
* Register vpn list views with register_model_view()
* Register wireless list views with register_model_view()
* Add change note for register_model_view()