mirror of
https://github.com/sameersbn/docker-gitlab.git
synced 2026-01-25 14:08:09 +00:00
Merge branch 'gitlab-next' into 'master'
Update to GitLab 8.2.0 See merge request !2
This commit is contained in:
commit
f48023ab77
@ -2,6 +2,15 @@
|
||||
|
||||
This file only reflects the changes that are made in this image. Please refer to the upstream GitLab [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) for the list of changes in GitLab.
|
||||
|
||||
**latest**
|
||||
- gitlab-shell: upgrade to v.2.6.7
|
||||
- gitlab-workhorse: upgrade to v.0.4.2
|
||||
- gitlab: upgrade to CE v8.2.0
|
||||
- added `GITLAB_SHARED_DIR` configuration parameter
|
||||
- added `GITLAB_LFS_OBJECTS_DIR` configuration parameter
|
||||
- added `GITLAB_PROJECTS_BUILDS` configuration parameter
|
||||
- added `GITLAB_LFS_ENABLED` configuration parameter
|
||||
|
||||
**8.1.4**
|
||||
- gitlab: upgrade to CE v8.1.4
|
||||
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
FROM sameersbn/ubuntu:14.04.20151117
|
||||
MAINTAINER sameer@damagehead.com
|
||||
|
||||
ENV GITLAB_VERSION=8.1.4 \
|
||||
GITLAB_SHELL_VERSION=2.6.5 \
|
||||
GITLAB_GIT_HTTP_SERVER_VERSION=0.3.0 \
|
||||
ENV GITLAB_VERSION=8.2.0 \
|
||||
GITLAB_SHELL_VERSION=2.6.7 \
|
||||
GITLAB_WORKHORSE_VERSION=0.4.2 \
|
||||
GITLAB_USER="git" \
|
||||
GITLAB_HOME="/home/git" \
|
||||
GITLAB_LOG_DIR="/var/log/gitlab" \
|
||||
@ -12,7 +12,7 @@ ENV GITLAB_VERSION=8.1.4 \
|
||||
|
||||
ENV GITLAB_INSTALL_DIR="${GITLAB_HOME}/gitlab" \
|
||||
GITLAB_SHELL_INSTALL_DIR="${GITLAB_HOME}/gitlab-shell" \
|
||||
GITLAB_GIT_HTTP_SERVER_INSTALL_DIR="${GITLAB_HOME}/gitlab-git-http-server" \
|
||||
GITLAB_WORKHORSE_INSTALL_DIR="${GITLAB_HOME}/gitlab-workhorse" \
|
||||
GITLAB_DATA_DIR="${GITLAB_HOME}/data" \
|
||||
GITLAB_BUILD_DIR="${GITLAB_CACHE_DIR}/build" \
|
||||
GITLAB_RUNTIME_DIR="${GITLAB_CACHE_DIR}/runtime"
|
||||
|
||||
@ -766,13 +766,17 @@ Below is the complete list of available options that can be used to customize yo
|
||||
- **GITLAB_PROJECTS_MERGE_REQUESTS**: Set if *merge requests* feature should be enabled by default for new projects. Defaults is `true`.
|
||||
- **GITLAB_PROJECTS_WIKI**: Set if *wiki* feature should be enabled by default for new projects. Defaults is `true`.
|
||||
- **GITLAB_PROJECTS_SNIPPETS**: Set if *snippets* feature should be enabled by default for new projects. Defaults is `false`.
|
||||
- **GITLAB_PROJECTS_BUILDS**: Set if *builds* feature should be enabled by default for new projects. Defaults is `true`.
|
||||
- **GITLAB_WEBHOOK_TIMEOUT**: Sets the timeout for webhooks. Defaults to `10` seconds.
|
||||
- **GITLAB_TIMEOUT**: Sets the timeout for git commands. Defaults to `10` seconds.
|
||||
- **GITLAB_LFS_ENABLED**: Enable/Disable Git LFS support. Defaults to `true`.
|
||||
- **GITLAB_NOTIFY_ON_BROKEN_BUILDS**: Enable or disable broken build notification emails. Defaults to `true`
|
||||
- **GITLAB_NOTIFY_PUSHER**: Add pusher to recipients list of broken build notification emails. Defaults to `false`
|
||||
- **GITLAB_REPOS_DIR**: The git repositories folder in the container. Defaults to `/home/git/data/repositories`
|
||||
- **GITLAB_BACKUP_DIR**: The backup folder in the container. Defaults to `/home/git/data/backups`
|
||||
- **GITLAB_BUILDS_DIR**: The build traces directory. Defaults to `/home/git/data/builds`
|
||||
- **GITLAB_SHARED_DIR**: The directory to store the build artifacts. Defaults to `/home/git/data/shared`
|
||||
- **GITLAB_LFS_OBJECTS_DIR**: Directory to store the lfs-objects. Defaults to `$GITLAB_SHARED_DIR/lfs-objects`
|
||||
- **GITLAB_BACKUPS**: Setup cron job to automatic backups. Possible values `disable`, `daily`, `weekly` or `monthly`. Disabled by default
|
||||
- **GITLAB_BACKUP_EXPIRY**: Configure how long (in seconds) to keep backups before they are deleted. By default when automated backups are disabled backups are kept forever (0 seconds), else the backups expire in 7 days (604800 seconds).
|
||||
- **GITLAB_BACKUP_ARCHIVE_PERMISSIONS**: Sets the permissions of the backup archives. Defaults to `0600`. [See](http://doc.gitlab.com/ce/raketasks/backup_restore.html#backup-archive-permissions)
|
||||
|
||||
@ -49,11 +49,11 @@ cd ${GITLAB_SHELL_INSTALL_DIR}
|
||||
exec_as_git cp -a ${GITLAB_SHELL_INSTALL_DIR}/config.yml.example ${GITLAB_SHELL_INSTALL_DIR}/config.yml
|
||||
exec_as_git ./bin/install
|
||||
|
||||
echo "Cloning gitlab-git-http-server v.${GITLAB_GIT_HTTP_SERVER_VERSION}..."
|
||||
exec_as_git git clone -q -b ${GITLAB_GIT_HTTP_SERVER_VERSION} --depth 1 \
|
||||
https://gitlab.com/gitlab-org/gitlab-git-http-server.git ${GITLAB_GIT_HTTP_SERVER_INSTALL_DIR}
|
||||
echo "Cloning gitlab-workhorse v.${GITLAB_WORKHORSE_VERSION}..."
|
||||
exec_as_git git clone -q -b ${GITLAB_WORKHORSE_VERSION} --depth 1 \
|
||||
https://gitlab.com/gitlab-org/gitlab-workhorse.git ${GITLAB_WORKHORSE_INSTALL_DIR}
|
||||
|
||||
cd ${GITLAB_GIT_HTTP_SERVER_INSTALL_DIR}
|
||||
cd ${GITLAB_WORKHORSE_INSTALL_DIR}
|
||||
exec_as_git make
|
||||
|
||||
# shallow clone gitlab-ce
|
||||
@ -222,18 +222,17 @@ stdout_logfile=${GITLAB_LOG_DIR}/supervisor/%(program_name)s.log
|
||||
stderr_logfile=${GITLAB_LOG_DIR}/supervisor/%(program_name)s.log
|
||||
EOF
|
||||
|
||||
# configure supervisord to start gitlab-git-http-server
|
||||
cat > /etc/supervisor/conf.d/gitlab-git-http-server.conf <<EOF
|
||||
[program:gitlab-git-http-server]
|
||||
# configure supervisord to start gitlab-workhorse
|
||||
cat > /etc/supervisor/conf.d/gitlab-workhorse.conf <<EOF
|
||||
[program:gitlab-workhorse]
|
||||
priority=20
|
||||
directory=${GITLAB_INSTALL_DIR}
|
||||
environment=HOME=${GITLAB_HOME}
|
||||
command=${GITLAB_GIT_HTTP_SERVER_INSTALL_DIR}/gitlab-git-http-server
|
||||
command=${GITLAB_WORKHORSE_INSTALL_DIR}/gitlab-workhorse
|
||||
-listenUmask 0
|
||||
-listenNetwork unix
|
||||
-listenAddr ${GITLAB_INSTALL_DIR}/tmp/sockets/gitlab-git-http-server.socket
|
||||
-listenAddr ${GITLAB_INSTALL_DIR}/tmp/sockets/gitlab-workhorse.socket
|
||||
-authBackend http://127.0.0.1:8080
|
||||
{{GITLAB_REPOS_DIR}}
|
||||
user=git
|
||||
autostart=true
|
||||
autorestart=true
|
||||
|
||||
@ -84,6 +84,7 @@ production: &base
|
||||
merge_requests: {{GITLAB_PROJECTS_MERGE_REQUESTS}}
|
||||
wiki: {{GITLAB_PROJECTS_WIKI}}
|
||||
snippets: {{GITLAB_PROJECTS_SNIPPETS}}
|
||||
builds: {{GITLAB_PROJECTS_BUILDS}}
|
||||
|
||||
## Webhook settings
|
||||
# Number of seconds to wait for HTTP response after sending webhook HTTP POST request (default: 10)
|
||||
@ -123,6 +124,12 @@ production: &base
|
||||
# The mailbox where incoming mail will end up. Usually "inbox".
|
||||
mailbox: "{{IMAP_MAILBOX}}"
|
||||
|
||||
## Git LFS
|
||||
lfs:
|
||||
enabled: {{GITLAB_LFS_ENABLED}}
|
||||
# The location where LFS objects are stored (default: shared/lfs-objects).
|
||||
storage_path: {{GITLAB_LFS_OBJECTS_DIR}}
|
||||
|
||||
## Gravatar
|
||||
## For Libravatar see: http://doc.gitlab.com/ce/customization/libravatar.html
|
||||
gravatar:
|
||||
@ -313,6 +320,9 @@ production: &base
|
||||
application_password: '{{OAUTH_CROWD_APP_PASSWORD}}' } }
|
||||
|
||||
|
||||
# Shared file storage settings
|
||||
shared:
|
||||
path: {{GITLAB_SHARED_DIR}}
|
||||
|
||||
|
||||
#
|
||||
@ -415,6 +425,8 @@ test:
|
||||
<<: *base
|
||||
gravatar:
|
||||
enabled: true
|
||||
lfs:
|
||||
enabled: false
|
||||
gitlab:
|
||||
host: localhost
|
||||
port: 80
|
||||
|
||||
@ -38,13 +38,13 @@ upstream gitlab {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
upstream gitlab-git-http-server {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab-git-http-server.socket fail_timeout=0;
|
||||
upstream gitlab-workhorse {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab-workhorse.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
## Normal HTTP host
|
||||
server {
|
||||
## Either remove "default_server" from the listen line below,
|
||||
## Either remove "default_server" from the listen line below,
|
||||
## or delete the /etc/nginx/sites-enabled/default file. This will cause gitlab
|
||||
## to be served if you visit any address that your server responds to, eg.
|
||||
## the ip address of the server (http://x.x.x.x/)n 0.0.0.0:80 default_server;
|
||||
@ -68,7 +68,7 @@ server {
|
||||
# alias {{GITLAB_INSTALL_DIR}}/public;
|
||||
## Serve static files from defined root folder.
|
||||
## @gitlab is a named location for the upstream fallback, see below.
|
||||
try_files $uri $uri/index.html $uri.html @gitlab;
|
||||
try_files $uri /index.html $uri.html @gitlab;
|
||||
}
|
||||
|
||||
## We route uploads through GitLab to prevent XSS and enforce access control.
|
||||
@ -116,24 +116,46 @@ server {
|
||||
proxy_pass http://gitlab;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/gitlab-lfs/objects {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/(info/refs|git-upload-pack|git-receive-pack)$ {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
try_files /nonexisting-file @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/repository/archive {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
error_page 418 = @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}api/v3/projects/.*/repository/archive {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
error_page 418 = @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location @gitlab-git-http-server {
|
||||
# Build artifacts should be submitted to this location
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/builds/download {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
# Build artifacts should be submitted to this location
|
||||
location ~ {{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}ci/api/v1/builds/[0-9]+/artifacts {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location @gitlab-workhorse {
|
||||
client_max_body_size 0;
|
||||
## If you use HTTPS make sure you disable gzip compression
|
||||
## to be safe against BREACH attack.
|
||||
# gzip off;
|
||||
@ -150,7 +172,7 @@ server {
|
||||
|
||||
# The following settings only work with NGINX 1.7.11 or newer
|
||||
#
|
||||
# # Pass chunked request bodies to gitlab-git-http-server as-is
|
||||
# # Pass chunked request bodies to gitlab-workhorse as-is
|
||||
# proxy_request_buffering off;
|
||||
# proxy_http_version 1.1;
|
||||
|
||||
@ -159,7 +181,7 @@ server {
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto {{NGINX_X_FORWARDED_PROTO}};
|
||||
|
||||
proxy_pass http://gitlab-git-http-server;
|
||||
proxy_pass http://gitlab-workhorse;
|
||||
}
|
||||
|
||||
## Enable gzip compression as per rails guide:
|
||||
|
||||
@ -42,13 +42,13 @@ upstream gitlab {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
upstream gitlab-git-http-server {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab-git-http-server.socket fail_timeout=0;
|
||||
upstream gitlab-workhorse {
|
||||
server unix:{{GITLAB_INSTALL_DIR}}/tmp/sockets/gitlab-workhorse.socket fail_timeout=0;
|
||||
}
|
||||
|
||||
## Redirects all HTTP traffic to the HTTPS host
|
||||
server {
|
||||
## Either remove "default_server" from the listen line below,
|
||||
## Either remove "default_server" from the listen line below,
|
||||
## or delete the /etc/nginx/sites-enabled/default file. This will cause gitlab
|
||||
## to be served if you visit any address that your server responds to, eg.
|
||||
## the ip address of the server (http://x.x.x.x/)
|
||||
@ -116,7 +116,7 @@ server {
|
||||
# alias {{GITLAB_INSTALL_DIR}}/public;
|
||||
## Serve static files from defined root folder.
|
||||
## @gitlab is a named location for the upstream fallback, see below.
|
||||
try_files $uri $uri/index.html $uri.html @gitlab;
|
||||
try_files $uri /index.html $uri.html @gitlab;
|
||||
}
|
||||
|
||||
## We route uploads through GitLab to prevent XSS and enforce access control.
|
||||
@ -166,24 +166,46 @@ server {
|
||||
proxy_pass http://gitlab;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/gitlab-lfs/objects {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/(info/refs|git-upload-pack|git-receive-pack)$ {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
try_files /nonexisting-file @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/repository/archive {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
error_page 418 = @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}api/v3/projects/.*/repository/archive {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-git-http-server block
|
||||
error_page 418 = @gitlab-git-http-server;
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location @gitlab-git-http-server {
|
||||
# Build artifacts should be submitted to this location
|
||||
location ~ ^{{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}[\w\.-]+/[\w\.-]+/builds/download {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
# Build artifacts should be submitted to this location
|
||||
location ~ {{GITLAB_RELATIVE_URL_ROOT__with_trailing_slash}}ci/api/v1/builds/[0-9]+/artifacts {
|
||||
# 'Error' 418 is a hack to re-use the @gitlab-workhorse block
|
||||
error_page 418 = @gitlab-workhorse;
|
||||
return 418;
|
||||
}
|
||||
|
||||
location @gitlab-workhorse {
|
||||
client_max_body_size 0;
|
||||
## If you use HTTPS make sure you disable gzip compression
|
||||
## to be safe against BREACH attack.
|
||||
gzip off;
|
||||
@ -200,7 +222,7 @@ server {
|
||||
|
||||
# The following settings only work with NGINX 1.7.11 or newer
|
||||
#
|
||||
# # Pass chunked request bodies to gitlab-git-http-server as-is
|
||||
# # Pass chunked request bodies to gitlab-workhorse as-is
|
||||
# proxy_request_buffering off;
|
||||
# proxy_http_version 1.1;
|
||||
|
||||
@ -209,7 +231,7 @@ server {
|
||||
proxy_set_header X-Forwarded-Ssl on;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto {{NGINX_X_FORWARDED_PROTO}};
|
||||
proxy_pass http://gitlab-git-http-server;
|
||||
proxy_pass http://gitlab-workhorse;
|
||||
}
|
||||
|
||||
## Enable gzip compression as per rails guide:
|
||||
|
||||
@ -6,6 +6,8 @@ DEBUG=${DEBUG:-$DEBUG_ENTRYPOINT}
|
||||
GITLAB_BACKUP_DIR="${GITLAB_BACKUP_DIR:-$GITLAB_DATA_DIR/backups}"
|
||||
GITLAB_REPOS_DIR="${GITLAB_REPOS_DIR:-$GITLAB_DATA_DIR/repositories}"
|
||||
GITLAB_BUILDS_DIR="${GITLAB_BUILDS_DIR:-$GITLAB_DATA_DIR/builds}"
|
||||
GITLAB_SHARED_DIR="${GITLAB_SHARED_DIR:-$GITLAB_DATA_DIR/shared}"
|
||||
GITLAB_LFS_OBJECTS_DIR="${GITLAB_LFS_OBJECTS_DIR:-$GITLAB_SHARED_DIR/lfs-objects}"
|
||||
|
||||
GITLAB_HTTPS=${GITLAB_HTTPS:-false}
|
||||
GITLAB_HOST=${GITLAB_HOST:-localhost}
|
||||
@ -55,10 +57,14 @@ GITLAB_PROJECTS_ISSUES=${GITLAB_PROJECTS_ISSUES:-true}
|
||||
GITLAB_PROJECTS_MERGE_REQUESTS=${GITLAB_PROJECTS_MERGE_REQUESTS:-true}
|
||||
GITLAB_PROJECTS_WIKI=${GITLAB_PROJECTS_WIKI:-true}
|
||||
GITLAB_PROJECTS_SNIPPETS=${GITLAB_PROJECTS_SNIPPETS:-false}
|
||||
GITLAB_PROJECTS_BUILDS=${GITLAB_PROJECTS_BUILDS:-true}
|
||||
GITLAB_RELATIVE_URL_ROOT=${GITLAB_RELATIVE_URL_ROOT:-}
|
||||
GITLAB_WEBHOOK_TIMEOUT=${GITLAB_WEBHOOK_TIMEOUT:-10}
|
||||
GITLAB_TIMEOUT=${GITLAB_TIMEOUT:-10}
|
||||
|
||||
## LFS
|
||||
GITLAB_LFS_ENABLED=${GITLAB_LFS_ENABLED:-true}
|
||||
|
||||
GITLAB_SECRETS_DB_KEY_BASE=${GITLAB_SECRETS_DB_KEY_BASE:-}
|
||||
GITLAB_NOTIFY_ON_BROKEN_BUILDS=${GITLAB_NOTIFY_ON_BROKEN_BUILDS:-true}
|
||||
GITLAB_NOTIFY_PUSHER=${GITLAB_NOTIFY_PUSHER:-false}
|
||||
|
||||
@ -590,12 +590,19 @@ gitlab_configure_ci() {
|
||||
exec_as_git sed -i 's,{{GITLAB_BUILDS_DIR}},'"${GITLAB_BUILDS_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
}
|
||||
|
||||
gitlab_configure_lfs() {
|
||||
echo "Configuring gitlab::lfs..."
|
||||
exec_as_git sed -i 's/{{GITLAB_LFS_ENABLED}}/'"${GITLAB_LFS_ENABLED}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's,{{GITLAB_LFS_OBJECTS_DIR}},'"${GITLAB_LFS_OBJECTS_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
}
|
||||
|
||||
gitlab_configure_project_features() {
|
||||
echo "Configuring gitlab::project_features..."
|
||||
exec_as_git sed -i 's/{{GITLAB_PROJECTS_ISSUES}}/'"${GITLAB_PROJECTS_ISSUES}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_PROJECTS_MERGE_REQUESTS}}/'"${GITLAB_PROJECTS_MERGE_REQUESTS}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_PROJECTS_WIKI}}/'"${GITLAB_PROJECTS_WIKI}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_PROJECTS_SNIPPETS}}/'"${GITLAB_PROJECTS_SNIPPETS}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_PROJECTS_BUILDS}}/'"${GITLAB_PROJECTS_BUILDS}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_WEBHOOK_TIMEOUT}}/'"${GITLAB_WEBHOOK_TIMEOUT}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
}
|
||||
|
||||
@ -744,6 +751,20 @@ initialize_datadir() {
|
||||
rm -rf ${GITLAB_INSTALL_DIR}/builds
|
||||
ln -sf ${GITLAB_BUILDS_DIR} ${GITLAB_INSTALL_DIR}/builds
|
||||
|
||||
# create shared directory
|
||||
mkdir -p ${GITLAB_SHARED_DIR}/artifacts/tmp/{cache,uploads}
|
||||
chmod u+rwX ${GITLAB_SHARED_DIR}
|
||||
chown ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_SHARED_DIR}
|
||||
|
||||
# symlink ${GITLAB_INSTALL_DIR}/shared -> ${GITLAB_DATA_DIR}/shared
|
||||
rm -rf ${GITLAB_INSTALL_DIR}/shared
|
||||
ln -sf ${GITLAB_SHARED_DIR} ${GITLAB_INSTALL_DIR}/shared
|
||||
|
||||
# create lfs-objects directory
|
||||
mkdir -p ${GITLAB_LFS_OBJECTS_DIR}
|
||||
chmod u+rwX ${GITLAB_LFS_OBJECTS_DIR}
|
||||
chown ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_LFS_OBJECTS_DIR}
|
||||
|
||||
# create the backups directory
|
||||
mkdir -p ${GITLAB_BACKUP_DIR}
|
||||
chown ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_BACKUP_DIR}
|
||||
@ -780,10 +801,15 @@ sanitize_datadir() {
|
||||
find ${GITLAB_REPOS_DIR}/ -type d -print0 | xargs -0 chmod g+s
|
||||
chown -R ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_REPOS_DIR}
|
||||
|
||||
mkdir -p ${GITLAB_BUILDS_DIR}
|
||||
chmod -R u+rwX ${GITLAB_BUILDS_DIR}
|
||||
chown -R ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_BUILDS_DIR}
|
||||
|
||||
chmod -R u+rwX ${GITLAB_SHARED_DIR}
|
||||
chown -R ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_SHARED_DIR}
|
||||
|
||||
chmod -R u+rwX ${GITLAB_LFS_OBJECTS_DIR}
|
||||
chown -R ${GITLAB_USER}:${GITLAB_USER} ${GITLAB_LFS_OBJECTS_DIR}
|
||||
|
||||
find ${GITLAB_DATA_DIR}/uploads -type f -exec chmod 0644 {} \;
|
||||
find ${GITLAB_DATA_DIR}/uploads -type d -not -path ${GITLAB_DATA_DIR}/uploads -exec chmod 0755 {} \;
|
||||
chmod 0750 ${GITLAB_DATA_DIR}/uploads/
|
||||
@ -868,6 +894,7 @@ configure_gitlab() {
|
||||
exec_as_git sed -i 's,{{GITLAB_SHELL_INSTALL_DIR}},'"${GITLAB_SHELL_INSTALL_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's,{{GITLAB_DATA_DIR}},'"${GITLAB_DATA_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's,{{GITLAB_REPOS_DIR}},'"${GITLAB_REPOS_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's,{{GITLAB_SHARED_DIR}},'"${GITLAB_SHARED_DIR}"',g' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
|
||||
exec_as_git sed -i 's/{{GITLAB_HOST}}/'"${GITLAB_HOST}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
exec_as_git sed -i 's/{{GITLAB_PORT}}/'"${GITLAB_PORT}"'/' ${GITLAB_INSTALL_DIR}/config/gitlab.yml
|
||||
@ -886,6 +913,7 @@ configure_gitlab() {
|
||||
gitlab_configure_unicorn
|
||||
gitlab_configure_timezone
|
||||
gitlab_configure_ci
|
||||
gitlab_configure_lfs
|
||||
gitlab_configure_project_features
|
||||
gitlab_configure_mail_delivery
|
||||
gitlab_configure_mailroom
|
||||
@ -911,11 +939,6 @@ configure_gitlab_shell() {
|
||||
exec_as_git sed -i 's/{{REDIS_PORT}}/'"${REDIS_PORT}"'/' ${GITLAB_SHELL_INSTALL_DIR}/config.yml
|
||||
}
|
||||
|
||||
configure_gitlab_git_http_server() {
|
||||
echo "Configuring gitlab-git-http-server..."
|
||||
sed -i 's,{{GITLAB_REPOS_DIR}},'"${GITLAB_REPOS_DIR}"',' /etc/supervisor/conf.d/gitlab-git-http-server.conf
|
||||
}
|
||||
|
||||
configure_nginx() {
|
||||
echo "Configuring nginx..."
|
||||
sed -i 's/worker_processes .*/worker_processes '"${NGINX_WORKERS}"';/' /etc/nginx/nginx.conf
|
||||
|
||||
@ -10,7 +10,6 @@ case ${1} in
|
||||
initialize_system
|
||||
configure_gitlab
|
||||
configure_gitlab_shell
|
||||
configure_gitlab_git_http_server
|
||||
configure_nginx
|
||||
|
||||
case ${1} in
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user