Example #1
0
        /// <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));
        }
Example #2
0
        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));
        }