forked from Manuel/meeting-assistant
ci: consolidate platform pipelines and test prerequisites on macOS support
This commit is contained in:
1 parent
1b19b08f2e
commit
728e66dd72
76 files changed
+7477
-239
No files matched your search
+27
-14
@@ -44,11 +44,20 @@ builder.Services.AddSingleton<IMeetingAudioSource>(services => new CompositeMeet
|
||||
services.GetRequiredService<ILogger<CompositeMeetingAudioSource>>()));
|
||||
builder.Services.AddSingleton<IMeetingMetadataProvider, OutlookClassicMeetingMetadataProvider>();
|
||||
#else
|
||||
builder.Services.AddSingleton(TimeProvider.System);
|
||||
builder.Services.AddSingleton<DesktopUserRequestStore>();
|
||||
PortableMeetingAudioRegistration.Add(builder.Services);
|
||||
MacOsMeetingIntegrationRegistration.Add(builder.Services, OperatingSystem.IsMacOS());
|
||||
builder.Services.AddHostedService<MacOsDesktopControlService>();
|
||||
builder.Services.AddSingleton<IMicrophoneSwitchPromptService, NoopMicrophoneSwitchPromptService>();
|
||||
builder.Services.AddSingleton<IAgentApprovalPromptService, NoopAgentApprovalPromptService>();
|
||||
if (OperatingSystem.IsMacOS())
|
||||
{
|
||||
builder.Services.AddSingleton<IAgentApprovalPromptService, MacOsAgentApprovalPromptService>();
|
||||
}
|
||||
else
|
||||
{
|
||||
builder.Services.AddSingleton<IAgentApprovalPromptService, NoopAgentApprovalPromptService>();
|
||||
}
|
||||
#endif
|
||||
builder.Services.AddSingleton<ITranscriptStore, VaultTranscriptStore>();
|
||||
builder.Services.AddSingleton<IMeetingNoteStore, MarkdownMeetingNoteStore>();
|
||||
@@ -66,7 +75,14 @@ builder.Services.AddSingleton<IMeetingInactivityPromptService>(services =>
|
||||
builder.Services.AddHostedService(services =>
|
||||
services.GetRequiredService<WindowsMeetingInactivityPromptService>());
|
||||
#else
|
||||
builder.Services.AddSingleton<IMeetingInactivityPromptService, NoopMeetingInactivityPromptService>();
|
||||
if (OperatingSystem.IsMacOS())
|
||||
{
|
||||
builder.Services.AddSingleton<IMeetingInactivityPromptService, MacOsMeetingInactivityPromptService>();
|
||||
}
|
||||
else
|
||||
{
|
||||
builder.Services.AddSingleton<IMeetingInactivityPromptService, NoopMeetingInactivityPromptService>();
|
||||
}
|
||||
#endif
|
||||
builder.Services.AddSingleton<IRecordingDictationWordProvider, RecordingDictationWordProvider>();
|
||||
builder.Services.AddSingleton<ICalendarPromptClock, SystemCalendarPromptClock>();
|
||||
@@ -147,8 +163,11 @@ builder.Services.AddSingleton(services => WorkflowRulesEditorMarkdownLinkResolve
|
||||
services.GetRequiredService<IOptions<MeetingAssistantOptions>>().Value));
|
||||
builder.Services.AddSingleton<IWorkflowRulesEditorWindowService, WpfWorkflowRulesEditorWindowService>();
|
||||
#else
|
||||
builder.Services.AddSingleton<MacOsWorkflowRulesEditorSession>();
|
||||
builder.Services.AddSingleton<IWorkflowRulesEditorWindowService, MacOsWorkflowRulesEditorWindowService>();
|
||||
builder.Services.AddSingleton<MacOsWorkflowRulesEditorSessions>();
|
||||
builder.Services.AddSingleton<IWorkflowRulesEditorWindowService>(services =>
|
||||
new MacOsWorkflowRulesEditorWindowService(
|
||||
services.GetRequiredService<IOptions<MeetingAssistantOptions>>(),
|
||||
() => services.GetRequiredService<MacOsWorkflowRulesEditorSessions>()));
|
||||
#endif
|
||||
builder.Services.AddSingleton<AgentApprovalService>();
|
||||
builder.Services.AddSingleton<WorkflowChangeRequestService>();
|
||||
@@ -205,6 +224,10 @@ app.MapGet("/diagnostics/platform-capabilities", (
|
||||
screenshotProvider,
|
||||
workflowEditorProvider)));
|
||||
|
||||
#if !WINDOWS
|
||||
app.MapDesktopCommunication();
|
||||
#endif
|
||||
|
||||
app.MapGet("/recording/status", (MeetingRecordingCoordinator coordinator) => Results.Ok(coordinator.CurrentStatus));
|
||||
app.MapGet("/profiles/{launchProfile}/recording/status", (
|
||||
string launchProfile,
|
||||
@@ -343,16 +366,6 @@ app.MapPost("/diagnostics/settings-and-logs/show", (
|
||||
rulesEditorWindow.Show();
|
||||
return Results.Accepted();
|
||||
});
|
||||
#if !WINDOWS
|
||||
app.MapGet("/diagnostics/settings-and-logs", () =>
|
||||
Results.Content(MacOsWorkflowRulesEditorPage.Html, "text/html"));
|
||||
app.MapPost("/diagnostics/settings-and-logs/chat", async (
|
||||
MacOsWorkflowRulesEditorChatRequest request,
|
||||
MacOsWorkflowRulesEditorSession session,
|
||||
CancellationToken cancellationToken) =>
|
||||
Results.Ok(await session.SendAsync(request.Message, cancellationToken)));
|
||||
#endif
|
||||
|
||||
static WorkflowConfigurationReloadResponse ReloadWorkflowConfiguration(IConfiguration configuration)
|
||||
{
|
||||
if (configuration is not IConfigurationRoot root)
|
||||
|
||||
Reference in new issue
Block a user