aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Web/Tango.MachineService
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Web/Tango.MachineService')
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Controllers/MachineStudioController.cs21
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Controllers/PPCController.cs23
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Models/MachineStudioPendingUpload.cs4
-rw-r--r--Software/Visual_Studio/Web/Tango.MachineService/Models/PPCPendingUpload.cs2
4 files changed, 37 insertions, 13 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();
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Models/MachineStudioPendingUpload.cs b/Software/Visual_Studio/Web/Tango.MachineService/Models/MachineStudioPendingUpload.cs
index e537d7d44..871f926d6 100644
--- a/Software/Visual_Studio/Web/Tango.MachineService/Models/MachineStudioPendingUpload.cs
+++ b/Software/Visual_Studio/Web/Tango.MachineService/Models/MachineStudioPendingUpload.cs
@@ -15,8 +15,8 @@ namespace Tango.MachineService.Models
public String Comments { get; set; }
- public String FilePath { get; set; }
-
public String BlobName { get; set; }
+
+ public String InstallerBlobName { get; set; }
}
} \ No newline at end of file
diff --git a/Software/Visual_Studio/Web/Tango.MachineService/Models/PPCPendingUpload.cs b/Software/Visual_Studio/Web/Tango.MachineService/Models/PPCPendingUpload.cs
index 10797e758..b97d8b6c8 100644
--- a/Software/Visual_Studio/Web/Tango.MachineService/Models/PPCPendingUpload.cs
+++ b/Software/Visual_Studio/Web/Tango.MachineService/Models/PPCPendingUpload.cs
@@ -18,5 +18,7 @@ namespace Tango.MachineService.Models
public String MachineVersionGuid { get; set; }
public String BlobName { get; set; }
+
+ public String InstallerBlobName { get; set; }
}
} \ No newline at end of file