diff --git a/Program.cs b/Program.cs index a9756c2..e0cec51 100644 --- a/Program.cs +++ b/Program.cs @@ -18,8 +18,13 @@ builder.Services.AddDbContext(options => options.UseSqlite(connectionString)); builder.Services.AddDatabaseDeveloperPageExceptionFilter(); -builder.Services.AddDefaultIdentity(options => options.SignIn.RequireConfirmedAccount = true) - .AddEntityFrameworkStores(); +bool adminAuthenticate = builder.Configuration.GetValue("Admin:Authentication", true); +if (adminAuthenticate) +{ + builder.Services.AddDefaultIdentity(options => options.SignIn.RequireConfirmedAccount = true) + .AddEntityFrameworkStores(); +} + builder.Services.AddRazorPages(); builder.Services.Configure(builder.Configuration.GetRequiredSection("Dhcp")); @@ -64,7 +69,7 @@ else app.UseRouting(); -if (app.Configuration.GetValue("Admin:Authentication", true)) +if (adminAuthenticate) { app.UseAuthorization(); } @@ -72,4 +77,15 @@ if (app.Configuration.GetValue("Admin:Authentication", true)) app.UseStaticFiles(); app.MapRazorPages(); +using (var scope = app.Services.CreateScope()) +{ + using var appDb = scope.ServiceProvider.GetRequiredService(); + appDb.Database.Migrate(); + + if (adminAuthenticate) + { + /* TODO: Generate Admin Account if None found */ + } +} + app.Run(); diff --git a/ext/systemd/netddi.service b/ext/systemd/netddi.service index d800a13..db22240 100644 --- a/ext/systemd/netddi.service +++ b/ext/systemd/netddi.service @@ -1,5 +1,6 @@ [Unit] Description=PowerDNS/DHCP Companion Remote +After=kea-dhcp.service Before=pdns.service [Service]