# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Release 13.4 has been launched with HashiCorp storage for CI variables, Kubernetes Agent, and a security center, along with switchable features in Starter.

At GitLab, we are always thinking about how to help users reduce risks, increase efficiency, and speed up delivery on your favorite platform. This month, we have added several useful innovations that enhance security features, reduce vulnerabilities, improve efficiency, streamline GitLab usage, and help your team deliver features even faster. We hope you find the key features of this release and 53 other new features, added in this release.

Enhanced security capabilities

We strive to introduce several new features to GitLab DevSecOps every month, and this release is no exception. Secrets from the HashiCorp storage can now be used in CI/CD jobs as part of building and deploying. Additionally, organizations that want to maintain code deployment separation of duties can now assign users with Reporter access the Deployer role. This role aligns with the principle of least privilege access and will allow for merging requests (in the Russian localization of GitLab, "merge requests") and deploying code in secure environments without granting access to modify the code itself.

Another way to reduce risks is through the new GitLab Kubernetes Agent. Operations professionals can deploy Kubernetes clusters from GitLab without the need to open access to their cluster to the entire internet. We also introduce automatic version control support for new Terraform state files with managed GitLab Terraform state to support compliance requirements and ease debugging. Finally, the security dashboard in the instance has transformed into the GitLab security center featuring vulnerability reports and security settings.

More convenient and effective work with GitLab

We have improved our global search by adding quick navigation from the search bar, allowing easy access to recent tickets, groups, projects, settings, and help sections. We are excited to announce that GitLab Pages now supports redirects. for redirecting individual pages and directories within the site, allowing users to deploy their sites more efficiently. Additionally, for those who would like to receive extended information on deployment, this release allows to manage hundreds of supported deployment projects from the environment dashboard!

Open Source Contributions

We present code coverage display in merge request diffs, which was added by MVP of the month, Fabio Huser. Coverage markers for unit test of changed code provide developers with a clear view of code coverage during review; this information helps speed up reviews and reduce time for merging and deploying new code. Also, we moved feature flags to Starter and plan to move them to Core in release 13.5.

And this is just the beginning!

As always, there is too little space in the overall overview, and there are many cool features in release 13.4. Here are a few more:

If you want to get a preview of what’s coming in the next release, check out our video on release 13.5.

Watch our webcast “Resiliency In Challenging Times”.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

MVP this month — Fabio Huser

Fabio made a significant contribution downward API support (simultaneously with this in code coverage display in merge request diffs — a feature that has been long awaited in the GitLab community. This is truly an important contribution involving non-trivial changes that required constant collaboration with GitLab team members and touched on many areas of the project, such as UX, frontend, and backend.

Key features of GitLab 13.4

Use HashiCorp Vault keys in CI jobs

(PREMIUM, ULTIMATE, SILVER, GOLD) DevOps Cycle Stage: Release

In release 12.10, GitLab introduced the ability to obtain and send keys in CI jobs using the GitLab job handler (GitLab runner). Now we are expanding authentication via JWT, adding new syntax secrets in the file .gitlab-ci.yml. This will simplify the setup and usage of HashiCorp storage with GitLab.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on working with keys and original ticket.

Introducing GitLab Kubernetes Agent

(PREMIUM, ULTIMATE) DevOps Cycle Stage: Configure

GitLab's integration with Kubernetes has long enabled deployments on Kubernetes clusters without the need for manual configuration. Many users have appreciated the ease of use of this combination, while others have encountered some difficulties. For the current integration, your cluster must be accessible from the internet for GitLab to connect to it. For many organizations, this is not feasible as they restrict access to their clusters for security, compliance, or regulatory reasons. To circumvent these limitations, users have had to create their own tools on top of GitLab, or they would be unable to utilize this feature.

Today, we introduce the GitLab Kubernetes Agent — a new way to deploy on Kubernetes clusters. The agent operates within your cluster, so you won't need to expose it to the entire internet. The agent coordinates deployments by requesting updates from GitLab instead of GitLab pushing updates to the cluster. Regardless of which GitOps method you use, GitLab will suit your needs.

Please note that this is the first release of the agent. Currently, we have focused on setup and management of deployments through code for the GitLab Kubernetes Agent. Some existing Kubernetes integration features, such as deployment boards and GitLab-managed applications, are not yet supported. We anticipate, that these capabilities will be added to the agent in future releases, along with new integrations focused on security and compliance.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for GitLab Kubernetes Agent and original ticket.

Grant users deployment permissions without code access

(PREMIUM, ULTIMATE, SILVER, GOLD) DevOps Cycle Stage: Release

Previously, GitLab's permission system did not allow for effective separation of responsibilities within your team between those who handle development and those in charge of deployments. With the release of GitLab 13.4, you can grant permission to approve merge requests for deployments, as well as to actually deploy code to individuals who do not write code, without giving them maintainer access rights (translated in Russian GitLab as 'сопровождающий').

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for accessing environments and original epic.

Security Center

(ULTIMATE, GOLD) DevOps Cycle Stage: Secure

Previously, instance-level vulnerability management was limited in both functionality and flexibility. The interface consisted of a single page that combined vulnerability details, metric graphics, and settings. There wasn't much room for the development of these features or the use of other security tools.

We have fundamentally changed security management and transparency in GitLab. The instance security panel has transformed into a full security center. The biggest change is the introduction of a new menu structure: instead of a single page, you now see the security dashboard, vulnerability report, and settings section separately. Although the functionality hasn’t changed, the segmentation allows us to improve this area, which would otherwise be difficult. It also creates a foundation for adding more security-related capabilities in the future.

The dedicated section for the vulnerability report now has more space to display important details. This section collects vulnerabilities currently in the project’s vulnerability list. Moving the vulnerability metric widgets to a separate section creates a user-friendly security dashboard. This is now a canvas for future visualizations—not just for vulnerability management but also for any security-related metrics. Finally, a separate settings area creates a common space for all instance-level security settings, not just for vulnerability management.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Instance Security Center Documentation and original epic.

Feature flags are now in GitLab Starter

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Release

GitLab 11.4 was released alpha version of feature flags. In 12.2, we introduced strategies for them percentage of users and by user ID, and in 13.1, we added user lists and strategy settings for different environments.

Earlier this year, GitLab committed to move 18 features to open source. In this release, we completed the transition of feature flags to the Starter plan and will continue moving them to Core with GitLab 13.5. We are excited to offer this capability to more users and want to hear how you will use them.

Play video

Documentation on feature toggles and original ticket.

Quick navigation from the search bar

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) All exploit scenarios related to attack vectors on

Sometimes, when navigating GitLab, you want to go directly to a specific project instead of the search results page.

With the global search panel, you can quickly navigate to recent tickets, groups, projects, settings, and help sections. You can even use a keyboard shortcut /, to move the cursor to the search panel, making it even more efficient to navigate GitLab!

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on search autocomplete and original ticket.

Displaying code coverage in merge request diffs

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

When reviewing a merge request, it can be difficult to determine if the modified code is covered by unit tests. Instead, reviewers may rely on overall coverage and require it to be increased before approving the merge request. This can lead to a haphazard approach to writing tests, which won’t truly improve the code quality or its test coverage.

Now, when viewing a merge request diff, you will see a visual representation of code coverage. New markers will help quickly determine if the modified code is covered by a unit test, which will help speed up code review and the time to merge and deploy new code.

Thank you Fabio Huser and Siemens for this feature!

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on code coverage displayed by tests and original ticket.

More environments and projects on the environments panel

(PREMIUM, ULTIMATE, SILVER, GOLD) DevOps Cycle Stage: Release

Since the release of GitLab 12.5 with the environments panel , you could track the status of environments, but no more than seven environments across three projects. We improved this panel in release 13.4 by breaking it into pages, helping you maintain and manage your environments on a larger scale. Now you can see more environments across more projects.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on the environments panel and original ticket.

GitLab has adopted the management of the GitLab Terraform provider

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Configure

Recently, we gained maintainer rights for the GitLab Terraform provider and plan to to improve it in upcoming releases. Over the past month, we accepted 21 merge requests and closed 31 tickets, including some long-standing bugs and missing features such as support for instance clusters. You can learn more about the GitLab Terraform provider in the Terraform documentation.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on the GitLab Terraform provider and original ticket.

Fuzzing API testing with OpenAPI specifications or a HAR file

(ULTIMATE, GOLD) DevOps Cycle Stage: Secure

Fuzzing API testing is a great way to discover errors and vulnerabilities in your web applications and APIs that other scanners and testing methods may miss.

Fuzzing API testing in GitLab allows you to provide an OpenAPI v2 specification or a HAR file of your application, and then automatically generates random input data intended to test edge cases and identify errors. The results are immediately displayed within your pipeline.

This is our first release of fuzzing API testing, and we would love to hear what you think. We have many more ideas for fuzzing testing that we will base on this feature's release. many ideas, which we will base on this feature's release.

Play video

Documentation for fuzzing API testing and original epic.

Preview of new charts on the metrics dashboard

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

Previously, creating a chart on the metrics dashboard in GitLab was a challenging task. After you created a metric in the panel's YAML file, you made changes without the capability to verify that the newly created chart was working exactly as you intended. Starting with this release, you can preview changes as you create the chart, getting insight into the outcome before committing changes to the panel's YAML file. masterDocumentation for adding a new chart to the dashboard

Play video

Test coverage data across all group projects and original ticket.

DevOps Cycle Stage: Verify

(PREMIUM, ULTIMATE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

With the 13.4 release, it became easy and quick to gather all the code coverage data for all group projects or a selected subset into

.csv file. This feature is an MVC, and we will follow up with the ability to build a chart of average coverage over time. Documentation for repository analytics.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Support for new languages for comprehensive fuzzing testing and original ticket.

This release introduces support for several new languages for fuzzing testing aimed at full coverage.

(ULTIMATE, GOLD) DevOps Cycle Stage: Secure

This release introduces support for several new languages for fuzzing testing aimed at full coverage.

Now you can evaluate all the capabilities of fuzz testing in your applications in Java, Rust, and Swift and find errors and vulnerabilities that other scanners and testing methods might miss.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for supported languages for fuzz testing and original epic.

Alerts on the main environments page

(PREMIUM, ULTIMATE, SILVER, GOLD) DevOps Cycle Stage: Release

The environments page shows the overall status of your environments. In this release, we enhanced this page by adding alert displays. Triggered alerts along with the status of your environments will help you take corrective actions more quickly.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for viewing recent alerts in environments and original ticket.

Nested pipelines can now trigger their nested pipelines

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

With the use of nested pipelines, you can now launch new pipelines within child pipelines. An additional level of depth can be useful if you need the flexibility to generate a varying number of pipelines.

Previously, when using nested pipelines, each child pipeline required a trigger job, manually set in the parent pipeline. Now, you can create nested pipelines that will dynamically trigger any number of new nested pipelines. For example, if you have a monorepo, you can dynamically generate the first nested pipeline, which will itself create the necessary number of new pipelines based on changes in the branch.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for nested pipelines and original ticket.

Improved navigation between parent and nested pipelines

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

Navigating between parent and nested pipelines was previously quite inconvenient — it required multiple clicks to reach the desired pipeline. It was also not easy to understand which job triggered this pipeline. Now, seeing the connections between parent and nested pipelines will be much simpler.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for nested pipelines and original ticket.

Parallel matrix jobs display relevant variables in the job name.

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

If you have used job matrix, you may have noticed that it was difficult to determine which matrix variable was used for a specific job, as job names looked like matrix 1/4In release 13.4, you will see relevant values of the variables that were used in this job instead of the generic job title. For example, if your goal is debugging for the x86 architecture, then the job will be called matrix: debug x86.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on parallel matrix jobs and original ticket.

Other improvements in GitLab 13.4

Connecting your Atlassian account

(CORE, STARTER, PREMIUM, ULTIMATE) DevOps cycle stage: Manage

GitLab users will now be able to connect their GitLab accounts to their Atlassian Cloud account. This will allow them to log in to GitLab with their Atlassian credentials and lay the groundwork for future improvements in integration GitLab with Jira and with other products from the Atlassian lineup.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for Atlassian integration and original ticket.

Export the list of all merge commits

(ULTIMATE, GOLD) DevOps cycle stage: Manage

Organizations focused on compliance need a way to provide auditors with a comprehensive view of components related to any specific change in production. Within GitLab, this means gathering everything in one place: merge requests, tickets, pipelines, security scans, and other commit data. Until now, you had to either manually compile this in GitLab or set up your own tools to gather the information, which was not very efficient.

Now you can programmatically gather and export this data to meet audit requirements or conduct other analyses. To export the list of all merge commits for the current group, you need to go to the compliance panel and click the button List of all merge commits. The resulting file will contain all the merge request commits, their authors, the ID of the related merge request, group, project, approvers, and other information.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for generating reports and original ticket.

Output list and manage personal access tokens via API

(ULTIMATE, GOLD) DevOps cycle stage: Manage

Managing access to GitLab namespaces is a crucial part of compliance activities. From the principles of least privilege to temporarily disabling access, there may be several requirements related to personal access tokens in GitLab. To facilitate the maintenance and management of all user credentials within your namespace, we have provided the option to generate a list of all personal access tokens and optionally restrict access via the API.

These enhancements in the GitLab API allow users to list and revoke their own personal access tokens, while administrators can list and revoke their users' tokens. Now, administrators will find it easier to see who has access to their namespaces, make access decisions based on user data, and revoke personal access tokens that may have been compromised or that exceed the company's access management policies.

Documentation on personal access tokens and original ticket.

Related tickets and other features are now in GitLab Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Plan

A few months ago, we announced a plan to migrate 18 features to open source. In working to fulfill this promise, we have made related tickets, ticket export to CSV and focus mode on the task board (in the Russian localization of GitLab, 'discussion board') available in the Core plan. This applies only to 'related to' relationships; 'blocks' and 'blocked by' relationships remain in paid plans.

Documentation on related tickets and original ticket.

Displaying the source branch name on the merge request sidebar

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

When reviewing code changes, discussions, and commits in a merge request, it is often desirable to perform a local checkout of the branch for a deeper review. However, finding the branch name becomes increasingly challenging as more content is added to the merge request description, requiring more scrolling.

We have added the branch name to the merge request sidebar, making it accessible at all times and eliminating the need to scroll through the entire page. Just like the merge request link, the source branch section includes a convenient 'copy' button.

Thank you Ethan Reesor for the significant contribution to the development of this feature!

Documentation on merge requests and original ticket.

Indication of the presence of collapsed files in the merge request diffs

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

Merge requests that add changes to multiple files sometimes collapse the diffs of large files to improve rendering performance. When this happens, a reviewer may accidentally miss a file, especially in merge requests with a large number of files. Starting with version 13.4, merge requests will indicate diffs that contain collapsed files, ensuring that you don't overlook these files during the code review. For even greater clarity, we plan to add highlighting for these files in a future release. Stay tuned for updates in ticket gitlab#16047.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on collapsed files in the merge request diff and original ticket.

Warning about the presence of collapsed files in the merge request diff

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

In the section with the merge request diffs, large files are collapsed for performance enhancement. However, while reviewing code, some files may be missed when the reviewer scrolls through the file list since all large files are collapsed.

We have added a visible warning at the top of the merge request diff page to inform users that there is a collapsed file in this section. This way, you will not miss any changes in the merge request during the review.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on collapsed files in the merge request diff and original ticket.

Automatic recovery of Gitaly cluster repository

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

Previously, when the primary node of the Gitaly cluster went down, the repositories on that node were marked as read-only. This prevented data loss in situations where there were changes on the node that hadn't been replicated yet. When the node came back online, GitLab did not automatically recover, and administrators had to manually start the synchronization process or contend with data loss. Other situations, such as replication job failures on secondary nodes, could also lead to outdated or read-only repositories. In this case, the repository remained outdated until the next write operation triggered a replication job.

To resolve this problem Praefect It now schedules a replication task when it detects an outdated repository on one node and the latest version of the repository on another. This replication task automatically updates the repository, eliminating the need for manual data restoration. Automatic recovery also ensures quick updating of secondary nodes if the replication task fails, rather than waiting for the next write operation. Since many Gitaly clusters store a large number of repositories, this significantly reduces the time administrators and reliability engineers spend on data recovery after an error.

Additionally, automatic repair triggers repository replication on any new Gitaly node added to the cluster, removing the need for manual work when adding new nodes.

Gitaly Data Recovery Documentation and original ticket.

Mark the to-do task as complete on the design page

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

Effective communication in GitLab relies on to-do task lists. If you are mentioned in a comment, it is crucial to be able to navigate to the task and either start working on it or mark it as already completed. It is also important to be able to assign a task to yourself when you need to work on something or revisit it later.

Previously, you could not add tasks or mark them as completed when working with designs. This significantly disrupted communication efficiency among product teams, as to-do tasks are a critical element of the workflow in GitLab.

In release 13.4, designs align with comments on tickets in utilizing tasks, making the work with them more consistent and efficient.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for Adding Tasks to Designs and original ticket.

Enhanced Troubleshooting Guide for CI/CD

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

We have improved the troubleshooting guide for GitLab CI/CD by adding additional information about common issues you may encounter. We hope the enhanced documentation will be a valuable resource to help you quickly and easily set up and run GitLab CI/CD.

CI/CD Troubleshooting Documentation and original ticket.

Merge requests no longer drop out of the merge queue.

(PREMIUM, ULTIMATE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

Previously, merge requests could accidentally drop out of the merge queue due to late comments. If a merge request was already in the queue, and someone added a comment that created a new unresolved discussion, the merge request was deemed unsuitable for merging and dropped out of the queue. Now, after a merge request is added to the merge queue, new comments can be added without fear of disrupting the merging process.

Documentation for the merge queue. and original ticket.

Displaying code coverage values in the merge request for jobs.

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

Developers should have the ability to see the code coverage value after the pipeline completes — even in complex scenarios like pipelines with multiple jobs that need to be parsed to calculate the coverage value. Previously, the merge request widget only showed the average of these values, meaning you had to navigate to the job page and back to the merge request to get the intermediate coverage values. To save you time and eliminate these extra steps, we have made it so the widget displays the average coverage value, its change between the target and source branches, and a tooltip that shows the coverage value for each job used to calculate the average.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for code coverage parsing. and original ticket.

Removing packages from the package registry when viewing a group.

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Package.

The GitLab package registry is a place to store and distribute packages in various formats. When there are numerous packages in your project or group, you need to quickly identify unused packages and remove them to prevent others from downloading them. You can remove packages from your registry via the package API or through the package registry user interface. However, until now, you couldn't remove packages while viewing a group through the user interface. As a result, you had to delete extraneous packages separately for each project, which was inefficient.

Now you can remove packages when viewing the group package registry. Just navigate to the group package registry page, filter packages by name, and delete all unnecessary ones.

Play video

Documentation for Removing Packages from the Package Registry and original ticket.

Scaling Conan Packages to Project Level

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Package.

You can use the Conan repository in GitLab to publish and distribute C/C++ dependencies. However, previously packages could only be scaled to the instance level, as the Conan package name could consist of a maximum of 51 characters. If you wanted to publish a package from a subgroup, for example gitlab-org/ci-cd/package-stage/feature-testing/conan, it was nearly impossible to do so.

Now you can scale Conan packages to the project level, allowing you to easily publish and distribute your project dependencies.

Documentation for Publishing Conan Packages and original ticket.

Support for New Package Managers and Languages for Dependency Scanning

(ULTIMATE, GOLD) DevOps Cycle Stage: Secure

We are pleased to add dependency scanning for projects written in C, C++, C#, and .Net that use NuGet 4.9+ or Conan package managers to our list of supported languages and frameworks.You can now include dependency scanning as part of the Secure stage to check for known vulnerabilities in dependencies added via package managers. Detected vulnerabilities will be displayed in your merge request along with their severity level, so you know what risks the new dependency carries before merging. You can also configure your project to require merge request approval for dependencies with critical (Critical), high (High), or unknown (Unknown) severity levels.

Documentation for Supported Languages and Package Managers and original epic.

Notifications When Changing Merge Request Settings to 'Merge When Pipeline Succeeds'

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Release

Previously, when setting the merge request configuration Merge When Pipeline Succeeds (MWPS), no email notifications were sent. You had to manually check the status or wait for a merge completion notification. In this release, we are pleased to introduce user contribution @ravishankar2kool , which solved this issue by adding automatic notification to everyone subscribed to the merge request when the reviewer changes the merge setting to MWPS.Documentation for Merge Request Event Notifications

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Creating EKS Clusters with User-Specified Kubernetes Version and original ticket.

Creating EKS clusters with a user-defined Kubernetes version

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Configure

GitLab users can now choose the version of Kubernetes that will be provided by EKS; you can select between versions 1.14–1.17.

Documentation for adding EKS clusters and original ticket.

Creating incidents as ticket types

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

Not every issue immediately triggers alert notifications: users report outages while team members investigate performance issues. Incidents are now a type of ticket, so your teams can quickly create them within their usual workflow. Click New task from anywhere in GitLab, and in the field Type select Incident.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for manually creating incidents and original ticket.

Mentioning GitLab alerts in Markdown

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

We have enhanced GitLab alerts by adding a new type of mention specifically for them in GitLab-flavored Markdown, making it easier to share alerts and reference them. Use ^alert#1234, to mention an alert in any Markdown field: in incidents, tickets, or merge requests. This will also help you identify tasks created from alerts rather than from tickets or merge requests.

Documentation for managing incidents and original ticket.

Viewing alert load by incident

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

The alert description contains information critical for diagnosing failures and recovery, and this information should be easily accessible so you don't have to switch tools or tabs while working on resolving an incident. Alerts created from notifications display the full alert description in the Alert Details.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

75% faster advanced search

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) All exploit scenarios related to attack vectors on

GitLab, as a single application, has a unique ability to make content search across the entire DevOps workflow faster. In GitLab 13.4, the advanced search returns results 75% faster when it is limited to specific namespaces and projects, like on GitLab.com.

Documentation for faster advanced search and original ticket.

Viewing deleted projects for administrators

(CORE, STARTER, PREMIUM, ULTIMATE) DevOps cycle stage: Manage

The ability to delay project deletion was introduced in 12.6However, there was previously no way to see all projects awaiting deletion in one place. Now, administrators of GitLab user instances can view all projects pending deletion in one location, along with buttons for easily restoring these projects.

This feature allows administrators to better control project deletions by gathering all the necessary information in one place and providing the option to undo unwanted deletion actions.

Thank you Ashesh Vidyut (@asheshvidyut7) for this feature!

Documentation for Project Deletion and original ticket.

API support for push rules for group added

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD) DevOps cycle stage: Manage

Previously, group push rules could only be set by visiting each group individually through the GitLab user interface and applying those rules. Now you can manage these rules through the API to support your custom tools and GitLab automation.

Documentation for Group Push Rules and original ticket.

Revocation of personal access tokens for self-managed credential storage

(ULTIMATE) DevOps cycle stage: Manage

Credential Storage provides administrators with the information necessary to manage user credentials in their GitLab instance. As compliance-focused organizations vary in the strictness of their credential management rules, we’ve added a button that allows administrators to revoke a user's personal access token (PAT) if desired. Administrators can now easily revoke potentially compromised PATs. This feature is useful for organizations that require more flexible options to ensure compliance, minimizing distractions for their users.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for Credential Storage and original ticket.

Configuration file for static site editor

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

In GitLab 13.4, we are introducing a new way to configure the static site editor. Although the configuration file does not save or retrieve any parameters in this release, we are laying the groundwork for future customization of the editor's behavior. In subsequent releases, we will add parameters to the file .gitlab/static-site-editor.yml to set the base address of the site, where images uploaded in the editor are stored, overriding Markdown syntax settings and other editor settings.

Documentation for configuring the static site editor and original epic.

Editing the front matter of a file using the static site editor

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

The front matter is a flexible and convenient way to define page variables in data files intended for processing by a static site generator. It is typically used to set the page title, layout template, or author, but can be used to pass any type of metadata to the generator when rendering the page in HTML. Included at the very top of each data file, the front matter is usually formatted as YAML or JSON and requires consistent and accurate syntax. Users unfamiliar with the specific syntax rules may inadvertently introduce invalid markup, which can lead to formatting issues or even build failures.

The WYSIWYG editing mode of the static site editor already removes the front matter from the editor to prevent these formatting errors. However, this does not allow you to change the values stored in that part without reverting to editing in source code mode. In GitLab 13.4, you can access any field and edit its value in a familiar form-based interface. By clicking the button Settings (Settings) a panel will open displaying a form field for each key defined at the beginning. The fields are populated with the current value, and editing any of them is simply a matter of entering it into the web form. This editing of the front matter avoids syntax complexities and gives you full control over the content while ensuring consistent formatting of the final result.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for the static site editor and original ticket.

GitLab for Jira and DVCS Connector now in Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps cycle stage: Create

For Jira users in GitLab: GitLab app for Jira and DVCS Connector allow you to display information about GitLab commits and merge requests directly in Jira. Together with our built-in integration with Jira, you can easily navigate between the two applications while working.

These features were previously only available in our Premium plan, but now they are accessible to all users!

Integration documentation with Jira and original ticket.

Majority voting for Gitaly cluster transactions (beta version)

(CORE, STARTER, PREMIUM, ULTIMATE) DevOps cycle stage: Create

The Gitaly cluster allows replicating Git repositories across multiple ‘warm’ Gitaly nodes. This enhances fault tolerance by eliminating single points of failure. Transactional operations, introduced in GitLab 13.3, trigger a broadcast of changes to all Gitaly nodes in the cluster, but only those Gitaly nodes in agreement with the primary node will save changes to disk. If all replica nodes do not reach consensus, only one copy of the change will be saved to disk, creating a single point of failure until asynchronous replication is completed.

Majority voting increases fault tolerance by requiring the consent of the majority of nodes (not all) before saving changes to disk. If this toggled feature is enabled, the write must succeed on multiple nodes. Non-consenting nodes are automatically synchronized via asynchronous replication with those nodes that formed the quorum.

Consistency configuration documentation in Gitaly and original ticket.

Support for custom schema for JSON validation in Web IDE

(PREMIUM, ULTIMATE, SILVER, GOLD) DevOps cycle stage: Create

Projects where individuals write configurations in JSON or YAML format often face issues because it’s easy to make a typo and break something. Tools can be written to catch these issues in the CI pipeline, but using a JSON schema file can be helpful in providing documentation and hints.

Project participants can define the path to the custom schema in their repository in the file .gitlab/.gitlab-webide.yml, which specifies the schema and path to the files for validation. When a particular file is uploaded in the Web IDE, additional feedback and validation will be visible to assist in creating the file.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation on custom schemas in Web IDE and original ticket.

The branching limit of the directed acyclic graph (DAG) has been increased to 50

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

If you are using pipelines with a directed acyclic graph (Directed Acyclic Graph (DAG)), you may have noticed that the limit of 10 jobs that a job can specify in needs:, too harsh. In 13.4, the default limit was increased from 10 to 50 to allow for more complex interdependencies between jobs in your pipelines.

If you are an administrator of a user instance of GitLab, you can raise this limit even further by configuring a toggleable feature, although we do not provide official support for this.

Documentation for configuring needs: and original ticket.

Improved behavior needs for skipped jobs

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

In some cases, a skipped job in the pipeline could erroneously be considered successful for the dependencies specified in needs, causing subsequent jobs to run, which should not have happened. This behavior has been fixed in version 13.4, and needs now correctly handles cases of skipped jobs.

Documentation for configuring needs and original ticket.

Pin the last job artifact to prevent its deletion

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

GitLab now automatically pins the last artifact of a successful job and pipeline on any active branch, merge request, or tag to prevent its deletion after expiry. This makes it easier to enforce more aggressive expiration policies for cleaning up old artifacts. It helps reduce disk space consumption and ensures you always have a copy of the last artifact from the pipeline.

Documentation on artifact expiration and original ticket.

CI/CD Guide for Pipeline Optimization

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

Optimizing CI/CD pipelines can increase delivery speed and save money. We have improved our documentation by adding a brief guide to help you get the most out of optimizing your pipelines.

Documentation for improving pipeline efficiency and original ticket.

Test report sorted by test status

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) When managing a large number of projects in GitLab, you need a single source of truth about how code coverage changes over time across all projects. Previously, displaying this information required tedious and labor-intensive manual work: you had to download code coverage data from each project and consolidate it into a table.

Unit test report This is a simple way to see the results of all tests in the pipeline. However, with a large number of tests, finding failed tests can take a lot of time. Other issues that can make it difficult to use the report include scrolling through long trace output and rounding time down to zero for tests that run in less than 1 second. Now, by default, the test report prioritizes failed tests at the top when sorted, and then sorts tests by duration. This makes it easier to find failures and long-running tests. Additionally, the duration of tests is now displayed in milliseconds or seconds, making it much faster to read, and previous scrolling issues have also been resolved.

Unit Test Report Documentation and original ticket.

File Size Limits for Uploads to the Package Registry

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Package.

There are now limits on the size of package files that can be uploaded to the GitLab package registry. These limits have been introduced to optimize the performance of the package registry and prevent abuse. The limits depend on the package format. For GitLab.com, the maximum file sizes are:

  • Conan: 250MB
  • Maven: 3GB
  • NPM: 300MB
  • NuGet: 250MB
  • PyPI: 3GB

For custom GitLab instances, the default values are the same. However, an administrator can update the limits via the Rails console.

File Size Limit Documentation and original ticket.

Use CI_JOB_TOKEN to publish PyPI packages

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Package.

You can use the GitLab PyPI repository to create, publish, and share Python packages alongside source code and CI/CD pipelines. However, previously you could not authenticate to the repository using a predefined environment variable CI_JOB_TOKEN. As a result, you had to use your personal credentials to update the PyPI repository, or you might have chosen not to use the repository at all.

It is now easier to use GitLab CI/CD to publish and install PyPI packages with the predefined environment variable CI_JOB_TOKEN.

Documentation for Using GitLab CI with PyPI Packages and original ticket.

DAST Scanner Profiles on Demand

(ULTIMATE, GOLD) DevOps Cycle Stage: Secure

On-demand DAST scanning, which was introduced in the previous release, new DAST scanner profiles have been added. They enhance the configuration options for this scanning, allowing you to quickly create multiple profiles to cover various types of scans. In 13.4, the scanner profile initially includes a crawler timeout parameter, which sets how long the DAST crawler should run while trying to discover all pages of the scanned site. The profile also includes a target site timeout parameter to determine how long the scanner should wait for the site to become available before terminating the scan if the site does not respond with a status code of 200 or 300. As we continue to improve this feature in future releases, additional configuration parameters will be added to the scanner profile.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

DAST Scanner Profile Documentation and original ticket.

Simple Redirect Configuration File for GitLab Pages

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Release

If you're using GitLab Pages and want to better manage URL changes, you may have noticed that managing redirects on your GitLab Pages site was not possible. GitLab now allows you to configure rules for redirecting one URL to another for your Pages site by adding a configuration file to the repository. This feature has been made possible thanks to the contributions of Kevin Barnett (@PopeDrFreud), our Eric Eastwood (@MadLittleMods), and the GitLab team. Thank you all for your contributions.

Redirects Documentation and original ticket.

Terraform State Managed by GitLab

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Configure

Access to previous versions of Terraform state is necessary for compliance and debugging when needed. Support for versioning Terraform state managed by GitLab is available starting with GitLab 13.4. Versioning is automatically enabled for new Terraform state files. Existing Terraform state files will be automatically migrated to versioned storage in a later release.

Documentation for GitLab Managed Terraform States and original ticket.

Important Incident Notification Details

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

When handling incidents, you need to easily determine how long an alert has been open and how many times the event has triggered. These details are often crucial when assessing the impact on the customer and what your team should prioritize. On the new incident details panel, we display the alert start time, number of events, and a link to the original alert. This information is available for incidents generated from alerts.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Documentation for managing incidents and original epic.

Setting and Editing Incident Severity Parameter

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) DevOps Cycle Stage: Monitor

The incident severity parameter allows response specialists and stakeholders to determine the impact of the outage, as well as the methods and urgency of the response. As your team shares updates during incident resolution and restores functionality, they can modify this parameter. You can now edit the incident severity on the right sidebar of the 'Incident Details' page, and the severity level is displayed in the incident list.

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Incident Management Documentation and original ticket.

Creating, Editing, and Deleting Container Network Security Rules

(ULTIMATE, GOLD) DevOps Cycle Stage: Defend

This enhancement of the container network security rules editor allows users to easily create, edit, and delete their rules right from the GitLab user interface. The editor features include a .yaml mode for experienced users and a rule editor with an intuitive interface for those who are not familiar with network rules. You can find new rule management capabilities in the section Security and Compliance > Threat Management > Policies (Security & Compliance > Threat Management > Policies).

# Вышел релиз GitLab 13.4 с хранилищем HashiCorp для переменных CI и Kubernetes Agent

Network Policy Editor Documentation and original epic.

Support for Azure Blob Storage

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) All exploit scenarios related to attack vectors on

Both GitLab and GitLab Runner now support Azure Blob Storage, making it easier to run GitLab services on Azure.

GitLab instances support Azure for all types of object storage, including LFS files, CI artifacts, and backup copies. To set up Azure Blob Storage, follow the installation instructions for Omnibus or Helm chart.

GitLab Job Runners also support Azure for storing distributed cacheAzure storage can be configured through the section [runners.cache.azure].

Documentation for using Azure BLOB storage and original ticket.

Omnibus ARM64 packages for Ubuntu and OpenSUSE

(CORE, STARTER, PREMIUM, ULTIMATE) All exploit scenarios related to attack vectors on

In response to the growing demand for support for GitLab on 64-bit ARM architecture, we are pleased to announce the availability of the official ARM64 Ubuntu 20.04 Omnibus package. Many thanks to Zitai Chen and Guillaume Gardet for their tremendous contributions — their merge requests played a key role in this!

To download and install the package for Ubuntu 20.04, visit our installation page and select Ubuntu.

Documentation for ARM64 packages and original ticket.

Support for authentication using smart cards for GitLab Helm chart

(PREMIUM, ULTIMATE) All exploit scenarios related to attack vectors on

Smart cards, such as Common Access Cards (CAC), can now be used for authentication in a GitLab instance deployed via Helm chart. Smart cards authenticate against the local database using X.509 certificates. As a result, smart card support with Helm chart is now aligned with smart card support available in Omnibus deployments.

Documentation for authentication settings using smart cards and original ticket.

Detailed release notes and upgrade/installation instructions can be found in the original English post: GitLab 13.4 released with Vault for CI variables and Kubernetes Agent.

Translation from English was done by cattidourden, maryartkey, ainoneko and rishavant.

Source: habr.com

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster