With last month's release of 8.0, we made a lot of improvements to GitLab. Today we bring you GitLab 8.1, which brings you a deeper CI integration, the ability to check out any merge request, design updates, and more.
We as a team are really excited about this release not only for the increased performance and great new features but also because we are all together in Amsterdam for our team summit. Our team is fully remote from around the world so this is a special update for us to be releasing GitLab 8.1 together from Amsterdam. Next week the team will be attending OSCON so please let us know if you'll be there. We'd love to chat!
GitLab now consists of 20,000 commits! This is a great milestone for our community. With every release of GitLab, new people from this great community contribute code and time. GitLab truly is a product built by the community and we're honored to be part of it.
Zeger-Jan van de Weg did several nice contributions this release and we're happy to elect him as this month's Most Valuable Person (MVP)! Thanks Zeger-Jan!
GitLab = GL + CI
In GitLab 8.0 we integrated GitLab CI into GitLab, making it a single application where you can collaborate on, test, and deploy your code.
With GitLab 8.1, CI is everywhere. You will find build status in the commit list view, in commits, and on the front page of your projects. You'll also find graphs of CI in the graphs view and a new builds page for quick access to your project's builds.
Design Updates
In our ongoing effort to improve the look and feel of GitLab, we have made many changes big and small this release.
We now have a new color scheme for major interface elements:
Check out Merge Request
Previously, checking out a merge request from someone was only possible if the branch was in a repository you can read. Right now, you can check out any merge request made to your repository, even if it's from fork.
You could do this previously, but now we make the remote branch available locally, making it much faster.
Commit Status API
With the integration of GitLab CI in GitLab, we want to make it easier for everyone to use CI. You can now get the status of any commit through the API.
GET /projects/:id/repository/commits/:sha/statuses
In addition to this, you can even set the commit status. With this, you can easily use any existing CI in combination with GitLab and still see the commit status reflected in GitLab's interface!
POST /projects/:id/statuses/:sha
The commit status API makes it easier to integrate your existing CI tools with GitLab. We're looking forward to see what you'll use it for.
Further improvements
Auto-engage CI
GitLab will now automatically turn on CI for a project when you push
a .gitlab-ci.yml
file. If you have some shared runner setup, this should
make it easier for your team to start using CI.
Of course, you can disable CI for projects you don't want to use it for.
Fast, Faster!
We've been working hard to improve page speed. Issues, searching for users, the trending page, signing in, and more will now load much faster.
Create Directories from the Web Editor
You can now create directories straight from the interface!
Activity on Dashboard
If you prefer to see activity on the Dashboard by default, you can now easily set this in your profile:
Sign in as other user
GitLab Administrators now have a simple, useful tool: you can sign in as any other user.
Visit a user through the admin panel to find the button above.
Quick Submit
Simply use CMD+ENTER
on Mac or CTRL+ENTER
on Win / Linux to quickly
submit an issue or comment.
Faster and more reliable 'git archive' downloads
Each project in GitLab has a 'download' button that lets you grab a ZIP file with the contents of the repository at the revision you are viewing. In GitLab 8.1 we have reduced the delay before the download starts and optimized the way the ZIP file is generated and sent to the user by shifting some of the work from the main GitLab Rails application to gitlab-git-http-server.
Note: if you are not using the Omnibus packages and their built-in NGINX settings this means that you will have to update your NGINX/Apache settings when upgrading to 8.1.
GitLab Mattermost Update
Omnibus-GitLab packages are bundled with the latest version of Mattermost. Mattermost version 1.1.1 comes with a large number of improvements and is even more integrated with GitLab. Realtime notifications from GitLab can now be received by Mattermost, using incoming webhooks.
The latest version of Mattermost also includes a large number of config changes. If you have any custom configuration make sure you read the Upgrade from v0.7 to v1.1 notes and make sure you check the latest config options available for GitLab Mattermost.
Rocket Chat is still working on adding PostgreSQL compatibility and there is no estimated time when it will ship.
Other changes
This release has more improvements, including security fixes. Please check out the Changelog to see the all named changes.
Update (2015-10-27): When we released GitLab 8.0 last month, we promised to automatically remove the satellites directory in 8.1. This seems to have slipped our minds for the official 8.1 release, but we included it in the 8.1.2 patch release. See the release post for more information.
Upgrade barometer
If you are upgrading from GitLab 8.0 and none of your users are using GitLab CI then you can perform the upgrade to 8.1 without downtime. If your users are using CI you need to stop GitLab before performing the upgrade.
Note: If you are upgrading from a GitLab version prior to 8.0 and you have CI enabled, you have to upgrade to GitLab 8.0 first.
To see if your users are using GitLab CI go to
gitlab.example.com/ci/admin/projects
and look if there are any
projects. No projects means no CI.
Please be aware that by default the Omnibus packages will stop, run migrations,
and start again, no matter how “big” or “small” the upgrade is. This behavior
can be changed by adding a /etc/gitlab/skip-auto-migrations
file.
Note: If you've encountered an /etc/init.d/ci-{SERVICE} does not exist!
error during the reconfigure run, use the package 8.1.0-ce.1 or newer.
Installation
If you are setting up a new GitLab installation please see the download GitLab page.
Updating
Check out our update page.
Enterprise Edition
GitLab EE-only features like LDAP group support can be found in GitLab Enterprise Edition. For a complete overview of EE please have a look at the feature list of GitLab EE.
Access to GitLab Enterprise Edition is included with a subscription. No time to upgrade GitLab yourself? A subscription also entitles you to our upgrade and installation services.
Thanks to Cyndi for the picture of the GitLab Inc team.
We want to hear from you
Enjoyed reading this blog post or have questions or feedback? Share your thoughts by creating a new topic in the GitLab community forum.
Share your feedback