~alpine/aports

This thread contains a patchset. You're looking at the original emails, but you may wish to use the patch review UI. Review patch
3 3

[alpine-aports] [PATCH] main/apache2: startup script cleanups

Details
Message ID
<1446734319-9711-1-git-send-email-valery.kartel@gmail.com>
Sender timestamp
1446734319
DKIM signature
missing
Download raw message
Patch: +30 -150
---
 main/apache2/APKBUILD      |   2 +-
 main/apache2/apache2.confd |   8 ---
 main/apache2/apache2.initd | 168 ++++++++-------------------------------------
 main/apache2/ssl.conf      |   2 +-
 4 files changed, 30 insertions(+), 150 deletions(-)

diff --git a/main/apache2/APKBUILD b/main/apache2/APKBUILD
index 2eb2010..5fadee2 100644
--- a/main/apache2/APKBUILD
+++ b/main/apache2/APKBUILD
@@ -3,7 +3,7 @@
pkgname=apache2
_pkgreal=httpd
pkgver=2.4.17
pkgrel=0
pkgrel=1
pkgdesc="A high performance Unix-based HTTP server"
url="http://httpd.apache.org/"
arch="all"
diff --git a/main/apache2/apache2.confd b/main/apache2/apache2.confd
index aeb3222..58334da 100644
--- a/main/apache2/apache2.confd
+++ b/main/apache2/apache2.confd
@@ -39,14 +39,6 @@ HTTPD_OPTS=
# They are normally dumped to your terminal.
#STARTUPERRORLOG="/var/log/apache2/startuperror.log"

# A command that outputs a formatted text version of the HTML at the URL
# of the command line. Designed for lynx, however other programs may work.
#LYNX="lynx -dump"

# The URL to your server's mod_status status page.
# Required for status and fullstatus
#STATUSURL="http://localhost/server-status"

# Method to use when reloading the server
# Valid options are 'restart' and 'graceful'
# See http://httpd.apache.org/docs/2.2/stopping.html for information on
diff --git a/main/apache2/apache2.initd b/main/apache2/apache2.initd
index 2975e7a..29f4730 100755
--- a/main/apache2/apache2.initd
+++ b/main/apache2/apache2.initd
@@ -1,154 +1,42 @@
#!/sbin/openrc-run

extra_commands="configdump configtest modules virtualhosts"
extra_started_commands="fullstatus graceful gracefulstop reload"
pidfile=${PIDFILE:-/run/apache2/httpd.pid}
configfile=${CONFIGFILE:-/etc/apache2/httpd.conf}
serverroot=${SERVERROOT:-/var/www}
command=${HTTPD:-/usr/sbin/httpd}
command_args="-d $serverroot -f $configfile $HTTPD_OPTS"
extra_started_commands="reload"
required_files=$configfile
required_dirs="$serverroot/modules $serverroot/logs"
retry=${TIMEOUT:-10}

depend() {
	need net
	use mysql dns logger netmount postgresql
	after sshd firewall
	use dns logger netmount
}

configtest() {
	ebegin "Checking ${SVCNAME} configuration"
	checkconfig
	eend $?
}

checkconfd() {
	PIDFILE="${PIDFILE:-/run/apache2/httpd.pid}"
	TIMEOUT=${TIMEOUT:-10}

	SERVERROOT="${SERVERROOT:-/var/www}"
	if [ ! -d ${SERVERROOT} ]; then
		eerror "SERVERROOT does not exist: ${SERVERROOT}"
		return 1
	fi

	CONFIGFILE="${CONFIGFILE:-/etc/apache2/httpd.conf}"
	[ "${CONFIGFILE#/}" = "${CONFIGFILE}" ] && CONFIGFILE="${SERVERROOT}/${CONFIGFILE}"
	if [ ! -r "${CONFIGFILE}" ]; then
		eerror "Unable to read configuration file: ${CONFIGFILE}"
		return 1
	fi

	HTTPD_OPTS="${HTTPD_OPTS} -d ${SERVERROOT}"
	HTTPD_OPTS="${HTTPD_OPTS} -f ${CONFIGFILE}"
	[ -n "${STARTUPERRORLOG}" ] && HTTPD_OPTS="${HTTPD_OPTS} -E ${STARTUPERRORLOG}"
	return 0

}

checkconfig() {
	checkconfd || return 1

	${HTTPD} ${HTTPD_OPTS} -t 1>/dev/null 2>&1
start_pre() {
	ebegin
	[ -n "$STARTUPERRORLOG" ] && command_args="-E $STARTUPERRORLOG $command_args"
	$command $command_args -t  2>/dev/null
	ret=$?
	if [ $ret -ne 0 ]; then
		eerror "${SVCNAME} has detected an error in your setup:"
		${HTTPD} ${HTTPD_OPTS} -t
	fi

	return $ret
}

start() {
	checkconfig || return 1
	checkpath --directory $(dirname $PIDFILE)

	[ -f /var/log/apache2/ssl_scache ] && rm /var/log/apache2/ssl_scache

	ebegin "Starting ${SVCNAME}"
	start-stop-daemon --start \
		--pidfile ${PIDFILE} \
		--exec ${HTTPD} \
		-- ${HTTPD_OPTS} -k start
	eend $?
}

stop() {
	checkconfd || return 1

	ebegin "Stopping ${SVCNAME}"
	start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \
		--retry ${TIMEOUT}
	eend $?
}

reload() {
	RELOAD_TYPE="${RELOAD_TYPE:-graceful}"

	checkconfig || return 1
	service_started "${SVCNAME}" || return

	if [ "${RELOAD_TYPE}" = "restart" ]; then
		ebegin "Restarting ${SVCNAME}"
		${HTTPD} ${HTTPD_OPTS} -k restart
		eend $?
	elif [ "${RELOAD_TYPE}" = "graceful" ]; then
		ebegin "Gracefully restarting ${SVCNAME}"
		${HTTPD} ${HTTPD_OPTS} -k graceful
		eend $?
	if [ $ret -eq 0 ]; then
		user=$($command $command_args -t -D DUMP_RUN_CFG | grep ^User: | cut -d\" -f2)
		group=$($command $command_args -t -D DUMP_RUN_CFG | grep ^Group: | cut -d\" -f2)
		checkpath --directory --owner $user:$group --mode 0750 ${pidfile%/*}
		[ -L $serverroot/run ] && rm $serverroot/run
		ln -s ${pidfile%/*} $serverroot/run
		[ -f $serverroot/run/scache ] && rm $serverroot/run/scache
	else
		eerror "${RELOAD_TYPE} is not a valid RELOAD_TYPE. Please edit /etc/conf.d/${SVCNAME}"
		[ -z "$STARTUPERRORLOG" ] && $command $command_args -t
	fi
	eend $ret
}

graceful() {
	checkconfig || return 1
	service_started "${SVCNAME}" || return
	ebegin "Gracefully restarting ${SVCNAME}"
	${HTTPD} ${HTTPD_OPTS} -k graceful
	eend $?
}

gracefulstop() {
	checkconfig || return 1
	ebegin "Gracefully stopping ${SVCNAME}"
	start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \
		--retry SIGWINCH/${TIMEOUT}
reload() {
	ebegin "Reloading ${SVCNAME}"
	signal=HUP
	[ $RELOAD_TYPE = "graceful" ] && signal=USR1
	start-stop-daemon --signal $signal --pidfile $pidfile --name $SVCNAME
	eend $?
}

modules() {
	checkconfig || return 1

	${HTTPD} ${HTTPD_OPTS} -M 2>&1
}

fullstatus() {
	LYNX="${LYNX:-lynx -dump}"
	STATUSURL="${STATUSURL:-http://localhost/server-status}"

	if ! service_started "${SVCNAME}"; then
		eerror "${SVCNAME} not started"
	elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then
		eerror "lynx not installed!"
	else
		${LYNX} ${STATUSURL}
	fi
}

virtualhosts() {
	checkconfd || return 1
	${HTTPD} ${HTTPD_OPTS} -S
}

configdump() {
	LYNX="${LYNX:-lynx -dump}"
	INFOURL="${INFOURL:-http://localhost/server-info}"

	checkconfd || return 1

	if ! service_started "${SVCNAME}"; then
		eerror "${SVCNAME} not started"
	elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then
		eerror "lynx not installed!"
	else
		echo "${HTTPD} started with '${HTTPD_OPTS}'"
		for i in config server list; do
			${LYNX} "${INFOURL}/?${i}" | sed '/Apache Server Information/d;/^[[:space:]]\+[_]\+$/Q'
		done
	fi
}

diff --git a/main/apache2/ssl.conf b/main/apache2/ssl.conf
index e201954..78358b5 100644
--- a/main/apache2/ssl.conf
+++ b/main/apache2/ssl.conf
@@ -34,7 +34,7 @@ SSLPassPhraseDialog  builtin
#   Configure the SSL Session Cache: First the mechanism 
#   to use and second the expiring timeout (in seconds).
#SSLSessionCache        dc:UNIX:/var/cache/mod_ssl/distcache
SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCache         shmcb:run/scache(512000)
SSLSessionCacheTimeout  300

#   Pseudo Random Number Generator (PRNG):
-- 
2.6.1



---
Unsubscribe:  alpine-aports+unsubscribe@lists.alpinelinux.org
Help:         alpine-aports+help@lists.alpinelinux.org
---
Natanael Copa <ncopa@alpinelinux.org>
Details
Message ID
<20151130100459.7b5375e5@ncopa-desktop.alpinelinux.org>
In-Reply-To
<1446734319-9711-1-git-send-email-valery.kartel@gmail.com> (view parent)
Sender timestamp
1448874299
DKIM signature
missing
Download raw message
Kaarle, Could you please have a look at this?



On Thu,  5 Nov 2015 16:38:39 +0200
Valery Kartel <valery.kartel@gmail.com> wrote:

> ---
>  main/apache2/APKBUILD      |   2 +-
>  main/apache2/apache2.confd |   8 ---
>  main/apache2/apache2.initd | 168 ++++++++-------------------------------------
>  main/apache2/ssl.conf      |   2 +-
>  4 files changed, 30 insertions(+), 150 deletions(-)
> 
> diff --git a/main/apache2/APKBUILD b/main/apache2/APKBUILD
> index 2eb2010..5fadee2 100644
> --- a/main/apache2/APKBUILD
> +++ b/main/apache2/APKBUILD
> @@ -3,7 +3,7 @@
>  pkgname=apache2
>  _pkgreal=httpd
>  pkgver=2.4.17
> -pkgrel=0
> +pkgrel=1
>  pkgdesc="A high performance Unix-based HTTP server"
>  url="http://httpd.apache.org/"
>  arch="all"
> diff --git a/main/apache2/apache2.confd b/main/apache2/apache2.confd
> index aeb3222..58334da 100644
> --- a/main/apache2/apache2.confd
> +++ b/main/apache2/apache2.confd
> @@ -39,14 +39,6 @@ HTTPD_OPTS=
>  # They are normally dumped to your terminal.
>  #STARTUPERRORLOG="/var/log/apache2/startuperror.log"
>  
> -# A command that outputs a formatted text version of the HTML at the URL
> -# of the command line. Designed for lynx, however other programs may work.
> -#LYNX="lynx -dump"
> -
> -# The URL to your server's mod_status status page.
> -# Required for status and fullstatus
> -#STATUSURL="http://localhost/server-status"
> -
>  # Method to use when reloading the server
>  # Valid options are 'restart' and 'graceful'
>  # See http://httpd.apache.org/docs/2.2/stopping.html for information on
> diff --git a/main/apache2/apache2.initd b/main/apache2/apache2.initd
> index 2975e7a..29f4730 100755
> --- a/main/apache2/apache2.initd
> +++ b/main/apache2/apache2.initd
> @@ -1,154 +1,42 @@
>  #!/sbin/openrc-run
>  
> -extra_commands="configdump configtest modules virtualhosts"
> -extra_started_commands="fullstatus graceful gracefulstop reload"
> +pidfile=${PIDFILE:-/run/apache2/httpd.pid}
> +configfile=${CONFIGFILE:-/etc/apache2/httpd.conf}
> +serverroot=${SERVERROOT:-/var/www}
> +command=${HTTPD:-/usr/sbin/httpd}
> +command_args="-d $serverroot -f $configfile $HTTPD_OPTS"
> +extra_started_commands="reload"
> +required_files=$configfile
> +required_dirs="$serverroot/modules $serverroot/logs"
> +retry=${TIMEOUT:-10}
>  
>  depend() {
>  	need net
> -	use mysql dns logger netmount postgresql
> -	after sshd firewall
> +	use dns logger netmount
>  }
>  
> -configtest() {
> -	ebegin "Checking ${SVCNAME} configuration"
> -	checkconfig
> -	eend $?
> -}
> -
> -checkconfd() {
> -	PIDFILE="${PIDFILE:-/run/apache2/httpd.pid}"
> -	TIMEOUT=${TIMEOUT:-10}
> -
> -	SERVERROOT="${SERVERROOT:-/var/www}"
> -	if [ ! -d ${SERVERROOT} ]; then
> -		eerror "SERVERROOT does not exist: ${SERVERROOT}"
> -		return 1
> -	fi
> -
> -	CONFIGFILE="${CONFIGFILE:-/etc/apache2/httpd.conf}"
> -	[ "${CONFIGFILE#/}" = "${CONFIGFILE}" ] && CONFIGFILE="${SERVERROOT}/${CONFIGFILE}"
> -	if [ ! -r "${CONFIGFILE}" ]; then
> -		eerror "Unable to read configuration file: ${CONFIGFILE}"
> -		return 1
> -	fi
> -
> -	HTTPD_OPTS="${HTTPD_OPTS} -d ${SERVERROOT}"
> -	HTTPD_OPTS="${HTTPD_OPTS} -f ${CONFIGFILE}"
> -	[ -n "${STARTUPERRORLOG}" ] && HTTPD_OPTS="${HTTPD_OPTS} -E ${STARTUPERRORLOG}"
> -	return 0
> -
> -}
> -
> -checkconfig() {
> -	checkconfd || return 1
> -
> -	${HTTPD} ${HTTPD_OPTS} -t 1>/dev/null 2>&1
> +start_pre() {
> +	ebegin
> +	[ -n "$STARTUPERRORLOG" ] && command_args="-E $STARTUPERRORLOG $command_args"
> +	$command $command_args -t  2>/dev/null
>  	ret=$?
> -	if [ $ret -ne 0 ]; then
> -		eerror "${SVCNAME} has detected an error in your setup:"
> -		${HTTPD} ${HTTPD_OPTS} -t
> -	fi
> -
> -	return $ret
> -}
> -
> -start() {
> -	checkconfig || return 1
> -	checkpath --directory $(dirname $PIDFILE)
> -
> -	[ -f /var/log/apache2/ssl_scache ] && rm /var/log/apache2/ssl_scache
> -
> -	ebegin "Starting ${SVCNAME}"
> -	start-stop-daemon --start \
> -		--pidfile ${PIDFILE} \
> -		--exec ${HTTPD} \
> -		-- ${HTTPD_OPTS} -k start
> -	eend $?
> -}
> -
> -stop() {
> -	checkconfd || return 1
> -
> -	ebegin "Stopping ${SVCNAME}"
> -	start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \
> -		--retry ${TIMEOUT}
> -	eend $?
> -}
> -
> -reload() {
> -	RELOAD_TYPE="${RELOAD_TYPE:-graceful}"
> -
> -	checkconfig || return 1
> -	service_started "${SVCNAME}" || return
> -
> -	if [ "${RELOAD_TYPE}" = "restart" ]; then
> -		ebegin "Restarting ${SVCNAME}"
> -		${HTTPD} ${HTTPD_OPTS} -k restart
> -		eend $?
> -	elif [ "${RELOAD_TYPE}" = "graceful" ]; then
> -		ebegin "Gracefully restarting ${SVCNAME}"
> -		${HTTPD} ${HTTPD_OPTS} -k graceful
> -		eend $?
> +	if [ $ret -eq 0 ]; then
> +		user=$($command $command_args -t -D DUMP_RUN_CFG | grep ^User: | cut -d\" -f2)
> +		group=$($command $command_args -t -D DUMP_RUN_CFG | grep ^Group: | cut -d\" -f2)
> +		checkpath --directory --owner $user:$group --mode 0750 ${pidfile%/*}
> +		[ -L $serverroot/run ] && rm $serverroot/run
> +		ln -s ${pidfile%/*} $serverroot/run
> +		[ -f $serverroot/run/scache ] && rm $serverroot/run/scache
>  	else
> -		eerror "${RELOAD_TYPE} is not a valid RELOAD_TYPE. Please edit /etc/conf.d/${SVCNAME}"
> +		[ -z "$STARTUPERRORLOG" ] && $command $command_args -t
>  	fi
> +	eend $ret
>  }
>  
> -graceful() {
> -	checkconfig || return 1
> -	service_started "${SVCNAME}" || return
> -	ebegin "Gracefully restarting ${SVCNAME}"
> -	${HTTPD} ${HTTPD_OPTS} -k graceful
> -	eend $?
> -}
> -
> -gracefulstop() {
> -	checkconfig || return 1
> -	ebegin "Gracefully stopping ${SVCNAME}"
> -	start-stop-daemon --stop --pidfile ${PIDFILE} --exec ${HTTPD} \
> -		--retry SIGWINCH/${TIMEOUT}
> +reload() {
> +	ebegin "Reloading ${SVCNAME}"
> +	signal=HUP
> +	[ $RELOAD_TYPE = "graceful" ] && signal=USR1
> +	start-stop-daemon --signal $signal --pidfile $pidfile --name $SVCNAME
>  	eend $?
>  }
> -
> -modules() {
> -	checkconfig || return 1
> -
> -	${HTTPD} ${HTTPD_OPTS} -M 2>&1
> -}
> -
> -fullstatus() {
> -	LYNX="${LYNX:-lynx -dump}"
> -	STATUSURL="${STATUSURL:-http://localhost/server-status}"
> -
> -	if ! service_started "${SVCNAME}"; then
> -		eerror "${SVCNAME} not started"
> -	elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then
> -		eerror "lynx not installed!"
> -	else
> -		${LYNX} ${STATUSURL}
> -	fi
> -}
> -
> -virtualhosts() {
> -	checkconfd || return 1
> -	${HTTPD} ${HTTPD_OPTS} -S
> -}
> -
> -configdump() {
> -	LYNX="${LYNX:-lynx -dump}"
> -	INFOURL="${INFOURL:-http://localhost/server-info}"
> -
> -	checkconfd || return 1
> -
> -	if ! service_started "${SVCNAME}"; then
> -		eerror "${SVCNAME} not started"
> -	elif ! type -p $(set -- ${LYNX}; echo $1) 2>&1 >/dev/null; then
> -		eerror "lynx not installed!"
> -	else
> -		echo "${HTTPD} started with '${HTTPD_OPTS}'"
> -		for i in config server list; do
> -			${LYNX} "${INFOURL}/?${i}" | sed '/Apache Server Information/d;/^[[:space:]]\+[_]\+$/Q'
> -		done
> -	fi
> -}
> -
> diff --git a/main/apache2/ssl.conf b/main/apache2/ssl.conf
> index e201954..78358b5 100644
> --- a/main/apache2/ssl.conf
> +++ b/main/apache2/ssl.conf
> @@ -34,7 +34,7 @@ SSLPassPhraseDialog  builtin
>  #   Configure the SSL Session Cache: First the mechanism 
>  #   to use and second the expiring timeout (in seconds).
>  #SSLSessionCache        dc:UNIX:/var/cache/mod_ssl/distcache
> -SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
> +SSLSessionCache         shmcb:run/scache(512000)
>  SSLSessionCacheTimeout  300
>  
>  #   Pseudo Random Number Generator (PRNG):



---
Unsubscribe:  alpine-aports+unsubscribe@lists.alpinelinux.org
Help:         alpine-aports+help@lists.alpinelinux.org
---
Details
Message ID
<alpine.LFD.2.20.1511301201340.22096@kanala.kunkku.net>
In-Reply-To
<20151130100459.7b5375e5@ncopa-desktop.alpinelinux.org> (view parent)
Sender timestamp
1448878013
DKIM signature
missing
Download raw message
On Mon, 30 Nov 2015, Natanael Copa wrote:

> Kaarle, Could you please have a look at this?

The patch seems to contain several changes that are not closely related to 
each other. Valery, could you please split it into multiple patches and 
describe the purpose of the proposed changes in the message of each 
commit?

BR,
Kaarle


---
Unsubscribe:  alpine-aports+unsubscribe@lists.alpinelinux.org
Help:         alpine-aports+help@lists.alpinelinux.org
---
Details
Message ID
<CAKTwcDOLhj7t=AhFsiZHz7sikzaJpumfy2Ky4hQkDSzr0vxfBw@mail.gmail.com>
In-Reply-To
<alpine.LFD.2.20.1511301201340.22096@kanala.kunkku.net> (view parent)
Sender timestamp
1448985045
DKIM signature
missing
Download raw message
Hi, I don't know how to split all changes to multiple patches so I made a
new huge patch for main/apache2 and describe all changes it does.

Also need to think about renaming all 'apache-' packets to 'apache2-', or
all 'apache2-' to 'apache-' because both are present in git

2015-11-30 12:06 GMT+02:00 Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>:

> On Mon, 30 Nov 2015, Natanael Copa wrote:
>
> > Kaarle, Could you please have a look at this?
>
> The patch seems to contain several changes that are not closely related to
> each other. Valery, could you please split it into multiple patches and
> describe the purpose of the proposed changes in the message of each
> commit?
>
> BR,
> Kaarle
>
Reply to thread Export thread (mbox)