aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Web/Tango.MachineService/Controllers
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2019-02-25 18:18:35 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2019-02-25 18:18:35 +0200
commite112866a2cf44ddeb5b40e8ffc84614ecfe6abdf (patch)
tree48614b95fe9e3d549a465a7b381f432c21a0fef8 /Software/Visual_Studio/Web/Tango.MachineService/Controllers
parent08d9858ecd0d4adb0c9c6076d7d2b1216e8f64c3 (diff)
downloadTango-e112866a2cf44ddeb5b40e8ffc84614ecfe6abdf.tar.gz
Tango-e112866a2cf44ddeb5b40e8ffc84614ecfe6abdf.zip
Implemented auto installer release for machine studio and PPC.
Diffstat (limited to 'Software/Visual_Studio/Web/Tango.MachineService/Controllers')
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs21
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs23
2 files changed, 33 insertions, 11 deletions
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs
index 1a66d0fe6..b718887af 100644
--- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs
+++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs
@@ -162,11 +162,11 @@ namespace Tango.MachineService.Controllers
if (user != null && user.HasPermission(Permissions.PublishMachineStudioVersions))
{
var latestVersion = db.MachineStudioVersions.ToList().OrderByDescending(x => Version.Parse(x.Version)).FirstOrDefault();
- Version currentVersion = Version.Parse(request.Version);
+ Version local_version = Version.Parse(request.Version);
- if (latestVersion == null || currentVersion > Version.Parse(latestVersion.Version))
+ if (latestVersion == null || local_version > Version.Parse(latestVersion.Version))
{
- String newVersionFileName = "Machine Studio Version" + " " + currentVersion.ToString() + ".zip";
+ String newVersionFileName = "Machine Studio v" + local_version.ToString() + ".zip";
var manager = new BlobStorageManager();
var container = manager.GetContainer(MachineServiceConfig.MACHINE_STUDIO_VERSIONS_CONTAINER);
@@ -175,14 +175,24 @@ namespace Tango.MachineService.Controllers
response.Token = Guid.NewGuid().ToString();
response.BlobAddress = blob.GenerateWriteSignature(TimeSpan.FromMinutes(30));
- _pendingUploads.Add(new MachineStudioPendingUpload()
+ MachineStudioPendingUpload pending_upload = new MachineStudioPendingUpload()
{
UserGuid = user.Guid,
Comments = request.Comments,
Token = response.Token,
Version = request.Version,
BlobName = blob.Name,
- });
+ };
+
+ if (request.WithInstaller)
+ {
+ String installerVersionFileName = "Machine Studio v" + local_version.ToString() + ".exe";
+ var installerBlob = container.CreateEmptyBlob(installerVersionFileName);
+ response.InstallerBlobAddress = installerBlob.GenerateWriteSignature(TimeSpan.FromMinutes(30));
+ pending_upload.InstallerBlobName = installerBlob.Name;
+ }
+
+ _pendingUploads.Add(pending_upload);
}
else
{
@@ -220,6 +230,7 @@ namespace Tango.MachineService.Controllers
{
Comments = upload.Comments,
BlobName = upload.BlobName,
+ InstallerBlobName = upload.InstallerBlobName,
UserGuid = upload.UserGuid,
Version = upload.Version,
});
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs
index b937afbb0..a2016d4e0 100644
--- a/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs
+++ b/Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs
@@ -325,11 +325,11 @@ namespace Tango.MachineService.Controllers
latestVersion = versions.FirstOrDefault();
}
- Version currentVersion = Version.Parse(request.Version);
+ Version local_version = Version.Parse(request.Version);
- if (currentVersion > Version.Parse(latestVersion.Version))
+ if (local_version > Version.Parse(latestVersion.Version))
{
- String newVersionFileName = $"{machine_version.Name} - Tango Version {currentVersion.ToString()}.tup";
+ String newVersionFileName = $"{machine_version.Name} - Tango Version {local_version.ToString()}.tup";
var manager = new BlobStorageManager();
var container = manager.GetContainer(MachineServiceConfig.TANGO_VERSIONS_CONTAINER);
@@ -338,7 +338,7 @@ namespace Tango.MachineService.Controllers
response.Token = Guid.NewGuid().ToString();
response.BlobAddress = blob.GenerateWriteSignature(TimeSpan.FromMinutes(30));
- _pendingUploads.Add(new PPCPendingUpload()
+ PPCPendingUpload pending_upload = new PPCPendingUpload()
{
UserGuid = user.Guid,
Comments = request.Comments,
@@ -346,7 +346,17 @@ namespace Tango.MachineService.Controllers
Version = request.Version,
BlobName = blob.Name,
MachineVersionGuid = request.MachineVersionGuid,
- });
+ };
+
+ if (request.WithInstaller)
+ {
+ String installerVersionFileName = Path.ChangeExtension(newVersionFileName, ".exe");
+ var installerBlob = container.CreateEmptyBlob(installerVersionFileName);
+ response.InstallerBlobAddress = installerBlob.GenerateWriteSignature(TimeSpan.FromMinutes(30));
+ pending_upload.InstallerBlobName = installerBlob.Name;
+ }
+
+ _pendingUploads.Add(pending_upload);
}
else
{
@@ -378,9 +388,10 @@ namespace Tango.MachineService.Controllers
{
Comments = upload.Comments,
BlobName = upload.BlobName,
+ InstallerBlobName = upload.InstallerBlobName,
UserGuid = upload.UserGuid,
Version = upload.Version,
- MachineVersionGuid = upload.MachineVersionGuid
+ MachineVersionGuid = upload.MachineVersionGuid,
});
db.SaveChanges();