Skip to content
Snippets Groups Projects
Select Git revision
  • win10bash-setupguide
  • master default protected
  • bvl-fix-gettext-rm
  • make-ascii-tanuki-smaller
  • centos6
  • add-option-to-disable-webpack-dev-server-livereload
  • webpack-without-npm
  • 186-nginx-favicon
  • gitlab-review-apps
  • thin-concurrency
  • gitaly-update
  • explain-gem-update
  • fix-symlink-ruby-version
  • evn-add-contr
  • no-workhorse-path
  • sidekiq-latency
  • handbook-ee-license
  • workhorse-stunnel-syntax
  • escape
  • gdk-ee-support
  • v0.2.4
  • v0.2.2
  • v0.2.1
  • v0.2.0
  • v0.1.1
25 results

gitlab-development-kit

  • Clone with SSH
  • Clone with HTTPS
  • GitLab Development Kit

    Configure and manage a GitLab development environment.

    Overview

    GitLab Development Kit (GDK) provides a collection of scripts and other resources to install and manage a GitLab installation for development purposes. The source code of GitLab is spread over multiple repositories and it requires Ruby, Go, Postgres/MySQL, Redis and more to run. GDK helps you install and configure all these different components, and start/stop them when you work on GitLab.

    To start using GDK follow these three steps:

    Design goals

    • Get the user started, do not try to take care of everything
    • Run everything as your 'desktop' user on your development machine
    • GitLab Development Kit itself does not run sudo commands
    • It is OK to leave some things to the user (e.g. installing Ruby)

    Differences with production

    • gitlab-workhorse does not serve static files
    • C compiler needed to run bundle install (not needed with Omnibus)
    • GitLab can rewrite its program code and configuration data (read-only with Omnibus)
    • 'Assets' (Javascript/CSS files) are generated on the fly (pre-compiled at build time with Omnibus)
    • Gems (libraries) for development and functional testing get installed and loaded
    • No unified configuration management for GitLab and gitlab-shell (handled by Omnibus)
    • No privilege separation between Ruby, Postgres and Redis
    • No easy upgrades
    • Need to download and compile new gems ('bundle install') on each upgrade
    • etc.

    License

    The GitLab Development Kit is distributed under the MIT license, see the LICENSE file.