v1.3.10 - 2022-08-08
Added
- #1226 - Added custom job intervals package management.
- #2091 - Added
remove_stale_scheduled_jobs
management command which removes all stale scheduled jobs and also addedhas_sensitive_variables
field to Job model which prevents the job's input parameters from being saved to the database. - #2073 - Added
--local
option tonautobot-server runjob
command. - #2080 - Added
--data
parameter tonautobot-server runjob
command. - #2143 - Scheduled Job detail view now includes details of any custom interval.
Changed
- #2025 - Tweak Renovate config for automated package management.
- #2114 - Home page now redirects to the login page when
HIDE_RESTRICTED_UI
is enabled and user is not authenticated. - #2115 - Patch updates to
mkdocs
,svgwrite
.
Fixed
- #1739 - Fixed paginator not enforcing max_page_size setting in web ui views.
- #2060 - Fixed relationship peer_id filter non-existent error on relationship association page.
- #2095 - Fixed health check failing with Redis Sentinel, TLS configuration.
- #2119 - Fixed flaky integration test for cable connection UI.
Security
IMPORTANT
With introducing thehas_sensitive_variables
flag on Job classes and model (see: #2091), jobs can be prevented from storing their inputs in the database. Due to the nature of queuing or scheduling jobs, the desired inputs must be stored for future use.New safe-default behavior will only permit jobs to be executed immediately, as
has_sensitive_variables
defaults toTrue
. This value can be overridden by the Job class itself or the Job model edit page. Values entered for jobs executing immediately go straight to the Celery message bus and are cleaned up on completion of execution.Scheduling jobs or requiring approval necessitates those values to be stored in the database until they have been sent to the Celery message bus for execution.
During installation of
v1.3.10
, a migration is applied to set thehas_sensitive_variables
value toTrue
to all existing Jobs. However to maintain backwards-compatibility, past scheduled jobs are permitted to keep their schedule. New schedules cannot be made until an administrator has overridden thehas_sensitive_variables
for the desired Job.A new management command exists (
remove_stale_scheduled_jobs
) which will aid in cleaning up schedules to past jobs which may still have sensitive data stored in the database. This command is not exhaustive nor intended to clean up sensitive values stored in the database. You should review theextras_scheduledjob
table for any further cleanup.Note: Leveraging the Secrets and Secret Groups features in Jobs does not need to be considered a sensitive variable. Secrets are retrieved by reference at run time, which means no secret value is stored directly in the database.
Contributors
New Contributors
- @yoonthegoon made their first contribution in #2084
Full Changelog: v1.3.9...v1.3.10