public async Task <IActionResult> Launch([FromBody] LaunchInstanceConfiguration instanceConfiguration) { var systemVolume = await volumeDataSource.GetVolume(instanceConfiguration.SystemVolumeId); if (systemVolume == null) { return(BadRequest($"Cannot find a system volume {instanceConfiguration.SystemVolumeId}")); } foreach (var volumeId in instanceConfiguration.DataVolumeIds) { var dataVolume = await volumeDataSource.GetVolume(volumeId); if (dataVolume == null) { return(BadRequest($"Cannot find a data volume {volumeId}")); } } var resp = await instanceDataSource.LaunchAsync(instanceConfiguration); return(Ok(resp)); }
/// <summary> /// Launch instance from configuration request /// </summary> /// <param name="request">Configuration request</param> /// <param name="context">ServerCallContext</param> /// <returns></returns> public override async Task <InstanceGrpc> Launch(LaunchInstanceRequest request, ServerCallContext context) { string userId = identityService.GetUserIdentity(); return(await instanceDataSource.LaunchAsync(request, userId)); }