We are pleased to announce the release of GitLab 11.4 with incredible updates designed to help development teams work together more effectively. Most development teams implementing the DevOps concept tend to shorten the cycle time. Therefore, such improvements are welcomed, which reduce time losses and unnecessary work, and thus make it possible to speed up the delivery of applications and achieve better business results.
With the release of GitLab 11.4, code review has been improved using tools such as merge request reviews and the file tree in the list of differences . A new feature, feature flags, is proposed (alpha version). The Auto DevOps and CI conveyors are even more efficient because they now have the ability to migrate the PostgreSQL database and incremental scheduling . Git itself has become even faster with the advent of support for the Git v2 protocol .
The " merge request review " tool will reduce the chaos of numerous comments on the code and merge requests. The batch comment feature allows the reviewer to enter multiple comments on a code or merge request, and then finalize them and send them in one batch. Now, those who subscribe to this project can more effectively track changes.
In order to deliver a high quality code, it is necessary that the changes are reviewed and approved by the persons most suitable for this purpose. In release 11.3 , the concept of “code owner” was introduced. Now, based on the CODEOWNERS
file containing information about the owners of the code, GitLab proposes those who must review and approve a specific merge request. Thus, it is possible to review and approve changes quickly and at minimal cost. This is also useful in determining the separation of responsibilities and roles in a team when it is necessary to define reviewers for specific parts of the code.
When reviewing merge requests, you can now view the file tree. For reviewers, it simplifies and speeds up navigation between several modified files, and they can leave relevant comments and comments.
Russell Levy, co-founder and CTO of Chorus.ai , explains how the review and tree functions help their team:
We approach the review of the code quite thoroughly, and usually each request for a medium-sized merge has 10–20 comments, as well as several rounds of discussions. Using the review function reduces chaos and delays in the review process.
When working on the largest merge requests, the new feature “tree of files in the list of differences” significantly speeds up the review, because with its help you can easily navigate through the code to understand the dependencies.
We present the alpha version of the “feature flags” (feature flags), the system for enabling and disabling the functionality of the application. Development teams can now practice a continuous supply of applications, deploying new features in a production environment in small packages and reducing the risk before performing a full deployment.
We also gave all users the ability to use .gitlab-ci.yml include
additional files. Now it is available not only in the Starter version, but also in the Core. This enables all teams to use this best practice and makes managing the CI / CD pipelines easier and more efficient.
Together with the wider community of GitLab, there have been additionally many great improvements that we have included in this release. These include: new profile layout, quick access to profile status, highlighting @mentions
comments, new quick actions and the ability to close epics.
Read on and you'll learn even more about all the great features in the GitLab 11.4 release.
The most valuable person of this month ( MVP ) is Luc Piccio .
Luke added the ability to download recovery codes 2FA as a file , which simplifies their backup. 2FA recovery codes are required to restore access to your GitLab account if you lose access to your phone or one-time secret password.
Thank you, Luke, for your contribution!
Available in versions: PREMIUM, ULTIMATE, SILVER, GOLD
Code review in merge requests is a powerful feature in GitLab. Team members enter into dialogues related to specific lines of code in the list of differences, and may even resolve the inconsistencies that have arisen. However, if the differences are large in a specific merger request, the process can become quite confusing. Often, reviewers may need to leave 10 or more comments during one dialogue cycle. And it may be that the 9th or 10th comment makes earlier comments unnecessary. The end result is that the author of a merge request receives many notifications and must sort them one by one.
In this release, we present the ability to review merge requests. This will allow the reviewer to create as many draft code comments as they wish in the merge request, make sure that they are all consistent, and then send them at once. Because drafts of comments are saved in GitLab, the reviewer can even distribute his work into several sessions. He may, for example, start a review on his desktop computer during office hours, and then later in the evening form a final review on his home tablet device. As soon as drafts of comments are sent, they take the form of ordinary individual comments. This allows individual team members to review the code in the order in which it is more convenient for them, but at the same time maintain compatibility with the entire team.
In future iterations, we will improve this feature by providing a preview before executing the batch dispatch, and also combine all those notifications that are currently generated based on these comments into one batch notification .
Available in: PREMIUM, ULTIMATE, SILVER, GOLD
This feature allows you to create checkboxes for functions and control the capabilities of your software directly in the product itself. Simply create a new checkbox of the function, check it in your program using simple API instructions, and you will be able to control the program behavior in the production environment from within the GitLab itself.
Function flags are a system for enabling and disabling the functionality of your application. They allow teams to perform continuous delivery by deploying new components in a production environment in small batches so that the testing process can be monitored. Delivery of components is separated in time from their launch by the customer. This helps to reduce the risk and allows you to easily manage the on and off of certain functions.
Please note that this is an alpha function that is introduced for the first time, so we recommend that you check this function and provide feedback, and also notify you that its implementation may change in future releases.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Code review is an important technique used in every successful project, but it is difficult to understand from the unstructured list of differences what exactly has changed. GitLab now has a searchable file tree with which you can see which files have changed and go from one to another.
In the file tree, like diff-stats
, the structure and size of changes is displayed. With it, it is more convenient to view the changes and move from one difference to another. Searching the tree allows reviewers to limit code viewing to a specific subset of files by specifying a specific path or file type. This simplifies the review for those professionals who focus only on a specific subset of files from a merge request.
Previously, a list of modified files was available through a searchable drop-down list, which was most convenient for navigating to a specific file.
Available in: STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD
It is not always obvious who is the most suitable person to review code changes. Now when creating or editing a merge request, the owners of the code are specified as the persons recommended for approval of the request. This simplifies the appointment of the right person.
Support for identifying code owners was introduced in the GitLab 11.3 release. In subsequent releases in the workflow of a merge request, the degree of participation of code owners will increase. For this purpose, automatic assignment functions and requirements for approval by the owner will be provided .
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
No matter how involved you are in GitLab, your activity is a significant source of information and an indicator of participation, which is displayed directly on your personal profile page. Your personal profile should give a simple idea of ​​what you are interested in and what you are working on.
In this issue, we present an updated look and feel of the profile page, reflecting your activities through a previously familiar, but now abbreviated, personal contribution schedule. The page also shows your recent activities and the most significant personal projects in GitLab.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
In the release of GitLab 11.2, we first introduced personal status messages that allow you to display your accessibility or mood at the moment or simply to place an image of your favorite animal.
In this release, the status setting has become even simpler and smoother. When a new item “Set status” is selected in the user menu, a new modal window appears with which you can set and reset your status right in the context. In addition, the status you set is displayed in your user menu, on top of your full name and username, including the emoticon and message set.
.gitlab-ci.yml
transferred from Starter to CoreAvailable in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
We are pleased to announce that, starting with this release, the use of the "include" operator in .gitlab-ci.yml
is now available in the Core version. This will help ensure compatibility of templates and other common resources for users of free and paid versions of GitLab, as well as open up the possibility for all users to develop advanced methods using reusable code fragments in CI / CD pipelines.
only
/ except
tasks for changes in a particular path or in a specific fileAvailable in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
The need for such a function is often stated in user requests. We are proud to offer the ability to use only
/ except
rules in .gitlab-ci.yml
files for tasks in which changes occur in a specific file or along a specific (global) path.
This will provide additional control for users whose repositories contain different types of resources (assets) or assemblies. It is guaranteed that for the types of changes that have been made, only the corresponding steps will be performed; thereby reducing the overall execution time of the pipeline.
Available in: PREMIUM, ULTIMATE, SILVER, GOLD
In earlier releases, it was already possible to configure incremental deployments in Auto DevOps, and in this version we added a parameter that allows you to configure incremental deployments on a schedule . Deployment will automatically continue along a timeline until an error occurs.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
When you first set up your infrastructure or connect to an existing one, security becomes paramount. Role-based access control (RBAC) has become widely available as part of the release of Kubernetes 1.8, providing more detailed means of controlling access to Kubernetes resources.
Now GitLab integration with Kubernetes allows you to either create a cluster with RBAC support in the GKE, or connect to an existing cluster with RBAC support. At the same time, enhanced infrastructure security is provided.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Auto DevOps now supports interacting with RBAC clusters with RBAC support and deploying applications to them.
Role Based Access Control (RBAC) is an important tool that allows operators to ensure the reliability, security and efficiency of their Kubernetes cluster. Using Auto DevOps in conjunction with an RBAC-enabled cluster ensures that your applications take advantage of the enhanced security of the infrastructure.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
When using Auto DevOps to automatically detect, build, test, deploy, and monitor your application, additional features have appeared. Starting with release 11.4, Auto DevOps provides the ability to initialize or migrate a PostgreSQL database to your project.
Simply define a project variable to initialize or migrate your PostgreSQL database, and Auto DevOps does the rest.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Labels in GitLab are a very powerful tool, as they can be applied to issues (issues), merge requests and epics. The more tags you use, the harder it may be to support them.
In the previous issue, we added the ability to search for tags on the project tag list page. In this release, you can search by tags, sort tags by name, date created and date updated, and even see a list of tags that you are subscribed to. This feature is available on the tag list pages for both the group and the project.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
Merge requests are the main part of GitLab; they provide team members with transparent collaboration in code development. In particular, we encourage teams to share their work early. In this case, it is advisable to use the WIP function (work in progress) to indicate that this merging request is still under active work, and at this stage it should not be executed yet.
In this release, it will be easier for users to distinguish between requests for merging WIP and non-WIP thanks to a specially designed filter that is applicable to lists of merge requests both at the group level and at the project level. This allows users to focus on those requests that are still at an early stage of work, and not on those that are in the final stage of review before merging.
@mentions
for the current userAvailable in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
A lengthy joint discussion of a problem or a merge request often involves many users, which makes it difficult to quickly view comments directed specifically to you.
Starting with this release, comments ( @mentions
) sent to you (that is, the current user) are highlighted in a special color. This allows you to see which comments are related to you, and helps you quickly focus on them.
Available in: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab supports the use of GitLab Flavored Markdown (GFM) markup tools in most cases when working in GitLab in which you have to enter text. GFM combines powerful formatting with a simple syntax. In particular, with the help of GFM you can create tables. Previously, this was difficult, especially for large tables, since you had to type in many characters or insert a previous table in order to format it according to your needs. GFM also supports URL insertion. But sometimes you can forget the specific syntax.
Starting with this release, you can click on the table button in the GFM editor, and a new table will automatically be added. Then you can easily enter values ​​or expand the table and format it as you need. You can use this feature in descriptions and comments throughout GitLab.
Now you can click the link button, and a skeleton of URL link syntax will be created for you. You can easily put a link there and write down her name.
Thanks to George Tsiolis for the ability to insert tables!
Thanks to Jan Beckmann for the ability to insert URL links!
Available in: STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD
Work schedules help teams keep track of work as it progresses within the work phase. Usually the amount of work is determined and agreed before the start of the stage. But sometimes there may be important exceptions to this rule (for example, an error that caused an emergency or a fix for security), and a new amount of work in the form of new issues should be added to the schedule.
In this release, new problems arising during the work and resulting in a jump in the line will now be taken into account in the schedules of the tasks.
Available in: STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD
In the previous release, we expanded the allowable weight values ​​of the publication, which can now be almost anything if it is greater than zero.
API , API.
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
( ). .
, / .
: ULTIMATE, GOLD
( ) GitLab. «», «» «», . , , , , .
( ) , , API, .
: CORE, STARTER, PREMIUM, ULTIMATE
, GitLab - GitLab.
, . , , .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
-. . , , , .
« ».
: CORE, STARTER, PREMIUM, ULTIMATE
, .
: CORE, STARTER, PREMIUM, ULTIMATE
- , Docker. Docker , , #3605 .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
11.4 Auto DevOps (GitLab.com) () , , , . Auto DevOps , .
, Auto DevOps, .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
when
.gitlab-ci.yml
. , , , , , , , , .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , .
JupyterHub, Kubernetes GitLab, Rubix Nurtch, DevOps. , .
: ULTIMATE, GOLD
, . , . , , .
GitLab 11.4 . « >CI/CD> », .
: ULTIMATE, GOLD
GitLab 11.4 . , , .
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
, , . Git v2 — Git, , , ( ) (GitLab). .
. , (, git fetch origin master
) . , 100 000 , .. 10 .
Git v2 Git v2.18.0 . git config , git config --global protocol.version 2
. Git v2 GitLab.com SSH, .
: PREMIUM, ULTIMATE
Geo .
GitLab 11.4 Geo , . « », «» . «», .
UX !
: CORE, STARTER, PREMIUM, ULTIMATE
Omnibus GitLab Prometheus, . Prometheus 2.x, . . , - , 1.x.
Prometheus 2.4.2 GitLab 11.4 Omnibus, .
• 11.4 Prometheus 2.
• . gitlab-ctl prometheus-upgrade
, Prometheus , , . Prometheus .
• GitLab 12.0 Prometheus 2.0 . Prometheus 1.0 .
Prometheus 2.4.2, .
: PREMIUM, ULTIMATE
Geo . Geo GitLab 11.4:
•
•
•
•
• Sidekiq
, GitLab Geo .
: PREMIUM, ULTIMATE, SILVER, GOLD
— Geo , GitLab. 11.3 SSH git push
.
, Geo URL-.
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab Runner 11.4! GitLab Runner — , CI/CD GitLab.
• JSON
• -
• -
•
•
• gitlab_runner_jobs_total
• ,
• Fix K8S
GitLab Runner: CHANGELOG
: CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD
GitLab 11.4:
• Markdown
•
• , ,
•
•
• diff
• « » Gitaly
•
: CORE, STARTER, PREMIUM, ULTIMATE
• redis
3.2.1. , . 11.4 gitlab-ctl restart redis
, , .
• GitLab 11.4 Mattermost 5.3 , Slack . , . , , .
• git
2.18.1, libpng
— 1.6.35.
• gnupg
2.2.10, gpgme
1.10.0, libgcrypt
1.8.3, npth
1.6, libgpg-error
1.32 libassuan
2.5.1.
• trusted_certs
0644
, 0755
.
GitLab 11.4 ( 22 2018 ) Docker 1.12 (API 1.24) Docker . 11.4 .
: 22 2018 .
GitLab 11.4 ( 22 2018 ) Prometheus 1.0 Omnibus GitLab. Prometheus 2.0, 1.0. 2.0 , , .
GitLab 12.0 Prometheus 2.0, . Prometheus 1.0 .
: GitLab 12.0
GitLab 11.3 11.4, . .
, , , .
GitLab.com 34 , .
GitLab Geo Geo .
, Omniauth . , . , omniauth, 11.4. , , , Omniauth .
, :
• GitLab Community Edition
• GitLab Enterprise Edition
• GitLab Runner
GitLab, . GitLab .
GitLab : (SaaS) .
• Core : , GitLab .
• Starter : , , , .
• Premium : , , 24/7.
• Ultimate : , .
SaaS — GitLab.com : , GitLab; .
• Free : . Free , Gold .
• Bronze : , .
• Silver : , DevOps, .
• Gold : CI/CD. Gold , .
Source: https://habr.com/ru/post/427755/
All Articles