Ejemplo n.º 1
0
        public async Task <IActionResult> CreateAsync([FromBody] string engineId)
        {
            Engine engine = await _engines.GetAsync(engineId);

            if (engine == null)
            {
                return(StatusCode(StatusCodes.Status422UnprocessableEntity));
            }
            if (!await AuthorizeAsync(engine, Operations.Update))
            {
                return(StatusCode(StatusCodes.Status403Forbidden));
            }

            Build build = await _engineService.StartBuildAsync(engine.Id);

            if (build == null)
            {
                return(StatusCode(StatusCodes.Status422UnprocessableEntity));
            }
            BuildDto dto = CreateDto(build);

            return(Created(dto.Href, dto));
        }