ca2ee436a0
Closes #14438 : Database representation of scripts
...
- Introduces the Script model to represent individual Python classes within a ScriptModule file
- Automatically migrates jobs & event rules
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
2024-02-23 08:27:37 -05:00
11697d19a6
12510 Merge Scripts and Reports ( #14976 )
...
* 12510 move reports to use BaseScript
* 12510 merge report into script view
* 12510 add migration for job report to script
* 12510 update templates
* 12510 remove reports
* 12510 cleanup
* 12510 legacy jobs
* 12510 legacy jobs
* 12510 fixes
* 12510 review changes
* 12510 review changes
* 12510 update docs
* 12510 review changes
* 12510 review changes
* 12510 review changes
* 12510 review changes
* 12510 main log results to empty string
* 12510 move migration
* Introduce an internal log level for debug to simplify Script logging
* Misc cleanup
* Remove obsolete is_valid() method
* Reformat script job data (log, output, tests)
* Remove ScriptLogMessageSerializer
* Fix formatting of script logs
* Record a timestamp with script logs
* Rename _current_method to _current_test
* Clean up template
* Remove obsolete runreport management command
* Misc cleanup & refactoring
* Clean up template
* Clean up migration
* Clean up docs
---------
Co-authored-by: Jeremy Stretch <jstretch@netboxlabs.com>
2024-02-07 12:02:09 -05:00
0c9919a5e8
#13334 : Capture exception class when recording job error
2023-12-01 10:54:46 -05:00
7323668dd0
Closes #13334 : Record error message on failed jobs ( #14106 )
2023-10-31 08:34:57 -04:00
ef460a38ed
13944 fix report detail api
2023-10-03 14:39:46 -04:00
f9ceaad284
#13666 : Add is_valid property to Report class
2023-09-26 10:53:38 -04:00
e67624f042
Fixes #13666 : Fix behavior for reports without test methods ( #13667 )
2023-09-26 10:41:09 -04:00
9cc295827b
Fixes #13369 : Fix job termination status for failed reports
2023-08-04 08:12:52 -04:00
b167153186
Enable scheduling_enabled parameter for reports
2023-04-18 08:45:31 -04:00
c4891fe105
Closes #12085 : Add a file source view for reports
2023-03-29 16:58:35 -04:00
715592547c
#12081 : Script & report cleanup ( #12091 )
...
* start() and terminate() methods on Job should call save()
* Fix display of associated jobs
* Introduce get_latest_jobs() method on JobsMixin
* Update messaging when no reports/scripts exist
* Catch ImportErrors when rendering report/script lists
* Fix loading of nested modules
* Fix URLs for nested scripts/reports
2023-03-29 16:51:55 -04:00
d2a694a878
Closes #12068 : Establish a direct relationship from jobs to objects ( #12075 )
...
* Reference database object by GFK when running scripts & reports via UI
* Reference database object by GFK when running scripts & reports via API
* Remove old enqueue_job() method
* Enable filtering jobs by object
* Introduce ObjectJobsView
* Add tabbed views for report & script jobs
* Add object_id to JobSerializer
* Move generic relation to JobsMixin
* Clean up old naming
2023-03-28 15:47:09 -04:00
40572b543f
Rename JobResult to Job and move to core
2023-03-27 14:20:13 -04:00
f7a2eb8aef
Closes #11890 : Sync/upload reports & scripts ( #12059 )
...
* Initial work on #11890
* Consolidate get_scripts() and get_reports() functions
* Introduce proxy models for script & report modules
* Add add/delete views for reports & scripts
* Add deletion links for modules
* Enable resolving scripts/reports from module class
* Remove get_modules() utility function
* Show results in report/script lists
* Misc cleanup
* Fix file uploads
* Support automatic migration for submodules
* Fix module child ordering
* Template cleanup
* Remove ManagedFile views
* Move is_script(), is_report() into extras.utils
* Fix URLs for nested reports & scripts
* Misc cleanup
2023-03-24 21:00:36 -04:00
a8c331f88a
Replace JobResult.set_status() with terminate()
2023-03-07 18:01:32 -05:00
4297c65f87
Closes #10945 : Enable recurring execution of scheduled reports & scripts ( #11096 )
...
* Add interval to JobResult
* Accept a recurrence interval when executing scripts & reports
* Cleaned up jobs list display
* Schedule next job only if a reference start time can be determined
* Improve validation for scheduled jobs
2022-12-08 18:17:13 -05:00
0bcc59a1e9
#8366 : Add started field to JobResult
2022-11-15 15:06:11 -05:00
1d9808a92a
Added scheduled_time field to JobResult model
2022-10-16 13:42:28 +02:00
c335b76ec6
PEP8: Fix whitespace on blank line
2022-09-14 20:00:12 +02:00
356ff457be
Allow reports to be nested in submodules
2022-09-14 19:57:37 +02:00
29a611c729
Closes #9896 : Discontinue arbitrary use of OrderedDict
2022-08-01 16:51:44 -04:00
f13a00b2dd
Save old JobResults
2022-04-12 11:42:47 -04:00
36d6ae33d1
Allow setting individual timeouts on scripts and reports
2022-04-04 18:00:38 +02:00
049acde5b0
Closes #8572 : Add a pre_run() method for reports
2022-02-07 12:57:02 -05:00
1902ecb8ca
Drop as_dict() method from ChoiceSet
2021-12-16 10:22:05 -05:00
e443d719d4
feat: reports within a module can now be ordered
2021-09-27 11:02:31 +02:00
bc0e6cc8dd
Fixes #5012 : Return details of exceptions resulting from report/script execution
2020-08-20 12:47:26 -04:00
592ad18317
Provide a default view for Report instances
2020-07-06 13:30:13 -04:00
41f92ef8e6
review updates
2020-07-06 02:00:16 -04:00
f092c107b5
PR review updates
2020-07-06 02:00:16 -04:00
1d922a1848
fix previous job result deletion
2020-06-30 09:29:50 -04:00
3777fbccc3
Implements #2006 - run reports and scripts in the background
2020-06-29 03:50:05 -04:00
ba91b3aa2e
Fixes #4646 : Correct UI link for reports with custom name
2020-05-15 09:13:51 -04:00
9df2769383
Enable system logging for reports
2020-03-04 14:22:30 -05:00
a3b9bdaff1
Miscellaneous cleanup
2019-10-04 12:59:10 -04:00
f8a961b568
Cleaned up import statements
2018-11-02 15:20:08 -04:00
980d62d579
Removed Python 2 string compatibility
2018-08-14 11:58:42 -04:00
ac546a9711
Closes #2000 : Remove support for Python 2
2018-08-14 11:48:12 -04:00
f59682a7c9
Fixes #2318 : ImportError when viewing a report
2018-08-07 12:10:14 -04:00
c7acddbc5c
Fixes #2312 : Running a report yields a ValueError exception
2018-08-07 09:12:05 -04:00
5f7e21faa0
Fixes #1786 : Correct loading of reports from a custom file path
2018-07-31 13:48:07 -04:00
00986fd7bf
Closes #1691 : Cleaned up and reorganized import statements
2017-11-07 11:08:23 -05:00
5be4b0c4fd
Closes #1631 : Added a post_run method to the Report class
2017-10-27 10:02:27 -04:00
fdae3a3f31
Introduced the REPORTS_ROOT config parameter; Python2 fixes
2017-10-11 14:03:35 -04:00
f9a677c1a3
Bugfixes
2017-09-28 13:36:50 -04:00
6c6b67330f
Expanded report view
2017-09-28 13:35:18 -04:00
571b817f04
Moved ReportResult creation into Report.run()
2017-09-28 12:50:32 -04:00
2fbb39bf6f
Started adding a view for individual reports
2017-09-27 17:39:22 -04:00
3395b51086
Cleaned up the API quite a bit
2017-09-26 16:36:43 -04:00
d35a2b0faa
Extended reports API
2017-09-25 17:27:58 -04:00