public async Task <PublishImpactChangesResponse> PublishNoBaseBuild()
        {
            PublishImpactChangesRequest req = new PublishImpactChangesRequest()
            {
                ProductLine    = _productLine,
                ProductBuild   = _build,
                CodeSignatures = new List <string>(),
                NoBaseBuild    = true
            };

            return(await PublishChanges(req));
        }
Esempio n. 2
0
        public async Task <IActionResult> PublichChanges(PublishImpactChangesRequest request)
        {
            var(response, error) =
                await _retryFacility.RetryAsync(
                    operationName : "PublishChanges",
                    action : () => _service.PublishImpactChangesAsync(request));

            if (!error.IsSuccessful())
            {
                return(error.ToActionResult());
            }
            return(Ok(response));
        }
        private async Task <PublishImpactChangesResponse> PublishChanges(IEnumerable <string> changedFilesOrMethods)
        {
            var codeSignaturesDict          = changedFilesOrMethods.Distinct().ToDictionary(CodeSignatureUtils.CalculateSignature);
            PublishImpactChangesRequest req = new PublishImpactChangesRequest()
            {
                ProductLine    = _productLine,
                ProductBuild   = _build,
                CodeSignatures = codeSignaturesDict.Keys
            };
            var response = await PublishChanges(req);

            LogImpactedTests(codeSignaturesDict, response);
            return(response);
        }
        private async Task <PublishImpactChangesResponse> PublishChanges(PublishImpactChangesRequest req)
        {
            if (req.NoBaseBuild)
            {
                LogDebug("No base build. All tests will be run next time.");
            }
            else
            {
                LogDebug("Publishing changes to the service and updating last states of tests...");
            }

            var response = await _client.PublishImpactChangesAsync(req);

            return(response);
        }
Esempio n. 5
0
 public async Task <PublishImpactChangesResponse> PublishImpactChangesAsync(
     PublishImpactChangesRequest impactChangeRequest)
 {
     return(await SendAsync <PublishImpactChangesResponse>(HttpMethod.Post, "impact/changes", impactChangeRequest));
 }