Skip to content

Extension of the Hangfire to delete jobs that are not in the code

License

Notifications You must be signed in to change notification settings

Ramon-Balaguer/Hangfire.RecurringJobCleanUpManager

Repository files navigation

Hangfire.RecurringJobCleanUpManager

Hangfire extension to delete jobs that have been removed from configuration code.

Objectives

  • Delete jobs that have been removed from configuration code.
  • Achieve the former objective in a simple/streamlined implementation.

Current situation

When first configuring a new job on Hangfire, there is a synchronization between the job configuration on code and the job definitions persisted on database. scenario

Then, when removing a job from your code ... Code remove

... the corresponding job definition is not removed from the database. No definition remove

Solution

Add a manager that removes jobs no longer defined in code but still persisted in the database, restoring synchronization. New manager

Example of use

var recurringJobCleanUp = new RecurringJobCleanUpManager(recurringJobManager)
{
    EnforceRecurringJob.Create<StoreBookings>("StoreBookings1", bookings => bookings.Execute(),Hangfire.Cron.Minutely()),
    EnforceRecurringJob.Create<StoreBookings>("StoreBookings2", bookings => bookings.Execute(),Hangfire.Cron.Minutely())
};

recurringJobCleanUp.AddUpdateDeleteJobs();

About

Extension of the Hangfire to delete jobs that are not in the code

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published