index.html.haml 8.4 KB
---
layout: default
title: GitLab Continuous Integration
suppress_header: true
extra_css:
  - gitlab-feature-landing-page.css
---
.wrapper
  .image-title
    .color-bg
      %div
        %h1 GitLab Continuous Integration
        %h3#ci-subt GitLab has integrated CI and CD to test, build and deploy your code
  .sub-wrapper
    .container
      .row.advantages
        .col-xs-1.col-md-1
        .col-xs-10.col-md-10
          %h2 What Are The Advantages?
          %ul
            %li
              %b Integrated:
              GitLab CI is part of GitLab. You can use it for free on
              %a{href: "https://gitlab.com/"} GitLab.com
            %li
              %b Easy to learn:
              See our
              %a{href: "https://docs.gitlab.com/ce/ci/quick_start/"} Quick Start
              guide
            %li
              %b Beautiful:
              GitLab CI offers the same great experience as GitLab. Familiar, easy to use, and beautiful.
            %li
              %b Scalable:
              Tests run distributed on separate machines of which you can add as many as you want
            %li
              %b Faster results:
              Each build can be split in multiple jobs that run in parallel on multiple machines
            %li
              %b Continuous Delivery (CD):
              multiple stages, manual deploys,
              %a{href: "https://docs.gitlab.com/ce/ci/environments.html"} environments,
              and
              %a{href: "https://docs.gitlab.com/ce/ci/variables/"} variables
            %li
              %b Open source:
              CI is included with both the open source GitLab Community Edition and the proprietary GitLab Enterprise Edition
        .col-xs-1.col-md-1
      %hr.divider/
      .row.more-features
        .col-xs-1.col-md-1
        .col-md-5.hidden-xs.hidden-sm
          .gitlab-ci-image
        .col-xs-10.col-md-5
          %h2 Features
          %ul
            %li
              %b Multi-platform:
              you can execute builds on Unix, Windows, OSX, and any other platform that supports Go.
            %li
              %b Multi-language:
              build scripts are command line driven and work with Java, PHP, Ruby, C, and any other language.
            %li
              %b Stable:
              your builds run on a different machine than GitLab.
            %li
              %b Parallel builds:
              GitLab CI splits builds over multiple machines, for fast execution.
            %li
              %b Realtime logging:
              a link in the merge request takes you to the current build log that updates dynamically.
            %li
              %b Versioned tests:
              a
              %a{href: "https://docs.gitlab.com/ce/ci/yaml/"} .gitlab-ci.yml file
              that contains your tests, allowing everyone to contribute changes and ensuring every branch gets the tests it needs.
            %li
              %b Pipeline:
              you can define multiple jobs per stage and you can
              = succeed "." do
                %a{href: "https://docs.gitlab.com/ce/ci/triggers/"} trigger other builds
            %li
              %b Autoscaling:
              you can
              %a{href: "https://about.gitlab.com/2016/03/29/gitlab-runner-1-1-released/"} automatically spin up and down VM's
              to make sure your builds get processed immediately and minimize costs.
            %li
              %b Build artifacts:
              you can upload binaries and other
              %a{href: "https://docs.gitlab.com/ce/ci/build_artifacts/"} build artifacts
              to GitLab and browse and download them.
            %li
              %b Test locally
              there are
              %a{href: "https://docs.gitlab.com/runner/executors/"} multiple executors
              and you can
              = succeed "." do
                %a{href: "https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/312"} reproduce tests locally
            %li
              %b Docker support:
              you can easily spin up other Docker containers as a
              %a{href: "https://docs.gitlab.com/ce/ci/services/"} service
              as part of the test and
              = succeed "." do
                %a{href: "https://docs.gitlab.com/ce/ci/docker/using_docker_build.html"} build docker images
        .col-xs-1.col-md-1
      %hr.divider/
      .row.integration
        .col-xs-1.col-md-1
        .col-xs-10.col-md-6
          %h2 Fully integrated with GitLab
          %ul
            %li
              %b Fully integrated
              with GitLab.
            %li
              %b Quick project setup:
              Add projects with a single click, all hooks are setup automatically via the GitLab API.
            %li
              %b Merge request integration:
              See the status of each build within the Merge Request in GitLab.
        .hidden-xs.hidden-sm.col-md-4
          %img.gitlab-raccoon-dog-image.hidden-xs{alt: "", src: "/images/logo.png"}/
        .col-xs-1.col-md-1
      %hr.divider/
      .row.architecture
        .col-xs-1.col-md-1
        .col-xs-10.col-md-5
          %h2 Architecture
          .architecture-text
            %p
              %b GitLab CI
              is a part of GitLab, a web application with an API
              that stores its state in a database.
              It manages projects/builds and provides a nice user interface,
              besides all the features of GitLab.
            %p
              %b GitLab Runner
              is an application which processes builds. It
              can be deployed separately and works with GitLab CI through an API.
            %p
              In order to run tests, you need at least one
              %b GitLab
              instance
              and one
              = succeed "." do
                %b GitLab Runner
        .hidden-xs.hidden-sm.col-md-6
          %img.gitlab-arch.hidden-xs{alt: "", src: "/images/ci/arch-1.jpg"}/
      %hr#gitlab-runner.divider/
      .row.installation
        .col-xs-1.col-md-1
        .col-md-3.hidden-xs.hidden-sm
          %i.fa.fa-download.5x
        .col-xs-10.col-md-7
          %h2#gitlab-runner GitLab Runner
          %p
            To perform the actual build, you need to install GitLab Runner which
            is written in Go.
          %p
            It can run on any platform for which you can build Go binaries,
            including Linux, OSX, Windows, FreeBSD and Docker.
          %p
            It can test any programming language including .Net, Java, Python, C, PHP and others.
          %p
            GitLab Runner has
            %a{href: "https://docs.gitlab.com/runner#features"} many features
            including
            = succeed "," do
              %a{href: "https://docs.gitlab.com/runner/configuration/autoscale.html"} autoscaling
          %p
          %h3
            %a{href: "https://docs.gitlab.com/runner/install"} Install GitLab Runner
          .col-xs-1.col-md-1
      %hr.divider/
      .row.links
        .col-xs-1.col-md-1
        .col-xs-11.col-md-6
          %h2 Help and More Information
          %ul
            %li
              Please see
              %a{href: "https://about.gitlab.com/getting-help/"} Getting help for GitLab
              if you have questions.
            %li
              Propose and discuss new features of CI in the
              %a{href: "https://gitlab.com/gitlab-org/gitlab-ce/issues"} GitLab CE issue tracker
              and tag them with the 'CI' label.
            %li
              The
              %a{href: "https://docs.gitlab.com/ce/ci/"} documentation
              can be found in the doc for CE.
            %li Since version 8.0, GitLab CE/EE and GitLab CI are a single product.
            %li
              See the presentation on
              %a{href: "https://docs.google.com/presentation/d/1OGgk2Tcxbpl7DJaIOzCX4Vqg3dlwfELC3u2jEeCBbDk"} Why CI/CD?
        .col-xs-6.col-md-4
          %i.fa.fa-code.5x.hidden-xs.hidden-sm
          
.page-container.gitlab-version-section.text-center.animated
  .container
    %h1
      Choose the version of GitLab that is best for you
    %h4
      Host GitLab on your servers or let us host it for you
    %a.btn.cta-btn.red.hidden-sm.hidden-xs{href: "/products"}
      Explore our products
    %p.compare-other-tools
      %a.hidden-sm.hidden-xs{href: "/comparison"}
        Compare GitLab to other tools
    %a.btn.cta-btn.red.visible-sm.visible-xs{href: "/products"}
      Explore

= partial "includes/features/gitlab-ee-trial"