Skip to content

A plugin for Hangfire that enables you to launch jobs manually.

License

Notifications You must be signed in to change notification settings

ahydrax/Hangfire.MissionControl

Repository files navigation

Hangfire.MissionControl

NuGet NuGet Tests

A plugin for Hangfire that enables you to launch jobs manually.

dashboard

Read about hangfire here: https://github.com/HangfireIO/Hangfire#hangfire- and here: http://hangfire.io/

Instructions

  • Install NuGet package
  • Decorate your code with attributes (all parameters are optional)
[MissionLauncher(CategoryName = "Emails")]
public class EmailSenderMissions
{
    [Mission(Name = "Send email", 
        Description = "Send email to customer", 
        Queue = "emails")]
    public string SendEmail(int customerId, string displayName) => //...code;
}
  • Setup dashboard code
// ASP.NET Core
services.AddHangfire(configuration =>
{
    ...
    configuration.UseMissionControl(
        new MissionControlOptions
        {
            RequireConfirmation = false, // disables confirmation popup
            HideCodeSnippet = false // hides code snippet and queue on missions page
        },
        typeof(TestSuite).Assembly);
});

// Or console application
GlobalConfiguration.Configuration.UseMissionControl(typeof(EmailSenderMissions).Assembly);

License

Authored by: Viktor Svyatokha (ahydrax)

This project is under MIT license. You can obtain the license copy here.