From fef2dc5c5628ba7c4f24a645abb4a61c113ea55d Mon Sep 17 00:00:00 2001 From: Daniel Valadas Date: Tue, 24 Dec 2019 09:36:36 -0500 Subject: [PATCH 1/3] Removes hardcoded tools version --- Build/Cake/compiling.cake | 1 - 1 file changed, 1 deletion(-) diff --git a/Build/Cake/compiling.cake b/Build/Cake/compiling.cake index 683d660c872..600b05605d5 100644 --- a/Build/Cake/compiling.cake +++ b/Build/Cake/compiling.cake @@ -8,7 +8,6 @@ Task("Build") { var buildSettings = new MSBuildSettings() .SetConfiguration(configuration) - .UseToolVersion(MSBuildToolVersion.VS2017) .SetPlatformTarget(PlatformTarget.MSIL) .WithTarget("Rebuild") .SetMaxCpuCount(4); From fcb4fdc55f841681161a9417fd926dd0fb34c478 Mon Sep 17 00:00:00 2001 From: Daniel Valadas Date: Tue, 24 Dec 2019 11:12:59 -0500 Subject: [PATCH 2/3] Automates sqlDataProvider generation --- Build/Cake/ci.cake | 1 + Build/Cake/packaging.cake | 44 ++++++++++++++++++++++++++++++++++++++- Build/Cake/version.cake | 13 ++++++++++++ 3 files changed, 57 insertions(+), 1 deletion(-) diff --git a/Build/Cake/ci.cake b/Build/Cake/ci.cake index 0923662f7b5..f39f1de7e47 100644 --- a/Build/Cake/ci.cake +++ b/Build/Cake/ci.cake @@ -8,4 +8,5 @@ Task("BuildAll") .IsDependentOn("CreateNugetPackages") .Does(() => { + RevertSqlDataProvider(); }); diff --git a/Build/Cake/packaging.cake b/Build/Cake/packaging.cake index b21d1c9168b..29377d921d4 100644 --- a/Build/Cake/packaging.cake +++ b/Build/Cake/packaging.cake @@ -10,6 +10,8 @@ public class PackagingPatterns { PackagingPatterns packagingPatterns; +var sqlDataProviderExists = false; + Task("PreparePackaging") .IsDependentOn("CopyWebsite") .IsDependentOn("Build") @@ -26,7 +28,8 @@ Task("PreparePackaging") Task("CopyWebsite") .IsDependentOn("CleanWebsite") - .Does(() => + .IsDependentOn("GenerateSqlDataProvider") + .Does(() => { CopyFiles(GetFiles("./DNN Platform/Website/**/*"), websiteFolder, true); }); @@ -107,3 +110,42 @@ Task("CreateSymbols") var resFile = Dnn.CakeUtils.Compression.ZipToBytes(websiteFolder.TrimEnd('/'), files); Dnn.CakeUtils.Compression.AddBinaryFileToZip(packageZip, resFile, "Resources.zip", true); }); + +Task("GenerateSqlDataProvider") + .IsDependentOn("SetVersion") + .IsDependentOn("CopyWebsite") + .Does(() => { + var fileName = GetTwoDigitsVersionNumber() + ".SqlDataProvider"; + var filePath = "./Dnn Platform/Website/Providers/DataProviders/SqlDataProvider/" + fileName; + if (System.IO.File.Exists(filePath)) + { + sqlDataProviderExists = true; + return; + } + sqlDataProviderExists = false; + + using (System.IO.StreamWriter file = + new System.IO.StreamWriter(filePath, true)) + { + file.WriteLine("/************************************************************/"); + file.WriteLine("/***** SqlDataProvider *****/"); + file.WriteLine("/***** *****/"); + file.WriteLine("/***** *****/"); + file.WriteLine("/***** Note: To manually execute this script you must *****/"); + file.WriteLine("/***** perform a search and replace operation *****/"); + file.WriteLine("/***** for {databaseOwner} and {objectQualifier} *****/"); + file.WriteLine("/***** *****/"); + file.WriteLine("/************************************************************/"); + } + }); + +private void RevertSqlDataProvider(){ + var fileName = GetTwoDigitsVersionNumber() + ".SqlDataProvider"; + var filePath = "./Dnn Platform/Website/Providers/DataProviders/SqlDataProvider/" + fileName; + if (!sqlDataProviderExists && System.IO.File.Exists(filePath)) + { + System.IO.File.Delete(filePath); + } +} + + diff --git a/Build/Cake/version.cake b/Build/Cake/version.cake index 826b524fa76..9232fcba338 100644 --- a/Build/Cake/version.cake +++ b/Build/Cake/version.cake @@ -60,6 +60,19 @@ public string GetBuildNumber() return buildNumber; } +public string GetTwoDigitsVersionNumber(){ + var fullVer = GetBuildNumber().Split('-')[0]; // Gets rid of the -unstable, -beta, etc. + var numbers = fullVer.Split('.'); + for (int i=0; i < numbers.Length; i++) + { + if (numbers[i].Length < 2) + { + numbers[i] = "0" + numbers[i]; + } + } + return String.Join(".", numbers); + } + public string GetProductVersion() { return productVersion; From 917a29880e30c9035801cbbf12e6b66ce3a713fe Mon Sep 17 00:00:00 2001 From: Daniel Valadas Date: Tue, 24 Dec 2019 11:34:45 -0500 Subject: [PATCH 3/3] Corrected circular dependency --- Build/Cake/packaging.cake | 1 - 1 file changed, 1 deletion(-) diff --git a/Build/Cake/packaging.cake b/Build/Cake/packaging.cake index 29377d921d4..027e314f8bd 100644 --- a/Build/Cake/packaging.cake +++ b/Build/Cake/packaging.cake @@ -113,7 +113,6 @@ Task("CreateSymbols") Task("GenerateSqlDataProvider") .IsDependentOn("SetVersion") - .IsDependentOn("CopyWebsite") .Does(() => { var fileName = GetTwoDigitsVersionNumber() + ".SqlDataProvider"; var filePath = "./Dnn Platform/Website/Providers/DataProviders/SqlDataProvider/" + fileName;