diff options
| author | Roy <Roy.mail.net@gmail.com> | 2022-10-28 01:53:10 +0300 |
|---|---|---|
| committer | Roy <Roy.mail.net@gmail.com> | 2022-10-28 01:53:10 +0300 |
| commit | 6cfab959098ae0bd78aad7a3e69c20eda31da2a9 (patch) | |
| tree | eb76a9e754112ce67b20998216802d997d5f70e7 /Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs | |
| parent | 00bed963c45e4de37a6e688c59e0ecc2964d0a11 (diff) | |
| download | Tango-6cfab959098ae0bd78aad7a3e69c20eda31da2a9.tar.gz Tango-6cfab959098ae0bd78aad7a3e69c20eda31da2a9.zip | |
Azure Utils for Twine Studio.
Diffstat (limited to 'Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs')
| -rw-r--r-- | Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs b/Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs index 2a94e95b0..836e66c9f 100644 --- a/Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs +++ b/Software/Visual_Studio/Azure/Tango.AzureUtils/Database/DatabaseManager.cs @@ -14,6 +14,7 @@ using Microsoft.Azure.Management.Sql.Fluent; using Microsoft.Azure.Management.Sql.Fluent.Models; using Tango.BL; using Tango.BL.Entities; +using Tango.BL.Enumerations; using Tango.Core; using Tango.Core.DB; using Tango.Core.Helpers; @@ -243,13 +244,13 @@ namespace Tango.AzureUtils.Database } } - public async Task UpgradeFSEVersion(IWebAppBase sourceApp, IWebAppBase targetApp) + public async Task UpgradeFSEVersion(IWebAppBase sourceApp, IWebAppBase targetApp, FSEBuildVariants build) { - var latestFSEVersion = await GetLatestFSEVersion(sourceApp); + var latestFSEVersion = await GetLatestFSEVersion(sourceApp, build); var targetDataSource = (await targetApp.GetMachineServiceSettingsAsync()).ToDataSource(); - OnProgress(AzureUtilsStage.Database, $"Adding FSE database entry for version '{latestFSEVersion.Version}'..."); + OnProgress(AzureUtilsStage.Database, $"Adding {build} database entry for version '{latestFSEVersion.Version}'..."); using (var db = ObservablesContext.CreateDefault(targetDataSource)) { @@ -352,9 +353,9 @@ namespace Tango.AzureUtils.Database } } - public async Task<FseVersion> GetLatestFSEVersion(IWebAppBase app) + public async Task<FseVersion> GetLatestFSEVersion(IWebAppBase app, FSEBuildVariants build) { - OnProgress(AzureUtilsStage.Database, $"Getting latest FSE version on '{app.Name}'..."); + OnProgress(AzureUtilsStage.Database, $"Getting latest {build} version on '{app.Name}'..."); MachineServiceSettings settings = null; @@ -373,7 +374,7 @@ namespace Tango.AzureUtils.Database using (var db = ObservablesContext.CreateDefault(dataSource)) { - var versions = await db.FseVersions.ToListAsync(); + var versions = await db.FseVersions.Where(x => x.BuildVariant == (int)build).ToListAsync(); var latest_version = versions.OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault(); return latest_version; } @@ -432,27 +433,27 @@ namespace Tango.AzureUtils.Database } } - public async Task ValidateFSEDatabaseUpgrade(IWebAppBase sourceApp, IWebAppBase targetApp) + public async Task ValidateFSEDatabaseUpgrade(IWebAppBase sourceApp, IWebAppBase targetApp, FSEBuildVariants build) { - OnProgress(AzureUtilsStage.Validating, "Validating FSE database upgrade..."); + OnProgress(AzureUtilsStage.Validating, $"Validating {build} database upgrade..."); var sourceSettings = await sourceApp.GetMachineServiceSettingsAsync(); var targetSettings = await targetApp.GetMachineServiceSettingsAsync(); - var latestSourceFSEVersion = await GetLatestFSEVersion(sourceApp); + var latestSourceFSEVersion = await GetLatestFSEVersion(sourceApp, build); //Check if there is any source FSE version. if (latestSourceFSEVersion == null) { - throw new ValidationException("Could not locate a FSE version entry on the source database."); + throw new ValidationException($"Could not locate a {build} version entry on the source database."); } - var latestTargetFSEVersion = await GetLatestFSEVersion(targetApp); + var latestTargetFSEVersion = await GetLatestFSEVersion(targetApp, build); //Check target latest FSE version is older if there is any. if (latestTargetFSEVersion != null && Version.Parse(latestSourceFSEVersion.Version) <= Version.Parse(latestTargetFSEVersion.Version)) { - throw new ValidationException($"FSE source version is '{latestSourceFSEVersion.Version}' while target version is '{latestTargetFSEVersion.Version}'."); + throw new ValidationException($"{build} source version is '{latestSourceFSEVersion.Version}' while target version is '{latestTargetFSEVersion.Version}'."); } } |
