From ff59c925e123505760ea4b865bf08d7b090865b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bauer?= Date: Thu, 27 Oct 2016 12:15:51 +0200 Subject: [PATCH 1/5] add sles 12 to pkgr.yml and check for used initservioce in pkgr-postinstall.sh --- .pkgr.yml | 4 +- ...l - packager.io complains about double use | 0 contrib/pkgr-postinstall.sh | 37 +++++++++++-------- 3 files changed, 25 insertions(+), 16 deletions(-) create mode 100644 Gemfile.local from .pkgr.yml - packager.io complains about double use diff --git a/.pkgr.yml b/.pkgr.yml index 56adefcfd..b01e6fe15 100644 --- a/.pkgr.yml +++ b/.pkgr.yml @@ -18,11 +18,13 @@ targets: ubuntu-16.04: dependencies: - postgresql + sles-12 + dependencies: + - postgresql before: - uname -a - ruby -v - env - - cp config/database.yml.pkgr config/database.yml - echo "gem 'mysql2'" >> Gemfile.local - "cat Gemfile.lock" - contrib/cleanup.sh diff --git a/Gemfile.local from .pkgr.yml - packager.io complains about double use b/Gemfile.local from .pkgr.yml - packager.io complains about double use new file mode 100644 index 000000000..e69de29bb diff --git a/contrib/pkgr-postinstall.sh b/contrib/pkgr-postinstall.sh index d18cd4e00..7469a5a48 100755 --- a/contrib/pkgr-postinstall.sh +++ b/contrib/pkgr-postinstall.sh @@ -9,19 +9,32 @@ ZAMMAD_DIR="/opt/zammad" DB="zammad_production" DB_USER="zammad" +# check which init system is used +SYSTEMD="$(which systemd)" +UPSTART="$(which initctl)" + +if [ -n ${UPSTART} ]; then + INIT_COMMAND="initctl" +elif [ -n ${SYSTEMD} ]; then + INIT_CMD="systemd" +else + function sysvinit () { + service $2 $1 + } + + INIT_CMD="sysvinit" +fi + echo "# (Re)creating init scripts" zammad scale web=1 websocket=1 worker=1 echo "# Stopping Zammad" -systemctl stop zammad - -# check if database.yml.bak exists -if [ -f ${ZAMMAD_DIR}/config/database.yml.bak ]; then - # copy database.yml.bak to database.yml - cp ${ZAMMAD_DIR}/config/database.yml.bak ${ZAMMAD_DIR}/config/database.yml +${INIT_CMD} stop zammad +# check if database.yml exists +if [ -f ${ZAMMAD_DIR}/config/database.yml ]; then # db migration - echo "# database.yml.bak exists. Updating db..." + echo "# database.yml exists. Updating db..." zammad run rake db:migrate else # create new password @@ -40,19 +53,13 @@ else # update configfile sed "s/.*password:.*/ password: ${DB_PASS}/" < ${ZAMMAD_DIR}/config/database.yml.pkgr > ${ZAMMAD_DIR}/config/database.yml - # save database config for updates - cp ${ZAMMAD_DIR}/config/database.yml ${ZAMMAD_DIR}/config/database.yml.bak - - # zammad config set - zammad config:set DATABASE_URL=postgres://${DB_USER}:${DB_PASS}@127.0.0.1/${DB} - # fill database zammad run rake db:migrate zammad run rake db:seed fi echo "# Starting Zammad" -systemctl start zammad +${INIT_CMD} start zammad # nginx config if [ -d /etc/nginx/sites-enabled ]; then @@ -67,7 +74,7 @@ if [ -d /etc/nginx/sites-enabled ]; then fi echo "# Restarting Nginx" - systemctl restart nginx + ${INIT_CMD} restart nginx echo -e "\nOpen http://localhost in your browser to start using Zammad!\n" else From 159d1fc8ed29df72396d362dcbe3672c0546208e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bauer?= Date: Thu, 27 Oct 2016 13:50:18 +0200 Subject: [PATCH 2/5] add sles 12 to pkgr.yml and check for used initservioce in pkgr-postinstall.sh fixes --- .pkgr.yml | 2 +- ....pkgr.yml - packager.io complains about double use | 0 contrib/pkgr-postinstall.sh | 11 ++++------- 3 files changed, 5 insertions(+), 8 deletions(-) delete mode 100644 Gemfile.local from .pkgr.yml - packager.io complains about double use diff --git a/.pkgr.yml b/.pkgr.yml index b01e6fe15..1a1429b9e 100644 --- a/.pkgr.yml +++ b/.pkgr.yml @@ -18,7 +18,7 @@ targets: ubuntu-16.04: dependencies: - postgresql - sles-12 + sles-12: dependencies: - postgresql before: diff --git a/Gemfile.local from .pkgr.yml - packager.io complains about double use b/Gemfile.local from .pkgr.yml - packager.io complains about double use deleted file mode 100644 index e69de29bb..000000000 diff --git a/contrib/pkgr-postinstall.sh b/contrib/pkgr-postinstall.sh index 7469a5a48..b5f9e005e 100755 --- a/contrib/pkgr-postinstall.sh +++ b/contrib/pkgr-postinstall.sh @@ -10,13 +10,10 @@ DB="zammad_production" DB_USER="zammad" # check which init system is used -SYSTEMD="$(which systemd)" -UPSTART="$(which initctl)" - -if [ -n ${UPSTART} ]; then - INIT_COMMAND="initctl" -elif [ -n ${SYSTEMD} ]; then - INIT_CMD="systemd" +if [ -n "$(which initctl)" ]; then + INIT_CMD="initctl" +elif [ -n "$(which systemctl)" ]; then + INIT_CMD="systemctl" else function sysvinit () { service $2 $1 From 5b223d2ee42f955082ee0f0cd65f7a0c603a6ed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bauer?= Date: Fri, 28 Oct 2016 09:44:11 +0200 Subject: [PATCH 3/5] postinstall.sh - create nginx config also for centos / sles --- README_Install_Debian_Ubuntu.md | 2 +- .../nginx/{sites-available => }/zammad.conf | 0 contrib/pkgr-postinstall.sh | 23 +++++++++++-------- 3 files changed, 14 insertions(+), 11 deletions(-) rename contrib/nginx/{sites-available => }/zammad.conf (100%) diff --git a/README_Install_Debian_Ubuntu.md b/README_Install_Debian_Ubuntu.md index 9e037dfef..03cb304c3 100644 --- a/README_Install_Debian_Ubuntu.md +++ b/README_Install_Debian_Ubuntu.md @@ -19,7 +19,7 @@ * exit ### Create Nginx Config -* cp /opt/zammad/contrib/nginx/sites-available/zammad.conf /etc/nginx/sites-available/zammad.conf +* cp /opt/zammad/contrib/nginx/zammad.conf /etc/nginx/sites-available/zammad.conf * vi /etc/nginx/sites-available/zammad.conf * change servername "localhost" to your domain if your're not testing localy * ln -s /etc/nginx/sites-available/zammad.conf /etc/nginx/sites-enabled/zammad.conf diff --git a/contrib/nginx/sites-available/zammad.conf b/contrib/nginx/zammad.conf similarity index 100% rename from contrib/nginx/sites-available/zammad.conf rename to contrib/nginx/zammad.conf diff --git a/contrib/pkgr-postinstall.sh b/contrib/pkgr-postinstall.sh index b5f9e005e..ee8ad76e9 100755 --- a/contrib/pkgr-postinstall.sh +++ b/contrib/pkgr-postinstall.sh @@ -59,21 +59,24 @@ echo "# Starting Zammad" ${INIT_CMD} start zammad # nginx config -if [ -d /etc/nginx/sites-enabled ]; then +if [ -n "$(which nginx)" ];then # copy nginx config - test -f /etc/nginx/sites-available/zammad.conf || cp ${ZAMMAD_DIR}/contrib/nginx/sites-available/zammad.conf /etc/nginx/sites-available/zammad.conf - - if [ ! -f /etc/nginx/sites-available/zammad.conf ]; then - # creating symlink - ln -s /etc/nginx/sites-available/zammad.conf /etc/nginx/sites-enabled/zammad.conf - - echo -e "\nAdd your FQDN to servername directive in /etc/nginx/sites/enabled/zammad.conf anmd restart nginx if you're not testing localy!\n" + # debian / ubuntu + if [ -d /etc/nginx/sites-enabled ]; then + NGINX_CONF="/etc/nginx/sites-enabled/zammad.conf" + test -f /etc/nginx/sites-available/zammad.conf || cp ${ZAMMAD_DIR}/contrib/nginx/zammad.conf /etc/nginx/sites-available/zammad.conf + test -f /etc/nginx/sites-available/zammad.conf || ln -s /etc/nginx/sites-available/zammad.conf /etc/nginx/sites-enabled/zammad.conf + # centos / sles + elif [ -d /etc/nginx/conf.d ]; then + NGINX_CONF="/etc/nginx/conf.d/zammad.conf" + test -f /etc/nginx/conf.d/zammad.conf || cp ${ZAMMAD_DIR}/contrib/nginx/zammad.conf /etc/nginx/conf.d/zammad.conf fi echo "# Restarting Nginx" ${INIT_CMD} restart nginx - echo -e "\nOpen http://localhost in your browser to start using Zammad!\n" + echo -e "\nAdd your FQDN to servername directive in ${NGINX_CONF} and restart nginx if you're not testing localy" + echo -e "or open http://localhost in your browser to start using Zammad.\n" else - echo -e "\nOpen http://localhost:3000 in your browser to start using Zammad!\n" + echo -e "\nOpen http://localhost:3000 in your browser to start using Zammad.\n" fi From f14a5f987a6ffcd1970b2087a1d3db0bd515190a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bauer?= Date: Fri, 28 Oct 2016 10:05:36 +0200 Subject: [PATCH 4/5] pkgr-postinstall.sh - fix debian/ubuntu symlink path for nginx coonfig --- contrib/pkgr-postinstall.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/pkgr-postinstall.sh b/contrib/pkgr-postinstall.sh index ee8ad76e9..3712d93c1 100755 --- a/contrib/pkgr-postinstall.sh +++ b/contrib/pkgr-postinstall.sh @@ -65,11 +65,11 @@ if [ -n "$(which nginx)" ];then if [ -d /etc/nginx/sites-enabled ]; then NGINX_CONF="/etc/nginx/sites-enabled/zammad.conf" test -f /etc/nginx/sites-available/zammad.conf || cp ${ZAMMAD_DIR}/contrib/nginx/zammad.conf /etc/nginx/sites-available/zammad.conf - test -f /etc/nginx/sites-available/zammad.conf || ln -s /etc/nginx/sites-available/zammad.conf /etc/nginx/sites-enabled/zammad.conf + test -h ${NGINX_CONF} || ln -s /etc/nginx/sites-available/zammad.conf ${NGINX_CONF} # centos / sles elif [ -d /etc/nginx/conf.d ]; then NGINX_CONF="/etc/nginx/conf.d/zammad.conf" - test -f /etc/nginx/conf.d/zammad.conf || cp ${ZAMMAD_DIR}/contrib/nginx/zammad.conf /etc/nginx/conf.d/zammad.conf + test -f ${NGINX_CONF} || cp ${ZAMMAD_DIR}/contrib/nginx/zammad.conf ${NGINX_CONF} fi echo "# Restarting Nginx" From 99d2956d1f8c3fce3229e579065cd75d822d0074 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bauer?= Date: Fri, 28 Oct 2016 12:58:00 +0200 Subject: [PATCH 5/5] fix "duplicate MIME type "text/html" in /etc/nginx/sites-enabled/zammad.conf" --- contrib/nginx/zammad.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/nginx/zammad.conf b/contrib/nginx/zammad.conf index b1726e411..201bda163 100644 --- a/contrib/nginx/zammad.conf +++ b/contrib/nginx/zammad.conf @@ -43,7 +43,7 @@ server { proxy_pass http://zammad; gzip on; - gzip_types text/html text/plain text/xml text/css image/svg+xml application/javascript application/x-javascript application/json application/xml; + gzip_types text/plain text/xml text/css image/svg+xml application/javascript application/x-javascript application/json application/xml; gzip_proxied any; } }