示例#1
0
            public async Task <CreatedProject> Create()
            {
                await _fixture.Handle(_request);

                using var scope = _fixture.BeginDbContextScope();

                var dbContext = scope.Resolve <SheepItDbContext>();

                return(new CreatedProject
                {
                    Id = _request.ProjectId,

                    Environments = await dbContext
                                   .Environments
                                   .FromProject(_request.ProjectId)
                                   .Select(environment => new CreatedEnvironment
                    {
                        Id = environment.Id,
                        Name = environment.DisplayName
                    })
                                   .ToArrayAsync(),

                    Components = await dbContext
                                 .Components
                                 .FromProject(_request.ProjectId)
                                 .Select(component => new CreatedComponent
                    {
                        Id = component.Id,
                        Name = component.Name
                    })
                                 .ToArrayAsync()
                });
            }
示例#2
0
            public async Task <CreatedPackage> Create()
            {
                if (_request.VariableUpdates == null)
                {
                    _request.VariableUpdates = await GetLastPackageVariables();
                }

                using var scope = _fixture.BeginDbContextScope();

                var createPackageHandler = scope.Resolve <SheepIt.Api.PublicApi.Packages.CreatePackageHandler>();

                var createPackageResponse = await createPackageHandler.Handle(_projectId, _componentId, _request);

                return(new CreatedPackage
                {
                    Id = createPackageResponse.CreatedPackageId,
                    Description = _request.Description
                });
            }