summaryrefslogtreecommitdiff
path: root/dev-util/artifactory-bin
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-util/artifactory-bin
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-util/artifactory-bin')
-rw-r--r--dev-util/artifactory-bin/Manifest17
-rw-r--r--dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild110
-rw-r--r--dev-util/artifactory-bin/artifactory-bin-4.16.1.ebuild110
-rw-r--r--dev-util/artifactory-bin/artifactory-bin-5.3.2.ebuild110
-rw-r--r--dev-util/artifactory-bin/artifactory-bin-5.4.4.ebuild110
-rw-r--r--dev-util/artifactory-bin/artifactory-bin-5.4.6.ebuild110
-rw-r--r--dev-util/artifactory-bin/files/artifactory.xml4
-rw-r--r--dev-util/artifactory-bin/files/confd5
-rw-r--r--dev-util/artifactory-bin/files/initd-r2165
-rw-r--r--dev-util/artifactory-bin/files/initd-r3165
-rw-r--r--dev-util/artifactory-bin/files/server.xml17
-rw-r--r--dev-util/artifactory-bin/metadata.xml11
12 files changed, 934 insertions, 0 deletions
diff --git a/dev-util/artifactory-bin/Manifest b/dev-util/artifactory-bin/Manifest
new file mode 100644
index 000000000000..6405d43f7e10
--- /dev/null
+++ b/dev-util/artifactory-bin/Manifest
@@ -0,0 +1,17 @@
+AUX artifactory.xml 244 SHA256 b6e6c192e48177ff3eee2cc967c69d9094b5a741091cacb2276b60f909af70c1 SHA512 582ba26a9b36a99266ebc35cf6ccad3e58c17c5b6e6a9168732a24842c67478fde72197b7592275e11cc3836ea1ed337785d90b8f3e6181e5f7fc1c102a45f55 WHIRLPOOL e1b0ac7cbf9f4b8d984b294f09b7ccc56d8b6586f401f57d79e05e385fd3886fe161f39fc35af94b47e34cb2cd934255b87da53a06f6439be57983772b5b5900
+AUX confd 252 SHA256 93fa422a8ee9ca826ce7954f8bd07fe636e25e5b10bab201005706203648eedd SHA512 ae3c7e47ae34ce163799ffa57ec4b8a479eecc36a6c3620f30e351ddf8dea3e55d04a6ef459ed7ccefae6b0d39af8ebcf73cac3eea5f7d9355b9a1de7715b1e7 WHIRLPOOL 69a27f137990c17d1bcafaed80eadad780a332c298ca6cd09ca26ba4e724e86f2011c326980c83b12c82ad39725cac62a3ae5b68a2434f98805c3f973cfee1d3
+AUX initd-r2 5371 SHA256 c6763cf77f9c81ea29008e1239c9e3c5c0b1261494309666203dcb0a4779de18 SHA512 c19994a2918cb317a074898b7de294193a8aae1b5ec37d407bd5b60971c40d7c808ead5376c6d48219f41b15b72b2dca85959db677e81052d224a73bfb39cbfb WHIRLPOOL c4c86259515806e8c98b37ece3ee93eac443df651fcc755308d6bd73c51039e13100e1c2cfd878abf0be84939c5c74e8aef2eaa8caf769f1fc480617003ccf03
+AUX initd-r3 5373 SHA256 a8de87ab66a07293b42d00c7b1ea143c5dee4c7a98d01d6ce446a1c1f91d63b3 SHA512 89ef20e27296318cf844130c09e17b16f63c27b3188e53400f8b1dcf170d0d6acfb5a56592eb8580b8fa1281c2fcaa7f2edc4cde43803eaf20ce345030ce3f98 WHIRLPOOL 9863ec7e68006bbfaec2fd851fff57eeb76135f98fd15dde1c2df2c76c3fd131bc592a1e387f683664e74205c18cb0816d5e5668a4ad8e74f0a3f024131b98df
+AUX server.xml 516 SHA256 65a06a1da172019e3b9bcbee2ddebd48ea3f7dcfd09900143064bf6007cbf005 SHA512 2c16207cccf29a3733e9759b0eb20d62184de6f91feb8f49037501e62f77ca09aefcd7a95a1544441318ac6a3577a3c366fc12d490726268233658581a64b91c WHIRLPOOL c21cfcc0943babb43d501caa89d8a646fcfffa74482f88cc4f0399d5120b82bfcb8b16a2949b517c3ee1376de62d8e6a44849a811a8da6e6cce47dfa10834770
+DIST artifactory-4.16.0.zip 41455447 SHA256 f5711536cdf0a597799e01c570bbd38e6f5f3ffb6935cde21d38119be6592f16 SHA512 e861b66ed7586ba881267312462584fd9037e2b72021e930a52489ae718ca2449c7997278cb26cb3dead774f16d74cf285c8ce2fca0c085e7edb444f71deaa14 WHIRLPOOL 01a60743fe85909d06f69ef4bda94a2cfb37e847ee481ee025075c0b586df11118566f7f99352a7808147eec51fc1bacb649853baa97a90253ab89d3b92279a5
+DIST artifactory-4.16.1.zip 41489457 SHA256 f3715397f7e792de76cfecfe2b41ebbf54541e0460ff14e82a69160e0f3f06fb SHA512 b8f5441f011966837861073c928512704961c7683fadac4603f2177df1c64861432f894c5fe0669c4842a4b7d008553169e88aaffdde6e3d6e6bbdff6adf9d78 WHIRLPOOL dc7dfc0044d3770fcfc1dc56da6ffe8bc8fb07892a2888d88f5a05640ac8144cb25afc2119340d820323046bbaa0aa718a98cda6863340297e3ced696ed3e3f7
+DIST artifactory-5.3.2.zip 45729254 SHA256 e086a067ad191859cd0a0c996313cf5c7386e6ee892b55697c27b0f42ae2bc14 SHA512 60fbbed97c9915ed4a7627a3b893fa6c5bcec695932415d3102b9788ba6182c8cef937ad48639d4398a682ab2f517771c3dcda9306842e4202bbd45ab4768f1d WHIRLPOOL bf3b31f7a1989ddb90b03396172eeac37dc5230c4bbcc99b54c66326e5d52e26dbb83003824647c6e89926049c31b9644212aee183fa24db7475831dda0ceaec
+DIST artifactory-5.4.4.zip 76841935 SHA256 bf2198a0fefe818fe412579dd008f2a24dc065780da4c9657a923363c70a0a3d SHA512 f949e4c2ecaaf4581bc2e96058403684cab09f10b0bec512eda9b65bb41577a792b08d05f7a16e0e7f1614567dc9b0d1d59bb3c6ad6a4dafeb0c054a3add09a8 WHIRLPOOL c0c27a0ce5b0035d9266b6af4316044cf1aed361dbe0f7aaf66844015a70678e92bb0c6a13330ffd8f5a05903f66a82b48995605c272ba3950a19aa47d1fc85d
+DIST artifactory-5.4.6.zip 76857888 SHA256 43fb4b14ad5350daa200e0282a36903495505ccb536b5f0ac7d7b5487dcdfca6 SHA512 08d7895dc823e61be83026d31eea387eb914f17cb2f13b03d5314c6473f30de9279d230d242d8160dba0d3c8f6981b25b5ad46f52ad12d1c39ee820ac7a676fe WHIRLPOOL dcc86f1326011bb89c3e65a420c9f9ad02afea3a144b4b5eac8b617bec7dbb72256a6ac1f67d2bae034897bd02801b24e59746d1543e957d8e595d7ea83a4964
+EBUILD artifactory-bin-4.16.0-r1.ebuild 3336 SHA256 7a1409e38513d16ad42333dcc05be4ca3a7788fc86c876601fd7926fae559af5 SHA512 f7297b2590d5329f851a9783cc066001b76734b8b7e6dc51d79d773d8d167e6d574a5c6ee8e2b4db9b53b4977df909eff796537fba815dd45752223e71b08852 WHIRLPOOL 0942fc42029836b02e2a0048b0c22ba54798696084b421fc45e47a00c48a2b3286dda04783d2809e779f220570827b1d3d78a1e4fb76eb357af3e7066b669770
+EBUILD artifactory-bin-4.16.1.ebuild 3336 SHA256 7a1409e38513d16ad42333dcc05be4ca3a7788fc86c876601fd7926fae559af5 SHA512 f7297b2590d5329f851a9783cc066001b76734b8b7e6dc51d79d773d8d167e6d574a5c6ee8e2b4db9b53b4977df909eff796537fba815dd45752223e71b08852 WHIRLPOOL 0942fc42029836b02e2a0048b0c22ba54798696084b421fc45e47a00c48a2b3286dda04783d2809e779f220570827b1d3d78a1e4fb76eb357af3e7066b669770
+EBUILD artifactory-bin-5.3.2.ebuild 3336 SHA256 f6c54e6480cb47a7ba4e95ec9c38ebc4af75328980302cd55ce38ae5f726819d SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 WHIRLPOOL ebcca19550c71c7b5264e31d04e46a5bd3ba0f2f1f343e297c7460eb62261ccee331875f1ac249d32a56deec2d9e86139793b4e10b660505015e651cae0442b1
+EBUILD artifactory-bin-5.4.4.ebuild 3336 SHA256 f6c54e6480cb47a7ba4e95ec9c38ebc4af75328980302cd55ce38ae5f726819d SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 WHIRLPOOL ebcca19550c71c7b5264e31d04e46a5bd3ba0f2f1f343e297c7460eb62261ccee331875f1ac249d32a56deec2d9e86139793b4e10b660505015e651cae0442b1
+EBUILD artifactory-bin-5.4.6.ebuild 3336 SHA256 f6c54e6480cb47a7ba4e95ec9c38ebc4af75328980302cd55ce38ae5f726819d SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 WHIRLPOOL ebcca19550c71c7b5264e31d04e46a5bd3ba0f2f1f343e297c7460eb62261ccee331875f1ac249d32a56deec2d9e86139793b4e10b660505015e651cae0442b1
+MISC ChangeLog 4764 SHA256 9a326637b49316fc0f5fd75439f9da89ea2c8f3df2ffb9d05942f339ef8a59dc SHA512 cabc49e593241ac844c41d9ccfb3911b5e2a49a49dc2ee65a488f6c803164fcfbead244e8e5d2dd2085364f8f9fc89ce94bf2bd7a0611082ad2ffedf63098ce0 WHIRLPOOL ebfdbef69fe7a7670a2505a7d7f0d8ae79327552055726fc91ad6fd6ba580b2bd9564a96f3b56ac75b3841113bc30dca45f2781e4a02d4bb5b7267ab9e545ebf
+MISC metadata.xml 368 SHA256 f1527df453967a1e7a353a0dfc4f0fb1c1003d7dfa2c93a72f8337e79797d91c SHA512 889ab0f86261be62dc4988fc99c8526212c7936b3fbb8a078d644046047f653108b3120cef9cc65bce00a1c267227e58dae0cb1eb7d86ac1f4966408fa783beb WHIRLPOOL 38beba1f4815189a40225bcb1b0b7023547eac872439fc627588eed8982589872a37bc674d2ff07671746036457ea094d6fb750f5cf88b7ce507988203e43523
diff --git a/dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild b/dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild
new file mode 100644
index 000000000000..cb6e42f39ffa
--- /dev/null
+++ b/dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild
@@ -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}"
+}
diff --git a/dev-util/artifactory-bin/artifactory-bin-4.16.1.ebuild b/dev-util/artifactory-bin/artifactory-bin-4.16.1.ebuild
new file mode 100644
index 000000000000..cb6e42f39ffa
--- /dev/null
+++ b/dev-util/artifactory-bin/artifactory-bin-4.16.1.ebuild
@@ -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}"
+}
diff --git a/dev-util/artifactory-bin/artifactory-bin-5.3.2.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.3.2.ebuild
new file mode 100644
index 000000000000..242019ded03b
--- /dev/null
+++ b/dev-util/artifactory-bin/artifactory-bin-5.3.2.ebuild
@@ -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-r3" ${MY_PN}
+
+ fowners -R artifactory:artifactory ${ARTIFACTORY_HOME}
+ fperms -R u+w ${TOMCAT_HOME}/work
+
+ insinto /etc/security/limits.d
+ doins "${S}/${limitsdfile}"
+}
diff --git a/dev-util/artifactory-bin/artifactory-bin-5.4.4.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.4.4.ebuild
new file mode 100644
index 000000000000..242019ded03b
--- /dev/null
+++ b/dev-util/artifactory-bin/artifactory-bin-5.4.4.ebuild
@@ -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-r3" ${MY_PN}
+
+ fowners -R artifactory:artifactory ${ARTIFACTORY_HOME}
+ fperms -R u+w ${TOMCAT_HOME}/work
+
+ insinto /etc/security/limits.d
+ doins "${S}/${limitsdfile}"
+}
diff --git a/dev-util/artifactory-bin/artifactory-bin-5.4.6.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.4.6.ebuild
new file mode 100644
index 000000000000..242019ded03b
--- /dev/null
+++ b/dev-util/artifactory-bin/artifactory-bin-5.4.6.ebuild
@@ -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-r3" ${MY_PN}
+
+ fowners -R artifactory:artifactory ${ARTIFACTORY_HOME}
+ fperms -R u+w ${TOMCAT_HOME}/work
+
+ insinto /etc/security/limits.d
+ doins "${S}/${limitsdfile}"
+}
diff --git a/dev-util/artifactory-bin/files/artifactory.xml b/dev-util/artifactory-bin/files/artifactory.xml
new file mode 100644
index 000000000000..19042bcb97a0
--- /dev/null
+++ b/dev-util/artifactory-bin/files/artifactory.xml
@@ -0,0 +1,4 @@
+<Context path="/artifactory" docBase="${artifactory.home}/webapps/artifactory.war" processTlds="false">
+ <Manager pathname="" />
+ <Valve className="org.apache.catalina.valves.RemoteIpValve" protocolHeader="x-forwarded-proto"/>
+</Context>
diff --git a/dev-util/artifactory-bin/files/confd b/dev-util/artifactory-bin/files/confd
new file mode 100644
index 000000000000..fd7e6e22582c
--- /dev/null
+++ b/dev-util/artifactory-bin/files/confd
@@ -0,0 +1,5 @@
+ARTIFACTORY_HOME=/opt/artifactory
+ARTIFACTORY_PID=$ARTIFACTORY_HOME/run/artifactory.pid
+ARTIFACTORY_USER=artifactory
+JAVA_OPTIONS="-server -Xms2g -Xmx8g -Xss256k -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+UseG1GC"
+TOMCAT_HOME=$ARTIFACTORY_HOME/tomcat
diff --git a/dev-util/artifactory-bin/files/initd-r2 b/dev-util/artifactory-bin/files/initd-r2
new file mode 100644
index 000000000000..c9fbb05bd834
--- /dev/null
+++ b/dev-util/artifactory-bin/files/initd-r2
@@ -0,0 +1,165 @@
+#!/sbin/openrc-run
+
+description="Manages the services needed to run Artifactory on a dedicated Tomcat"
+command="/opt/artifactory/tomcat/bin/catalina.sh"
+pidfile="/opt/artifactory/run/artifactory.pid"
+procname="artifactory"
+user=${ARTIFACTORY_USER:-artifactory}
+group=${group:-artifactory}
+
+# Artifactory can be very slow to start, and without locking,
+# restarting via runscript is very error prone
+CATALINA_LOCK_FILE="$(dirname $pidfile)/lock"
+
+CATALINA_MGMT_PORT=8015
+REQUIRED_JAVA_VERSION="1.8"
+START_TIMEOUT=300
+
+# Helper functions:
+is_mgmt_port_used() {
+ mgmt_port_used=$(netstat -vatn | grep LISTEN | grep $CATALINA_MGMT_PORT | wc -l)
+}
+
+get_pid_info() {
+ pidValue=""
+ javaPs=""
+ if [ -e "$pidfile" ]; then
+ pidValue=$(cat $pidfile)
+ if [ -n "$pidValue" ]; then
+ javaPs="$(ps -p $pidValue | grep java)"
+ fi
+ fi
+}
+
+depend() {
+ need net nginx
+ use dns logger netmount
+}
+
+start_pre() {
+ if [ -z "$ARTIFACTORY_HOME" ] || [ ! -d "$ARTIFACTORY_HOME" ]; then
+ eerror "Artifactory home folder not defined or does not exists at $ARTIFACTORY_HOME"
+ return 1
+ fi
+
+ if [ -z "$pidfile" ]; then
+ eerror "Artifactory pid destination pidfile was not set!"
+ return 1
+ fi
+
+ if [ -z "$TOMCAT_HOME" ] || [ ! -d "$TOMCAT_HOME" ]; then
+ eerror "Tomcat Artifactory folder not defined or does not exists at $TOMCAT_HOME"
+ return 1
+ fi
+
+ if [ -z "$ARTIFACTORY_USER" ]; then
+ ARTIFACTORY_USER=$user
+ fi
+
+ current_open_file_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -n")
+ desired_open_file_limit=32000
+ if [ "$current_open_file_limit" != "unlimited" ] && [ $current_open_file_limit -lt $desired_open_file_limit ]; then
+ eerror "Maximum number of open files ($current_open_file_limit) is too small!"
+ eerror "You should add:"
+ eerror "artifactory soft nofile $desired_open_file_limit"
+ eerror "artifactory hard nofile $desired_open_file_limit"
+ eerror "to your /etc/security/limits.conf file."
+ return 1
+ fi
+
+ current_max_process_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -u")
+ desired_max_process_limit=1024
+ if [ "$current_max_process_limit" != "unlimited" ] && [ $current_max_process_limit -lt $desired_max_process_limit ]; then
+ eerror "Number of processes $current_max_process_limit is too small!"
+ eerror "You should add:"
+ eerror "artifactory soft nproc $desired_max_process_limit"
+ eerror "artifactory hard nproc $desired_max_process_limit"
+ eerror "to your /etc/security/limits.conf file."
+ return 1
+ fi
+
+ if [ -n "$JAVA_HOME" ] && [ -x "$JAVA_HOME/bin/java" ]; then
+ einfo "Found java executable in $JAVA_HOME"
+ _java="$JAVA_HOME/bin/java"
+ elif command -v java > dev/null 2>&1 ; then
+ _java=java
+ else
+ eerror "No Java Runtime Environment (jre) found! At least java-$REQUIRED_JAVA_VERSION is required."
+ return 1
+ fi
+ if [ "$_java" ]; then
+ java_version=$($_java -version 2>&1 | grep 'version' | cut -d ' ' -f3 | tr -d \")
+ java_major=$(echo $java_version | cut -d . -f1-2)
+ if [ "$java_major" != "$REQUIRED_JAVA_VERSION" ] ; then
+ eerror "Java version $java_version is too old, java-$REQUIRED_JAVA_VERSION is required."
+ return 1
+ fi
+ fi
+}
+
+# We have to pass start/stop through to catalina.sh, which doesn't understand restart (and restart can't be overridden in OpenRC):
+start() {
+ get_pid_info
+ is_mgmt_port_used
+ if [ $mgmt_port_used -ne 0 ] || [ -n "$javaPs" ]; then
+ eerror "$RC_SERVICE already started!"
+ return 1
+ else
+ ebegin "Starting $RC_SERVICE"
+ start-stop-daemon --exec $command --pidfile $pidfile --user $user:$group --wait $START_TIMEOUT start
+ RETVAL=$?
+ eend $RETVAL "start-stop-daemon failed to start $RC_SERVICE"
+ fi
+
+
+ is_mgmt_port_used
+ seconds=1
+ while [ $mgmt_port_used -eq 0 ] && [ $seconds -lt $START_TIMEOUT ]; do
+ sleep 1
+ ((seconds=seconds+1))
+ is_mgmt_port_used
+ done
+ if [ $mgmt_port_used -eq 0 ]; then
+ eerror "$RC_SERVICE did not start in $START_TIMEOUT seconds!"
+ return 1
+ elif [ $mgmt_port_used -eq 1 ]; then
+ einfo "$RC_SERVICE started"
+ [ $RETVAL=0 ] && touch $CATALINA_LOCK_FILE
+ else
+ eerror "Got unexpected result when checking port $CATALINA_MGMT_PORT"
+ return 1
+ fi
+ return $RETVAL
+}
+
+stop() {
+ ebegin "Stopping $RC_SERVICE"
+ start-stop-daemon --stop --pidfile $pidfile --wait $START_TIMEOUT stop
+ RETVAL=$?
+ eend $RETVAL "Failed to stop $RC_SERVICE!"
+
+ [ $RETVAL=0 ] && rm -f "$CATALINA_LOCK_FILE" "$pidfile"
+ return $RETVAL
+}
+
+status() {
+ is_mgmt_port_used
+ if [ $mgmt_port_used -eq 0 ]; then
+ if [ -e "$pidfile" ]; then
+ eerror "$RC_SERVICE stopped but the pid file $pidfile still exists!"
+ RETVAL=1
+ else
+ if [ -e "$CATALINA_LOCK_FILE" ]; then
+ eerror "$RC_SERVICE is stopped but the lock file $CATALINA_LOCK_FILE still exists!"
+ RETVAL=2
+ else
+ eerror "$RC_SERVICE is stopped"
+ RETVAL=3
+ fi
+ fi
+ else
+ einfo "$RC_SERVICE is running"
+ RETVAL=0
+ fi
+ return $RETVAL
+}
diff --git a/dev-util/artifactory-bin/files/initd-r3 b/dev-util/artifactory-bin/files/initd-r3
new file mode 100644
index 000000000000..5a9a6e214efb
--- /dev/null
+++ b/dev-util/artifactory-bin/files/initd-r3
@@ -0,0 +1,165 @@
+#!/sbin/openrc-run
+
+description="Manages the services needed to run Artifactory on a dedicated Tomcat"
+command="/opt/artifactory/tomcat/bin/catalina.sh"
+pidfile="/opt/artifactory/run/artifactory.pid"
+procname="artifactory"
+user=${ARTIFACTORY_USER:-artifactory}
+group=${group:-artifactory}
+
+# Artifactory can be very slow to start, and without locking,
+# restarting via runscript is very error prone
+CATALINA_LOCK_FILE="$(dirname $pidfile)/lock"
+
+CATALINA_MGMT_PORT=8015
+REQUIRED_JAVA_VERSION="1.8"
+START_TIMEOUT=300
+
+# Helper functions:
+is_mgmt_port_used() {
+ mgmt_port_used=$(netstat -vatn | grep LISTEN | grep $CATALINA_MGMT_PORT | wc -l)
+}
+
+get_pid_info() {
+ pidValue=""
+ javaPs=""
+ if [ -e "$pidfile" ]; then
+ pidValue=$(cat $pidfile)
+ if [ -n "$pidValue" ]; then
+ javaPs="$(ps -p $pidValue | grep java)"
+ fi
+ fi
+}
+
+depend() {
+ need net nginx
+ use dns logger netmount
+}
+
+start_pre() {
+ if [ -z "$ARTIFACTORY_HOME" ] || [ ! -d "$ARTIFACTORY_HOME" ]; then
+ eerror "Artifactory home folder not defined or does not exists at $ARTIFACTORY_HOME"
+ return 1
+ fi
+
+ if [ -z "$pidfile" ]; then
+ eerror "Artifactory pid destination pidfile was not set!"
+ return 1
+ fi
+
+ if [ -z "$TOMCAT_HOME" ] || [ ! -d "$TOMCAT_HOME" ]; then
+ eerror "Tomcat Artifactory folder not defined or does not exists at $TOMCAT_HOME"
+ return 1
+ fi
+
+ if [ -z "$ARTIFACTORY_USER" ]; then
+ ARTIFACTORY_USER=$user
+ fi
+
+ current_open_file_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -n")
+ desired_open_file_limit=32000
+ if [ "$current_open_file_limit" != "unlimited" ] && [ $current_open_file_limit -lt $desired_open_file_limit ]; then
+ eerror "Maximum number of open files ($current_open_file_limit) is too small!"
+ eerror "You should add:"
+ eerror "artifactory soft nofile $desired_open_file_limit"
+ eerror "artifactory hard nofile $desired_open_file_limit"
+ eerror "to your /etc/security/limits.conf file."
+ return 1
+ fi
+
+ current_max_process_limit=$(su -l $ARTIFACTORY_USER -c "ulimit -u")
+ desired_max_process_limit=1024
+ if [ "$current_max_process_limit" != "unlimited" ] && [ $current_max_process_limit -lt $desired_max_process_limit ]; then
+ eerror "Number of processes $current_max_process_limit is too small!"
+ eerror "You should add:"
+ eerror "artifactory soft nproc $desired_max_process_limit"
+ eerror "artifactory hard nproc $desired_max_process_limit"
+ eerror "to your /etc/security/limits.conf file."
+ return 1
+ fi
+
+ if [ -n "$JAVA_HOME" ] && [ -x "$JAVA_HOME/bin/java" ]; then
+ einfo "Found java executable in $JAVA_HOME"
+ _java="$JAVA_HOME/bin/java"
+ elif command -v java > dev/null 2>&1 ; then
+ _java=java
+ else
+ eerror "No Java Runtime Environment (jre) found! At least java-$REQUIRED_JAVA_VERSION is required."
+ return 1
+ fi
+ if [ "$_java" ]; then
+ java_version=$($_java -version 2>&1 | grep 'version' | cut -d ' ' -f3 | tr -d \")
+ java_major=$(echo $java_version | cut -d . -f1-2)
+ if [ "$java_major" != "$REQUIRED_JAVA_VERSION" ] ; then
+ eerror "Java version $java_version is too old, java-$REQUIRED_JAVA_VERSION is required."
+ return 1
+ fi
+ fi
+}
+
+# We have to pass start/stop through to catalina.sh, which doesn't understand restart (and restart can't be overridden in OpenRC):
+start() {
+ get_pid_info
+ is_mgmt_port_used
+ if [ $mgmt_port_used -ne 0 ] || [ -n "$javaPs" ]; then
+ eerror "$RC_SERVICE already started!"
+ return 1
+ else
+ ebegin "Starting $RC_SERVICE"
+ start-stop-daemon --exec $command --pidfile $pidfile --user $user:$group --wait $START_TIMEOUT start
+ RETVAL=$?
+ eend $RETVAL "start-stop-daemon failed to start $RC_SERVICE"
+ fi
+
+
+ is_mgmt_port_used
+ seconds=1
+ while [ $mgmt_port_used -eq 0 ] && [ $seconds -lt $START_TIMEOUT ]; do
+ sleep 1
+ seconds=$((seconds+1))
+ is_mgmt_port_used
+ done
+ if [ $mgmt_port_used -eq 0 ]; then
+ eerror "$RC_SERVICE did not start in $START_TIMEOUT seconds!"
+ return 1
+ elif [ $mgmt_port_used -eq 1 ]; then
+ einfo "$RC_SERVICE started"
+ [ $RETVAL=0 ] && touch $CATALINA_LOCK_FILE
+ else
+ eerror "Got unexpected result when checking port $CATALINA_MGMT_PORT"
+ return 1
+ fi
+ return $RETVAL
+}
+
+stop() {
+ ebegin "Stopping $RC_SERVICE"
+ start-stop-daemon --stop --pidfile $pidfile --retry $START_TIMEOUT stop
+ RETVAL=$?
+ eend $RETVAL "Failed to stop $RC_SERVICE!"
+
+ [ $RETVAL=0 ] && rm -f "$CATALINA_LOCK_FILE" "$pidfile"
+ return $RETVAL
+}
+
+status() {
+ is_mgmt_port_used
+ if [ $mgmt_port_used -eq 0 ]; then
+ if [ -e "$pidfile" ]; then
+ eerror "$RC_SERVICE stopped but the pid file $pidfile still exists!"
+ RETVAL=1
+ else
+ if [ -e "$CATALINA_LOCK_FILE" ]; then
+ eerror "$RC_SERVICE is stopped but the lock file $CATALINA_LOCK_FILE still exists!"
+ RETVAL=2
+ else
+ eerror "$RC_SERVICE is stopped"
+ RETVAL=3
+ fi
+ fi
+ else
+ einfo "$RC_SERVICE is running"
+ RETVAL=0
+ fi
+ return $RETVAL
+}
diff --git a/dev-util/artifactory-bin/files/server.xml b/dev-util/artifactory-bin/files/server.xml
new file mode 100644
index 000000000000..ba87175ff549
--- /dev/null
+++ b/dev-util/artifactory-bin/files/server.xml
@@ -0,0 +1,17 @@
+<Server port="8015" shutdown="SHUTDOWN">
+
+ <Service name="Catalina">
+ <Connector port="8081" protocol="HTTP/1.1"
+ maxThreads="500" minSpareThreads="20"
+ enableLookups="false" disableUploadTimeout="true"
+ backlog="100"/>
+ <!-- This is the optional AJP connector -->
+ <Connector port="8019" protocol="AJP/1.3"/>
+
+ <Engine name="Catalina" defaultHost="localhost">
+ <Host name="localhost" appBase="webapps"/>
+ </Engine>
+
+ </Service>
+</Server>
+
diff --git a/dev-util/artifactory-bin/metadata.xml b/dev-util/artifactory-bin/metadata.xml
new file mode 100644
index 000000000000..b9b43a436113
--- /dev/null
+++ b/dev-util/artifactory-bin/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>wizardedit@gentoo.org</email>
+ <name>Austin English</name>
+ </maintainer>
+ <longdescription>
+ Respository manager for Maven (among other binary package formats).
+ </longdescription>
+</pkgmetadata>