Yandex Cloud
Search
Contact UsTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Tutorials
    • All tutorials
    • Enabling a blue-green and canary deployment of the web service versions
    • Automating image builds using Jenkins and Packer
    • Continuous deployment of containerized applications using GitLab
    • App testing with GitLab
    • Creating test VMs using GitLab CI
    • GitLab integration with Tracker
    • High-performance computing on preemptible VMs
    • Load testing a gRPC service
    • Fixed-load HTTPS testing with Phantom
    • Step-load HTTPS testing with Pandora
    • Scripted HTTP load testing with Pandora
    • Load testing using multiple agents
    • Running external agents for load testing
    • JMeter load testing
    • Getting statistics on queries to Object Storage objects using Query
    • Getting the number of queries to Object Storage objects
    • Invoking a load test from GitLab CI
    • Deploying GitLab Runner on a Compute Cloud virtual machine
    • Deploying a SourceCraft worker on a Compute Cloud virtual machine
    • Comparing load test results
    • Load testing migration to k6
    • AI-powered review of GitHub pull requests with Yandex Workflows and GitHub Actions

In this article:

  • Getting started
  • Required paid resources
  • Enable Yandex Tracker
  • Create a GitLab instance
  • Optionally, create a GitLab project
  • Create a hook for integration
  • Test the hook
  • Check the result
  • Delete the resources you created
  1. Development and testing
  2. GitLab integration with Tracker

GitLab integration with Yandex Tracker

Written by
Yandex Cloud
Updated at May 6, 2026
  • Getting started
    • Required paid resources
  • Enable Yandex Tracker
  • Create a GitLab instance
  • Optionally, create a GitLab project
  • Create a hook for integration
  • Test the hook
  • Check the result
  • Delete the resources you created

In Tracker issues, you can automatically add links to GitLab merge requests by specifying the relevant issue key in the name or description of a new merge request. The links will be available in the Links to external applications section.

You can also enable automatic issue comments with merge request details. Auto comments are only available for Managed Service for GitLab.

To set up integration with GitLab in Tracker:

  1. Enable Yandex Tracker.
  2. Create a GitLab instance.
  3. Optionally, create a GitLab project.
  4. Create a hook for integration.
  5. Test the hook.
  6. Check the result.

If you no longer need the resources you created, delete them.

Getting startedGetting started

Sign up for Yandex Cloud and create a billing account:

  1. Navigate to the management console and log in to Yandex Cloud or create a new account.
  2. On the Yandex Cloud Billing page, make sure you have a billing account linked and it has the ACTIVE or TRIAL_ACTIVE status. If you do not have a billing account, create one and link a cloud to it.

If you have an active billing account, you can create or select a folder for your infrastructure on the cloud page.

Learn more about clouds and folders here.

Required paid resourcesRequired paid resources

The infrastructure support cost includes:

  • Fee for a disk and a continuously running VM (see Yandex Compute Cloud pricing).
  • Fee for the number of Tracker users with full access if there are more than 5 of them (see Tracker pricing).
  • Fee for a public IP address (see Yandex Virtual Private Cloud pricing).

Enable Yandex TrackerEnable Yandex Tracker

Enable Tracker for your Yandex Cloud organization.

Create a GitLab instanceCreate a GitLab instance

Create a Managed Service for GitLab instance or a VM with a GitLab image.

Managed Service for GitLab instance
VM with a GitLab image

Create a Managed Service for GitLab instance by following this guide.

Launch GitLab on a VM with a public IP address.

  1. On the folder dashboard in the management console, click Create resource and select Virtual machine instance.

  2. Under Boot disk image, in the Product search field, enter Gitlab and select a public GitLab image.

  3. Under Location, select the availability zone where your VM will reside. If you are not sure which one to choose, leave the default.

  4. Under Computing resources, navigate to the Custom tab and specify the platform, number of vCPUs, and amount of RAM:

    • Platform: Intel Ice Lake.
    • vCPU: 4.
    • Guaranteed vCPU performance: 100%.
    • RAM: 8 GB.
  5. Under Network settings:

    • In the Subnet field, select the network and subnet to connect your VM to. If the relevant network or subnet is missing, create it.
    • In the Public IP address field, keep Auto to assign the VM a random external IP address from the Yandex Cloud pool or select a static address from the list if you reserved one in advance.
  6. Under Access, select SSH key and specify the VM access credentials:

    • In the Login field, enter the username. Do not use root or other OS-reserved usernames. To perform operations requiring root privileges, use the sudo command.
    • In the SSH key field, select the SSH key saved in your organization user profile.

      If there are no SSH keys in your profile or you want to add a new key:

      1. Click Add key.

      2. Enter a name for the SSH key.

      3. Select one of the following:

        • Enter manually: Paste the contents of the public SSH key. You need to create an SSH key pair on your own.

        • Load from file: Upload the public part of the SSH key. You need to create an SSH key pair on your own.

        • Generate key: Automatically create an SSH key pair.

          When adding a new SSH key, an archive containing the key pair will be created and downloaded. In Linux or macOS-based operating systems, unpack the archive to the /home/<user_name>/.ssh directory. In Windows, unpack the archive to the C:\Users\<user_name>/.ssh directory. You do not need additionally enter the public key in the management console.

      4. Click Add.

      The system will add the SSH key to your organization user profile. If the organization has disabled the ability for users to add SSH keys to their profiles, the added public SSH key will only be saved in the user profile inside the newly created resource.

  7. Under General information, specify the VM name: ci-tutorial-gitlab.

  8. Click Create VM.

It may take a few minutes to create your VM. When the VM status changes to RUNNING and GitLab starts, configure its settings.

Optionally, create a GitLab projectOptionally, create a GitLab project

To set up integration for an individual GitLab project, create one.

Managed Service for GitLab instance
VM with a GitLab image
  1. Log in to the Managed Service for GitLab instance web UI.

  2. Click Create a project.

  3. Click Create blank project.

  4. Fill out the fields as follows:

    • Project name: Enter a name for the project.
    • Project URL: Select the admin user in the field next to the Managed Service for GitLab instance FQDN.

    Leave the other fields unchanged.

  5. Click Create project.

  1. On the Yandex Compute Cloud page, select the created VM and copy its public IP.

  2. Connect to the VM over SSH.

  3. Get the GitLab administrator password with the following VM command:

    sudo cat /etc/gitlab/initial_root_password
    
  4. Copy the password without spaces from the Password line to the clipboard or a separate file.

  5. In your browser, open http://<VM_public_IP_address>. This will take you to the GitLab web UI.

  6. Log in as the administrator:

    • Username or email: root.
    • Password: Password you copied in the previous step.

    If you are unable to log in, reset the administrator password.

  7. Change the administrator password.

  8. Log in as the administrator with the new password.

  9. Select Create a project.

  10. Name the project.

  11. Click Create project.

Create a hook for integrationCreate a hook for integration

To link GitLab merge requests to Tracker issues, create a hook:

  1. If you do not yet have an OAuth token for using the Tracker API, get one.
  2. Check if you have access to the API by requesting information about the current user.
  3. Open the GitLab instance and go to the hook settings:
    • To enable integration for the entire GitLab instance (the GitLab admin privileges are required):
      1. In the left-hand panel, click the Your work drop-down list and select Admin Area.
      2. Go to System Hooks.
    • To enable integration for an individual project:
      1. Go to the project you need.
      2. In the left-hand panel, click Settings and select Webhooks.
  4. Configure the hook as follows:
    • URL: https://api.tracker.yandex.net/v2/system/gitlab/receive?comments=true&<organization_type>=<organization_ID>.

      Where:

      • comments=true: Enables automatic issue comments with merge request links and details. Disable it if commenting is not required. This parameter is only available for Managed Service for GitLab.

      • <organization_type>: It may take the following values:

        • x_cloud_org_id: If the type of your organization is Yandex Identity Hub.
        • x_org_id: If the type of your organization is Yandex 360 for Business or both Yandex 360 for Business and Yandex Identity Hub.
      • <organization_ID>: ID of the organization on the Tracker organizations page.

    • Secret token: OAuth token of the bot that will add the links, in OAuth <token_contents> format.
      For example: OAuth y1_AQAD-qJScAAAEKEQbBNnChvfBIqR_yEQl_HMO0********.

    • In the Trigger section, disable all options except Merge request events.

    • In the SSL verification section, select Enable SSL verification.

  5. Click Add system hook (Add webhook for an individual project).

The page will display the System Hooks section (Project Hooks for an individual project), showing the created hook and its settings.

Test the hookTest the hook

  1. Under System Hooks (Project Hooks for an individual project), click Test.
  2. Select Merge request events from the drop-down list.

The test request should return this response: Hook executed successfully: HTTP 204. If the test request returns an error, the hook settings are incorrect.

Check the resultCheck the result

  1. Create an issue in Tracker.

  2. Create a merge request in GitLab and specify the issue key in its name or description.

  3. Make sure a link to the merge request from GitLab appears in the Tracker issue under Links to external applications.

    If you used Managed Service for GitLab and enabled auto comments when creating the hook, the issue will show a comment with the merge request link and details.

Delete the resources you createdDelete the resources you created

Delete the resources you no longer need to avoid paying for them:

  1. Delete the Managed Service for GitLab instance or the GitLab VM.
  2. If you reserved a public static IP address for the VM, release and delete it.

Was the article helpful?

Previous
Creating test VMs using GitLab CI
Next
High-performance computing on preemptible VMs
© 2026 Direct Cursus Technology L.L.C.