⬆️ ⬇️

GitLab released version 8.8

Our third GitLab Summit took place this time in Austin, Texas, and we released our 54th release on the 22nd, despite Sunday. GitLab 8.8 is ready to work with an improved GitLab CI, increased performance, convenient templates and much more.



The most valuable person (MVP) of this month is Matt Oaks, for his contribution to the work on hiding the text file of differences, by default on the branch with .gitattributes.



Thanks Matt!

')

image



Deployment Sequences (Pipelines)



GitLab has a powerful built-in continuous integration action (CI) support system. No need to switch to another application, no need to manipulate permissions and access, just use GitLab.



Previously, you could customize deployment sequences. GitLab 8.8, GitLab CI will visualize these sequences, and thus you will see how things are.



image



In the new Pipeline view, you will see all the associated assemblies for one commit and the result of each stage of your deployment sequence. This allows you to quickly see the errors and correct them.



image



By default, GitLab will offer the classic steps of building, testing, deploying (as before), but you can freely define any other step in the .gitlab-ci.yml file.



GitLab Container Registry





In this release we remade GitLab CI. First, it now comes with deployment sequences (pipelines) and the GitLab container registry. GitLab Container Registry is a secure and private registration for the Docker component. This is not just an offline registry; It is fully integrated with GitLab. So if you have already updated, you have this feature! Our integrated container registry does not require additional installation. It allows you to easily load and unload components from the GitLab CI. And it's free. We were so excited about this feature that we wrote a whole post about it on our blog.



.Gitignore templates





From time to time, you use some kind of personal information, secret documents, or just junk in directories followed by Git. In such situations, you can add files and directories you want to ignore to the .gitignore file.



With GitLab 8.8, creating a .gitignore file has become much easier. When creating a file in the web interface, GitLab will now automatically show you a drop-down list in which you can choose from a variety of different templates the one that you will use for your .gitignore file.



Of course, you can still change it to your liking.



Improved GitHub Importer





In addition, in GitLab 8.8 we improved our GitHub importer. An existing GitHub importer could already import such things as repository data, problems, wiki pages, milestones, and names. With GitLab 8.8, importing has become more reliable, and now, the importer will also pull up requests without a source or target branch.



New shortcut keys





Keyboard shortcuts are a great way to quickly achieve a goal. In GitLab 8.8, we added two shortcut keys and improved the help call key:



In the project: i to go to the new problem page.

In problems: l to open the drop-down list of items related to the merits.

Globally: Holding for a while? now you switch the modal window.



Space change switch





When developers save their versions to the repository, they may contain a number of minor changes to the logic, such as spaces, line breaks, etc., along with important code changes. We added a button in the user interface that allows you to hide these minor changes for easy comparison of versions.

image



Health check





Software can be much easier than humans. To see if GitLab is healthy, no doctor is required. Just specify your monitoring in / health_check and look for status 200.



This endpoint can provide uptime for monitoring services such as Pingdom, Nagios, and NewRelic.



User Interface Improvements





In this release, we again improved a lot of big and small functions.



First of all, you will see that the group and profile pages use the new navigation paradigm. The left sidebar will remain static, and the top panel will provide you with navigation at a deeper level.



image



We believe that this change will make moving around GitLab easier.



Other changes





This release has more improvements, including security fixes. Please review Changelog to see all changes.



Hiding a text file of differences through .gitattributes





When you mark a file as non-diffable in a .gitattributes file, GitLab will now follow this rule and show no differences.



Thanks to Matt Oaks for this input!



Milestone Links to Markdown





Now you can reference the milestones in Markdown!



For reference, the milestone is one word, use% with the name. For example:% 8.8. More words? Wrap it in ":%" Cool milestone. "



Of course, this also works in cross-projects and links:



image



Do you have any other ideas for expanding our Markdown? Let us know!



Upgrade instructions





Upgrading from 8.7.x to 8.8.0 does not require idle time.



Note: We assume that you are updating from the latest version. If not, you should also check which intermediate versions you are missing. If you are upgrading from GitLab to version 8.0, you must have CI enabled, first of all you must upgrade to GitLab 8.0.



Note that, by default, Omnibus packages will be stopped, the migration will start, and then they will start again, no matter how big or small the update will be. This behavior can be changed by adding the / etc / gitlab / skip-auto-migrations file.



Removing the function "Fog gem"





The “Fog gem” function will be removed at 8.9 (next month). It is currently used to connect the GitLab backup service to various storage providers, but only a few of the micro-gems are actually used. We intend to enable only the fog-core feature and support for uploading backups to AWS, Google Compute and Microsoft Azure in 8.9. If you are backing up GitLab in other services, please open the problem so we can consider the request to include your specific use case.



Changes in bin / web and bin / background_jobs





If you installed GitLab from a source using SystemD / Upstart custom services, or if you are accompanying a package for GitLab, then you should know that bin / web and bin / background_jobs now fulfill the requirements for launching Unicorn and Sidekiq respectively. This is only relevant if you set up a surveillance system to count the number of forks during the launch. The official GitLab initialization script and our Omnibus packages do not affect this change.



GitLab Mattermost 3.0 is not included in release 8.8





The Mattermost 3.0 is a major release that requires manual upgrades and is therefore not included in the 8.8 omnibus-gitlab package. Existing GitLab Mattermost users will have to wait until GitLab 8.9 is released, where the upgrade to Mattermost 3.1 will be automated. If you are interested in reading about how this solution will be implemented, then check out this question on GitLab.com. In addition, there will be a design update for the next release, so please share your impressions there.

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



All Articles