diff --git a/Zyborg-tug.sln b/Zyborg-tug.sln
new file mode 100644
index 0000000..8f3dc74
--- /dev/null
+++ b/Zyborg-tug.sln
@@ -0,0 +1,245 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.26124.0
+MinimumVisualStudioVersion = 15.0.26124.0
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{E942E23C-7A77-49AF-B9BD-45473F27F148}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Base", "src\Tug.Base\Tug.Base.csproj", "{93C490C7-854F-499C-90DA-3E96FB8E66F5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Client", "src\Tug.Client\Tug.Client.csproj", "{99BA17D3-5E96-4F0A-A02F-68F9AE500E57}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server.Base", "src\Tug.Server.Base\Tug.Server.Base.csproj", "{2DB94D11-9A4C-4602-B259-D959736B0A4C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server", "src\Tug.Server\Tug.Server.csproj", "{3618920B-E154-4CD3-9B15-8DE97362F304}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server.Providers.Ps5DscHandler", "src\Tug.Server.Providers.Ps5DscHandler\Tug.Server.Providers.Ps5DscHandler.csproj", "{8C22B84D-9818-4A83-B8FF-C9EAAA413E22}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server.FaaS.AwsLambda", "src\Tug.Server.FaaS.AwsLambda\Tug.Server.FaaS.AwsLambda.csproj", "{1C1C17F8-8B22-4D07-AA36-9055B0D299CE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Ext-WORK", "src\Tug.Ext-WORK\Tug.Ext-WORK.csproj", "{8809D9DA-F928-49F3-95DF-2ABC86E0C041}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{CA27A14E-1969-497C-B46B-000451E9EAEC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.UnitTesting", "test\Tug.UnitTesting\Tug.UnitTesting.csproj", "{4E0B3B69-C567-42E5-929E-AB476D6B2AE0}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "client", "client", "{8C5D01A0-6F8C-48B4-BC23-CE841A5A77F3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Client-tests", "test\client\Tug.Client-tests\Tug.Client-tests.csproj", "{B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "server", "server", "{5C71E6AA-FC35-4873-9787-E390B21E15FA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server-itests", "test\server\Tug.Server-itests\Tug.Server-itests.csproj", "{8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server.FaaS.AwsLambda-tests", "test\server\Tug.Server.FaaS.AwsLambda-tests\Tug.Server.FaaS.AwsLambda-tests.csproj", "{076FB5F2-4618-44AB-8B86-02CF5890D42E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Ext-tests", "test\Tug.Ext-tests\Tug.Ext-tests.csproj", "{8D70F2C9-4BED-4BA6-8684-F9E385BC6089}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Ext-tests-aux", "test\Tug.Ext-tests-aux\Tug.Ext-tests-aux.csproj", "{6B61E75D-6B59-465A-9622-37E27F3109B0}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "bundles", "bundles", "{D72E486E-B585-4AC8-9CDC-E6AA50BD1E6D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tug.Server-ps5", "src\bundles\Tug.Server-ps5\Tug.Server-ps5.csproj", "{DF75F175-4C60-41F6-8DF3-09B15EAFF142}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|x64.ActiveCfg = Debug|x64
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|x64.Build.0 = Debug|x64
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|x86.ActiveCfg = Debug|x86
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Debug|x86.Build.0 = Debug|x86
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|Any CPU.Build.0 = Release|Any CPU
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|x64.ActiveCfg = Release|x64
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|x64.Build.0 = Release|x64
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|x86.ActiveCfg = Release|x86
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5}.Release|x86.Build.0 = Release|x86
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|x64.ActiveCfg = Debug|x64
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|x64.Build.0 = Debug|x64
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|x86.ActiveCfg = Debug|x86
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Debug|x86.Build.0 = Debug|x86
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|Any CPU.Build.0 = Release|Any CPU
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|x64.ActiveCfg = Release|x64
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|x64.Build.0 = Release|x64
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|x86.ActiveCfg = Release|x86
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57}.Release|x86.Build.0 = Release|x86
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|x64.ActiveCfg = Debug|x64
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|x64.Build.0 = Debug|x64
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|x86.ActiveCfg = Debug|x86
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Debug|x86.Build.0 = Debug|x86
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|x64.ActiveCfg = Release|x64
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|x64.Build.0 = Release|x64
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|x86.ActiveCfg = Release|x86
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C}.Release|x86.Build.0 = Release|x86
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|x64.ActiveCfg = Debug|x64
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|x64.Build.0 = Debug|x64
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|x86.ActiveCfg = Debug|x86
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Debug|x86.Build.0 = Debug|x86
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|x64.ActiveCfg = Release|x64
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|x64.Build.0 = Release|x64
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|x86.ActiveCfg = Release|x86
+ {3618920B-E154-4CD3-9B15-8DE97362F304}.Release|x86.Build.0 = Release|x86
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|x64.ActiveCfg = Debug|x64
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|x64.Build.0 = Debug|x64
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|x86.ActiveCfg = Debug|x86
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Debug|x86.Build.0 = Debug|x86
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|x64.ActiveCfg = Release|x64
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|x64.Build.0 = Release|x64
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|x86.ActiveCfg = Release|x86
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22}.Release|x86.Build.0 = Release|x86
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|x64.ActiveCfg = Debug|x64
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|x64.Build.0 = Debug|x64
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|x86.ActiveCfg = Debug|x86
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Debug|x86.Build.0 = Debug|x86
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|x64.ActiveCfg = Release|x64
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|x64.Build.0 = Release|x64
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|x86.ActiveCfg = Release|x86
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE}.Release|x86.Build.0 = Release|x86
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|x64.ActiveCfg = Debug|x64
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|x64.Build.0 = Debug|x64
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|x86.ActiveCfg = Debug|x86
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Debug|x86.Build.0 = Debug|x86
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|x64.ActiveCfg = Release|x64
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|x64.Build.0 = Release|x64
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|x86.ActiveCfg = Release|x86
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041}.Release|x86.Build.0 = Release|x86
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|x64.ActiveCfg = Debug|x64
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|x64.Build.0 = Debug|x64
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|x86.ActiveCfg = Debug|x86
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Debug|x86.Build.0 = Debug|x86
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|x64.ActiveCfg = Release|x64
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|x64.Build.0 = Release|x64
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|x86.ActiveCfg = Release|x86
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0}.Release|x86.Build.0 = Release|x86
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|x64.ActiveCfg = Debug|x64
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|x64.Build.0 = Debug|x64
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|x86.ActiveCfg = Debug|x86
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Debug|x86.Build.0 = Debug|x86
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|x64.ActiveCfg = Release|x64
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|x64.Build.0 = Release|x64
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|x86.ActiveCfg = Release|x86
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898}.Release|x86.Build.0 = Release|x86
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|x64.ActiveCfg = Debug|x64
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|x64.Build.0 = Debug|x64
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|x86.ActiveCfg = Debug|x86
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Debug|x86.Build.0 = Debug|x86
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|x64.ActiveCfg = Release|x64
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|x64.Build.0 = Release|x64
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|x86.ActiveCfg = Release|x86
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478}.Release|x86.Build.0 = Release|x86
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|x64.ActiveCfg = Debug|x64
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|x64.Build.0 = Debug|x64
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|x86.ActiveCfg = Debug|x86
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Debug|x86.Build.0 = Debug|x86
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|x64.ActiveCfg = Release|x64
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|x64.Build.0 = Release|x64
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|x86.ActiveCfg = Release|x86
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E}.Release|x86.Build.0 = Release|x86
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|x64.ActiveCfg = Debug|x64
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|x64.Build.0 = Debug|x64
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|x86.ActiveCfg = Debug|x86
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Debug|x86.Build.0 = Debug|x86
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|x64.ActiveCfg = Release|x64
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|x64.Build.0 = Release|x64
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|x86.ActiveCfg = Release|x86
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089}.Release|x86.Build.0 = Release|x86
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|x64.ActiveCfg = Debug|x64
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|x64.Build.0 = Debug|x64
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|x86.ActiveCfg = Debug|x86
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Debug|x86.Build.0 = Debug|x86
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|x64.ActiveCfg = Release|x64
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|x64.Build.0 = Release|x64
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|x86.ActiveCfg = Release|x86
+ {6B61E75D-6B59-465A-9622-37E27F3109B0}.Release|x86.Build.0 = Release|x86
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|x64.ActiveCfg = Debug|x64
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|x64.Build.0 = Debug|x64
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|x86.ActiveCfg = Debug|x86
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Debug|x86.Build.0 = Debug|x86
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|Any CPU.Build.0 = Release|Any CPU
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|x64.ActiveCfg = Release|x64
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|x64.Build.0 = Release|x64
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|x86.ActiveCfg = Release|x86
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142}.Release|x86.Build.0 = Release|x86
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {93C490C7-854F-499C-90DA-3E96FB8E66F5} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {99BA17D3-5E96-4F0A-A02F-68F9AE500E57} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {2DB94D11-9A4C-4602-B259-D959736B0A4C} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {3618920B-E154-4CD3-9B15-8DE97362F304} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {8C22B84D-9818-4A83-B8FF-C9EAAA413E22} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {1C1C17F8-8B22-4D07-AA36-9055B0D299CE} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {8809D9DA-F928-49F3-95DF-2ABC86E0C041} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {4E0B3B69-C567-42E5-929E-AB476D6B2AE0} = {CA27A14E-1969-497C-B46B-000451E9EAEC}
+ {8C5D01A0-6F8C-48B4-BC23-CE841A5A77F3} = {CA27A14E-1969-497C-B46B-000451E9EAEC}
+ {B0A26797-EB72-4C8A-8BDF-B8B5CEB84898} = {8C5D01A0-6F8C-48B4-BC23-CE841A5A77F3}
+ {5C71E6AA-FC35-4873-9787-E390B21E15FA} = {CA27A14E-1969-497C-B46B-000451E9EAEC}
+ {8B5EF57A-07BB-4A74-9E9A-85F4ECAD7478} = {5C71E6AA-FC35-4873-9787-E390B21E15FA}
+ {076FB5F2-4618-44AB-8B86-02CF5890D42E} = {5C71E6AA-FC35-4873-9787-E390B21E15FA}
+ {8D70F2C9-4BED-4BA6-8684-F9E385BC6089} = {CA27A14E-1969-497C-B46B-000451E9EAEC}
+ {6B61E75D-6B59-465A-9622-37E27F3109B0} = {CA27A14E-1969-497C-B46B-000451E9EAEC}
+ {D72E486E-B585-4AC8-9CDC-E6AA50BD1E6D} = {E942E23C-7A77-49AF-B9BD-45473F27F148}
+ {DF75F175-4C60-41F6-8DF3-09B15EAFF142} = {D72E486E-B585-4AC8-9CDC-E6AA50BD1E6D}
+ EndGlobalSection
+EndGlobal
diff --git a/global.json b/global.json
deleted file mode 100644
index d738154..0000000
--- a/global.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "sdk": {
- "version": "1.0.0-preview2-003131"
- },
- "projects": [
- "src",
- "src/bundles",
- "test",
- "test/client",
- "test/server"
- ]
-}
\ No newline at end of file
diff --git a/migrate-report.json b/migrate-report.json
new file mode 100644
index 0000000..cba6e3d
--- /dev/null
+++ b/migrate-report.json
@@ -0,0 +1,191 @@
+// Migration invoked at the console:
+// dotnet migrate -r migrate-report.json --format-report-file-json
+//
+// Then after the migration:
+// dotnet new sln
+// dotnet sln add src\Tug.Base\Tug.Base.csproj
+// dotnet sln add src\Tug.Client\Tug.Client.csproj
+// dotnet sln add src\Tug.Server.Base\Tug.Server.Base.csproj
+// dotnet sln add src\Tug.Server\Tug.Server.csproj
+// dotnet sln add src\Tug.Server.Providers.Ps5DscHandler\Tug.Server.Providers.Ps5DscHandler.csproj
+// dotnet sln add src\Tug.Server.FaaS.AwsLambda\Tug.Server.FaaS.AwsLambda.csproj
+// dotnet sln add src\Tug.Ext-WORK\Tug.Ext-WORK.csproj
+// dotnet sln add test\Tug.UnitTesting\Tug.UnitTesting.csproj
+// dotnet sln add test\client\Tug.Client-tests\Tug.Client-tests.csproj
+// dotnet sln add test\server\Tug.Server-itests\Tug.Server-itests.csproj
+// dotnet sln add test\server\Tug.Server.FaaS.AwsLambda-tests\Tug.Server.FaaS.AwsLambda-tests.csproj
+// dotnet sln add test\Tug.Ext-tests\Tug.Ext-tests.csproj
+// dotnet sln add test\Tug.Ext-tests-aux\Tug.Ext-tests-aux.csproj
+// dotnet sln add src\bundles\Tug.Server-ps5\Tug.Server-ps5.csproj
+
+{
+ "ProjectMigrationReports": [
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\bundles\\Tug.Server-ps5",
+ "ProjectName": "Tug.Server-ps5",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\bundles\\Tug.Server-ps5\\Tug.Server-ps5.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Base",
+ "ProjectName": "Tug.Base",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Base\\Tug.Base.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server",
+ "ProjectName": "Tug.Server",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server\\Tug.Server.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.Base",
+ "ProjectName": "Tug.Server.Base",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.Base\\Tug.Server.Base.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Client",
+ "ProjectName": "Tug.Client",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Client\\Tug.Client.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Ext-WORK",
+ "ProjectName": "Tug.Ext-WORK",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Ext-WORK\\Tug.Ext-WORK.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.FaaS.AwsLambda",
+ "ProjectName": "Tug.Server.FaaS.AwsLambda",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.FaaS.AwsLambda\\Tug.Server.FaaS.AwsLambda.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.Providers.Ps5DscHandler",
+ "ProjectName": "Tug.Server.Providers.Ps5DscHandler",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\src\\Tug.Server.Providers.Ps5DscHandler\\Tug.Server.Providers.Ps5DscHandler.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\client\\Tug.Client-tests",
+ "ProjectName": "Tug.Client-tests",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\client\\Tug.Client-tests\\Tug.Client-tests.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.UnitTesting",
+ "ProjectName": "Tug.UnitTesting",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.UnitTesting\\Tug.UnitTesting.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\server\\Tug.Server-itests",
+ "ProjectName": "Tug.Server-itests",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\server\\Tug.Server-itests\\Tug.Server-itests.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\server\\Tug.Server.FaaS.AwsLambda-tests",
+ "ProjectName": "Tug.Server.FaaS.AwsLambda-tests",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\server\\Tug.Server.FaaS.AwsLambda-tests\\Tug.Server.FaaS.AwsLambda-tests.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.Ext-tests",
+ "ProjectName": "Tug.Ext-tests",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.Ext-tests\\Tug.Ext-tests.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ },
+ {
+ "ProjectDirectory": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.Ext-tests-aux",
+ "ProjectName": "Tug.Ext-tests-aux",
+ "OutputMSBuildProject": "C:\\prj\\zyborg\\Zyborg-tug\\test\\Tug.Ext-tests-aux\\Tug.Ext-tests-aux.csproj",
+ "Errors": [],
+ "Warnings": [],
+ "PreExistingCsprojDependencies": [],
+ "Skipped": false,
+ "Failed": false,
+ "Succeeded": true
+ }
+ ],
+ "MigratedProjectsCount": 14,
+ "SucceededProjectsCount": 14,
+ "FailedProjectsCount": 0,
+ "AllSucceeded": true
+}
+
+// Written on the console:
+// Summary
+// Total Projects: 14
+// Succeeded Projects: 14
+// Failed Projects: 0
+//
+// The project migration has finished. Please visit https://aka.ms/coremigration to report any issues you've encountered or ask for help.
+// Files backed up to C:\prj\zyborg\Zyborg-tug\backup\
diff --git a/src/Tug.Base/Tug.Base.csproj b/src/Tug.Base/Tug.Base.csproj
new file mode 100644
index 0000000..07c90a0
--- /dev/null
+++ b/src/Tug.Base/Tug.Base.csproj
@@ -0,0 +1,57 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ netstandard1.6;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Base
+ Tug.Base
+ $(PackageTargetFallback);portable-net45+win8
+ 1.6.1
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_CORE
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Base/project.json b/src/Tug.Base/project.json
deleted file mode 100644
index 90251a4..0000000
--- a/src/Tug.Base/project.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "Microsoft.Composition": "1.0.31",
- "Microsoft.Extensions.PlatformAbstractions": "1.1.0",
- "Microsoft.Extensions.DependencyModel": "1.1.2",
-
- "Microsoft.Extensions.Logging": "1.1.2",
- "Microsoft.Extensions.Configuration": "1.1.2",
-
- "Microsoft.AspNetCore.Mvc": "1.1.3"
- },
-
- "frameworks": {
- "netstandard1.6": {
- "buildOptions": {
- "define": [
- "DOTNET_CORE"
- ]
- },
- "imports": [
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "NETStandard.Library": "1.6.1",
- "System.Runtime.Loader": "4.3.0",
- "System.ComponentModel.Annotations": "4.3.0"
- }
- }
- ,
- "net452": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "frameworkAssemblies": {
- // These are needed here as per:
- // https://github.com/dotnet/cli/issues/3817
- "System.Numerics": "4.0.0.0",
- "System.ComponentModel.DataAnnotations": "4.0.0.0"
- },
- "dependencies": {
- }
- }
- }
-}
diff --git a/src/Tug.Client/Tug.Client.csproj b/src/Tug.Client/Tug.Client.csproj
new file mode 100644
index 0000000..ce793c0
--- /dev/null
+++ b/src/Tug.Client/Tug.Client.csproj
@@ -0,0 +1,66 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ netcoreapp1.0;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ true
+ Tug.Client
+ Exe
+ Tug.Client
+ $(PackageTargetFallback);dnxcore50;portable-net45+win8
+ 1.1.2
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_CORE
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Client/project.json b/src/Tug.Client/project.json
deleted file mode 100644
index 12c7499..0000000
--- a/src/Tug.Client/project.json
+++ /dev/null
@@ -1,79 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "emitEntryPoint": true,
- "preserveCompilationContext": true,
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "Microsoft.Extensions.Logging.Console": "1.1.2",
- "NLog.Extensions.Logging": "1.0.0-rtm-beta5",
- "Microsoft.Extensions.CommandLineUtils": "1.1.1",
- "Microsoft.Extensions.Configuration.Json": "1.1.2",
- "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.2",
- "Microsoft.Extensions.Configuration.CommandLine": "1.1.2",
- "Microsoft.Extensions.Configuration.UserSecrets": "1.1.2",
- "Microsoft.Extensions.Configuration.Binder": "1.1.2",
-
- "Newtonsoft.Json": "10.0.3",
-
- "Tug.Base": {
- "target": "project"
- }
- },
- "frameworks": {
- "netcoreapp1.0": {
- "buildOptions": {
- "define": [
- "DOTNET_CORE"
- ]
- },
- "imports": [
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- },
-
- // For System.Net.WebProxy and others
- "System.Net.Primitives": "4.3.0",
- "System.Net.NameResolution": "4.3.0",
- "System.Net.NetworkInformation": "4.3.0",
- "System.Security.Cryptography.Algorithms": "4.3.0"
- }
- },
- "net452": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "dependencies": {
-
- }
- }
- }
-}
diff --git a/src/Tug.Ext-WORK/Tug.Ext-WORK.csproj b/src/Tug.Ext-WORK/Tug.Ext-WORK.csproj
new file mode 100644
index 0000000..8a086fd
--- /dev/null
+++ b/src/Tug.Ext-WORK/Tug.Ext-WORK.csproj
@@ -0,0 +1,32 @@
+
+
+
+ Copyright © 2016 The DevOps Collective, Inc. All rights reserved. Licnesed under GNU GPL v3.
+ Tug Client
+ en-US
+ 0.5.1
+ netcoreapp1.1;net462
+ portable
+ true
+ Tug.Ext
+ Exe
+ Tug.Ext-WORK
+ $(PackageTargetFallback);dnxcore50;portable-net45+win8
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Ext-WORK/project.json b/src/Tug.Ext-WORK/project.json
deleted file mode 100644
index 22d4e1f..0000000
--- a/src/Tug.Ext-WORK/project.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "Tug.Ext", // WORK-IN-PROGRES for Extension/Provider model
- "version": "0.5.1-*",
- "copyright": "Copyright © 2016 The DevOps Collective, Inc. All rights reserved. Licnesed under GNU GPL v3.",
- "title": "Tug Client",
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "emitEntryPoint": true,
- "preserveCompilationContext": true
- },
-
- "dependencies": {
- "System.Runtime.Loader": "4.3.0",
- "Microsoft.Composition": "1.0.30",
-
- "Microsoft.Extensions.Logging": "1.0.0",
- "Microsoft.Extensions.Configuration": "1.0.0"
- },
- "frameworks": {
- "netcoreapp1.1": {
- "imports": [
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.0.1"
- }
- }
- },
- "net462": {
- "frameworkAssemblies": {
- // These are needed here as per:
- // https://github.com/dotnet/cli/issues/3817
- "System.Numerics": "4.0.0.0",
- "System.ComponentModel.DataAnnotations": "4.0.0.0"
- },
- "dependencies": {
-
- }
- }
- }
-}
diff --git a/src/Tug.Server.Base/Tug.Server.Base.csproj b/src/Tug.Server.Base/Tug.Server.Base.csproj
new file mode 100644
index 0000000..aa72bf7
--- /dev/null
+++ b/src/Tug.Server.Base/Tug.Server.Base.csproj
@@ -0,0 +1,49 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ netstandard1.6;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Server.Base
+ Tug.Server.Base
+ $(PackageTargetFallback);portable-net45+win8
+ 1.6.1
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Server.Base/project.json b/src/Tug.Server.Base/project.json
deleted file mode 100644
index b27e003..0000000
--- a/src/Tug.Server.Base/project.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "Microsoft.Extensions.Logging": "1.1.2",
- "Microsoft.Extensions.Configuration": "1.1.2",
-
- "Microsoft.AspNetCore.Mvc": "1.1.3",
-
- "Tug.Base": {
- "target": "project"
- }
-
- },
-
- "frameworks": {
- "netstandard1.6": {
- "imports": [
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "NETStandard.Library": "1.6.1",
- "System.ComponentModel.Annotations": "4.3.0"
- }
- }
- ,
- "net452": {
- "frameworkAssemblies": {
- // These are needed here as per:
- // https://github.com/dotnet/cli/issues/3817
- "System.Numerics": "4.0.0.0",
- "System.ComponentModel.DataAnnotations": "4.0.0.0"
- },
- "dependencies": {
- }
- }
- }
-}
diff --git a/src/Tug.Server.FaaS.AwsLambda/Tug.Server.FaaS.AwsLambda.csproj b/src/Tug.Server.FaaS.AwsLambda/Tug.Server.FaaS.AwsLambda.csproj
new file mode 100644
index 0000000..404bfc9
--- /dev/null
+++ b/src/Tug.Server.FaaS.AwsLambda/Tug.Server.FaaS.AwsLambda.csproj
@@ -0,0 +1,67 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ netcoreapp1.0
+ $(NoWarn);CS0169;CS0649
+ Tug.Server.FaaS.AwsLambda
+ Library
+ Tug.Server.FaaS.AwsLambda
+ 1.1.2
+ $(PackageTargetFallback);dnxcore50;portable-net45+win8
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+ PreserveNewest
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ All
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Server.FaaS.AwsLambda/project.json b/src/Tug.Server.FaaS.AwsLambda/project.json
deleted file mode 100644
index 41e99c3..0000000
--- a/src/Tug.Server.FaaS.AwsLambda/project.json
+++ /dev/null
@@ -1,99 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "emitEntryPoint": false,
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- },
-
- "Microsoft.Extensions.Configuration.Json": "1.1.2",
- "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.2",
- "Microsoft.Extensions.Configuration.FileExtensions": "1.1.2",
- "Microsoft.Extensions.Configuration.Binder": "1.1.2",
- "Microsoft.Extensions.Logging": "1.1.2",
- "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.2",
-
- // For testing out on dev-local
- "Microsoft.AspNetCore.Server.Kestrel": "1.1.2",
- "Microsoft.AspNetCore.Server.IISIntegration": "1.1.2",
-
- "Microsoft.AspNetCore.Hosting": "1.1.2",
- "Microsoft.AspNetCore.Mvc": "1.1.3",
- "Microsoft.AspNetCore.Routing": "1.1.2",
-
- "AWSSDK.Core": "3.3.14.2",
- "AWSSDK.IdentityManagement":"3.3.4",
- "AWSSDK.CloudFormation":"3.3.5.3",
- "AWSSDK.Extensions.NETCore.Setup": "3.3.1",
- "AWSSDK.DynamoDBv2": "3.3.4.13",
- "AWSSDK.S3": "3.3.7",
- "AWSSDK.CloudFront": "3.3.4.1",
- "AWSSDK.Lambda":"3.3.7",
-
- "Amazon.Lambda.Core": "1.0.0",
- "Amazon.Lambda.APIGatewayEvents": "1.1.0",
- "Amazon.Lambda.Serialization.Json": "1.1.0",
- "Amazon.Lambda.AspNetCoreServer": "0.10.2-preview1",
- "Amazon.Lambda.Logging.AspNetCore": "1.1.0",
-
- "Amazon.Lambda.Tools": {
- "type": "build",
- "version": "1.6.0"
- },
-
- "Tug.Base": {
- "target": "project"
- },
- "Tug.Server.Base": {
- "target": "project"
- }
- },
-
- "tools": {
- "Amazon.Lambda.Tools" : "1.6.0"
- },
-
- "publishOptions": {
- "include": [
- "wwwroot",
- "**/*.cshtml",
- "appsettings.json"
- ]
- },
-
- // "scripts": {
- // "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
- // },
-
- "frameworks": {
- "netcoreapp1.0": {
- "imports": [
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ]
- }
- }
-}
diff --git a/src/Tug.Server.Providers.Ps5DscHandler/Tug.Server.Providers.Ps5DscHandler.csproj b/src/Tug.Server.Providers.Ps5DscHandler/Tug.Server.Providers.Ps5DscHandler.csproj
new file mode 100644
index 0000000..6ec3eea
--- /dev/null
+++ b/src/Tug.Server.Providers.Ps5DscHandler/Tug.Server.Providers.Ps5DscHandler.csproj
@@ -0,0 +1,39 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Server.Providers.Ps5DscHandler
+ Tug.Server.Providers.Ps5DscHandler
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Tug.Server.Providers.Ps5DscHandler/project.json b/src/Tug.Server.Providers.Ps5DscHandler/project.json
deleted file mode 100644
index 9a1d58c..0000000
--- a/src/Tug.Server.Providers.Ps5DscHandler/project.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "System.Management.Automation": "6.1.7601.17515",
-
- "Tug.Server.Base": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "net452": {
- "dependencies": {
- }
- }
- }
-}
diff --git a/src/Tug.Server/Tug.Server.csproj b/src/Tug.Server/Tug.Server.csproj
new file mode 100644
index 0000000..3c05a8f
--- /dev/null
+++ b/src/Tug.Server/Tug.Server.csproj
@@ -0,0 +1,70 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ netcoreapp1.0;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Server
+ Exe
+ Tug.Server
+ $(PackageTargetFallback);dnxcore50;portable-net45+win8
+ 1.1.2
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+ PreserveNewest
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_CORE
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
diff --git a/src/Tug.Server/project.json b/src/Tug.Server/project.json
deleted file mode 100644
index 4e88c5b..0000000
--- a/src/Tug.Server/project.json
+++ /dev/null
@@ -1,124 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "emitEntryPoint": true,
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../shared/SharedAssemblyInfo.cs",
- "../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
-
- // TODO: Temporarily disabled because it causes an error at build
- // "The given key was not present in the dictionary." when we added
- // a project dependency to Tug.Core; this may not be needed if we do
- // not add Razor views to our project (needed for runtime compilation)
- //,
- //"preserveCompilationContext": true
- },
-
- "publishOptions": {
- "include": [
- "wwwroot",
- "nlog.config",
- "web.config"
- ]
- },
-
- "runtimeOptions": {
- "configProperties": {
- "System.GC.Server": true
- }
- },
-
- "tooling": {
- "defaultNamespace": "Tug.Server"
- },
-
- "tools": {
- "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
- },
-
- "scripts": {
- "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
- },
-
- "commands": {
- "web": "Microsoft.AspNet.Server.Kestrel"
- },
-
- "dependencies": {
- "Microsoft.Extensions.Logging.Console": "1.1.2",
- "NLog.Web.AspNetCore": "4.4.1",
-
- "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.2",
- "Microsoft.Extensions.Configuration.FileExtensions": "1.1.2",
- "Microsoft.Extensions.Configuration.Json": "1.1.2",
- "Microsoft.Extensions.Configuration.CommandLine": "1.1.2",
- "Microsoft.Extensions.Configuration.UserSecrets": "1.1.2",
- "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.2",
-
- "Microsoft.AspNetCore.Diagnostics": "1.1.2",
- "Microsoft.AspNetCore.Routing": "1.1.2",
- "Microsoft.AspNetCore.Mvc": "1.1.3",
-
- "Microsoft.AspNetCore.Server.IISIntegration": "1.1.2",
- "Microsoft.AspNetCore.Server.Kestrel": "1.1.2",
-
- "Tug.Base": {
- "target": "project"
- },
- "Tug.Server.Base": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "buildOptions": {
- "define": [
- "DOTNET_CORE"
- ]
- },
- "imports": [
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- // This will generate a framework-dependent deployment
- "type": "platform",
- "version": "1.1.2"
- },
- "System.Security.Cryptography.Algorithms": "4.3.0"
- }
- },
- "net452": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "dependencies": {
- // // This one is specific to .NET Framework only
- // "Tug.Server.Providers.Ps5DscHandler": {
- // "target": "project"
- // }
- }
- }
- }
-}
diff --git a/src/bundles/Tug.Server-ps5/Tug.Server-ps5.csproj b/src/bundles/Tug.Server-ps5/Tug.Server-ps5.csproj
new file mode 100644
index 0000000..fecb9b9
--- /dev/null
+++ b/src/bundles/Tug.Server-ps5/Tug.Server-ps5.csproj
@@ -0,0 +1,36 @@
+
+
+
+ en-US
+ github.com/PowerShellOrg/tug/graphs/contributors
+ net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Server-ps5
+ Tug.Server-ps5
+ false
+ false
+ false
+ false
+ false
+ false
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
+
+
+
+
+
diff --git a/src/bundles/Tug.Server-ps5/project.json b/src/bundles/Tug.Server-ps5/project.json
deleted file mode 100644
index 0bf0762..0000000
--- a/src/bundles/Tug.Server-ps5/project.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- // Assembly Manifest Details are defined in
- // AssemblyInfo.cs and SharedAssemblyInfo.cs
-
- "authors": [
- "github.com/PowerShellOrg/tug/graphs/contributors"
- ],
- "language": "en-US",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
-
- "compile": {
- "includeFiles": [
- // Include in the shared assembly manifest details
- "../../shared/SharedAssemblyInfo.cs",
- "../../shared/SharedAssemblyVersionInfo.cs"
- ]
- }
- },
-
- "dependencies": {
- "Tug.Server": {
- "target": "project"
- }
- // We don't create a direct dependency and instead pull in the
- // extension assemblies during the packaging into the EXT folder
- //,
- //"Tug.Server.Providers.Ps5DscHandler": {
- // "target": "project"
- //}
- },
-
- "frameworks": {
- "net452": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "dependencies": {}
- }
- },
-
- "commands": {
- "posh-publish": "echo hello!"
- }
-}
diff --git a/test/Tug.Ext-tests-aux/Tug.Ext-tests-aux.csproj b/test/Tug.Ext-tests-aux/Tug.Ext-tests-aux.csproj
new file mode 100644
index 0000000..d411e5f
--- /dev/null
+++ b/test/Tug.Ext-tests-aux/Tug.Ext-tests-aux.csproj
@@ -0,0 +1,23 @@
+
+
+
+ 0.5.0
+ netcoreapp1.0;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Ext-tests-aux
+ Tug.Ext-tests-aux
+ $(PackageTargetFallback);dotnet5.4;portable-net451+win8
+ 1.1.2
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/Tug.Ext-tests-aux/project.json b/test/Tug.Ext-tests-aux/project.json
deleted file mode 100644
index 5c9b51a..0000000
--- a/test/Tug.Ext-tests-aux/project.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "name": "Tug.Ext-tests-aux",
- "version": "0.5.0-*",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ]
- },
-
- "dependencies": {
- "Tug.Ext-tests": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "imports": [
- "dotnet5.4",
- "portable-net451+win8"
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- }
- }
- },
- "net452": {
- "buildOptions": {},
- "dependencies": {}
- }
- }
-}
diff --git a/test/Tug.Ext-tests/Tug.Ext-tests.csproj b/test/Tug.Ext-tests/Tug.Ext-tests.csproj
new file mode 100644
index 0000000..b20642a
--- /dev/null
+++ b/test/Tug.Ext-tests/Tug.Ext-tests.csproj
@@ -0,0 +1,43 @@
+
+
+
+ 0.5.0
+ netcoreapp1.0;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Ext-tests
+ Tug.Ext-tests
+ true
+ $(PackageTargetFallback);dotnet5.4;portable-net451+win8
+ 1.1.2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_CORE
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
+
+
+
+
+
diff --git a/test/Tug.Ext-tests/project.json b/test/Tug.Ext-tests/project.json
deleted file mode 100644
index 15ce5e6..0000000
--- a/test/Tug.Ext-tests/project.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- // This file has been adjusted from the stock xunittest project type to support MSTestv2 as per:"authors":
- // https://blogs.msdn.microsoft.com/visualstudioalm/2016/09/01/announcing-mstest-v2-framework-support-for-net-core-1-0-rtm/
-
- "name": "Tug.Ext-tests",
- "version": "0.5.0-*",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ]
- },
-
- // "testRunner": "xunit",
- "testRunner": "mstest",
-
- "dependencies": {
- // "System.Runtime.Serialization.Primitives": "4.1.1",
- // "xunit": "2.1.0",
- // "dotnet-test-xunit": "1.0.0-rc2-192208-24"
-
- "Microsoft.Extensions.Logging": "1.1.2",
-
- "dotnet-test-mstest": "1.1.2-preview",
- "MSTest.TestFramework": "1.1.18",
-
- // Assemblies under test
- "Tug.Base": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "buildOptions": {
- "define": [
- "DOTNET_CORE"
- ]
- },
- "imports": [
- "dotnet5.4",
- "portable-net451+win8"
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- },
- "System.Runtime.Loader": "4.3.0"
- }
- },
- "net452": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "dependencies": {}
- }
- }
-}
diff --git a/test/Tug.UnitTesting/Tug.UnitTesting.csproj b/test/Tug.UnitTesting/Tug.UnitTesting.csproj
new file mode 100644
index 0000000..1fc006a
--- /dev/null
+++ b/test/Tug.UnitTesting/Tug.UnitTesting.csproj
@@ -0,0 +1,22 @@
+
+
+
+ netcoreapp1.0;net452
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.UnitTesting
+ Tug.UnitTesting
+ $(PackageTargetFallback);dotnet5.4;portable-net451+win8
+ 1.1.2
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/Tug.UnitTesting/project.json b/test/Tug.UnitTesting/project.json
deleted file mode 100644
index 5a6dc5e..0000000
--- a/test/Tug.UnitTesting/project.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "version": "1.0.0-*",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ]
- },
-
- "dependencies": {
- "dotnet-test-mstest": "1.1.2-preview",
- "MSTest.TestFramework": "1.1.11"
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- }
- },
- "imports": [
- "dotnet5.4",
- "portable-net451+win8"
- ]
- },
- "net452": {
- }
- }
-}
diff --git a/test/client/Tug.Client-tests/ProtocolCompatibilityTestsBase.cs b/test/client/Tug.Client-tests/ProtocolCompatibilityTestsBase.cs
index d681d76..30ad1a5 100644
--- a/test/client/Tug.Client-tests/ProtocolCompatibilityTestsBase.cs
+++ b/test/client/Tug.Client-tests/ProtocolCompatibilityTestsBase.cs
@@ -10,6 +10,8 @@ namespace Tug.Client
{
public class ProtocolCompatibilityTestsBase
{
+ public const string TestConfigEnvPrefix = "TSTCFG_";
+
// This defines configuration settings for running the
// the tests that can be overridden on the command line
// by using the format: /cfg_prop=value
@@ -50,12 +52,20 @@ protected static void ClassInit(TestContext ctx)
// which may be useful in debugging and diagnostics
Tug.Client.AppLog.Factory.AddConsole(LogLevel.Information);
- // Bind optional configuration overrides to our test config
- new ConfigurationBuilder()
- .AddCommandLine(Environment.GetCommandLineArgs()
- .Where(x => x.StartsWith("/")).ToArray())
- .Build()
- .Bind(_testConfig);
+ // // Bind optional configuration overrides to our test config
+ // new ConfigurationBuilder()
+ // .AddCommandLine(Environment.GetCommandLineArgs()
+ // .Where(x => x.StartsWith("/")).ToArray())
+ // .Build()
+ // .Bind(_testConfig);
+
+ // Bind optional configuration overrides from env vars to our test config
+ var cfg = new ConfigurationBuilder()
+ .AddEnvironmentVariables(TestConfigEnvPrefix)
+ .Build();
+ foreach (var kv in cfg.AsEnumerable())
+ Console.WriteLine($"TestConfig Override[{kv.Key}]=[{kv.Value}]");
+ cfg.Bind(_testConfig);
}
protected static DscPullConfig BuildConfig(bool newAgentId = false)
diff --git a/test/client/Tug.Client-tests/Tug.Client-tests.csproj b/test/client/Tug.Client-tests/Tug.Client-tests.csproj
new file mode 100644
index 0000000..55fdc33
--- /dev/null
+++ b/test/client/Tug.Client-tests/Tug.Client-tests.csproj
@@ -0,0 +1,26 @@
+
+
+
+ netcoreapp1.0
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Client-tests
+ Tug.Client-tests
+ true
+ $(PackageTargetFallback);dotnet5.4;portable-net451+win8
+ 1.1.2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/client/Tug.Client-tests/project.json b/test/client/Tug.Client-tests/project.json
deleted file mode 100644
index 39a82e6..0000000
--- a/test/client/Tug.Client-tests/project.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "version": "1.0.0-*",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ]
- },
-
-//"testRunner": "xunit",
- "testRunner": "mstest",
-
- "dependencies": {
- "System.Runtime.Serialization.Primitives": "4.3.0",
-
- //"xunit": "2.1.0",
- //"dotnet-test-xunit": "1.0.0-rc2-build10025",
-
- "dotnet-test-mstest": "1.1.2-preview",
- "MSTest.TestFramework": "1.1.11",
-
- // Assemblies with additional test support
- "Tug.UnitTesting": {
- "target": "project"
- },
-
- // Assemblies under test
- "Tug.Client": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- }
- },
- "imports": [
- "dotnet5.4",
- "portable-net451+win8"
- ]
- }
- }
-}
diff --git a/test/client/Tug.Client-tests/test-localhost5000.cmd b/test/client/Tug.Client-tests/test-localhost5000.cmd
index e741812..e35e9de 100644
--- a/test/client/Tug.Client-tests/test-localhost5000.cmd
+++ b/test/client/Tug.Client-tests/test-localhost5000.cmd
@@ -2,9 +2,20 @@
@SET THIS=%0
@SET THIS_DIR=%~dp0
+@FOR %%* IN (.) DO @SET THIS_PROJ=%%~nx*
+
@ECHO THIS=%THIS%
@ECHO THIS_DIR=%THIS_DIR%
+@ECHO THIS_PROJ=%THIS_PROJ%
+@ECHO.
+
+@REM TSTCFG_-prefixed env vars are used to convey test params
+@SET TSTCFG_adjust_for_wmf_50=false
+@SET TSTCFG_server_url=http://localhost:5000/
+
+@ECHO *** REMEMBER - WE'RE SKIPPING THE BUILD ***
+dotnet test %THIS_DIR%%THIS_PROJ%.csproj --no-build %*
-dotnet test %THIS_DIR% %* -- /server_url=http://localhost:5000/ -- /adjust_for_wmf_50=false
+@REM dotnet test %THIS_DIR% %* -- /server_url=http://localhost:5000/ -- /adjust_for_wmf_50=false
@ENDLOCAL
diff --git a/test/run-net452-ps5/tug.cmd b/test/run-net452-ps5/tug.cmd
index 494c865..4b919d7 100644
--- a/test/run-net452-ps5/tug.cmd
+++ b/test/run-net452-ps5/tug.cmd
@@ -6,8 +6,9 @@
@ECHO THIS_DIR=%THIS_DIR%
@SET PROJ_ROOT=%THIS_DIR%..\..\src\Tug.Server
+@SET PROJ_FILE=%PROJ_ROOT%\Tug.Server.csproj
@SET DOTNET_MONIK=-f net452
-dotnet run -p %PROJ_ROOT% %DOTNET_MONIK% -- %*
+dotnet run -p %PROJ_FILE% %DOTNET_MONIK% -- %*
@ENDLOCAL
diff --git a/test/run-net452/tug.cmd b/test/run-net452/tug.cmd
index 494c865..4b919d7 100644
--- a/test/run-net452/tug.cmd
+++ b/test/run-net452/tug.cmd
@@ -6,8 +6,9 @@
@ECHO THIS_DIR=%THIS_DIR%
@SET PROJ_ROOT=%THIS_DIR%..\..\src\Tug.Server
+@SET PROJ_FILE=%PROJ_ROOT%\Tug.Server.csproj
@SET DOTNET_MONIK=-f net452
-dotnet run -p %PROJ_ROOT% %DOTNET_MONIK% -- %*
+dotnet run -p %PROJ_FILE% %DOTNET_MONIK% -- %*
@ENDLOCAL
diff --git a/test/server/Tug.Server-itests/Tug.Server-itests.csproj b/test/server/Tug.Server-itests/Tug.Server-itests.csproj
new file mode 100644
index 0000000..cc2d27c
--- /dev/null
+++ b/test/server/Tug.Server-itests/Tug.Server-itests.csproj
@@ -0,0 +1,64 @@
+
+
+
+ netcoreapp1.0;net462
+ $(NoWarn);CS0169;CS0649
+ portable
+ Tug.Server-itests
+ Tug.Server-itests
+ true
+ $(PackageTargetFallback);dotnet5.4;portable-net451+win8;dnxcore50;portable-net45+win8
+ 1.1.2
+
+
+
+
+
+
+ true
+ true
+
+
+
+
+ PreserveNewest
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(DefineConstants);DOTNET_CORE
+
+
+
+ $(DefineConstants);DOTNET_FRAMEWORK
+
+
+
+
+
+
+
+
diff --git a/test/server/Tug.Server-itests/project.json b/test/server/Tug.Server-itests/project.json
deleted file mode 100644
index b2fd83f..0000000
--- a/test/server/Tug.Server-itests/project.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "version": "1.0.0-*",
-
- "buildOptions": {
- "debugType": "portable",
- "nowarn": [
- "CS0169", // The field 'X' is never used
- "CS0649" // Field 'X' is never assigned to, and will always have its default value null
- ],
- "copyToOutput": {
- "include": [
- "appsettings.json",
- "nlog.config",
- // Copy over the root structure supporting the Basic
- // Pull Handler which has some pre-defined assets to support
- // unit tests such as Configuration MOFs and Module packages
- "BasicPullHandlerRoot"
- ]
- }
- },
-
-//"testRunner": "xunit",
- "testRunner": "mstest",
-
- "dependencies": {
- "System.Runtime.Serialization.Primitives": "4.3.0",
-
- //"xunit": "2.1.0",
- //"dotnet-test-xunit": "1.0.0-rc2-build10025",
-
- "dotnet-test-mstest": "1.1.2-preview",
- "MSTest.TestFramework": "1.1.11",
-
- // ASP.NET Core Test Host
- "Microsoft.AspNetCore.TestHost": "1.1.2",
-
- // Assemblies with additional test support
- "Tug.UnitTesting": {
- "target": "project"
- },
-
- // Assemblies under test
- "Tug.Server": {
- "target": "project"
- },
-
- // Support assemblies
- "Tug.Client": {
- "target": "project"
- }
- },
-
- "frameworks": {
- "netcoreapp1.0": {
- "buildOptions": {
- "define": [
- "DOTNET_CORE"
- ]
- },
- "imports": [
- "dotnet5.4",
- "portable-net451+win8",
-
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ],
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- },
- "System.Security.Cryptography.Algorithms": "4.3.0"
- }
- },
- "net462": {
- "buildOptions": {
- "define": [
- "DOTNET_FRAMEWORK"
- ]
- },
- "dependencies": {
- // // This one is specific to .NET Framework only
- // "Tug.Server.Providers.Ps5DscHandler": {
- // "target": "project"
- // }
- }
- }
- }
-}
diff --git a/test/server/Tug.Server-itests/test-framework-net462.cmd b/test/server/Tug.Server-itests/test-framework-net462.cmd
index ce10dac..3fe7baf 100644
--- a/test/server/Tug.Server-itests/test-framework-net462.cmd
+++ b/test/server/Tug.Server-itests/test-framework-net462.cmd
@@ -2,9 +2,14 @@
@SET THIS=%0
@SET THIS_DIR=%~dp0
+@FOR %%* IN (.) DO @SET THIS_PROJ=%%~nx*
+
@ECHO THIS=%THIS%
@ECHO THIS_DIR=%THIS_DIR%
+@ECHO THIS_PROJ=%THIS_PROJ%
+@ECHO.
-dotnet test %THIS_DIR% %* -f net462 %*
+@ECHO *** REMEMBER - WE'RE SKIPPING THE BUILD ***
+dotnet test %THIS_DIR%%THIS_PROJ%.csproj --no-build -f net462 %*
@ENDLOCAL
diff --git a/test/server/Tug.Server.FaaS.AwsLambda-tests/Tug.Server.FaaS.AwsLambda-tests.csproj b/test/server/Tug.Server.FaaS.AwsLambda-tests/Tug.Server.FaaS.AwsLambda-tests.csproj
new file mode 100644
index 0000000..9a98338
--- /dev/null
+++ b/test/server/Tug.Server.FaaS.AwsLambda-tests/Tug.Server.FaaS.AwsLambda-tests.csproj
@@ -0,0 +1,26 @@
+
+
+
+ netcoreapp1.0
+ Tug.Server.FaaS.AwsLambda-tests
+ Tug.Server.FaaS.AwsLambda-tests
+ true
+ 1.1.2
+ $(PackageTargetFallback);dnxcore50;portable-net45+win8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/test/server/Tug.Server.FaaS.AwsLambda-tests/project.json b/test/server/Tug.Server.FaaS.AwsLambda-tests/project.json
deleted file mode 100644
index bd79fe3..0000000
--- a/test/server/Tug.Server.FaaS.AwsLambda-tests/project.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "version": "1.0.0-*",
- "buildOptions": {
- },
-
- "dependencies": {
- "Microsoft.NETCore.App": {
- "type": "platform",
- "version": "1.1.2"
- },
-
- "Microsoft.DotNet.InternalAbstractions": "1.0.0",
-
- "Amazon.Lambda.Core": "1.0.0*",
- "Amazon.Lambda.APIGatewayEvents": "1.1.0",
- "Amazon.Lambda.TestUtilities": "1.0.0",
-
- "xunit": "2.2.0-*",
- "dotnet-test-xunit": "2.2.0-*",
-
- "Tug.Server.FaaS.AwsLambda": {
- "target": "project"
- }
- },
-
- "testRunner": "xunit",
-
- "frameworks": {
- "netcoreapp1.0": {
- "imports": [
- "dnxcore50",
- "portable-net45+win8" // Needed to include MEF2
- ]
- }
- }
-}