Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        /// <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));
        }