/// <inheritdoc/> public async Task <ReleaseEntity> CreateAsync(ReleaseEntity release) { release.PopulateBaseProperties(_org, _app, _httpContext); await ValidateUniquenessOfRelease(release); QueueBuildParameters queueBuildParameters = new QueueBuildParameters { AppCommitId = release.TargetCommitish, AppOwner = release.Org, AppRepo = release.App, TagName = release.TagName }; Build queuedBuild = await _azureDevOpsBuildClient.QueueAsync( queueBuildParameters, _azureDevOpsSettings.BuildDefinitionId); release.Build = new BuildEntity { Id = queuedBuild.Id.ToString(), Status = queuedBuild.Status, Result = BuildResult.None, Started = queuedBuild.StartTime }; return(await _releaseRepository.Create(release)); }
public async Task Seed(bool isIntegrationTest) { bool removeIdsSoValuesCanBeGenerated = !isIntegrationTest; foreach (var label in TestDataGraph.Labels.LabelsRaw) { if (removeIdsSoValuesCanBeGenerated) { label.LabelId = 0; } await _labelRepository.Create(label); } foreach (var artist in TestDataGraph.Artists.ArtistsRaw) { if (removeIdsSoValuesCanBeGenerated) { artist.ArtistId = 0; } await _artistRepository.Create(artist); } foreach (var release in TestDataGraph.Releases.ReleasesRaw) { if (removeIdsSoValuesCanBeGenerated) { release.ReleaseId = 0; } await _releaseRepository.Create(release); } }
public async Task <IActionResult> Create([Bind("ReleaseId,Title,YearReleased,ReleasedOn,LabelId,IsByVariousArtists,ArtistId")] Release release) { if (ModelState.IsValid) { await _releaseRepository.Create(_releaseService.TransformReleaseForCreation(release)); return(RedirectToAction(nameof(Index))); } ViewData["LabelId"] = new SelectList(_labelRepository.GetAllAlphabetical().Result, "LabelId", "Name", release.LabelId); ViewData["ArtistId"] = new SelectList(_artistRepository.GetAllAlphabetical().Result, "ArtistId", "Name", release.ArtistId); return(View(release)); }
public async Task <ActionResult <Release> > PostRelease(Release release) { await _repository.Create(_service.TransformReleaseForCreation(release)); return(CreatedAtAction("GetRelease", new { id = release.ReleaseId }, release)); }