summaryrefslogtreecommitdiff
path: root/clusters/gitlab-cluster.morph
blob: 5f3177ca86a8aeb7fd78fc01a29fdb29f29a0d46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
name: gitlab-cluster
kind: cluster
description: |
  This is an example cluster morphology that can be adapted to set up a GitLab
  server with GitLab CI running alongside it, along with one or more CI
  runners to actually run the CI tests/builds.

  For the server, you will need to specify the GITLAB_HOSTNAME. This is the
  domain name or IP by which your deployed GitLab instance will be able to be
  reached by. You will also need a GITLAB_PORT, CI_PORT, UNICORN PORT and
  UNICORN_CI_PORT. These are the port to use for GitLab, the port to use for
  GitLab CI, the port for GitLab's Unicorn process to listen on, and the port
  for GitLab CI's Unicorn process to listen on respectively. Finally, you will
  need to define a GITLAB_EMAIL, that is the email that mail from your GitLab
  instance will appear to be from.
systems:
- morph: systems/gitlab-server.morph
  deploy-defaults:
    AUTOSTART: false
    DISK_SIZE: 10G
    RAM_SIZE: 2G
    VCPUS: 2
    VERSION_LABEL: factory
  deploy:
    gitlab:
      type: kvm
      location: kvm+ssh://USER@HOST/gitlab/home/USER/gitlab.img
      CI_PORT: 81
      GITLAB_EMAIL: gitlab@gitlab.example.com
      GITLAB_HOSTNAME: gitlab.example.com
      GITLAB_PORT: 80
      HOSTNAME: gitlab
      INSTALL_FILES: gitlab-server/manifest
      UNICORN_CI_PORT: 8081
      UNICORN_PORT: 8080
- morph: systems/gitlab-ci-runner.morph
  deploy-defaults:
    AUTOSTART: false
    DISK_SIZE: 10G
    RAM_SIZE: 3G
    VCPUS: 2
    VERSION_LABEL: factory
  deploy:
    gitlab-ci-runner:
      type: kvm
      location: kvm+ssh://USER@HOST/gitlab-ci-runner/home/USER/gitlab-ci-runner.img
      HOSTNAME: gitlab-ci-runner
      INSTALL_FILES: gitlab-ci-runner/manifest