📜 ⬆️ ⬇️

GitLab 11.11: Several Responsible for Merge Requests and Improvements for Containers


More collaboration and notifications


At GitLab, we are constantly looking for new ways to improve collaboration across the entire DevOps life cycle. We are happy to announce that from this issue we support several responsible persons for one Merge Request ! This feature is available from the GitLab Starter level and truly embodies our motto: “Everyone can contribute . We know that a lot of people can work with one merge request so that everything is exactly in order, and now you have the opportunity to assign several people responsible for merge requests!


And DevOps teams now receive automatic notifications about deployment events in the Slack and Mattermost . Add new notifications to the list of sending events in these two chats, and your team will almost instantly learn about new deployments.


Reduced cost with support for Docker containers on Windows and preparation of Kubernetes clusters at the instance level


We adore containers! Containers spend less system resources than virtual machines and improve application portability. With the release of GitLab 11.11, we are supporting the Windows Container Executor for GitLab Runner , so now you can use Docker containers in Windows and enjoy the advanced features of pipeline orchestration and management.


GitLab Premium (for self-managed instances only) now offers a caching proxy for dependencies for Docker images . This addition will speed delivery, because now you will have a proxy cache for frequently used Docker images.


Users of self-managed GitLab instances can now prepare a Kubernetes cluster at the instance level , and all groups and projects in the instance will use it for their deployments. With this integration, GitLab with Kubernetes will automatically create resources for specific projects for added security.


And that is not all!


In addition to new features for collaboration and additional notifications, we added guest access to releases , increased CI Runner additional minutes for GitLab Free , simplified checks using automatic discussion resolution when you apply a sentence , and much more!


This month’s most valuable employee ( MVP ) is Kia Mei Somabes

In this release, we added the ability to download individual folders from the repositories, rather than the entire contents. Now you can upload just a few of the necessary files. Thank you, Kia Mei Somabes!

The main features of GitLab 11.11


Windows Container Executor for GitLab Runner


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


In GitLab 11.11, we added a new artist to GitLab Runner so that Docker containers can be used in Windows. Previously, to orchestrate Docker containers in Windows, you had to use a shell, and now you can work with Docker containers directly in Windows, almost the same as in Linux. Now users of Microsoft platforms have more options for pipeline orchestration and management.


This update includes improved support for PowerShell in GitLab CI / CD, as well as new auxiliary images for different versions of Windows containers. Your own Windows runners, of course, can be used with GitLab.com, but for now they are not on the list of publicly available tools.



Caching dependency proxy for container registry


PREMIUM, ULTIMATE


Commands often use containers in the assembly pipelines, and a caching proxy for frequently used images and upstream packages is a great way to speed up pipelines. With a local copy of the required layers, accessible through a new caching proxy, you can more effectively work with common images in your environment.


So far, the container proxy is only available for self-managed instances on the Puma web server (in experimental mode) .



Several responsible for Merge Requests


STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD


Quite often, several people at once work on a function in a common branch and a merge-request, for example, when front-end and back-end developers work closely with each other or when developers work in pairs, as in extreme programming.


In GitLab 11.11, several people can be assigned to Merge Requests. As with several task managers, lists, filters, notifications, and APIs can be used here.



Instance Level Kubernetes Cluster Configuration


CORE, STARTER, PREMIUM, ULTIMATE


The Kubernetes security and training model is evolving, and now it is possible to serve a large number of customers through one common cluster.


In GitLab 11.11, users of self-managed instances can now prepare a cluster at the instance level, and all groups and projects in the instance will use it for their deployments. With this integration, GitLab with Kubernetes will automatically create resources for specific projects for added security.



Slack and Mattermost Deploy Notifications


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Now you can set up automatic notifications about deployment events in the team channel thanks to integration with the Slack and Mattermost chats , and your team will be aware of all important events.



Guest Access to Issues


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Now guest users of your projects can view releases published on the Releases page. They will be able to upload published artifacts, but will not be able to download the source code or see information about repositories, such as tags or commits.



Other improvements in GitLab 11.11


Serialized commit graphs for better performance


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Many Git operations require a commit graph traversal, for example, the computation of a merge base or the output of branches that contain a commit. The more commits, the slower these operations are performed, because to crawl you need to load each object from disk to read its pointers.


In GitLab 11.11, we included the function of serialized commit graphs introduced in the latest releases of Git to calculate and store this information in advance. Now crawls in large repositories are much faster. The commit graph will be automatically created at the next garbage collection in the repository.


Read about how a serialized commit graph was created in a series of articles from one of the authors of this feature.


Extra Minutes CI Runner: Now for Free Plans


FREE, BRONZE, SILVER, GOLD


Last month, we added the ability to buy additional CI Runner minutes, but only for GitLab.com paid plans. In this issue, you can buy minutes in free plans.


Upload archives directories in the repository


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Depending on the type and size of the project, the archive of the entire project can be loaded for a long time and is not always necessary, especially in the case of large monospositories. In GitLab 11.11, you can download an archive of the contents of the current directory, including subdirectories, to select only the necessary folders.


Thanks for the work, Kia Mei Somabes !



Application of the proposal now automatically allows discussion.


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


The change proposal makes it easier to work together on Merge Requests: you can now do without copy-paste to make the proposed change. In GitLab 11.11, we made this process even simpler: now the discussion is automatically resolved when the proposal is applied.



Time counter on the taskbar sidebar


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Side taskbars should look the same in the board and task views. Therefore, GitLab now has a time counter on the side taskbar on the taskboard. Just go to the task board, click on the task, and the sidebar opens with a time counter.



Information about deployments in the Environments API


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


We added the ability to query specific environment information from the Environments API to know which commit is deployed in the environment right now. This will simplify automation and reporting for GitLab Environments users.


Negative coincidence of variables for pipeline rules


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Now you can check the negative equality or coincidence of patterns ( != And !~ ) In the .gitlab-ci.yml when checking the values ​​of environment variables, so control of the behavior of the pipelines has become more flexible.


Run all manual jobs at a stage with one click


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


In GitLab 11.11, users who have many manual jobs at stages can now perform all such jobs at one stage by clicking the “Play all” button to the right of the stage name in pipeline view.


Creating a file directly from the environment variable


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Environment variables are often used to create files, especially for secrets that need protection and are available only in a specific environment pipeline. To do this, you set the contents of the file as the contents of a variable and create a file in the job that contains the value. With the new file environment variable, this can be done in one step, even without changing .gitlab-ci.yml.


Endpoint API for vulnerability information


ULTIMATE, GOLD


Now you can query the GitLab API for all vulnerabilities identified in the project. With this API, you can create machine-readable vulnerability lists with filters by type, validity, and severity.


Full dynamic scan capability for DAST


ULTIMATE, GOLD


In GitLab, you can dynamically test application security (Dynamic Application Security Testing, DAST) as part of the CI pipeline. Starting with this release, you can choose full dynamic scan instead of standard passive scan. Full dynamic scan protects against more vulnerabilities.


Installing Prometheus in clusters at the group level


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


In this release, GitLab has the opportunity to attach a Kubernetes cluster to the whole group. We also added the ability to install a single instance of Prometheus on this cluster to make it easier to monitor all projects in the cluster.


Information about ignoring vulnerabilities in the security panel


ULTIMATE, GOLD


On the GitLab security panels, administrators can view ignored vulnerabilities. To optimize the workflow, we added the ability to view the ignore information directly to the security panel.


Create custom metrics diagrams on the dashboard


PREMIUM, ULTIMATE, SILVER, GOLD


Create new charts with custom performance metrics right on the toolbar on the metrics dashboard. Users can now create, update, and delete visualizations of metrics on the dashboard by clicking the Add Metric button in the upper right corner of the toolbar on the dashboard.



Tasks from notifications now open on behalf of GitLab Alert Bot


PREMIUM, ULTIMATE, SILVER, GOLD


Now the tasks that open from notifications will be GitLab Alert Bot, so you can immediately see that the task is created automatically from an important notification.


Autosave epic descriptions to local storage


ULTIMATE, GOLD


The epic descriptions were not stored in the local repository, so the changes disappeared if you did not explicitly save them when you changed the epic description. In GitLab 11.11, it became possible to save epic descriptions to local storage. This means that now you can easily return to changing the description of the epic, if an error occurred, you were distracted or accidentally logged out of the browser.


Mirroring support for GitLab for Git LFS


STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD


Using mirroring, you can replicate Git repositories from one place to another. This makes it easy to store on the GitLab server replica repository located somewhere else. GitLab now supports mirroring repositories with Git LFS, so this feature is available even to repositories with large files, for example, with textures for games or scientific data.


Permissions to read and write to the repository for personal access tokens


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Many personal access tokens have permission to change at the api level, but full access to the API may give too many rights to some users or organizations.


Thanks to community input, personal access tokens can now only have read and write permissions for project repositories, rather than deeper API-level access to sensitive GitLab areas like parameters and membership.


Thank you, Horatiu Eugen Vlad ( Horatiu Eugen Vlad )!


Add basic support for GraphQL group queries


FREE, BRONZE, SILVER, GOLD, CORE, STARTER, PREMIUM, ULTIMATE


Using the GraphQL API, users can specify exactly what data they need and receive all the necessary data in a few queries. Starting with this release, GitLab supports adding basic group information to the GraphQL API.


Login with Salesforce credentials


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


GitLab loves Salesforce developers, and to support this community, we allow users to log in to GitLab with Salesforce.com credentials. Now in instances, you can configure GitLab as an application connected to Salesforce to use Salesforce.com to sign in to GitLab with one click.


SAML SSO is now required for web access.


PREMIUM, ULTIMATE, SILVER, GOLD


We are expanding the single sign-on (SSO) requirement at the group level, introduced in release 11.8, with strict verification of group and project resources so that users can only access when logging in from SAML. This is an additional level of access control for organizations that value security and use GitLab.com through SAML SSO. Now you can make SSO a requirement, knowing that the users in your group use SSO.


Filter by newly created or modified data for the epic API


ULTIMATE, GOLD


Previously, it was not easy to query newly created or modified data using the epic API on GitLab. In release 11.11, we added additional filters created_after , created_before , updated_after and updated_before to ensure consistency with the tasks API and quickly find modified or newly created epics.


Biometric authentication with UltraAuth


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


UltraAuth specializes in passwordless biometric authentication. Now we support this authentication method on GitLab!


Thanks, Kartikey Tanna ( Kartikey Tanna )!


GitLab Runner 11.11


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


Today we released GitLab Runner 11.11! GitLab Runner is an open source project that is used to run CI / CD jobs and send the results back to GitLab.



Omnibus Improvements


CORE, STARTER, PREMIUM, ULTIMATE


We made the following improvements to Omnibus in GitLab 11.11:



Circuit improvement


CORE, STARTER, PREMIUM, ULTIMATE


We made the following improvements to the Helm charts in GitLab 11.11:



Performance improvements


CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD


We continue to improve GitLab performance with each release for GitLab instances of any size. Some improvements in GitLab 11.11:



Obsolete features


GitLab Geo will provide hash storage in GitLab 12.0


GitLab Geo requires hashed storage to mitigate competition on secondary nodes. This was noted in gitlab-ce # 40970 .


In GitLab 11.5, we added this requirement to the Geo documentation: gitlab-ee # 8053 .


In GitLab 11.6, sudo gitlab-rake gitlab:geo:check checks whether hashed storage is enabled and all projects are migrated. See gitlab-ee # 8289 . If you are using Geo, please run this check and migrate as soon as possible.


In GitLab 11.8, a constantly disabled warning will be displayed on the Admin Area ›Geo› Nodes page if the above checks are not enabled. gitlab-ee! 8433 .


In GitLab 12.0, Geo will use hashed storage requirements. See gitlab-ee # 8690 .


Date of deletion: June 22, 2019


GitLab Geo will use PG FDW in GitLab 12.0


This is necessary for the Geo Log Cursor, as it significantly improves the performance of some synchronization operations. It also improves the performance of requests for the status of Geo nodes. Previous requests had too low performance in large projects. See how to configure this in Geo database replication . In GitLab 12.0 Geo will require PG FDW. See gitlab-ee # 11006 .


Date of deletion: June 22, 2019


The Sentry parameters for error reporting and logging will be removed from the user interface in GitLab 12.0


These parameters will be removed from the user interface in GitLab 12.0 and will be available in the gitlab.yml file. In addition, you can define a Sentry environment to distinguish between multiple deployments. For example, development, staging and production. See gitlab-ce # 49771 .


Date of deletion: June 22, 2019


Limiting the maximum number of pipelines created by a single shipment


Previously, GitLab created pipelines for the HEAD each branch in the send. This is convenient for developers who send several changes at once (for example, to the feature branch and develop branch).


But when sending a large repository, where there are many active branches (for example, to move, mirror or branch), you do not need to create a pipeline for each branch. Starting with GitLab 11.10, we create a maximum of 4 pipelines when sending.


Date of deletion: May 22, 2019


Outdated legacy GitLab Runner code paths


Starting with Gitlab 11.9, GitLab Runner uses a new method of cloning / calling a repository. Currently GitLab Runner will use the old method if the new one is not supported. See this task for details.


In GitLab 11.0, we changed the configuration of the metrics server for GitLab Runner. metrics_server will be removed in favor of listen_address in GitLab 12.0. See this task for details.


In version 11.3, GitLab Runner began to support several cache providers ; which led to new settings for a specific S3 configuration . The documentation provides a table of changes and instructions for transitioning to a new configuration. See this task for details.


These paths will not be available in GitLab 12.0. As a user, you do not need to change anything, just make sure that the GitLab instance works with version 11.9+ when upgrading to GitLab Runner 12.0.


Date of deletion: June 22, 2019


Obsolete option for feature entry point for GitLab Runner


In 11.4 GitLab Runner, the FF_K8S_USE_ENTRYPOINT_OVER_COMMAND feature is FF_K8S_USE_ENTRYPOINT_OVER_COMMAND to fix issues like # 2338 and # 3536 .


In GitLab 12.0, we will switch to the correct behavior, as if the feature has been disabled. See this task for details.


Date of deletion: June 22, 2019


Outdated support for Linux distribution, which has reached EOL, for GitLab Runner


Some Linux distributions in which you can install GitLab Runner have served their own.


In GitLab 12.0, GitLab Runner will no longer distribute packages to such Linux distributions. A complete list of distributions that are no longer supported can be found in our documentation . Thank you, Javier Jardón , for your contribution !


Date of deletion: June 22, 2019


Remove old GitLab Runner Helper commands


As part of adding support for Windows, Docker executor had to abandon some of the old commands that are used for the helper image .


In GitLab 12.0, GitLab Runner is launched using new commands. This applies only to users who override the helper image . See this task for details.


Date of deletion: June 22, 2019


Removing legacy git clean mechanism from GitLab Runner


In GitLab Runner 11.10, we provided the ability to customize how Runner executes the git clean command. In addition, the new cleanup strategy removes the use of git reset and places the git clean command after the upload step.


Since this change in behavior may affect some users, we have prepared the FF_USE_LEGACY_GIT_CLEAN_STRATEGY parameter. If set to true , it will restore the legacy cleanup strategy. More on using function parameters in GitLab Runner can be found in the documentation .


In GitLab Runner 12.0, we will remove support for the legacy cleanup strategy and the ability to restore it using the function parameter. See in this problem .


Date of deletion: June 22, 2019


Group project templates are available only for Silver / Premium plans.


When we presented the group-level project templates in release 11.6, we accidentally made this feature for Premium / Silver available to all plans.


We fix this bug in release 11.11 and give another 3 months to all users and instances below the Silver / Premium level.


From August 22, 2019, group project templates will only be available for Silver / Premium and higher, as described in the documentation.


Date of deletion: August 22, 2019


Discontinued support for Windows batch jobs


In GitLab 13.0 (June 22, 2020) we plan to abandon support for batch jobs on the Windows command line in GitLab Runner (for example, cmd.exe ) in favor of enhanced support for Windows PowerShell. More in this task .


Now our vision of corporate DevOps will correspond to Microsoft’s position that PowerShell is the best option for automating enterprise applications in Windows environments. If you want to continue using cmd.exe , you can call these commands from PowerShell, but we will not directly support Windows batch jobs due to several inconsistencies that lead to high maintenance and development costs.


Date of deletion: September 22, 2019


Git 2.21.0 or higher required


Starting from GitLab 11.11, Git 2.21.0 is required to run. Omnibus GitLab is already shipped with Git 2.21.0 , but users of initial installations with previous versions of Git will have to upgrade.


Date of deletion: May 22, 2019


Outdated Kubernetes Service Template


In GitLab 12.0, we plan to abandon the Kubernetes service template at the instance level in favor of the cluster configuration at the instance level, presented in GitLab 11.11.


All self-managed instances where the service template is used will be transferred to the cluster at the instance level when upgrading to GitLab 12.0.


Date of deletion: June 22, 2019


Discard mapping by app label on Kubernetes Deploy panels


In GitLab 12.0, we plan to abandon the mapping by the app label in the Kubernetes Deploye selector. In GitLab 11.10, we introduced a new matching mechanism that looks for matches on app.example.com/app and app.example.com/env in order to output the layouts to the panel.


In order for these deployments to be displayed on the Deployments panels, you just need to send a new deployment, and GitLab will apply the new labels.


Date of deletion: June 22, 2019


GitLab 12.0 packages will be signed with an extended signature.


On May 2, 2019, GitLab extended the validity of signing keys for Omnibus GitLab packages from 08/01/2019 to 07/01/2020. If you are verifying package signatures and want to update your keys, simply follow the instructions in the documentation to sign Omnibus packages again.


Date of deletion: June 22, 2019


Change log


Look for all these changes in the change log:



Installation


If you are setting up a new GitLab installation, visit the GitLab download page .


Update


→ Check out the update page.


')

Source: https://habr.com/ru/post/453818/


All Articles