コード例 #1
0
        public Task <string> GetTokenForProject(GitTokenPayload payload)
        {
            var config = this.repository.GetById(payload.GitConfigId);

            if (config is null)
            {
                throw new ArgumentException("Git configuration not found");
            }
            var resolver = Git.GitFactory.GetResolver(config.Type);

            return(resolver.GetFileIdentifier(new GitResolverItem {
                Branch = payload.Branch, FilePath = payload.GitPathToFile, GitConnection = config, RepoName = payload.GitRepositoryName
            }));
        }
コード例 #2
0
 public async Task <ActionResult <string> > PostTokenPayload([FromBody] GitTokenPayload payload)
 {
     try
     {
         return(Ok(await service.GetTokenForProject(payload)));
     }
     catch (ArgumentException ex)
     {
         return(NotFound(ex.Message));
     }
     catch (GitResolverException ex)
     {
         return(BadRequest(ex.Message));
     }
 }