forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-util/artifactory-bin: add limits.d file
Package-Manager: Portage-2.3.3, Repoman-2.3.1
- Loading branch information
Showing
1 changed file
with
110 additions
and
0 deletions.
There are no files selected for viewing
110 changes: 110 additions & 0 deletions
110
dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
# Using a binary ebuild until a source ebuild is doable. | ||
# This was previously blocked by two major bugs upstream: | ||
# A lack of documented build instructions - https://www.jfrog.com/jira/browse/RTFACT-8960 | ||
# A lack of source releases - https://www.jfrog.com/jira/browse/RTFACT-8961 | ||
# Upstream now releases source and instructions (yay!), but most of artifactory's | ||
# dependencies are not in portage yet. | ||
|
||
EAPI=6 | ||
|
||
inherit user | ||
|
||
MY_P="${P/-bin}" | ||
MY_PN="${PN/-bin}" | ||
MY_PV="${PV/-bin}" | ||
|
||
DESCRIPTION="The world's most advanced repository manager for maven" | ||
HOMEPAGE="http://www.jfrog.org/products.php" | ||
SRC_URI="https://bintray.com/artifact/download/jfrog/artifactory/jfrog-artifactory-oss-${MY_PV}.zip -> ${MY_P}.zip" | ||
|
||
LICENSE="AGPL-3+" | ||
SLOT="0" | ||
KEYWORDS="~x86 ~amd64" | ||
IUSE="ssl" | ||
|
||
RDEPEND=">=virtual/jre-1.8" | ||
DEPEND=">=virtual/jdk-1.8 | ||
app-arch/unzip" | ||
|
||
S="${WORKDIR}/${MY_PN}-oss-${MY_PV}" | ||
|
||
pkg_setup() { | ||
enewgroup artifactory | ||
enewuser artifactory -1 /bin/sh -1 artifactory | ||
} | ||
|
||
limitsdfile=40-${MY_PN}.conf | ||
|
||
print_limitsdfile() { | ||
printf "# Start of ${limitsdfile} from ${P}\n\n" | ||
printf "@${MY_PN}\t-\tnofile\t32000\n" | ||
printf "\n# End of ${limitsdfile} from ${P}\n" | ||
} | ||
|
||
src_prepare() { | ||
default | ||
|
||
if use ssl ; then | ||
cp "${FILESDIR}/artifactory.xml" tomcat/conf/Catalina/localhost/artifactory.xml || die | ||
cp "${FILESDIR}/server.xml" tomcat/conf/server.xml || die | ||
fi | ||
|
||
# Reverse https://www.jfrog.com/jira/browse/RTFACT-7123 | ||
sed -i -e "s%artifactory.repo.global.disabled=true%artifactory.repo.global.disabled=false%g;" \ | ||
etc/artifactory.system.properties || die | ||
|
||
# See FIXME in src_install(), this can probably go away, | ||
# but catalina.sh may need to be fixed for that: | ||
sed -i -e "s%/etc/opt/jfrog/artifactory/default%/etc/conf.d/${MY_PN}%g;" \ | ||
misc/service/setenv.sh || die | ||
|
||
einfo "Generating ${limitsdfile}" | ||
print_limitsdfile > "${S}/${limitsdfile}" | ||
} | ||
|
||
src_install() { | ||
local ARTIFACTORY_HOME="/opt/artifactory" | ||
local TOMCAT_HOME="${ARTIFACTORY_HOME}/tomcat" | ||
|
||
insinto ${ARTIFACTORY_HOME} | ||
doins -r etc logs misc tomcat webapps | ||
|
||
dodir /etc/opt/jfrog | ||
dosym ${ARTIFACTORY_HOME}/etc /etc/opt/jfrog/artifactory | ||
|
||
dosym ${ARTIFACTORY_HOME}/logs /var/log/artifactory | ||
|
||
exeinto ${ARTIFACTORY_HOME}/bin | ||
doexe bin/* | ||
|
||
# FIXME: this is called by catalina.sh (it echoes the variables before starting | ||
# artifactory, as well as makes sure log dir, etc. exists). Those directories | ||
# could probably be moved to the ebuild and the script removed from catalina.sh | ||
# without consequence (and quieter starts). Would need to check if CATALINA_* | ||
# variables are actually used anywhere (from reading code don't appear to be | ||
# actually needed) | ||
exeinto ${TOMCAT_HOME}/bin | ||
doexe misc/service/setenv.sh | ||
doexe tomcat/bin/* | ||
|
||
keepdir ${ARTIFACTORY_HOME}/backup | ||
keepdir ${ARTIFACTORY_HOME}/data | ||
keepdir ${ARTIFACTORY_HOME}/run | ||
keepdir ${ARTIFACTORY_HOME}/work | ||
keepdir ${TOMCAT_HOME}/logs/catalina | ||
keepdir ${TOMCAT_HOME}/temp | ||
keepdir ${TOMCAT_HOME}/work | ||
keepdir /var/opt/jfrog/artifactory/run | ||
|
||
newconfd "${FILESDIR}/confd" ${MY_PN} | ||
newinitd "${FILESDIR}/initd-r2" ${MY_PN} | ||
|
||
fowners -R artifactory:artifactory ${ARTIFACTORY_HOME} | ||
fperms -R u+w ${TOMCAT_HOME}/work | ||
|
||
insinto /etc/security/limits.d | ||
doins "${S}/${limitsdfile}" | ||
} |