mirror of
https://github.com/gentoo-mirror/guru.git
synced 2025-04-20 00:08:58 -04:00
www-servers/thin: treeclean
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
parent
d3b088c429
commit
064ab08e7f
@ -1 +0,0 @@
|
||||
DIST thin-1.8.0.tar.gz 181199 BLAKE2B d6e818d3d0c077ee54c8293e66f176e6c4d421af8fd906220371b84791bde8738aa252517582a52f898e0e6e8bc796deb1d31371ac1ebb0d56bfd40c31594175 SHA512 3166dbefcb4900a4cb839c8e3a36c5e27734980f8516547beb1732d446dd14e64b02936564cc5fe20b20c926185ca6a0114e6b246f038104a4891522e490d97f
|
@ -1,39 +0,0 @@
|
||||
# /etc/conf.d/thin: Configuration for /etc/init.d/thin*
|
||||
# Copy this file to /etc/conf.d/thin.SERVERNAME for server specific options.
|
||||
|
||||
# Set the configuration file location.
|
||||
# In start-all mode (/etc/init.d/thin), this must point to the directory where
|
||||
# all the thin configurations are located.
|
||||
# When starting a specific server (/etc/init.d/thin.SERVER), point to the exact
|
||||
# location of the .yml configuration file.
|
||||
# CONFIG="/etc/thin/${SVCNAME#*.}.yml"
|
||||
|
||||
# Disable looking for a configuration file.
|
||||
# You can use THIN_OPTS instead for setting command line options.
|
||||
# NOCONFIG=0
|
||||
|
||||
# Set the Ruby interpreter to use.
|
||||
# RUBY="/usr/bin/ruby"
|
||||
|
||||
# Whether to start thin using `bundle exec'
|
||||
# DO_BUNDLER=0
|
||||
|
||||
# What directory to cd into before starting thin
|
||||
# (useful for DO_BUNDLER)
|
||||
# CHDIR=
|
||||
|
||||
# Set the user for this instance.
|
||||
# (Should mirror "user" value in /etc/thin/${SVCNAME#*.}.yml)
|
||||
# THIN_USER=
|
||||
|
||||
# Set the group for this instance.
|
||||
# (Should mirror "group" value in /etc/thin/${SVCNAME#*.}.yml)
|
||||
# THIN_GROUP=
|
||||
|
||||
# Set the pidfile for this instance.
|
||||
# (Should mirror "pid" value in /etc/thin/${SVCNAME#*.}.yml)
|
||||
# THIN_PID=
|
||||
|
||||
# Set command line options to pass to thin.
|
||||
# In specific server mode, '--tag SERVER_NAME' is automatically appended.
|
||||
# THIN_OPTS=
|
@ -1,87 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
SERVER=${SVCNAME#*.}
|
||||
if [ ${SERVER} != thin ]; then
|
||||
CONFIG=${CONFIG:-/etc/thin/${SERVER}.yml}
|
||||
else
|
||||
CONFIG=${CONFIG:-/etc/thin/}
|
||||
fi
|
||||
NOCONFIG=${NOCONFIG:-0}
|
||||
RUBY=${RUBY:-/usr/bin/ruby}
|
||||
DO_BUNDLER=${DO_BUNDLER:-0}
|
||||
CHDIR=${CHDIR:-}
|
||||
THIN_USER=${THIN_USER:-root}
|
||||
THIN_GROUP=${THIN_GROUP:-root}
|
||||
THIN_PID=${THIN_PID:-/var/run/thin/thin.pid}
|
||||
THIN_OPTS=${THIN_OPTS:-}
|
||||
|
||||
depend() {
|
||||
need localmount
|
||||
}
|
||||
|
||||
checkconfig() {
|
||||
if [ -n ${CHDIR} ]; then
|
||||
cd "${CHDIR}"
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
eerror "Cannot cd into requested directory"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
[ ${SERVER} = thin -o ${NOCONFIG} != 0 ] && return 0
|
||||
|
||||
if [ ! -f ${CONFIG} ]; then
|
||||
eerror "Unable to find the server configuration."
|
||||
eerror "Please set the CONFIG variable in /etc/conf.d/${SVCNAME} or"
|
||||
eerror "set NOCONFIG there to 1 to disable looking for a config file."
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
buildargs() {
|
||||
if [ ${NOCONFIG} = 0 -a ${SERVER} != thin ]; then
|
||||
echo -n "-C ${CONFIG} "
|
||||
fi
|
||||
|
||||
echo -n "${THIN_OPTS}"
|
||||
}
|
||||
|
||||
action() {
|
||||
checkconfig || return 1
|
||||
|
||||
[ ${DO_BUNDLER} -ne 0 ] && RUBY="${RUBY} /usr/bin/bundle exec"
|
||||
|
||||
if [ ${SERVER} = thin ]; then
|
||||
ebegin "$2 all thin servers in ${CONFIG}"
|
||||
${RUBY} /usr/bin/thin $1 $(buildargs) --all ${CONFIG}
|
||||
eend $?
|
||||
else
|
||||
ebegin "$2 thin server ${SERVER}"
|
||||
${RUBY} /usr/bin/thin $(buildargs) --tag ${SERVER} $1
|
||||
eend $?
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
action start 'Starting'
|
||||
}
|
||||
|
||||
stop() {
|
||||
action stop 'Stopping'
|
||||
}
|
||||
|
||||
restart() {
|
||||
action restart 'Restarting'
|
||||
}
|
||||
|
||||
start_pre() {
|
||||
# If the path to the pidfile is /var/run/thin/foo/thin.pid
|
||||
# then checkpath will fail if /var/run/thin/ does not exist.
|
||||
# This caught infra...
|
||||
d=$(dirname ${THIN_PID})
|
||||
mkdir -p "$d"
|
||||
checkpath -d -m 0775 -o ${THIN_USER}:${THIN_GROUP} "$d"
|
||||
}
|
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>andrea.postiglione@gmail.com</email>
|
||||
<name>Andrea Postiglione</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -1,89 +0,0 @@
|
||||
# Copyright 2020-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
|
||||
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
|
||||
USE_RUBY="ruby26"
|
||||
|
||||
inherit ruby-fakegem
|
||||
|
||||
DESCRIPTION="This a Ruby gem that delivers a thin and fast web server"
|
||||
HOMEPAGE="https://github.com/macournoyer/thin"
|
||||
SRC_URI="https://github.com/macournoyer/thin/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Ruby"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc test"
|
||||
|
||||
ruby_add_depend "
|
||||
dev-ruby/eventmachine
|
||||
dev-ruby/daemons
|
||||
dev-ruby/rack
|
||||
"
|
||||
|
||||
all_ruby_prepare() {
|
||||
# Fix Ragel-based parser generation (uses a *very* old syntax that
|
||||
# is not supported in Gentoo)
|
||||
sed -i -e 's: | rlgen-cd::' Rakefile || die
|
||||
|
||||
# Fix specs' dependencies so that the extension is not rebuilt
|
||||
# when running tests
|
||||
rm tasks/spec.rake || die
|
||||
|
||||
# Fix rspec version to allow newer 2.x versions
|
||||
sed -i -e '/gem "rspec"/ s/1.2.9/2.0/' spec/spec_helper.rb || die
|
||||
|
||||
# Avoid CLEAN since it may not be available and we don't need it.
|
||||
sed -i -e '/CLEAN/ s:^:#:' tasks/*.rake || die
|
||||
|
||||
# Disable a test that is known for freezing the testsuite,
|
||||
# reported upstream. In thin 1.5.1 this just fails.
|
||||
sed -i \
|
||||
-e '/should force kill process in pid file/,/^ end/ s:^:#:' \
|
||||
spec/daemonizing_spec.rb || die
|
||||
|
||||
sed -i \
|
||||
-e '/tracing routines (with NO custom logger)/,/^ end/ s:^:#:'\
|
||||
spec/logging_spec.rb || die
|
||||
|
||||
# Remove failing perfomance tests
|
||||
rm -r spec/perf || die
|
||||
|
||||
sed -i -e "s/Spec::Runner/Rspec/" spec/spec_helper.rb || die
|
||||
# nasty but too complex to fix up for now :(
|
||||
if ! use doc; then
|
||||
rm tasks/rdoc.rake || die
|
||||
fi
|
||||
}
|
||||
|
||||
each_ruby_configure() {
|
||||
${RUBY} -Cext/thin_parser extconf.rb || die
|
||||
}
|
||||
|
||||
each_ruby_compile() {
|
||||
emake V=1 CFLAGS="${CFLAGS} -fPIC" DLDFLAGS="${LDFLAGS}" -Cext/thin_parser
|
||||
cp ext/thin_parser/thin_parser.so lib/ || die
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
ruby_fakegem_binwrapper thin
|
||||
}
|
||||
|
||||
all_ruby_install() {
|
||||
all_fakegem_install
|
||||
|
||||
keepdir /etc/thin
|
||||
newinitd "${FILESDIR}/${PN}.initd-r4" "${PN}"
|
||||
newconfd "${FILESDIR}/${PN}.confd-2" "${PN}"
|
||||
|
||||
einfo
|
||||
elog "Thin is now shipped with init scripts."
|
||||
elog "The default script (/etc/init.d/thin) will start all servers that have"
|
||||
elog "configuration files in /etc/thin/. You can symlink the init script to"
|
||||
elog "files of the format 'thin.SERVER' to be able to start individual servers."
|
||||
elog "See /etc/conf.d/thin for more configuration options."
|
||||
einfo
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user