A few days ago, GitLab officially released version 14.2 of its web-based Git repository manager, GitLab. The update brings more than 50 new features, including the introduction of a Build Cloud beta for macOS, a live preview of Markdown for the web IDE and editor, enhanced Gitpod integration, cloud CI/CD integration, and new DevOps adoption metrics.

Gitlab

Major feature updates

GitLab Build Cloud for macOS beta

In older versions, Apple ecosystem developers on GitLab SaaS needed to install, manage, and run GitLab Runner on their macOS systems to perform CI/CD workflows. The new update introduces Build Cloud for macOS, a GitLab Runner-powered build platform that integrates with GitLab SaaS CI/CD. It can be used to build, test, and deploy macOS, iOS, and tvOS applications.

The following documentation shows a sample .gitlab-ci.yml file for launching the macOS runner.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
.macos_buildcloud_runners:
  tags:
    - shared-macos-amd64
  image: macos-11-xcode-12
stages:
  - build
  - test
before_script:
 - echo "started by ${GITLAB_USER_NAME}"
build:
  extends:
    - .macos_buildcloud_runners
  stage: build
  script:
    - echo "running scripts in the build job"
test:
  extends:
    - .macos_buildcloud_runners
  stage: test
  script:
    - echo "running scripts in the test job"

This new service from GitLab is said to be a joint offering with MacStadium, a company that provides hosted Mac build machines and servers.

Editor Live Preview Markdown

The new editor offers a new live preview mode option for Markdown files, previously a preview tab, now offers a split screen view where the preview is automatically updated as the contents of the file are edited.

GitHub doesn’t have a live preview of Markdown at the moment, but you can open any repository in your browser and replace com with dev in the github.com link to open an online VS Code editor for quick viewing and editing of your code.

Deeper Gitpod Integration

Gitpod integration, introduced in GitLab 13.5, helps you manage complex development environments. After defining the project configuration in code, a pre-built cloud-based development environment can be launched with a single click. This easy workflow makes it faster than ever to generate new changes. However, starting a Gitpod environment to review existing merge requests means building on the master branch before switching to the target branch and building again.

Now in GitLab 14.2, you can launch Gitpod directly from the merge request page and pre-configure it to use the target branch to speed up reviews and reduce the need for context switching. When Gitpod integration is enabled, the merge request will display a grouped “Open in” button, which will open the merge request in the Web IDE or Gitpod.

No stage pipingNo stage piping

needs Using the keyword in the pipeline configuration helps to reduce cycle times by ignoring phase sequencing and running jobs without waiting for others to finish. Previously, needs could only be used between jobs in different phases.

In the new version, this restriction has been removed, so that the required needs can be defined between any jobs. It is now possible to create a complete CI/CD pipeline by having needs include an implicit configuration of the execution order in each job, without the need to use phases. This allows users to define a less lengthy pipeline that takes less time to create and can run faster.

In addition to the features mentioned above, this update contains a number of minor feature updates as well as performance improvements and bug fixes.

Competition with other hosting platforms

A few years ago, Microsoft acquired the GitHub platform for $7.5 billion to strengthen GitHub’s use in the enterprise, empower developers and expand the user base for development tools and services. gitHub is now also taking advantage of its Azure code space and Visual Studio Code editor for integration. Meanwhile competitors such as GitLab include Atassian, BitBucket and others.

Features such as social coding, continuous integration, and application performance monitoring help GitLab stand out from the crowd. GitLab is now the only integrated product that covers the entire software development lifecycle, from project planning to application performance monitoring.

GitLab is currently experiencing a lot of development and feature updates, with new releases basically every month. This update also provides a preview of the upcoming GitLab 14.3 release, which we’ll see in late September according to GitLab’s monthly release schedule.