public async Task ExecuteAsync(OctoContext context) { var json = await new StreamReader(context.Request.Body).ReadToEndAsync(); var request = JsonConvert.DeserializeObject <JObject>(json); var baseUrl = request.GetValue("BaseUrl").ToString(); var username = request.GetValue("Username").ToString(); // If password here is null, it could be that they're clicking the test connectivity button after saving // the configuration as we won't have the value of the password on client side, so we need to retrieve it // from the database var password = string.IsNullOrEmpty(request.GetValue("Password").ToString()) ? configurationStore.GetJiraPassword() : request.GetValue("Password").ToString(); if (string.IsNullOrEmpty(baseUrl) || string.IsNullOrEmpty(username) || string.IsNullOrEmpty(password)) { context.Response.AsOctopusJson(ConnectivityCheckResponse.Failure( string.IsNullOrEmpty(baseUrl) ? "Please provide a value for Jira Base Url." : null, string.IsNullOrEmpty(username) ? "Please provide a value for Jira Username." : null, string.IsNullOrEmpty(password) ? "Please provide a value for Jira Password." : null)); return; } var jiraRestClient = new JiraRestClient(baseUrl, username, password, log); var connectivityCheckResult = jiraRestClient.GetServerInfo().Result; context.Response.AsOctopusJson(connectivityCheckResult); }
/// <summary> /// Creates a JIRA rest client. /// </summary> /// <param name="url">Url to the JIRA server.</param> /// <param name="username">Username used to authenticate.</param> /// <param name="password">Password used to authenticate.</param> /// <param name="settings">Settings to configure the rest client.</param> /// <returns>Jira object configured to use REST API.</returns> public static Jira CreateRestClient(string url, string username = null, string password = null, JiraRestClientSettings settings = null) { settings = settings ?? new JiraRestClientSettings(); var restClient = new JiraRestClient(url, username, password, settings); return(CreateRestClient(restClient)); }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); var versions = finder.FindVersions(JiraProject, VersionPattern).ToArray(); var unreleasedVersions = versions.Where(v => v.released != true); var releasedVersions = versions.Where(v => v.released == true); var latestReleasedVersion = releasedVersions.Last(); var earliestUnreleasedVersion = unreleasedVersions.First(); VersionID = latestReleasedVersion.id; VersionName = latestReleasedVersion.name; NextUnreleasedVersionID = earliestUnreleasedVersion.id; NextUnreleasedVersionName = earliestUnreleasedVersion.name; return(true); } catch (Exception ex) { Log.LogErrorFromException(ex); return(false); } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient (JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService (restClient); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); var versions = finder.FindVersions (JiraProjectKey, "(?s).*"); var jiraProject = versions.Where(x => x.name == VersionNumber).DefaultIfEmpty().First(); if (jiraProject != null) { if (jiraProject.released != null) { if (jiraProject.released.Value) throw new JiraException ("The Version '" + VersionNumber + "' got already released in Jira."); } CreatedVersionID = jiraProject.id; return true; } CreatedVersionID = service.CreateVersion (JiraProjectKey, VersionNumber, null); return true; } catch (Exception ex) { Log.LogErrorFromException (ex); return false; } }
public SpecIfJiraDataWriter(string url, string userName, string apiKey, ISpecIfMetadataReader metadataReader, ISpecIfDataReader dataReader) : base(metadataReader, dataReader) { _url = url; _jiraClient = new JiraRestClient(url, userName, apiKey); }
public void SetUp() { IAuthenticator authenticator = new HttpBasicAuthenticator(c_jiraUsername, c_jiraPassword); _restClient = new JiraRestClient(c_jiraUrl, authenticator); _service = new JiraProjectVersionService(_restClient); _versionFinder = new JiraProjectVersionFinder(_restClient); _issueService = new JiraIssueService(_restClient); _repairer = new JiraProjectVersionRepairer(_service, _versionFinder); }
public override bool Execute() { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); //Just call any function to send a Request and test Authentication Details //Throws JiraException with HttpStatusCode.Forbidden if Authentication fails finder.FindUnreleasedVersions(JiraProject, "(?s).*"); return(true); }
public override bool Execute() { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); //Just call any function to send a Request and test Authentication Details //Throws JiraException with HttpStatusCode.Forbidden if Authentication fails finder.FindUnreleasedVersions(JiraProject, "(?s).*"); return true; }
/// <summary> /// Creates a JIRA rest client. /// </summary> /// <param name="url">Url to the JIRA server.</param> /// <param name="username">Username used to authenticate.</param> /// <param name="password">Password used to authenticate.</param> /// <param name="settings">Settings to configure the rest client.</param> /// <returns>Jira object configured to use REST API.</returns> public static Jira CreateRestClient(string url, string username = null, string password = null, JiraRestClientSettings settings = null) { var services = new ServiceLocator(); settings = settings ?? new JiraRestClientSettings(); var jira = new Jira(services, new JiraCredentials(username, password), settings.Cache); var restClient = new JiraRestClient(url, username, password, settings); ConfigureDefaultServices(services, jira, restClient); return(jira); }
public static void Main(string[] args) { var client = new JiraRestClient("https://jira.devfactory.com", "kkilicoglu", "xxx"); var user = client.GetUser("kkilicoglu"); foreach (var worklog in DefaultWorklogs(user)) { client.AddWorklogToIssue("AESCIS-16741", worklog); } //"AESCIS-16741" Console.ReadLine(); }
public List <string> Build(string repositoryName, string branchName, string tagName, string[] taskPrefixes) { var gitHubClient = new GitHubRestClient(notesBuilderConfiguration.GithubOwnerName, notesBuilderConfiguration.GithubAccessToken); var gitHubPovider = new GitHubDataProvider(gitHubClient); var jiraClient = new JiraRestClient(notesBuilderConfiguration.JiraUsername, notesBuilderConfiguration.JiraPassword); var jiraProvider = new JiraDataProvider(jiraClient); var taskCriteria = taskPrefixes .Select(x => new Regex(x + "-(\\d){1,}", RegexOptions.Multiline | RegexOptions.IgnoreCase)) .ToArray(); var taskNames = gitHubPovider.GetTaskNamesByCommitDescription(repositoryName, branchName, tagName, taskCriteria); return(taskNames.Select(taskName => string.Format("{0} {1}", taskName, jiraProvider.GetTask(taskName).Summary)).ToList()); }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient (JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService (restClient); service.ReleaseVersion (VersionID, NextVersionID); return true; } catch(Exception ex) { Log.LogErrorFromException (ex); return false; } }
public List<string> Build(string repositoryName, string branchName, string tagName, string[] taskPrefixes) { var gitHubClient = new GitHubRestClient(notesBuilderConfiguration.GithubOwnerName, notesBuilderConfiguration.GithubAccessToken); var gitHubPovider = new GitHubDataProvider(gitHubClient); var jiraClient = new JiraRestClient(notesBuilderConfiguration.JiraUsername, notesBuilderConfiguration.JiraPassword); var jiraProvider = new JiraDataProvider(jiraClient); var taskCriteria = taskPrefixes .Select(x => new Regex(x + "-(\\d){1,}", RegexOptions.Multiline | RegexOptions.IgnoreCase)) .ToArray(); var taskNames = gitHubPovider.GetTaskNamesByCommitDescription(repositoryName, branchName, tagName, taskCriteria); return taskNames.Select(taskName => string.Format("{0} {1}", taskName, jiraProvider.GetTask(taskName).Summary)).ToList(); }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService(restClient); service.ReleaseVersionAndSquashUnreleased(VersionID, NextVersionID, ProjectKey); return(true); } catch (Exception ex) { Log.LogErrorFromException(ex); return(false); } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient (JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService (restClient); service.CreateSubsequentVersion (JiraProject, VersionPattern, VersionComponentToIncrement, _versionReleaseWeekday); return true; } catch(Exception ex) { Log.LogErrorFromException (ex); return false; } }
public void OneTest() { IJiraRestClient client = new JiraRestClient("https://jira.atlassian.com", "jirarestclientnet", "jirarestclientnet"); IJiraIssue issue = client.GetIssue("JRA-25592"); Assert.AreEqual("JRA-25592", issue.Key); Assert.IsFalse(issue.IsSubtask); IEnumerable<string> expectedLabels = new List<string> { "advisory", "security" }; IEnumerable<string> actualLabels = from label in issue.Labels orderby label select label; CollectionAssert.AreEqual(expectedLabels, actualLabels); Assert.AreEqual("Bug", issue.IssueType); Assert.AreEqual("Bug", issue.IssueTypeObject.Name); }
/// <summary> /// Creates a JIRA client configured to use the REST API. /// </summary> /// <param name="url">Url to the JIRA server.</param> /// <param name="username">Username used to authenticate.</param> /// <param name="password">Password used to authenticate.</param> /// <param name="settings">Settings to configure the rest client.</param> /// <returns>Jira object configured to use REST API.</returns> public static Jira CreateRestClient(string url, string username = null, string password = null, JiraRestClientSettings settings = null) { Jira jira = null; var options = new JiraRestClient.Options() { Url = url, Username = username, Password = password, RestClientSettings = settings ?? new JiraRestClientSettings(), GetCurrentJiraFunc = () => jira }; var restClient = new JiraRestClient(options); jira = CreateRestClient(restClient, new JiraCredentials(username, password), options.RestClientSettings.Cache); return(jira); }
public SpecIfJiraDataReader(string url, string userName, string apiKey, ISpecIfMetadataReader metadataReader) { _url = url; _metadataReader = metadataReader; _jiraClient = new JiraRestClient(url, userName, apiKey); if (!_projectInfoInitialized) { InitializeProjectInformations(); _projectInfoInitialized = true; } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService(restClient); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); var _jiraProjectVersionRepairer = new JiraProjectVersionRepairer(service, finder); var versions = finder.FindVersions(JiraProjectKey, "(?s).*").ToList(); var jiraProject = versions.Where(x => x.name == VersionNumber).DefaultIfEmpty().First(); if (jiraProject != null) { if (jiraProject.released != null) { if (jiraProject.released.Value) { throw new JiraException("The Version '" + VersionNumber + "' got already released in Jira."); } } CreatedVersionID = jiraProject.id; return(true); } CreatedVersionID = service.CreateVersion(JiraProjectKey, VersionNumber, null); _jiraProjectVersionRepairer.RepairVersionPosition(CreatedVersionID); return(true); } catch (Exception ex) { Log.LogErrorFromException(ex); return(false); } }
public override bool Execute () { try { JiraRestClient restClient = new JiraRestClient (JiraUrl, Authenticator); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder (restClient); var versions = finder.FindUnreleasedVersions (JiraProject, VersionPattern).ToArray(); VersionID = ""; VersionName = ""; NextVersionID = ""; NextVersionName = ""; NumberOfUnreleasedVersions = versions.Count(); if(NumberOfUnreleasedVersions >= 1) { var version = versions.First(); VersionID = version.id; VersionName = version.name; } if(NumberOfUnreleasedVersions >= 2) { var nextVersion = versions.Skip (1).First(); NextVersionID = nextVersion.id; NextVersionName = nextVersion.name; } return true; } catch(Exception ex) { Log.LogErrorFromException (ex); return false; } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient (JiraUrl, Authenticator); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder (restClient); var versions = finder.FindUnreleasedVersions (JiraProject, VersionPattern).ToArray(); VersionID = ""; VersionName = ""; NextVersionID = ""; NextVersionName = ""; NumberOfUnreleasedVersions = versions.Count(); if(NumberOfUnreleasedVersions >= 1) { var version = versions.First(); VersionID = version.id; VersionName = version.name; } if(NumberOfUnreleasedVersions >= 2) { var nextVersion = versions.Skip (1).First(); NextVersionID = nextVersion.id; NextVersionName = nextVersion.name; } return true; } catch(Exception ex) { Log.LogErrorFromException (ex); return false; } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService(restClient); IJiraProjectVersionFinder finder = new JiraProjectVersionFinder(restClient); var jiraProjectVersionRepairer = new JiraProjectVersionRepairer(service, finder); var createdVersionId = service.CreateSubsequentVersion(JiraProject, VersionPattern, VersionComponentToIncrement, _versionReleaseWeekday); if (SortVersion) { jiraProjectVersionRepairer.RepairVersionPosition(createdVersionId); } return(true); } catch (Exception ex) { Log.LogErrorFromException(ex); return(false); } }
public override bool Execute() { try { JiraRestClient restClient = new JiraRestClient(JiraUrl, Authenticator); IJiraProjectVersionService service = new JiraProjectVersionService(restClient); var jiraProjectVersionFinder = new JiraProjectVersionFinder(restClient); var jiraProjectVersionRepairer = new JiraProjectVersionRepairer(service, jiraProjectVersionFinder); service.ReleaseVersion(VersionID, NextVersionID); if (SortReleasedVersion) { jiraProjectVersionRepairer.RepairVersionPosition(VersionID); } return(true); } catch (Exception ex) { Log.LogErrorFromException(ex); return(false); } }
public IssueClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public PermissionsClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public BaseTest() { RestClient = new JiraRestClient(Uri, Username, Password); }
public ProjectClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public SearchClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public static JiraClient FromBaseAuth(string user, string pass, string url) { return(new JiraClient(JiraRestClient.FromBasicAuth(user, pass, url))); }
public JiraIssueService(JiraRestClient restClient) { jiraClient = restClient; }
public SystemClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public UserClient(JiraRestClient jiraRestClient) : base(jiraRestClient) { }
public JiraProjectVersionFinder(JiraRestClient restClient) { jiraClient = restClient; }
public void SetUp() { IAuthenticator authenticator = new HttpBasicAuthenticator(c_jiraUsername, c_jiraPassword); _restClient = new JiraRestClient (c_jiraUrl, authenticator); _service = new JiraProjectVersionService (_restClient); _versionFinder = new JiraProjectVersionFinder (_restClient); _issueService = new JiraIssueService (_restClient); }