diff options
Diffstat (limited to 'dev-util/artifactory-bin')
-rw-r--r-- | dev-util/artifactory-bin/Manifest | 24 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-4.16.0-r1.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-4.16.1.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.3.2.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.4.4.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.4.6.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.5.1.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.5.2.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.6.2.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/artifactory-bin-5.6.3.ebuild | 110 | ||||
-rw-r--r-- | dev-util/artifactory-bin/files/artifactory.xml | 4 | ||||
-rw-r--r-- | dev-util/artifactory-bin/files/confd | 5 | ||||
-rw-r--r-- | dev-util/artifactory-bin/files/initd-r2 | 165 | ||||
-rw-r--r-- | dev-util/artifactory-bin/files/initd-r3 | 165 | ||||
-rw-r--r-- | dev-util/artifactory-bin/files/server.xml | 17 | ||||
-rw-r--r-- | dev-util/artifactory-bin/metadata.xml | 11 |
16 files changed, 1381 insertions, 0 deletions
diff --git a/dev-util/artifactory-bin/Manifest b/dev-util/artifactory-bin/Manifest new file mode 100644 index 000000000000..ca95351f082c --- /dev/null +++ b/dev-util/artifactory-bin/Manifest @@ -0,0 +1,24 @@ +AUX artifactory.xml 244 BLAKE2B 86e840e7ba680a87c7f5b00013f5019f4f2f8cd8a4d83fef82c8b51aa86e3cc4fde6c801aaf00c0b5c07c5499e49dce94ef797953304045970c45bf297003450 SHA512 582ba26a9b36a99266ebc35cf6ccad3e58c17c5b6e6a9168732a24842c67478fde72197b7592275e11cc3836ea1ed337785d90b8f3e6181e5f7fc1c102a45f55 +AUX confd 252 BLAKE2B 3c9999b9ee9ea39eda3f548bd0e0143d17e545de89efc7bf3a30aac163b5837b5812544b0bb8f86b00e639794b0efdc7b9219297982831b554019dca9d30822b SHA512 ae3c7e47ae34ce163799ffa57ec4b8a479eecc36a6c3620f30e351ddf8dea3e55d04a6ef459ed7ccefae6b0d39af8ebcf73cac3eea5f7d9355b9a1de7715b1e7 +AUX initd-r2 5371 BLAKE2B 68f4ebafcada8002b7981a101e2b5f6323140469fbe7834a492adcf142dd210362e65d604d52bb3bd55a9a998c2bec8080ddb1595181aae5b92eacda6d4b5bc4 SHA512 c19994a2918cb317a074898b7de294193a8aae1b5ec37d407bd5b60971c40d7c808ead5376c6d48219f41b15b72b2dca85959db677e81052d224a73bfb39cbfb +AUX initd-r3 5373 BLAKE2B feb7f637c644570225c589767753c27db59b10971ffe5f7886dc94c3002f3cc21bd88405fcf38ea2161f9efde0c2ea2dad67979713a1cd99fc78e790ff0bca93 SHA512 89ef20e27296318cf844130c09e17b16f63c27b3188e53400f8b1dcf170d0d6acfb5a56592eb8580b8fa1281c2fcaa7f2edc4cde43803eaf20ce345030ce3f98 +AUX server.xml 516 BLAKE2B 6ed7e14de91fc1f7a9da25c8caeae4bbc25b783d84a321e69bcc897e5ef68002fa39bece886522f1833d9d4352dfa8391ec1d8c90f0a816beefec70b6afb8a05 SHA512 2c16207cccf29a3733e9759b0eb20d62184de6f91feb8f49037501e62f77ca09aefcd7a95a1544441318ac6a3577a3c366fc12d490726268233658581a64b91c +DIST artifactory-4.16.0.zip 41455447 BLAKE2B 0f9f575d5ce3ba983c905e70c8e3545946065ff458f9a1c0f0e346bebeffe002bbea4214b7a23829e3a11d8ccf6aec4548f6ba5abd405d30165d3c07e2372e98 SHA512 e861b66ed7586ba881267312462584fd9037e2b72021e930a52489ae718ca2449c7997278cb26cb3dead774f16d74cf285c8ce2fca0c085e7edb444f71deaa14 +DIST artifactory-4.16.1.zip 41489457 BLAKE2B 7854710a5cf4dd52d7c92581a030259df6b0b8038f9843e528b0c57211eafd405a114b709ba5407a9c83e4d693f1ecb8eafe3d5e98bb22542d5c48e15bc3cf6f SHA512 b8f5441f011966837861073c928512704961c7683fadac4603f2177df1c64861432f894c5fe0669c4842a4b7d008553169e88aaffdde6e3d6e6bbdff6adf9d78 +DIST artifactory-5.3.2.zip 45729254 BLAKE2B 1fe6ec8a5a33d8735bd92d480e8fb7b035af2b27bf9034791f1bdca3c3d2a13794ba06613fb508ea8f221cc1647f2a8e213994ef7603d92c88b17037fd3c7266 SHA512 60fbbed97c9915ed4a7627a3b893fa6c5bcec695932415d3102b9788ba6182c8cef937ad48639d4398a682ab2f517771c3dcda9306842e4202bbd45ab4768f1d +DIST artifactory-5.4.4.zip 76841935 BLAKE2B d763122cf0d2d1237fad41b825f68ecd6ec3c3453e5ec0a76a5b367c70c5aec4ee3cd81b9ab453628c879db22e0a292fc9b43d2b3d3d5461fc63d43bffde7b2d SHA512 f949e4c2ecaaf4581bc2e96058403684cab09f10b0bec512eda9b65bb41577a792b08d05f7a16e0e7f1614567dc9b0d1d59bb3c6ad6a4dafeb0c054a3add09a8 +DIST artifactory-5.4.6.zip 76857888 BLAKE2B 04185e4c585a6e8121b9b6d78a4565c5107381cae53fe3d8aea647ea6ebb0920f9775a7275ba79d282a0c87a7e0544f6382a2ed10dbecb6b279679be0fd94066 SHA512 08d7895dc823e61be83026d31eea387eb914f17cb2f13b03d5314c6473f30de9279d230d242d8160dba0d3c8f6981b25b5ad46f52ad12d1c39ee820ac7a676fe +DIST artifactory-5.5.1.zip 77406287 BLAKE2B be60fbbc3b8c61fc9d1a7272889219de7ea4e5b8c760afaa7e0003f6bff48d41783f76d62ac64b81ffa42393a265ed184ad4a4a23789dc79955907290035dae1 SHA512 7327135be0c2a08dd97c575b05be1c3e4be99b38354864313d201334d3276912bcff0c6b0743fb83a2433a82fc8fcf4ec43e98f4183287fc34f1807342abedf8 +DIST artifactory-5.5.2.zip 77438814 BLAKE2B b77d9348fbae8bf871e4fb6716e2a9d357cd0d268d65360ec7509b0999db78a8b80f68eb22cbbc0a85ee2980fbc72c7aa390a60c8129451506441d7cbfd9f776 SHA512 fd052e66316ec050599f6262274cdf5232ebb1385fedd2c19c6ba8e3dca0d9fe86d7a89fddbb8974b28e0f9dc3d7ccda1aac6b3f9159f0b77bfc51873ffd5e3b +DIST artifactory-5.6.2.zip 91577071 BLAKE2B 1f9687bef239519171bdb28fb033368e5dea10186ef350c7ee7d9e4a33ce99c5e965692d8052d82454c83f42c84e79c18edafbb98540da4b818b65b577a9ac72 SHA512 b4bde9bcf53d2af6901a8e80827f3b09d685a8bbe7073badad586401b6881d046e5cade4165fa68843e981dea2912374c187518e29ab1ee86d3d0fac134a54f0 +DIST artifactory-5.6.3.zip 91592176 BLAKE2B 1214bac4d5bd6f15915e05a2e42de4b6b55b885210fa06ee4b4b63599b8f3c13c6fe46a04569e790ea6e274c4837a09b260736412805119e7f93f7867be8e421 SHA512 a2348b8667a1d936e90dc6fd42e3967f63cc88cc99bf425ea26731ff4c54f0177ea386c5b19be97a4ac8f89ce41e65237d14593112b38656d60ada45d3b62371 +EBUILD artifactory-bin-4.16.0-r1.ebuild 3336 BLAKE2B a7a6ec3cd771a42eb73bfb969162087ddd797f476031ca5b463fae39e2ab979bf786ff82eb2f013ddcfc1987d3fc1e7ca4a4de69e0dd210bc0745a3f888506f5 SHA512 f7297b2590d5329f851a9783cc066001b76734b8b7e6dc51d79d773d8d167e6d574a5c6ee8e2b4db9b53b4977df909eff796537fba815dd45752223e71b08852 +EBUILD artifactory-bin-4.16.1.ebuild 3336 BLAKE2B a7a6ec3cd771a42eb73bfb969162087ddd797f476031ca5b463fae39e2ab979bf786ff82eb2f013ddcfc1987d3fc1e7ca4a4de69e0dd210bc0745a3f888506f5 SHA512 f7297b2590d5329f851a9783cc066001b76734b8b7e6dc51d79d773d8d167e6d574a5c6ee8e2b4db9b53b4977df909eff796537fba815dd45752223e71b08852 +EBUILD artifactory-bin-5.3.2.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.4.4.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.4.6.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.5.1.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.5.2.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.6.2.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +EBUILD artifactory-bin-5.6.3.ebuild 3336 BLAKE2B 95c75f9bda210f5387f6c3ee9dbd30d65dc4bb891b6d8e401a8b602b604cbacb4289b4915e92880bd2f6a7cebd121393407a75ed26cfa5e2970d2899671a1980 SHA512 663fa63a3a27c9ef480677732f413a789c8db9fed1942a3dd129295666868293f1df01682ad6734fd530a7c8ea24fa29834d07fb0f1b15c40f9ce2be6adbc961 +MISC metadata.xml 368 BLAKE2B 1a5f91a194a1eb7b58ddc795cae9c3e52b33aca6b716b286069b8185c2393bd6b5281219f4a0e6446c9a8a930f18168b0f5923df9423ffd6b20d0d7ec08c48c8 SHA512 889ab0f86261be62dc4988fc99c8526212c7936b3fbb8a078d644046047f653108b3120cef9cc65bce00a1c267227e58dae0cb1eb7d86ac1f4966408fa783beb 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/artifactory-bin-5.5.1.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.5.1.ebuild new file mode 100644 index 000000000000..242019ded03b --- /dev/null +++ b/dev-util/artifactory-bin/artifactory-bin-5.5.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-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.5.2.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.5.2.ebuild new file mode 100644 index 000000000000..242019ded03b --- /dev/null +++ b/dev-util/artifactory-bin/artifactory-bin-5.5.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.6.2.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.6.2.ebuild new file mode 100644 index 000000000000..242019ded03b --- /dev/null +++ b/dev-util/artifactory-bin/artifactory-bin-5.6.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.6.3.ebuild b/dev-util/artifactory-bin/artifactory-bin-5.6.3.ebuild new file mode 100644 index 000000000000..242019ded03b --- /dev/null +++ b/dev-util/artifactory-bin/artifactory-bin-5.6.3.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> |