[DRE-commits] [gitlab] 01/01: fix config file handling
Praveen Arimbrathodiyil
praveen at moszumanska.debian.org
Thu Jul 14 15:13:57 UTC 2016
This is an automated email from the git hooks/post-receive script.
praveen pushed a commit to branch master
in repository gitlab.
commit a00a4d50934cb7790359ab8553b8d57033b0061a
Author: Praveen Arimbrathodiyil <praveen at debian.org>
Date: Thu Jul 14 19:54:37 2016 +0530
fix config file handling
---
debian/changelog | 8 +++++++
...tlab-debian.conf => gitlab-debian.conf.example} | 3 +++
debian/conf/{gitlab.yml => gitlab.yml.example} | 0
debian/control | 2 +-
debian/install | 4 ++--
debian/postinst | 26 +++++++++++++++++-----
6 files changed, 34 insertions(+), 9 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 6df02da..d678def 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+gitlab (8.9.0+dfsg-4) unstable; urgency=medium
+
+ * Move config files to /usr/share/doc as examples and
+ copy them to /var/lib for modification (Closes: #821086)
+ * Fix gitlab-shell's config.yml handling (Closes: #827846)
+
+ -- Pirate Praveen <praveen at debian.org> Thu, 14 Jul 2016 19:53:16 +0530
+
gitlab (8.9.0+dfsg-3) unstable; urgency=medium
* Relax grape and rouge in Gemfile
diff --git a/debian/conf/gitlab-debian.conf b/debian/conf/gitlab-debian.conf.example
similarity index 81%
rename from debian/conf/gitlab-debian.conf
rename to debian/conf/gitlab-debian.conf.example
index 8800fdc..39a68fc 100644
--- a/debian/conf/gitlab-debian.conf
+++ b/debian/conf/gitlab-debian.conf.example
@@ -5,10 +5,13 @@ gitlab_app_root=/usr/share/gitlab
gitlab_data_dir=/var/lib/gitlab
gitlab_cache_path=/var/cache/gitlab
gitlab_scripts=/usr/lib/gitlab/scripts
+gitlab_yml_example=/usr/share/doc/gitlab/gitlab.yml.example
gitlab_yml_private=/var/lib/gitlab/gitlab.yml
gitlab_yml=/etc/gitlab/gitlab.yml
+gitlab_debian_conf_example=/usr/share/doc/gitlab/gitlab-debian.conf.example
gitlab_debian_conf_private=/var/lib/gitlab/gitlab-debian.conf
gitlab_debian_conf=/etc/gitlab/gitlab-debian.conf
+gitlab_shell_config_example=/usr/share/doc/gitlab-shell/config.yml.example
gitlab_shell_config_private=/var/lib/gitlab/gitlab-shell-config.yml
gitlab_shell_config=/etc/gitlab-shell/config.yml
gitlab_nginx_log=/var/log/gitlab
diff --git a/debian/conf/gitlab.yml b/debian/conf/gitlab.yml.example
similarity index 100%
rename from debian/conf/gitlab.yml
rename to debian/conf/gitlab.yml.example
diff --git a/debian/control b/debian/control
index c1cb687..d955c28 100644
--- a/debian/control
+++ b/debian/control
@@ -29,7 +29,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ruby | ruby-interpreter,
postfix | exim4 | mail-transport-agent,
openssh-client,
ucf,
- gitlab-shell (>= 3.0.0~),
+ gitlab-shell (>= 3.0.0-4~),
gitlab-workhorse (>= 0.6.2~),
ruby-rails (>= 2:4.2.6~),
ruby-rails (<< 2:5),
diff --git a/debian/install b/debian/install
index c9b5f53..af97cb0 100644
--- a/debian/install
+++ b/debian/install
@@ -1,9 +1,9 @@
debian/conf/gitlab etc/default
debian/conf/unicorn.rb etc/gitlab
debian/conf/database.yml etc/gitlab
-debian/conf/gitlab.yml var/lib/gitlab
+debian/conf/gitlab.yml.example usr/share/doc/gitlab
debian/conf/resque.yml etc/gitlab
-debian/conf/gitlab-debian.conf var/lib/gitlab
+debian/conf/gitlab-debian.conf.example usr/share/doc/gitlab
debian/conf/*.target lib/systemd/system
debian/conf/*.service lib/systemd/system
debian/conf/smtp_settings.rb etc/gitlab/initializers
diff --git a/debian/postinst b/debian/postinst
index 26021e3..efe33b0 100755
--- a/debian/postinst
+++ b/debian/postinst
@@ -33,7 +33,12 @@ case "$1" in
# Read and export debian specific configuration
# Only exported variables will be passed on to gitlab app
- gitlab_debian_conf_private=/var/lib/gitlab/gitlab-debian.conf
+ # Bootstrap config file - first try
+ gitlab_debian_conf_example=/usr/share/doc/gitlab/gitlab-debian.conf.example
+ export $(cat ${gitlab_debian_conf_example})
+ # second try
+ test -f ${gitlab_debian_conf_private} || \
+ cp ${gitlab_debian_conf_example} ${gitlab_debian_conf_private}
export $(cat ${gitlab_debian_conf_private})
# If /etc/gitlab/gitlab-debian.conf is already present, use it
@@ -90,6 +95,13 @@ EOF
# Check if ssl option is selected
db_get gitlab/ssl
gl_proto="http"
+
+ # Copy example configurations
+ test -f ${gitlab_yml_private} || \
+ zcat ${gitlab_yml_example} > ${gitlab_yml_private}
+ test -f ${gitlab_shell_config_private} || \
+ cp ${gitlab_shell_config_example} ${gitlab_shell_config_private}
+
if [ "${RET}" = "true" ]; then
echo "Configuring nginx with HTTPS..."
if ! grep GITLAB_HTTPS ${gitlab_debian_conf_private}; then
@@ -104,12 +116,8 @@ EOF
"s/gitlab_url: http*:\/\/.*/gitlab_url: ${gl_proto}:\/\/${GITLAB_HOST}/"\
${gitlab_shell_config_private}
- # Manage gitlab-shell's config.yml via ucf
- mkdir -p /etc/gitlab-shell
- echo "Registering ${gitlab_shell_config} via ucf"
- ucf --debconf-ok --three-way ${gitlab_shell_config_private} ${gitlab_shell_config}
- ucfr gitlab ${gitlab_shell_config}
fi
+
mkdir -p /etc/gitlab/ssl
if [ -f "${nginx_ssl_conf_example_gz}" ]; then
# undo dh_installdocs auto compress
@@ -145,6 +153,12 @@ EOF
fi
fi
fi
+
+ # Manage gitlab-shell's config.yml via ucf
+ mkdir -p /etc/gitlab-shell
+ echo "Registering ${gitlab_shell_config} via ucf"
+ ucf --debconf-ok --three-way ${gitlab_shell_config_private} ${gitlab_shell_config}
+ ucfr gitlab ${gitlab_shell_config}
# Manage gitlab.yml via ucf
echo "Registering ${gitlab_yml} via ucf"
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/gitlab.git
More information about the Pkg-ruby-extras-commits
mailing list