Automation using gitlab jira integration - automation

Does anyone know that, how could I automatically raise Jira issue by Gitlab jira integration? Is it possible to automaticaly raise Jira issue?

The available features for the Jira-Gitlab integration are outlined here: https://docs.gitlab.com/ee/user/project/integrations/jira.html
Currently, there is no functionality for creating Jira issues, but you can link them to Gitlab Issues, close a Jira issue from a commit or merge request, and view Gitlab pipeline statuses in a linked Jira instance.
If you're a paid Gitlab user, you can also view all Jira issues within Gitlab.

Related

How do I get notified when someone creates a new Repository in Gitlab?

I need to be notified when someone creates a new Repository in a group (or in the instance) of my gitlab. I want only to be notified on new repositories, not all pull requests, merges, etc.
I have tried:
Creating a Project Template that e-mails me when it is used. This should have worked but Projects do not run a pipeline when created from a template.
Checking Webhooks. Webhooks provide the option to be notified on a number of things but not Repository Creation Specifically
Checking Notifications. Similar to Webhooks.
Extensively searching on google for anything related to creating new Repositories and notifications or triggering
There has to be some easier way to do this than setting up a service to constantly pull the list of projects and alert when it is different. Gitlab must have an integration for notifications about New Repositories.
System hooks can be used to hook into a number of system events, including project_create events for the instance.
This feature is only available on self-managed GitLab instances and can only be configured by administrators.

How to integrate JIRA with Robot Framework scripts of pycharm?

I have my automation scripts written in Pycharm using Python-Selenium-Robot Framework. I want to integrate it with JIRA to keep the track of result and other aspects with JIRA issues.
Is there any way to achieve it? I checked for XRay plugin but not able to get the detailed tutorial for the configuration. Any suggestions? TIA.
If you're using Jira "on-premises" (server/datacenter), then I would advise you to have a look at this tutorial.
There's a GitHub repo with the corresponding code.
The integration is straighforward: you just need to upload the test results from RF (e.g., output.xml) to a specific endpoint. You can do that with a HTTP POST request (with curl, for example) or from your CI/CD tool, such as Jenkins; for Jenkins, and some other tools, there is a free plugin.
Example of a shell script to upload the results (please adapt it accordingly)
#!/bin/bash
curl -H "Content-Type: multipart/form-data" -u admin:admin -F "file=#output.xml" "http://192.168.56.102/rest/raven/2.0/import/execution/robot?projectKey=ROB&testPlanKey=ROB-12&testEnvironments=$BROWSER"
There's no special configuration to make in Xray. You just need to upload the test results and that will automatically provision the corresponding Test entities (as Jira issues), and report the results against them.
In RF it's possible to do some interesting stuff, like adding tags on the test cases, in case you want to link those tests to some existing Story issue (i.e., cover them), during the import process of the test results.

Create releases from within a GitLab runner/pipeline

With the release of Gitlab 11.7 in January 2019, we get the new key feature Publish releases for your projects. I want precisely what the screenshot on that page shows and I want to be able to download compiled binaries using the releases API.
I can do it manually. Of course, instructions for the manual approach can be found here on stack overflow. The problem I need help with is doing it as part of a CI/CD pipeline, which is not covered by the answers one can find easily.
The release notes contain a link to the documentation, which states:
we recommend doing this as one of the last steps in your CI/CD release pipeline.
From this I gather it's possible. However, the only approach I can imagine is using the GitLab API just as I do, when I create releases manually. When one wants to access the GitLab API one has essentially three options for authentication, according to the fine manual: OAUTH2 tokens, personal access tokens and session cookies. Consequently I would need a method for having either of these available in my CI/CD pipeline, with sufficient privileges. Solutions for this problem are an ongoing discussion with lots of contributions, but virtually no tangible progress in recent years.
So, how does one create releases as one of the last steps in one's CI/CD release pipeline?
Storing my personal access key with API access in a CI/CD variable or even a file in the repo is not an option for obvious reasons.
They've put up a blog post explaining how to do this:
https://about.gitlab.com/blog/2020/05/07/how-gitlab-automates-releases/
They've created a tool (gitlab-releaser) to help with this task. Basically you create a new step, where you use a docker image that provides this tool, and then call the tool with the proper parameters.
release_upload:
image: registry.gitlab.com/gitlab-org/release-cli:v0.1.0
script:
- gitlab-releaser create --name="My Release" --description="My Release description"

Retrieving a list of agent requests from TFS REST API

TFS 2015.3, on premises.
The REST API of TFS has an undocumented portion that deals with app pools: _apis/distributedtask/pools on the server level and further down. I can drill down all the way to agent details: _apis/distributedtask/pools/111/agents/222. Now, in the Web UI there are two collections per agent: requests and capabilities. Does anyone know the REST API URLs for those? Adding either /requests or /capabilities yields a "Document not found" error.
If the TFS API is somehow self describing, I have yet to discover how. I miss WSDL...
I opened up Chrome Network inspector and found that these are the API calls for Requests and Capabilities. These are from latest VSTS but I think the same will work for TFS 2015.3 also.
For Requests:
_apis/distributedtask/pools/1/jobrequests?agentId=1&completedRequestCount=25
For Capabilities:
_apis/distributedtask/pools/1/agents/1?includeCapabilities=true
Note: These are undocumented so you should be vigilant while upgrading your TFS if you are taking dependencies on these.

How do I disable and remove Upsource integration from YouTrack

Having tried Upsource we don't have a compelling need for it at the moment, so I've removed it from our integration server to reduce the load.
Upsource has been removed as a service from Hub.
In YouTrack, if I go to Administration...Upsource Integration Settings, I still have a link between YouTrack and Upsource. I can disable it, but I can't see any UI that lets me delete the link between my YouTrack project and Upsource project.
On the VCS changes tab in YouTrack it then complains about Upsource integration being disabled.
How can I remove the Upsource link from YouTrack?
It's only possible to disable Upsource integration at the moment, not remove it. Here's the corresponding feature request: https://youtrack.jetbrains.com/issue/JT-35295