From b74349cc68e5f123299696681f8cdf9da8d02e0c Mon Sep 17 00:00:00 2001 From: benbierens Date: Tue, 24 Oct 2023 09:51:29 +0200 Subject: [PATCH] Setting up codex discord bot plugin --- .../CodexDiscordBotPlugin.cs | 36 +++++++++++++++++++ .../CodexDiscordBotPlugin.csproj | 13 +++++++ .../CoreInterfaceExtensions.cs | 18 ++++++++++ cs-codex-dist-testing.sln | 7 ++++ 4 files changed, 74 insertions(+) create mode 100644 ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.cs create mode 100644 ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.csproj create mode 100644 ProjectPlugins/CodexDiscordBotPlugin/CoreInterfaceExtensions.cs diff --git a/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.cs b/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.cs new file mode 100644 index 0000000..3ae596d --- /dev/null +++ b/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.cs @@ -0,0 +1,36 @@ +using Core; +using KubernetesWorkflow; + +namespace CodexDiscordBotPlugin +{ + public class CodexDiscordBotPlugin : IProjectPlugin, IHasLogPrefix, IHasMetadata + { + private readonly IPluginTools tools; + + public CodexDiscordBotPlugin(IPluginTools tools) + { + this.tools = tools; + } + + public string LogPrefix => "(DiscordBot) "; + + public void Announce() + { + tools.GetLog().Log($"Codex DiscordBot (BiblioTech) loaded."); + } + + public void AddMetadata(IAddMetadata metadata) + { + metadata.Add("codexdiscordbotid", "todo"); + } + + public void Decommission() + { + } + + public RunningContainer Deploy() + { + throw new NotImplementedException(); + } + } +} diff --git a/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.csproj b/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.csproj new file mode 100644 index 0000000..1308693 --- /dev/null +++ b/ProjectPlugins/CodexDiscordBotPlugin/CodexDiscordBotPlugin.csproj @@ -0,0 +1,13 @@ + + + + net7.0 + enable + enable + + + + + + + diff --git a/ProjectPlugins/CodexDiscordBotPlugin/CoreInterfaceExtensions.cs b/ProjectPlugins/CodexDiscordBotPlugin/CoreInterfaceExtensions.cs new file mode 100644 index 0000000..275e420 --- /dev/null +++ b/ProjectPlugins/CodexDiscordBotPlugin/CoreInterfaceExtensions.cs @@ -0,0 +1,18 @@ +using Core; +using KubernetesWorkflow; + +namespace CodexDiscordBotPlugin +{ + public static class CoreInterfaceExtensions + { + public static RunningContainer DeployMetricsCollector(this CoreInterface ci) + { + return Plugin(ci).Deploy(); + } + + private static CodexDiscordBotPlugin Plugin(CoreInterface ci) + { + return ci.GetPlugin(); + } + } +} diff --git a/cs-codex-dist-testing.sln b/cs-codex-dist-testing.sln index a3e3ac8..585e002 100644 --- a/cs-codex-dist-testing.sln +++ b/cs-codex-dist-testing.sln @@ -45,6 +45,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CodexNetDeployer", "Tools\C EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BiblioTech", "Tools\BiblioTech\BiblioTech.csproj", "{078ABA6D-A04E-4F62-A44C-EA66F1B66548}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CodexDiscordBotPlugin", "ProjectPlugins\CodexDiscordBotPlugin\CodexDiscordBotPlugin.csproj", "{FB96A58B-F7F0-490A-9A85-72A96A018042}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -119,6 +121,10 @@ Global {078ABA6D-A04E-4F62-A44C-EA66F1B66548}.Debug|Any CPU.Build.0 = Debug|Any CPU {078ABA6D-A04E-4F62-A44C-EA66F1B66548}.Release|Any CPU.ActiveCfg = Release|Any CPU {078ABA6D-A04E-4F62-A44C-EA66F1B66548}.Release|Any CPU.Build.0 = Release|Any CPU + {FB96A58B-F7F0-490A-9A85-72A96A018042}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FB96A58B-F7F0-490A-9A85-72A96A018042}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FB96A58B-F7F0-490A-9A85-72A96A018042}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FB96A58B-F7F0-490A-9A85-72A96A018042}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -141,6 +147,7 @@ Global {E849B7BA-FDCC-4CFF-998F-845ED2F1BF40} = {88C2A621-8A98-4D07-8625-7900FC8EF89E} {3417D508-E2F4-4974-8988-BB124046D9E2} = {7591C5B3-D86E-4AE4-8ED2-B272D17FE7E3} {078ABA6D-A04E-4F62-A44C-EA66F1B66548} = {7591C5B3-D86E-4AE4-8ED2-B272D17FE7E3} + {FB96A58B-F7F0-490A-9A85-72A96A018042} = {8F1F1C2A-E313-4E0C-BE40-58FB0BA91124} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {237BF0AA-9EC4-4659-AD9A-65DEB974250C}