From b8b2a943056adbb112474df7bdf766970a56b2dc Mon Sep 17 00:00:00 2001 From: Dylan William Hardison Date: Tue, 18 Sep 2018 18:19:03 -0400 Subject: Bug 1455495 - Replace apache with Mojolicious --- vagrant_support/apache.yml | 8 +-- vagrant_support/hypnotoad | 122 ++++++++++++++++++++++++++++++++++++++++++ vagrant_support/hypnotoad.yml | 27 ++++++++++ vagrant_support/playbook.yml | 6 +-- vagrant_support/update.yml | 5 +- 5 files changed, 160 insertions(+), 8 deletions(-) create mode 100755 vagrant_support/hypnotoad create mode 100644 vagrant_support/hypnotoad.yml (limited to 'vagrant_support') diff --git a/vagrant_support/apache.yml b/vagrant_support/apache.yml index 5031187e3..2d65965ab 100644 --- a/vagrant_support/apache.yml +++ b/vagrant_support/apache.yml @@ -6,8 +6,8 @@ mode: 0644 when: LAZY == 0 -- name: enable httpd - service: name=httpd enabled=yes +- name: disable httpd + service: name=httpd enabled=no when: LAZY == 0 - name: ensure bugzilla.log has right permissions @@ -16,5 +16,5 @@ - name: ensure bugzilla-json.log has right permissions file: path=/vagrant/logs/bugzilla-json.log state=touch owner=vagrant group=apache mode=0660 -- name: restart httpd - service: name=httpd state=restarted \ No newline at end of file +- name: stop httpd + service: name=httpd state=stopped diff --git a/vagrant_support/hypnotoad b/vagrant_support/hypnotoad new file mode 100755 index 000000000..5e8dc910e --- /dev/null +++ b/vagrant_support/hypnotoad @@ -0,0 +1,122 @@ +#!/bin/bash +# +# bugzilla-push This starts, stops, and restarts the Bugzilla push +# daemon, which manages syncronising bugzilla.mozilla.org and +# third party bugzilla installs. +# +# chkconfig: 345 85 15 +# description: Bugzilla push daemon +# +### BEGIN INIT INFO +# Provides: bugzilla-push +# Required-Start: $local_fs $syslog MTA mysqld +# Required-Stop: $local_fs $syslog MTA mysqld +# Default-Start: 3 5 +# Default-Stop: 0 1 2 6 +# Short-Description: Start and stop the Bugzilla push daemon. +# Description: The Bugzilla push daemon (bugzilla-pushd.pl) +# +# +# +### END INIT INFO + +NAME=`basename $0` + +################# +# Configuration # +################# + +# This should be the path to your Bugzilla +BUGZILLA=/vagrant +# Who owns the Bugzilla directory and files? +USER=vagrant + +PERL5LIB="$BUGZILLA:$BUGZILLA/lib:$BUGZILLA/local/lib/perl5" +export PERL5LIB +export MOJO_MODE + +if [[ x$PORT == x ]]; then + PORT=80 + export PORT +fi + +# If you want to pass any options to the daemon (like -d for debugging) +# specify it here. +OPTIONS="" + +# You can also override the configuration by creating a +# /etc/sysconfig/bugzilla-queue file so that you don't +# have to edit this script. +if [ -r /etc/sysconfig/$NAME ]; then + . /etc/sysconfig/$NAME +fi + +########## +# Script # +########## + +RETVAL=0 +BIN="$BUGZILLA/local/bin/hypnotoad" +PIDFILE="$BUGZILLA/hypnotoad.pid" + +# Source function library. +. /etc/rc.d/init.d/functions + +usage () +{ + echo "Usage: service $NAME {start|stop|status|restart|condrestart}" + RETVAL=1 +} + + +start () +{ + if [[ -f $PIDFILE ]]; then + checkpid "$(cat $PIDFILE)" && return 0 + fi + echo -n "Starting $NAME: " + daemon --pidfile=$PIDFILE --user=$USER "cd $BUGZILLA && $BIN bugzilla.pl >/dev/null" + ret=$? + [ $ret -eq "0" ] && touch /var/lock/subsys/$NAME + echo + return $ret +} + +stop () +{ + cd $BUGZILLA && $BIN bugzilla.pl --stop + rm -f /var/lock/subsys/$NAME +} + +restart () +{ + stop + start +} + +condrestart () +{ + [ -e /var/lock/subsys/$NAME ] && restart || return 0 +} + +status () +{ + if [[ -f $PIDFILE ]] && checkpid "$(cat $PIDFILE)"; then + echo hypnotoad is amazing + return 0 + else + echo hypnotoad is not running + return 1 + fi +} + +case "$1" in + start) start; RETVAL=$? ;; + stop) stop; RETVAL=$? ;; + status) status; RETVAL=$?;; + restart) restart; RETVAL=$? ;; + condrestart) condrestart; RETVAL=$? ;; + *) usage ; RETVAL=2 ;; +esac + +exit $RETVAL diff --git a/vagrant_support/hypnotoad.yml b/vagrant_support/hypnotoad.yml new file mode 100644 index 000000000..a66f9ba04 --- /dev/null +++ b/vagrant_support/hypnotoad.yml @@ -0,0 +1,27 @@ +- name: grant perl ability to listen to privledged ports + command: setcap 'cap_net_bind_service=+ep' /usr/bin/perl + +- name: hypnotoad daemon sysconfig + copy: + dest: /etc/sysconfig/hypnotoad + mode: 0644 + content: | + BUGZILLA=/vagrant + USER=vagrant + MOJO_MODE=development + +- name: hypnotoad daemon init file + template: + dest: /etc/init.d/hypnotoad + src: hypnotoad + owner: root + group: root + mode: 0755 + +- name: enable hypnotoad + service: name=hypnotoad enabled=yes + when: LAZY == 0 + +- name: restart hypnotoad + service: name=hypnotoad state=restarted + diff --git a/vagrant_support/playbook.yml b/vagrant_support/playbook.yml index c067eab05..3dd320f0b 100644 --- a/vagrant_support/playbook.yml +++ b/vagrant_support/playbook.yml @@ -170,9 +170,6 @@ dest: /usr/local/bin/cpanm mode: '0755' - - name: install more recent Apache2::SizeLimit - cpanm: name=Apache2::SizeLimit executable=/usr/local/bin/cpanm - - name: 'check /opt/bmo (failure is ok)' shell: test -d /opt/bmo && test -f /opt/bmo/local/lib/perl5/Plack.pm register: opt_bmo @@ -222,5 +219,8 @@ - include_tasks: apache.yml vars: LAZY: 0 + - include_tasks: hypnotoad.yml + vars: + LAZY: 0 - import_tasks: devtools.yml diff --git a/vagrant_support/update.yml b/vagrant_support/update.yml index c53a0554e..533da5b5e 100644 --- a/vagrant_support/update.yml +++ b/vagrant_support/update.yml @@ -20,4 +20,7 @@ LAZY: 1 - include_tasks: apache.yml vars: - LAZY: 1 \ No newline at end of file + LAZY: 1 + - include_tasks: hypnotoad.yml + vars: + LAZY: 1 -- cgit v1.2.3-24-g4f1b