diff --git a/dev-vcs/gitlab-runner/ChangeLog b/dev-vcs/gitlab-runner/ChangeLog index 8e63750..958457c 100644 --- a/dev-vcs/gitlab-runner/ChangeLog +++ b/dev-vcs/gitlab-runner/ChangeLog @@ -1,3 +1,8 @@ +*gitlab-runner-10.3.1 (17 Feb 2018) + + 17 Feb 2018; Manuel Friedli +gitlab-runner-10.3.1.ebuild: + dev-vcs/gitlab-runner: Add ebuild for version 10.3.1. + *gitlab-runner-10.2.1 (16 Feb 2018) 16 Feb 2018; Manuel Friedli +gitlab-runner-10.2.1.ebuild: diff --git a/dev-vcs/gitlab-runner/Manifest b/dev-vcs/gitlab-runner/Manifest index fd7fb47..082687a 100644 --- a/dev-vcs/gitlab-runner/Manifest +++ b/dev-vcs/gitlab-runner/Manifest @@ -9,8 +9,12 @@ DIST gitlab-runner-10.1.1.tar.gz 3607287 SHA256 f5bcc173e9694589ee199d9ff7da38c2 DIST gitlab-runner-10.2.1-prebuilt-arm.tar.xz 8554156 SHA256 45e834e16c99378f1b9361349206c115435b8565b8edcfcda13d56d7baf92824 SHA512 6d5158fd7b2e4c40ffeeb1f292b955958526a7370e699a8d0c0ec6b4d321e12e584f04837a707f7f38a2af7e4e073089566dd33bcec8706626dca7eef6f90b2a WHIRLPOOL 6a0f98fcf4e35d88ee49c31ad914fb841d3efb9d47891272eaec78d2f8d8d5e8c2440963742d3e925d4684550f88e2ebe4c5703ad4423523506746af0c0a266f DIST gitlab-runner-10.2.1-prebuilt-x86_64.tar.xz 10473104 SHA256 6d13458230571770a4950e2a2948a7d9ab2b1efbbb00734798624500d811f0d0 SHA512 9b328687d78166f6791e8ea91bef6ebe11891e7ebda9054dea156da128004b4d6b6439135a20368af7d523ff21981a6f3b60b145ef3cbdb6413511a7746eb0bc WHIRLPOOL b16e4e9a7cb4ed4842616efa1c05afe8244950d0fb0ba487f0c5b043f06a023fe555a398a90e8e4893841e770d3fe7488d6caabed7f6e1af5376eca50d31d7c5 DIST gitlab-runner-10.2.1.tar.gz 3695554 SHA256 530f3281cf99c80136969a1ef9edc60dd726862f5949cf1042e64ac1a2a3ac74 SHA512 c2962586a15c7aaa6c18f500212d67ecb4c4907de8f6e7faac920d9a7714fb51650fb8d81cded71a5c173910c7e5ac61b7d33a6bd0f81faa1b125bee2e242f5f WHIRLPOOL 84ed4fc7a8b04226ba52938458e15b1bbc1417ad0979665ee4b4859504bf9267280efc18e1e3d420788a7ae7a62467b19db906057fc397e54a8894b7113b0292 +DIST gitlab-runner-10.3.1-prebuilt-arm.tar.xz 8557640 SHA256 b2579f64edfd67ca80c4604bbe20dfccd8fde11ab47ca873860b123a1bcc964e SHA512 5e2b77827d23a3d3703cef92ad3e69e042c1da3dc58c9c3e9e182a453aaea972a04935e188bd3c44b625c0ae3201214e17b787e71db18f50192fd321b3cf9465 WHIRLPOOL dd2fed8539c89cbc36284f2c8900ef1baf3682e27793351651214fb1b86ff4909b2b22cbec958283210de8dd5614d6285d9e907af824a97ca6b9df44d907ae73 +DIST gitlab-runner-10.3.1-prebuilt-x86_64.tar.xz 10471784 SHA256 735498253a39a41959526d811315bef112c586ea01cf8d204113fe9db11f5abf SHA512 115ef90a21af2e4b1b098f904e65eadceaace599e1a45cf1d757ed611be2d8a48d5d53feddf0940dd4cc2d446ebbfa49072e2992a5d246a632ad9ef4a867a0a1 WHIRLPOOL ed7589efa6a2ffcbb1ac88bc8b3ac6eb21b686cc080cb3595f99dc140d7522e1fe5801f2e17c7cbad5916a1635057cd8b42a906d9473fae65fceb6c6f4f076e5 +DIST gitlab-runner-10.3.1.tar.gz 3702219 SHA256 6fd684349705d1edd4391be3463442a5b06ac36ec82e11e20b2afa83ac6ee96e SHA512 d49c683057b0b233022a6330ff1e9be712849bab56cece510da54e103e2ee56c5060bd49d08d91c9d7459a3921890720d79befd867a3b58a8ac6ab3e565ec848 WHIRLPOOL 056c306350e2f3ef4b4827d15cb9057e9bc5203984a7b29f84bd3f81bbcf175619830645801baa9b7c67c2362e93bb0e25de1671b33a60a8626b29daa1f1e557 EBUILD gitlab-runner-10.0.2.ebuild 2545 SHA256 59794dd6f33ce0fc0d1c997db7e5e4eaea226485aada8f700e3d183c2284e409 SHA512 4e9e6a93d621f595cc2b20ea4cb49afc0c9c4980b5ba13bec342994596caef0e0272fcd0b2deb087c96beebec283827916aa1b5594337febf592fd0251121327 WHIRLPOOL 5a48199473313fb247f621a8abf146fc794d02316b2cacba77fb3265047cc33115b26f2a21f58fb9648deb85c4c4c1f5190f6f3768bbeb4bc21a1373b5ac52b3 EBUILD gitlab-runner-10.1.1.ebuild 2545 SHA256 7bdf62baddd6a43ee546937f8c87d10bdfda809ddbfd901471c62908c4363165 SHA512 543c36ea54fbfe74e755c17bf0660a9fac7d2841aee17ad99e95816d89606b4934aebee5a6e98621803a4f10a0342c2e9a41d69898c60da202655d1e1da1926c WHIRLPOOL 68f73d719fad6c9c8b849d664f9efb01af27877904e0360515374eb2b1c10f22058e8ae2081faf34f0058dac7579558b8309b089746f802bef0668243ada47e5 EBUILD gitlab-runner-10.2.1.ebuild 2545 SHA256 fc7d7c847bc175f6f74f71f8c0eeef9b4fad9c4d779f79640e6439c907ad0963 SHA512 3ccc5f38b82ef5453724819db7227d3ec234940af8e2a2fdd7b14db199a13e1e2ed0ae55bda87cb0061a0c548bf2acedc940ea3a70dc1dfa5644478df785b97a WHIRLPOOL ed6be446184ccb593c48da4b51336cd5f377f72041014896e2d11b3e2782c0faa36f3513fb5ed0f692eb43af229f71297265d37ed74c52412477cb204c229e2f -MISC ChangeLog 1250 SHA256 36de24297d3f52cc229d3b8b3df3f5c399f46d5ea0606fb1102ed992fd61406c SHA512 60669c86a54b4b0267211f6a1fa15a67d0ea32e5b1cedb1d7e18ab0bf3b40cdee2050f6da9e3bc4f6cb95e455d67ac4e0145cea2382d35a27013ec25bc9ba4e4 WHIRLPOOL 24cff7463f27b2a8d7aca8340a869a58d72f4b5dc39d1f3aecc170ea728dfe976fa5604443ddb67ec28bca5ec4f97c1fd77d86d89ba7cbe6fca7ba60ddb97144 +EBUILD gitlab-runner-10.3.1.ebuild 2545 SHA256 fc7d7c847bc175f6f74f71f8c0eeef9b4fad9c4d779f79640e6439c907ad0963 SHA512 3ccc5f38b82ef5453724819db7227d3ec234940af8e2a2fdd7b14db199a13e1e2ed0ae55bda87cb0061a0c548bf2acedc940ea3a70dc1dfa5644478df785b97a WHIRLPOOL ed6be446184ccb593c48da4b51336cd5f377f72041014896e2d11b3e2782c0faa36f3513fb5ed0f692eb43af229f71297265d37ed74c52412477cb204c229e2f +MISC ChangeLog 1426 SHA256 f4a007e0c7de69ddb54b709fddf13cad6cd5e8dc1d19e69ef15d66fdbc5076da SHA512 d5719f9d682259331685f0b1bb465b1f0543dc20f74293a060a1fafc17c3b1f2385a65adc3d5ae653fd9796e67e5ed56b0928b2e43ff0f36d9d03b5e2481ccc0 WHIRLPOOL 1d5aa9fb9e075bba17664e8f800b9ee52c0f96ea1b78734aea9be2f981334f1472b6329acde2bb18ef857645ca5371c17757ef05d46a9297d93214c1efbc4f86 MISC metadata.xml 329 SHA256 f0ae08a64aa32a07486e744ce11ac5448770b7320454015bcd065e312fcb5e9c SHA512 11e4eaf25633c5979e5243350bdf2ddc6d9dca06ab54ec38359591f1d002ea2a224e53b3e6c4ac53b5b2e795a87769fdbd97c547b008272e0a1491141f422e5d WHIRLPOOL ab2c1cb3d9aff1f757b49633f94d4b98da4b83dadab12ab8d869f9e1f6763b3125010147472e58e910e7fc42da262dbd69a1bf3939f3720a79ab4329184b4c35 diff --git a/dev-vcs/gitlab-runner/gitlab-runner-10.3.1.ebuild b/dev-vcs/gitlab-runner/gitlab-runner-10.3.1.ebuild new file mode 100644 index 0000000..d100728 --- /dev/null +++ b/dev-vcs/gitlab-runner/gitlab-runner-10.3.1.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit golang-build golang-vcs-snapshot user + +EGO_PN="gitlab.com/gitlab-org/gitlab-runner" + +GITLAB_COMMIT="f157dc9f" + +MY_PV="v${PV/_/-}" + +DESCRIPTION="Official GitLab CI Runner written in Go" +HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-runner" +SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.gz?ref=v${PV} -> ${P}.tar.gz + !docker-build? ( + https://${PN}-downloads.s3.amazonaws.com/${MY_PV}/docker/prebuilt-x86_64.tar.xz -> ${P}-prebuilt-x86_64.tar.xz + https://${PN}-downloads.s3.amazonaws.com/${MY_PV}/docker/prebuilt-arm.tar.xz -> ${P}-prebuilt-arm.tar.xz + )" + +KEYWORDS="~amd64" +LICENSE="MIT" +SLOT="0" +IUSE="docker-build" + +DEPEND="dev-go/gox + dev-go/go-bindata + docker-build? ( >=app-emulation/docker-1.5 )" + +RESTRICT="mirror test" + +MY_USER="gitlab_runner" +MY_HOME_DIR="/var/lib/gitlab-runner" + +pkg_setup() { + # add required user + enewgroup ${MY_USER} + enewuser ${MY_USER} -1 /bin/bash "${MY_HOME_DIR}" ${MY_USER} +} + +src_prepare() { + default + pushd src/${EGO_PN} || die + if ! use docker-build; then + mkdir -p out/docker || die + cp "${DISTDIR}"/${P}-prebuilt-x86_64.tar.xz out/docker/prebuilt-x86_64.tar.xz || die + cp "${DISTDIR}"/${P}-prebuilt-arm.tar.xz out/docker/prebuilt-arm.tar.xz || die + sed -i -e "s/docker info/echo false/" Makefile || die + else + einfo "You need to have docker running on your system during build time" + einfo "$(docker info)" + fi + sed -i -e "s#./ci/version#echo ${PV}#"\ + -e "s/git rev-parse --short HEAD/echo ${GITLAB_COMMIT}/"\ + -e "/^LATEST_STABLE_TAG/d"\ + -e "s#git show-ref.*\$#echo gentoo)#"\ + -e "s#git describe.*\$#echo 0), 0)#"\ + Makefile || die + popd || die +} + +src_compile() { + emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN} build_current +} + +src_install() { + dobin src/${EGO_PN}/out/binaries/gitlab-runner + dodoc src/${EGO_PN}/README.md src/${EGO_PN}/CHANGELOG.md + + # rc script + newinitd "${FILESDIR}/${PN}-10.0.2.init" "${PN}" + + # conf.d file + local conffile="${PN}-10.0.2.conf" + cp "${FILESDIR}/${conffile}" "${T}" || die + sed -i \ + -e "s|@USER@|${MY_USER}|" \ + -e "s|@HOME@|${MY_HOME_DIR}|" \ + "${T}/${conffile}" \ + || die "failed to filter ${conffile}" + + newconfd "${T}/${conffile}" "${PN}" + + # config dir + local config_dir="/etc/${PN}" + diropts -m750 + dodir "${config_dir}" + + # home dir + diropts -m755 + dodir "${MY_HOME_DIR}" + + # fix owners + fowners -R ${MY_USER}:${MY_USER} "${config_dir}" "${MY_HOME_DIR}" +} diff --git a/dev-vcs/gitlab-shell/ChangeLog b/dev-vcs/gitlab-shell/ChangeLog index f52b088..f399c68 100644 --- a/dev-vcs/gitlab-shell/ChangeLog +++ b/dev-vcs/gitlab-shell/ChangeLog @@ -1,3 +1,8 @@ +*gitlab-shell-5.10.2 (17 Feb 2018) + + 17 Feb 2018; Manuel Friedli +gitlab-shell-5.10.2.ebuild: + dev-vcs/gitlab-shell: Add ebuild for version 5.10.2. + *gitlab-shell-5.10.0 (16 Feb 2018) 16 Feb 2018; Manuel Friedli +gitlab-shell-5.10.0.ebuild: diff --git a/dev-vcs/gitlab-shell/Manifest b/dev-vcs/gitlab-shell/Manifest index 21aed4b..652afd8 100644 --- a/dev-vcs/gitlab-shell/Manifest +++ b/dev-vcs/gitlab-shell/Manifest @@ -15,9 +15,10 @@ EBUILD gitlab-shell-5.0.2.ebuild 3654 SHA256 9f06b267774f58339770844496a90a7b09a EBUILD gitlab-shell-5.0.4.ebuild 3654 SHA256 6227964f26e195eb914163aba910af177e9d312bccce84783673914c1b6a7341 SHA512 b383072cedf66875317ca90c3daa422e968af6d293bbe2b6efb69e4da91af2ccfc77179ccfa6aa07263ae50f603dab3efc27c36d0c8ac8169b368c9f6474fb75 WHIRLPOOL 9de88e1e7a6d2bc729dbbde54ef40b0046ba698fa1b9874a0751222572eb0d0aa2c9683bc84db44878742d5d4d039d3f96ae893af6a649f73f7c395e932934e4 EBUILD gitlab-shell-5.1.1.ebuild 3889 SHA256 1ec35ad363ec198c9b53974f3410401b559c56814d747941888b475f19479918 SHA512 fdbc2465617043aa2dc813624e513996c7827831abed242fa9dfb2e943825cf710ba65c0d5882a312af64e154f667a82989a787b63e61d0ea8dd81fb4accf035 WHIRLPOOL 3b231de69ff373868a4acbb4df49a6120b443db20f9ab5ecda9902a6f74539b4534a400f86d8de8564fb1d86f71f02aa48e830c18486e08700bbdc2602d2083f EBUILD gitlab-shell-5.10.0.ebuild 3927 SHA256 bfbbc8298d256f4f1051ab6c3fe59197ea933a798a521940bdae1f884b5954ff SHA512 6d2461f85b1d1232de89471f4e3fe35cbd6d59a5c644913c78c5b7cc868ab035ceec8c96b4973289fefaeb2e836edf7d7cf0bdf7c4364e6e947ba1b32b6c5b85 WHIRLPOOL e44a285e9264875cda07b3bae39fc5f17fd74f9d91927f2dc9d1cd4a34fc310ec2f73808c5096807265fe3dbd94269ce3e03e6b0d5a1ef176cd1236a1c0002ec +EBUILD gitlab-shell-5.10.2.ebuild 3717 SHA256 f0733e56a42e32de7976321a41cb553e6805c7e3d3df41db7180e9a764516b3f SHA512 ae660c8f88b91bd183e786064122ae8e3504efaf5da181b9ad3c2911dd10c981767544a72380b6f23aaf7546b93bdca3e5a7679d54a2d8ee23795e800398106a WHIRLPOOL 72eac46110d8fc2550d52e73cf8577a2c9200b476b6ae1f0fc1bf225af2298b715f7ecb5d0bc3c78bfa75a9bbe39b32aeca036febdca8f8f5ede5c9260593259 EBUILD gitlab-shell-5.3.1.ebuild 3889 SHA256 be4349d3faccc8bda7ec85ad68204de0d525feef55ab9159ba293810ab4c7162 SHA512 2922c2271cb66220432ea0c79b74b2b1015cb55eed3c98845bb8ac15ca6ca2846579802bd832e9b3fa188879b613aada0bdeeca47fce29a6c7bf8d51242e7d6e WHIRLPOOL 2f0aea6989a00f07452e4097436596517bee8fab5b557f2a373d185b76eeeef40c8753e32b32d40f08070cba28e7b59ba86278bf665fa9e19260e799f44d5eb0 EBUILD gitlab-shell-5.8.0.ebuild 3908 SHA256 6f144e30269af1f4b608258da78553f64a1c6fb4e4ad532de4adcc4d93c8962d SHA512 e9131c8d9361a7321837c996b098b515b15cbd93c15067c000a5811d313fb167432bc415a5327a110adc6a92009d52cad78f12311552042c1b214b5df3eae9ba WHIRLPOOL e16d0ea02eceea491c8bc079cd1d4932d83340f1db3a9e249960b57e550ed65903610f0541d89ef616561f83f4c7fc771b1aedd115e48b80c62e72f62d7dbc3a EBUILD gitlab-shell-5.9.0.ebuild 3908 SHA256 91618dfa168fff385eb362572c8e65e1f72464ea4240b03e60cb554f7c872a8d SHA512 c16e5176dcfc866a696c4b1096b17bf15437ee77db92f28de79990688f146fa38ca2d345d1b3138072626086242f6c3e044a345435ea11ebd0455c3115c8bafe WHIRLPOOL 0b3d586d6c991a20c806ca5a53437aa8eb79eabfa64a26fb839d493052ae2d752dc65ec9626c3c7f62d6de9182d31870eb99c6018f6d490a30962f0b823eccd1 EBUILD gitlab-shell-5.9.3.ebuild 3908 SHA256 27290b4d2d5ceacaf991026c149ea2e1eaa270959490d9a8850596c8e7b4afed SHA512 daa5328dd238804860f8aa52cc4b09c484fc1477dfa6e60aa2fb424e27cc69121dea2c677e02832613ce0bc0023b9b23fe91c53dd455cbe689c6c09bb342138e WHIRLPOOL 8fa05924b1405f79656da46cfe7d22f1631a10ef19629f75fafdec11fe7b6d6fbc0db80ae2a31c81d3c11a9b412f39aa25234e7d5e318b6f4ebbd305af3f6781 -MISC ChangeLog 5399 SHA256 412b2056ffc33b31080540adfc5f437cc0366d866dc2404d95796362e6ff6de8 SHA512 6cff16284e35648b629d24a3e6ba3d5b1bab4dc4bd32a2c546954b29f3cf58dc5bc74fd35048e0e0b85c43afbe5f458246e33266276243e2b9bb0b4f0faef6b5 WHIRLPOOL 6b13d2cbe64798d4e7c3a61b5638db16485835d20486b85e1232037c631e6255ba27d5654a62bdfdc170f0948aeb873ea54e627aed599da20f988c5a4dcac9b6 +MISC ChangeLog 5572 SHA256 7f452659054ce68f9c7311c0e8e41d9437fb6f979d8dcd76c59c3e6a7c7cb56f SHA512 c8cacc1cdfe073a04e130ea6b310d2356efff90aee29a2589dc7d3ec4e77f048638463afabcc3ff9f45908994f38b32c3afc30477e6ddd6c75f3311c51ad2739 WHIRLPOOL 00c7af0fd46690c9eae9c21c25e7be1272a7dd5be1a2390fe98503f63e8b7b873a6c5482eee395476856ff80af69e32c6dfc8e9a6d2b70f09f991b0a53353979 MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1 diff --git a/dev-vcs/gitlab-shell/gitlab-shell-5.10.2.ebuild b/dev-vcs/gitlab-shell/gitlab-shell-5.10.2.ebuild new file mode 100644 index 0000000..75e1d1c --- /dev/null +++ b/dev-vcs/gitlab-shell/gitlab-shell-5.10.2.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +USE_RUBY="ruby23" + +EGIT_REPO_URI="https://gitlab.com/gitlab-org/gitlab-shell.git" +EGIT_COMMIT="v${PV}" + +inherit eutils git-r3 user + +DESCRIPTION="SSH access and repository management for GitLab" +HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-shell" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~arm ~arm64" +IUSE="" + +CDEPEND=" + >=dev-lang/go-1.8.3 + virtual/ruby-ssl" + +DEPEND="" +RDEPEND=" + >=dev-vcs/git-2.7.4 + dev-db/redis + virtual/ssh" + +RESTRICT="mirror" + +GIT_USER="git" +DEST_DIR="/usr/share/${PN}" +DATA_DIR="/var/lib/git" +LOGS_DIR="/var/log/gitlab" +CONF_FILE="/etc/gitlab-shell.yml" + +pkg_setup() { + enewgroup ${GIT_USER} + enewuser ${GIT_USER} -1 /bin/bash ${DATA_DIR} "${GIT_USER}" + + local git_shell=$(egetshell ${GIT_USER}) + if [ ! ${git_shell} -ef '/bin/bash' ]; then + ewarn "User ${GIT_USER} already exists, but with the shell ${git_shell}." + ewarn "Changing shell to /bin/bash ..." + + usermod -s /bin/bash ${GIT_USER} \ + || die "failed to change login shell for ${GIT_USER}" + fi +} + +src_prepare() { + epatch "${FILESDIR}/0001-${PN}-4.1.1-config-paths.patch" + epatch "${FILESDIR}/0002-${PN}-5.1.1-Makefile.patch" + # fix paths + sed -i -E \ + -e "s|/home/git|${DATA_DIR}|" \ + -e "s|[\# ]*(log_file: ).*|\1\"${LOGS_DIR}/gitlab-shell.log\"|" \ + config.yml.example || die "failed to filter config.yml.example" + + sed -i \ + -e "s|File\.join(ROOT_PATH, 'config.yml')|'${CONF_FILE}'|" \ + lib/gitlab_config.rb || die "failed to filter gitlab_config.rb" + eapply_user +} + +src_install() { + # install lib + insinto ${DEST_DIR}; doins -r lib LICENSE README.md VERSION + + # install scripts + exeinto ${DEST_DIR}/bin; doexe bin/* + exeinto ${DEST_DIR}/hooks; doexe hooks/* + exeinto ${DEST_DIR}/support; doexe support/* + + # create symlinks to bin + local name; for name in $(basename -a bin/gitlab-*); do + dosym "${DEST_DIR}/bin/${name}" "/usr/bin/${name}" + done + + insinto $(dirname ${CONF_FILE}) + newins config.yml.example $(basename ${CONF_FILE}) + + # create symlink for .gitlab_shell_secret + einfo "creating symlink for .gitlab_shell_secret" + TOKEN_FILE="${DEST_DIR}/.gitlab_shell_secret" + dosym ../../../opt/gitlab/.gitlab_shell_secret "${TOKEN_FILE}" + + # Gitaly stupidly hardcodes the path to config.yml :( + MY_CONF_FILE="${DEST_DIR}/config.yml" + dosym "${CONF_FILE}" "${MY_CONF_FILE}" + + # prepare directories + diropts -m750; dodir ${DATA_DIR} + diropts -m770; keepdir ${DATA_DIR}/repositories + diropts -m755; dodir ${LOGS_DIR} + + # GitLab stupidly expects that gitlab-shell is in home of git user... + dosym ${DEST_DIR} ${DATA_DIR}/gitlab-shell + + # fix permissions + fowners -R ${GIT_USER}:${GIT_USER} ${DATA_DIR} ${LOGS_DIR} +} + +pkg_postinst() { + # check git home directory + local git_home=$(egethome ${GIT_USER}) + if [ ! "${git_home}" -ef ${DATA_DIR} ]; then + ewarn "An authorized_keys is configured to be inside ${DATA_DIR}/.ssh," + ewarn "but HOME of ${GIT_USER} user is located in ${git_home}. You must" + ewarn "either change the authorized_keys location in ${CONF_FILE}," + ewarn "or change home directory of ${GIT_USER} user to ${DATA_DIR}" + ewarn "and move ${git_home}/.ssh here." + ewarn + fi + + local auth_dir="${git_home}/.ssh" + + elog "Initializing authorized_keys file in ${auth_dir}" + mkdir -p ${auth_dir} + touch ${auth_dir}/authorized_keys + chmod -R u=rwX,go=- ${auth_dir} + chown -R ${GIT_USER}:${GIT_USER} ${auth_dir} + + elog + elog "GitLab Shell was initialized. Repositories are located in" + elog "${DATA_DIR}/repositories, scripts in ${DEST_DIR}/bin." + elog "All gitlab-* scripts was symlinked to /usr/bin to be on your path." + elog + elog "You should change your gitlab_url in: ${CONF_FILE}." +} diff --git a/www-apps/gitlab-ce/ChangeLog b/www-apps/gitlab-ce/ChangeLog index 0cf6f90..2048bf1 100644 --- a/www-apps/gitlab-ce/ChangeLog +++ b/www-apps/gitlab-ce/ChangeLog @@ -1,3 +1,8 @@ +*gitlab-ce-10.3.7 (17 Feb 2018) + + 17 Feb 2018; Manuel Friedli +gitlab-ce-10.3.7.ebuild: + www-apps/gitlab-ce: Add ebuild for version 10.3.7. + *gitlab-ce-10.2.8 (16 Feb 2018) 16 Feb 2018; Manuel Friedli diff --git a/www-apps/gitlab-ce/Manifest b/www-apps/gitlab-ce/Manifest index d9dfbed..63b7338 100644 --- a/www-apps/gitlab-ce/Manifest +++ b/www-apps/gitlab-ce/Manifest @@ -23,6 +23,7 @@ DIST gitlab-ce-10.0.4.tar.gz 40040781 SHA256 eef116f75b64b835402a87e3737a3721143 DIST gitlab-ce-10.0.7.tar.gz 40049508 SHA256 890eed75ee502cd6c612756815ac8c854eeee3d00ab3d7bf00ee580db8141264 SHA512 770b747a35988b663f1ffe3b05b317839cc66e9c76e64e51673d066787a42acbb688b739fe9fe3a6dc787f2e44d6fbd99388ea0a20f103bedc631ed0054401f4 WHIRLPOOL 0de51582532936620b4140013f87652e7581956fd6e662d83e53ed024699ff70c2c52fbb863f8052c5df36bd5b63cff0cc6fd9372c97ea2265aa1242a2d6afdc DIST gitlab-ce-10.1.7.tar.gz 41749804 SHA256 d04dca23289adad80ba239d993aa67dcd14f50a1b935d91136247124e8b5f1f9 SHA512 3ebf8ab1e57ef82caeef940264a6f755e091717879d7ac36ce786155440ebd1264fa3320012cea4d1e6c319926a818cfcb19740fb765f069d5d18841ac1c0a21 WHIRLPOOL c91234ffd82c5e7380afbb49e3a6cd848d7744dc299dfe039fa02485e4d831fc24247e7613d5dd20d4e9752015f59c0638ea95f4eaa96afe50e8748eca0a7ad5 DIST gitlab-ce-10.2.8.tar.gz 42393303 SHA256 4314e87513684dc08f67c3d4be5f5f26502ae9963793a9abd8ba8cb4cc0b0a48 SHA512 cdd30f8500d1c902c42fd60b155143dc76ebc9990cc9c515ab2229f678feedebf6e1c7bd9c2c59b374cea2259eb7ad1384f50184787f45381afdaf3eb8e82803 WHIRLPOOL d5bb64d4f4254acd6a675dda653490ed34560f331d47ff9ad294dd042a515d8d3b14345a7950754f2d7c7ad676fb4328a76bf1885c91bec540c26b4edaaa5b14 +DIST gitlab-ce-10.3.7.tar.gz 42852145 SHA256 383485d773ef506c7d8b0d2a6b4f59ba53bd638639c6ebec0282808b0f4e3701 SHA512 f4488e5a02067ebfbc9dcc0d1e0b06eeb047ea793c5e5c286e54c2fcee56d88f0a4b4dcbae66319a63960e7737ff134ab615764524fb7bb5bf017b0d035a55e0 WHIRLPOOL 051981082d07726abc0c98b2070e26aa2770bb2ce38e37d4711c69745cf704f7c3ecec577bee840f331bae456c5d6c0e43a4e7527bb845541c43ec4b40874d28 DIST gitlab-ce-9.0.13.tar.gz 26366204 SHA256 056c98acb558776a2919b1aa501cb5303e66eb3cfe1d54b26988492be1c3816b SHA512 42fae9a01adc1eaac8e59b4ddb5f1d7c11d409dab32b84bf9849eedfed88bf87f7d36d0f9687f253424e2eacdbf83b3560bf9e64baa1533e4b1b6ff6e3be65e7 WHIRLPOOL d5c312d3f63057786ad28b2fba328d7a0593a5140aad617067b0aa0319d741f36ff32e573a436bf663f0f56d820b02fea5e22a430355856268306582fb62396a DIST gitlab-ce-9.1.10.tar.gz 30516975 SHA256 37cfd9dafcfbcd432d7d7a3abc6889bcd35321fc00b717f4810bf432791b0243 SHA512 81a7b9836aafcb348b6c38d8c19917053fc7a6adc6328d4b05215aa3d5c698adb708068d36bdc82df61e5b2d6b269c0ba8682b4994fa4a36b98fabe5b17e5f07 WHIRLPOOL b0affc921e0b41faabe354805fbcbd56a5839f7eeb880c00c2f10b68b0f2865b8e39ed58cfd99f6b6d0f2517bd465ff3f227fc6f17e1c1e17128299f21a911f2 DIST gitlab-ce-9.2.10.tar.gz 30988788 SHA256 a30e9d08d08433713df958d447a76cf2ed16344c7de56614f2849e8caad3e3b5 SHA512 fd4602c86edaf3060e1f5b8c8d6c5e4d40ec64f7f3d2519008b8c096720016c9a0dc6357bc464e72e4b52b25bd12ab26a4166898fba608383b4e4647ad49782c WHIRLPOOL f6b79e71f906c461ed89bd23bd537ae640b55c6727d7275e16ecb3b7349957f1461138d8fef5163137cabae59dccfdd8c4b22bd425800bf2eee3b732fd9a2908 @@ -34,6 +35,7 @@ EBUILD gitlab-ce-10.0.4.ebuild 13526 SHA256 0fa438ddcca42b2ec6090bdb587635c8e82c EBUILD gitlab-ce-10.0.7.ebuild 13568 SHA256 c164db3f0af93824bb97992b20b0bc5415bbc701c80469593038c773c453b976 SHA512 ba702162d9fad73d46953649c9faf913069f2059fbd253d8019224c1645c56cb6c0ec69893be6238e42ee3d54bbcd9a22343eece1975e084d7ff73d4efbb79dd WHIRLPOOL 37f6ebb5c9e4a60df200272235dca55819b81936cb8f74a43fff7a79a3330666587d082e18cdca20ecd610eea0b18c86eadf183353f83e72606d1ccffb756949 EBUILD gitlab-ce-10.1.7.ebuild 13679 SHA256 9c1bec7e86d46422f87baecaece80197c506b758eab28fd85fc214512ff67e3c SHA512 6958f3f67b7d8729519175337b5e411b9d32fa3e7348105870d5f35c938e905cc60e7af23802b1b5835610c72e9a76ca50c229f5d862403ffd5065e82ee39d25 WHIRLPOOL 6caf644203291c7903f7c67a93e3f11a3f8d632e01384390742bc8b1fc4068e494f750c44817f0143a0f6eeaadbb4a7243c4194397fded59956363b49bd32ae4 EBUILD gitlab-ce-10.2.8.ebuild 13681 SHA256 0e02e1a51f335872facce2751aa23d8ff5b9cd8aa7359fed1cd0f5a3ed5bd1e7 SHA512 805d6a717b0dcdc6551f549722abb8322a51d6cee1eb807dabac1fe4b98ffd32fcf3667d1de7f845a08e9dfb72afa257c51c6382cbc48f5f23fe15b027724dde WHIRLPOOL 1c48b8ea54d65d1d2ea001c6af45c0a76f0587d815353675ce36245c721f4b2d9c5b48c608fe632743863f5db859c5ee0c96b95fe6b429fcdd7053d4e8fb86e8 +EBUILD gitlab-ce-10.3.7.ebuild 14085 SHA256 cbff8442516b815e386974191d48464202b3b4f93e5d4688a71de08fadaeb89c SHA512 311e256f675c6cbb8e374448858e0adcfecd6a5432c4384a5d9c302a3c82dcab0aab0eb9a79d90f8f770dba0d1d984f0b7e3d53ce1e3b2c4c915aaa2facdbdd7 WHIRLPOOL 29674dc1a54311518047df70ecd21971b642bc7b8511d8c6ba3f754b7beae3de10c289704dcd214c7c5cf76f60772117c2649daac4d691b13387d758d2fb3f36 EBUILD gitlab-ce-9.0.13.ebuild 13139 SHA256 ecdcd1d6ca3999eb4b299628bac4c97a231cfcf682569cc1a0c11241cfcb6099 SHA512 8a6b8f3f05f54a752d57651b34ba4f6310e6695ea6eea1bbebe4a1dd38aa9ea0e9030bd59448a886918e20ea81f1b167236712e21fb6c43b7fb50b79565e2d87 WHIRLPOOL 0873a646dcb208e8c006e0e587fc03003594fd00e790e22d89839c9ffb8b7403a2df7b306ddfb817ea10a32e58d095d97989591de18ca78782bd468ae1fb8bc7 EBUILD gitlab-ce-9.1.10.ebuild 13295 SHA256 a69c179d072e76597091d825956bc308a25757a95406444a95a4ccbe9fe8ee9e SHA512 cc01ae887bce9e838eb020c7b414de4f80c5cc94762bd7c65fc5f6ab732b3ac7447f3f136b054557a5a93d09ed946b821d027fe29d7fdeea6eaaa6fc336cf394 WHIRLPOOL 1778e46da386704fbecc9e62769b9ab6ccdb40ee1028ef33607b4668e3fafbd0996ff4397128d8320098e3bf5c8f1d47a227e3c61a73a26a63663223790c8107 EBUILD gitlab-ce-9.2.10.ebuild 13040 SHA256 ace7b7561f499e43c19284153358b718275ac55792650391f39fa4ab89941c20 SHA512 22c8723251fefd50739ac082f04c377543f659720346cd29680d4956a2d6a37bb27b2c6beb723c09f49d7e478375e6679940f63f43c644564155a0eaffe300ed WHIRLPOOL 9601c5fcdc9b8d753a58ea4b4606957f3d09e63834335703896f55b16c41df7b81ef00b64e57f4409322789dcaa3745d60b31a973950c99037895d71a38ddaf2 @@ -41,5 +43,5 @@ EBUILD gitlab-ce-9.3.11.ebuild 13699 SHA256 e56490b1f59cf32e84d65ba3c91231c07a41 EBUILD gitlab-ce-9.4.7.ebuild 13526 SHA256 5078d51dcca18d9c5380bff25d494437506482beb4e586727b577f1c475363ec SHA512 244e178828910739018fa794c9f03c8f3b0411e45298800eaf828099f9d468b01d73102c9183ce6552d4ba208c086e5b4de85b4e0427e5502b9a54d56cb6a636 WHIRLPOOL 0306b7fc67f570d2ece6cc321461604c2be4fe886122750a481c6573800bbb4164c4cecee54a29a408b1eee17aa479a54271b395575d2d606dbd2ec3ddc4a1ae EBUILD gitlab-ce-9.5.10.ebuild 13526 SHA256 6e7c361f31989dd608eff4c8dd01b7301b142b4d38acdf38e61e2eecb2d4b285 SHA512 e33e56c8e49bd2ef03dd9af508b186f7908b8502960cbdb95ca9166631b84d5357c4965c0919e432ee5de9b9eeb33f68773ac405c24430568f9abb0d8e7354a6 WHIRLPOOL 3e866d785e8018096a92a223a2f6cedf4398cc07726a183d805005b3cd718fed2296edd63f5bc9d2b8849fe2298e9a61bf998a2241de2cd5ab4527f8ddaed325 EBUILD gitlab-ce-9999.ebuild 13468 SHA256 ab13060918b09a67f3f0c653a3836c1077933c606e5ea4e3416fde204aa530af SHA512 f14bc61622929dc57460fd7e4b3d965437fdc44706c52608a6b278021960bb70b62f81a6dd38beeb134c0f40ef29a81e07ea5a49c9a7a8e7ab63f55529231cb8 WHIRLPOOL 204d2f97890f2868b9f890fcc9b03d3c47c6916e52af341cf946e197acd8c2287409a5a1e525183a62fec9588eaa21b9d3ad30bba3b12267aa4c9e1163ca7fb0 -MISC ChangeLog 25899 SHA256 f59dc17469898c39b749dd8ca802123585790c2467c1f3a66fbc8129fd035035 SHA512 fc43a3374e811f74b88102db461cb1b31a3ff830c7c770604f346e372867595ad8713ee3afb3c60c3df77a7e1be7504dc1925e48111176e3573155f197dc6e93 WHIRLPOOL f1394d10f61611b5c539086890910ef03651bdab21dead81b60e90b0a30257128ca9f8443e5c8a3929805dfe47ee53984d46c852431d444258aca776b4fd6830 +MISC ChangeLog 26064 SHA256 8820edb5b622f84bedd3dc859312642a9efc672eda16f3d6517424a0af71e118 SHA512 269983d651bf8c7e1e67d9a32d29da88b7f01754b58380e18dabded57374a49b4be4651659026373d14b51d8d3d3ea2441aeab5e274dc236eb0a02d584e0e72f WHIRLPOOL 22267d14138614165b9c5cb4407cb46ed7be44ffaa2f5346b6dbffe9b684fe7b733191d344771d89c2fd059ec58ecfe9724d616bdad366a6b616fde929ae0580 MISC metadata.xml 801 SHA256 3dc7486a12903f47f65968d524c93500ba30a4a09fa57e5a9dacf356509b44bb SHA512 e132754b72e64246531fa883400a0cf1a473ac5a6a49623db58ccf118a038b7cf37df03d9550f37b4a25f9ddbb1dcc5652ec9a4f2259d8e3ce202692c4025f41 WHIRLPOOL e9d961681fd790008eaf80fa07ce2c55a00a58f2e920d759793783ca8c8f508602a777e94c0cb65fe87c7dbef0cabdf26e4f4082584421097d939cbab20c4ac6 diff --git a/www-apps/gitlab-ce/gitlab-ce-10.3.7.ebuild b/www-apps/gitlab-ce/gitlab-ce-10.3.7.ebuild new file mode 100644 index 0000000..ba4141f --- /dev/null +++ b/www-apps/gitlab-ce/gitlab-ce-10.3.7.ebuild @@ -0,0 +1,442 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +# Maintainer notes: +# - This ebuild uses Bundler to download and install all gems in deployment mode +# (i.e. into isolated directory inside application). That's not Gentoo way how +# it should be done, but GitLab has too many dependencies that it will be too +# difficult to maintain them via ebuilds. +# + +USE_RUBY="ruby23" + +inherit eutils ruby-ng user systemd + +MY_PV="v${PV/_/-}" +MY_GIT_COMMIT="586669a02ee7a18635d8e590117ac9e2bd9b62f4" + +GITLAB_GITALY_VERSION="0.59.2" +GITLAB_PAGES_VERSION="0.6.0" +GITLAB_SHELL_VERSION="5.10.2" +GITLAB_WORKHORSE_VERSION="3.3.1" + +DESCRIPTION="GitLab is a free project and repository management application" +HOMEPAGE="https://about.gitlab.com/" +SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.gz?ref=${MY_PV} -> ${P}.tar.gz" +RUBY_S="${PN}-${MY_PV}-${MY_GIT_COMMIT}" + +RESTRICT="mirror" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~arm64" +IUSE="kerberos mysql +postgres +unicorn systemd pages rugged_use_system_libraries" + +## Gems dependencies: +# charlock_holmes dev-libs/icu +# grape, capybara dev-libs/libxml2, dev-libs/libxslt +# rugged dev-util/cmake, virtual/pkgconfig +# json dev-util/ragel +# pygments.rb python 2.7+ +# execjs net-libs/nodejs, or any other JS runtime +# pg dev-db/postgresql +# mysql virtual/mysql +# +GEMS_DEPEND=" + dev-libs/icu + dev-libs/libxml2 + dev-libs/libxslt + dev-libs/re2 + dev-util/ragel + >=net-libs/nodejs-4.3.0 + >=sys-apps/yarn-0.17.0 + postgres? ( >=dev-db/postgresql-9.6:* ) + mysql? ( virtual/mysql ) + kerberos? ( virtual/krb5 )" +CDEPEND=" + dev-util/cmake + virtual/pkgconfig" +COMMON_DEPEND=" + ${GEMS_DEPEND} + ~dev-vcs/gitlab-shell-${GITLAB_SHELL_VERSION} + >=dev-vcs/git-2.8.4 + ~www-servers/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION} + kerberos? ( !app-crypt/heimdal ) + rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/26 ) + pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} ) + ~www-servers/gitlab-gitaly-${GITLAB_GITALY_VERSION}" +DEPEND=" + ${CDEPEND} + ${COMMON_DEPEND}" +RDEPEND=" + ${COMMON_DEPEND} + >=dev-db/redis-2.8 + virtual/mta + systemd? ( sys-apps/systemd:0= )" +ruby_add_bdepend " + virtual/rubygems + >=dev-ruby/bundler-1.15.4" + +# +# fix-sendmail-config: +# Fix default settings to work with ssmtp that doesn't know '-t' argument. +# fix-redis-config-path: +# Point to the absolute location of redis_config.rb +# +PATCHES=( + "${FILESDIR}/01-${PN}-8.7.5-fix-sendmail-config.patch" + "${FILESDIR}/02-${PN}-9.0.0-fix-redis-config-path.patch" + "${FILESDIR}/03-${PN}-10.2.8-database.yml.patch" + "${FILESDIR}/04-${PN}-9.3.0-fix-check-task.patch" + "${FILESDIR}/05-${PN}-9.0.0-replace-sys-filesystem.patch" + "${FILESDIR}/06-${PN}-8.17.0-fix-webpack-config.patch" +) + +MY_NAME="gitlab" +MY_USER="git" # should be same as in gitlab-shell + +DEST_DIR="/opt/${MY_NAME}" +CONF_DIR="/etc/${MY_NAME}" +LOGS_DIR="/var/log/${MY_NAME}" +TEMP_DIR="/var/tmp/${MY_NAME}" + +all_ruby_prepare() { + # fix paths + local satellites_path="${TEMP_DIR}/repo_satellites" + local repos_path=/var/lib/git/repositories + local shell_path=/usr/share/gitlab-shell + local run_path=/run/${MY_NAME} + + sed -i -E \ + -e "/satellites:$/,/\w:$/ s|(\s*path:\s).*|\1${satellites_path}/|" \ + -e "/gitlab_shell:$/,/\w:$/ s|(\s*path:\s).*|\1${shell_path}/|" \ + -e "/gitlab_shell:$/,/\w:$/ s|(\s*repos_path:\s).*|\1${repos_path}/|" \ + -e "/gitlab_shell:$/,/\w:$/ s|(\s*hooks_path:\s).*|\1${shell_path}/hooks/|" \ + -e "/path: \\/home\\/git\\/repositories\\/$/ s|/home/git/repositories/|/var/lib/git/repositories/|" \ + -e "/gitaly_address:/ s|/home/git/gitlab/tmp/sockets/private/|${run_path}/sockets/|" \ + config/gitlab.yml.example || die "failed to filter gitlab.yml.example" + + sed -i -E \ + -e "s|/home/git/gitlab/tmp|${run_path}|g" \ + -e "s|/home/git/gitlab/log|${LOGS_DIR}|g" \ + -e "s|/home/git/gitlab|${DEST_DIR}|g" \ + config/unicorn.rb.example || die "failed to filter unicorn.rb.example" + + sed -i \ + -e "s|/home/git/gitlab/tmp|${run_path}|g" \ + lib/support/nginx/gitlab || die "failed to filter nginx/gitlab" + + # modify default database settings for PostgreSQL + sed -i -E \ + -e 's|(username:).*|\1 gitlab|' \ + -e 's|(password:).*|\1 gitlab|' \ + -e 's|(socket:).*|\1 /run/postgresql/.s.PGSQL.5432|' \ + config/database.yml.postgresql \ + || die "failed to filter database.yml.postgresql" + + # rename config files + mv config/gitlab.yml.example config/gitlab.yml + mv config/unicorn.rb.example config/unicorn.rb + + local dbconf=config/database.yml + if use postgres && ! use mysql; then + mv ${dbconf}.postgresql ${dbconf} + rm ${dbconf}.mysql + elif use mysql && ! use postgres; then + mv ${dbconf}.mysql ${dbconf} + rm ${dbconf}.postgresql + fi + + # remove useless files + rm -r lib/support/{deploy,init.d} + use unicorn || rm config/unicorn.rb +} + +all_ruby_install() { + local dest=${DEST_DIR} + local conf=${CONF_DIR} + local logs=${LOGS_DIR} + local temp=${TEMP_DIR} + + # prepare directories + diropts -m750 + dodir ${logs} ${temp} + + diropts -m755 + dodir ${conf} ${dest}/public/uploads + + dosym ${temp} ${dest}/tmp + dosym ${logs} ${dest}/log + + # install configs + insinto ${conf} + doins -r config/* + dosym ${conf} ${dest}/config + + echo 'export RAILS_ENV=production' > "${D}/${dest}/.profile" + + # remove needless dirs + rm -Rf config tmp log + + # install the rest files + # using cp 'cause doins is slow + cp -Rl * "${D}/${dest}"/ + cp -Rl .??* "${D}/${dest}"/ + + # install logrotate config + dodir /etc/logrotate.d + cat > "${D}/etc/logrotate.d/${MY_NAME}" <<-EOF + ${logs}/*.log { + missingok + delaycompress + compress + copytruncate + } + EOF + + ## Install gems via bundler ## + + cd "${D}/${dest}" + + local without="development test aws" + local flag; for flag in mysql postgres unicorn kerberos; do + without+="$(use $flag || echo ' '$flag)" + done + local bundle_args="--deployment ${without:+--without ${without}}" + + use "rugged_use_system_libraries" && export RUGGED_USE_SYSTEM_LIBRARIES="YES" + + einfo "Running bundle install ${bundle_args} ..." + ${RUBY} /usr/bin/bundle install ${bundle_args} || die "bundler failed" + + einfo "Cleaning old gems ..." + ${RUBY} /usr/bin/bundle clean + + # clean gems cache + rm -Rf vendor/bundle/ruby/*/cache + rm -Rf vendor/bundle/ruby/*/bundler/gems/charlock_holmes-dde194609b35/.git + + ## RC script ## + + if use systemd ; then + ewarn "Beware: systemd support has not been tested, use at your own risk!" + systemd_newunit "${FILESDIR}/gitlab-8.13.0-sidekiq.service" "gitlab-sidekiq.service" + systemd_dounit "${FILESDIR}/gitlab-unicorn.service" + systemd_dounit "${FILESDIR}/gitlab-workhorse.service" + systemd_dounit "${FILESDIR}/gitlab-mailroom.service" + systemd_dotmpfilesd "${FILESDIR}/gitlab.conf" + else + local rcscript=gitlab-9.3.5-sidekiq.init + use unicorn && rcscript=gitlab-9.3.5-unicorn.init + + cp "${FILESDIR}/${rcscript}" "${T}" || die + sed -i \ + -e "s|@USER@|${MY_USER}|g" \ + -e "s|@GITLAB_BASE@|${dest}|g" \ + -e "s|@LOGS_DIR@|${logs}|g" \ + "${T}/${rcscript}" \ + || die "failed to filter ${rcscript}" + + newinitd "${T}/${rcscript}" "${MY_NAME}" + fi + + # fix permissions + fowners -R ${MY_USER}:${MY_USER} ${dest} ${temp} ${logs} +} + +pkg_postinst() { + elog "If this is an update from a previous version, stop your GitLab" + elog "instance and issue the following command to perform all required" + elog "migrations:" + elog " emerge --config \"=${CATEGORY}/${PF}\"" + elog "PLEASE NOTE: It's HIGHLY recommended to backup your database" + elog "before running the config phase. Run these commands (as root):" + elog + elog " cd /opt/gitlab" + elog " sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production" + elog + elog "If this was a fresh install, follow these steps:" + elog + elog "1. Configure your GitLab's settings in ${CONF_DIR}/gitlab.yml." + elog + elog "2. Configure your database settings in ${CONF_DIR}/database.yml" + elog " for \"production\" environment." + elog + elog "3. Then you should create a database for your GitLab instance, if you" + elog " haven't done so already." + elog + if use postgres; then + elog "If you have local PostgreSQL running, just copy&run:" + elog " su postgres" + elog " psql -c \"CREATE ROLE gitlab PASSWORD 'gitlab' \\" + elog " NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT LOGIN;\"" + elog " createdb -E UTF-8 -O gitlab gitlabhq_production" + elog " Note: You should change your password to something more random..." + elog + fi + elog "4. Finally execute the following command to initialize the environment:" + elog " emerge --config \"=${CATEGORY}/${PF}\"" + elog " Note: Do not forget to start Redis server first!" + elog + elog "If you're running GitLab behind an SSL proxy such as nginx or Apache and" + elog "you can't login after the upgrade, be sure to read the section about the" + elog "verification of the CSRF token in GitLab's trouble-shooting guide at" + elog "http://goo.gl/5XGRGv." + if use postgres; then + elog "Please note: As of GitLab 8.6, users of PostgreSQL need to enable the" + elog "`pg_trgm` extension by running the following command as a PostgreSQL" + elog "super user for *every* GitLab database:" + elog " CREATE EXTENSION IF NOT EXISTS pg_trgm;" + elog "For details, see the documentation at the GitLab website." + fi + if use mysql ; then + ewarn "You must grant the GitLab user permissions the following on the database:" + ewarn " mysql -u root -p -e \\" + ewarn " \"GRANT TRIGGER ON \`gitlab\`.* TO 'gitlab'@'localhost';\"" + ewarn "PLEASE also read this document about needed migrations on MySQL:" + ewarn + ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md" + ewarn + ewarn "Failing to follow those instructions may make the config phase fail!" + fi +} + +pkg_config() { + einfo "Checking configuration files" + + if [ ! -r "${CONF_DIR}/database.yml" ]; then + eerror "Copy ${CONF_DIR}/database.yml.* to" + eerror "${CONF_DIR}/database.yml and edit this file in order to configure your" + eerror "database settings for \"production\" environment." + die + fi + + local email_from="$(ryaml ${CONF_DIR}/gitlab.yml production gitlab email_from)" + local git_home="$(egethome ${MY_USER})" + + # configure Git global settings + if [ ! -e "${git_home}/.gitconfig" ]; then + einfo "Setting git user" + su -l ${MY_USER} -c " + git config --global user.email '${email_from}'; + git config --global user.name 'GitLab'" \ + || die "failed to setup git name and email" + fi + + su -l ${MY_USER} -c "git config --global repack.writeBitmaps true" + + # determine whether this is an update or a fresh install. we do this by + # checking whether the ${DEST_DIR}/.git directory exists or not + # + if [ -d "${DEST_DIR}/.git" ]; then + local update=true + else + local update=false + fi + + if use mysql ; then + ewarn "Please only proceed if you've read and understood the following page:" + ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md" + if [ "${update}" = 'true' ]; then + ewarn "Failing to follow those instructions may cause the upgrade to fail" + fi + ewarn + ewarn "Press any key to continue, or abort with Ctrl+C" + read + fi + + ewarn "Now is a good time to create a backup of your Gitlab installation, just in case." + ewarn "To do so, abort this configuration with Ctrl+C and type the following commands:" + ewarn " cd /opt/gitlab" + ewarn " sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production" + ewarn "Then, re-run the configuration step. If you want to skip the backup, press any key now." + read + + ## Initialize app ## + + local RAILS_ENV="production" + local RUBY=${RUBY:-/usr/bin/ruby} + local BUNDLE="${RUBY} /usr/bin/bundle" + + if [ "${update}" = 'true' ]; then + einfo "Migrating database ..." + exec_rake db:migrate + + einfo "Compiling GetText PO files ..." + exec_rake gettext:compile + + # https://github.com/gitlabhq/gitlabhq/issues/5311#issuecomment-31656496 + einfo "Migrating iids ..." + exec_rake migrate_iids + + einfo "Installing npm modules ..." + exec_rake yarn:install + + einfo "Cleaning old precompiled assets ..." + exec_rake gitlab:assets:clean + + einfo "Cleaning cache ..." + exec_rake cache:clear + else + # create dummy git repo as workaround for + # https://github.com/bundler/bundler/issues/2039 + einfo "Initializing dummy git repository to avoid false errors from bundler" + su -l ${MY_USER} -c " + cd ${DEST_DIR} + git init + git add README.md + git commit -m 'Dummy repository'" >/dev/null + + einfo "Initializing database ..." + exec_rake gitlab:setup + + einfo "Compiling GetText PO files ..." + exec_rake gettext:pack + exec_rake gettext:po_to_json + + einfo "Installing npm modules ..." + exec_rake yarn:install + fi + + einfo "Precompiling assests ..." + exec_rake gitlab:assets:compile + + if [ "${update}" = 'true' ]; then + ewarn + ewarn "This configuration script runs only common migration tasks." + ewarn "Please read guides on" + ewarn " https://github.com/gitlabhq/gitlabhq/blob/master/doc/update/" + ewarn "for any additional migration tasks specific to your previous GitLab" + ewarn "version." + fi + elog + elog "If you want to make sure that the install/upgrade was successful, start" + elog "Gitlab now and then run these commands (as root):" + elog + elog " cd /opt/gitlab" + elog " sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production" + elog " sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production" + elog + if ! use systemd ; then + elog "You may also run" + elog " /etc/init.d/gitlab check" + elog " for convenience." + fi +} + +ryaml() { + ruby -ryaml -e 'puts ARGV[1..-1].inject(YAML.load(File.read(ARGV[0]))) {|acc, key| acc[key] }' "$@" +} + +exec_rake() { + local command="${BUNDLE} exec rake $@ RAILS_ENV=${RAILS_ENV} NODE_ENV=${RAILS_ENV}" + + echo " ${command}" + su -l ${MY_USER} -c " + export LANG=en_US.UTF-8; export LC_ALL=en_US.UTF-8; export NODE_PATH=${DEST_DIR}/node_modules + cd ${DEST_DIR} + ${command}" \ + || die "failed to run rake $@" +} diff --git a/www-servers/gitlab-gitaly/ChangeLog b/www-servers/gitlab-gitaly/ChangeLog index 8c184da..a9e3ca9 100644 --- a/www-servers/gitlab-gitaly/ChangeLog +++ b/www-servers/gitlab-gitaly/ChangeLog @@ -1,3 +1,10 @@ +*gitlab-gitaly-0.59.2 (17 Feb 2018) + + 17 Feb 2018; Manuel Friedli + +files/0002-gitlab-gitaly-0.59.2-fix-config.toml.example.patch, + +gitlab-gitaly-0.59.2.ebuild: + www-servers/gitlab-gitaly: Add ebuild for version 0.59.2. + *gitlab-gitaly-0.52.1 (16 Feb 2018) 16 Feb 2018; Manuel Friedli +gitlab-gitaly-0.52.1.ebuild: diff --git a/www-servers/gitlab-gitaly/Manifest b/www-servers/gitlab-gitaly/Manifest index 64f3535..30ec059 100644 --- a/www-servers/gitlab-gitaly/Manifest +++ b/www-servers/gitlab-gitaly/Manifest @@ -3,6 +3,7 @@ AUX 0001-gitlab-gitaly-0.23.0-fix-Makefile.patch 253 SHA256 e1a3d0ea2d10145dd9d9 AUX 0002-gitlab-gitaly-0.11.2-fix-config.toml.example.patch 700 SHA256 7f5c3f840581c2c2e98741ad6fcb9b486948dbcd80f52f4c45538b9fe9009087 SHA512 e89636c4e38697fad62553e8b07677fdc0fef5b83249ce79f748e1da7300c28514cdbf7a182232ced95222c9578cc9028de5e039b82f31175c22d840c83c0286 WHIRLPOOL 2b9c2b2b96da648b5f71a4ee8940c2a0a148e9005178e012afc73dd7709a5c407e04240adfb96a4ea3d2384248a23682a8d5727c967ddd5368f0d2d3b38d24e5 AUX 0002-gitlab-gitaly-0.35.0-fix-config.toml.example.patch 1015 SHA256 44cd87bb35224634ef9832f2d1e79de2ab27580101665a049eaf20f5ffae590d SHA512 9110e6f42babac04c98227ecfff3a961ec35fe6c487559e5a638676f409dbf6b0b133524b092322085cb7c7c41c5fc729c7b6be80bae10931efd5785172f01b2 WHIRLPOOL 8b0f1aa8c8c9c2ea4a8a5dbfd1e5a00603d587209b0967be82a9d78d0eabe4d350ac44fce80bfc9dac77ea2c0ff5d0f954e8cb4fb50ee778fb636599b1d8456f AUX 0002-gitlab-gitaly-0.43.1-fix-config.toml.example.patch 1095 SHA256 3e9558a127675bca052a9219265572504729380087665f2cd681c44d5545f101 SHA512 1ee6b6a127a6f7e82970c2e4270b42427a88bfbca5ba9d979d6667381d2a6cf934c77cc6e2f47af24a2810e0427285565bc42a0d26c36649a9177b917ac5a424 WHIRLPOOL f96a7dd2952d5a8d7652d5e6966c4e2d85c3a9785e824108068fab158f5871cd1a0ca0f88f563478c4f937ba2d9e3df489611d07c092ff0c4c9b6668f0abb5fb +AUX 0002-gitlab-gitaly-0.59.2-fix-config.toml.example.patch 1183 SHA256 edd4dc6f1d1b56bfc902d79c0abb2d3b85b69cfe3b90e4250b804fafe00f49c3 SHA512 4a9bf3222e442fcd76cf62921a7f184e67784532c2c4706f3f7d3d1b7a13c874520dba6ef629d93aa1514ce3483827d1a11cf7a04ae530fb4ed67844be1e9353 WHIRLPOOL a93af879b93415470e41449390388f908dba17dc1ea5f4e47e5bbe80fcac11f85c64ce18899aa2ee084438598e24e2ddc72076c0d63bd8fc61de4f2ee8ee2cc0 AUX gitlab-gitaly-0.11.2.conf 289 SHA256 da2640e0ac6a3f356d68f2825c78a1965703df292cd6631b2e884e1a9c7ecc87 SHA512 86f2b4dd283de117c3a371a98a1472d248a21a2c931be6644bec2406249e000fe2e55d031b523d6e64fa2eaa3addad27704f338f65cad6b559680c5c327b9614 WHIRLPOOL 18cb38b35c9a79c6eaaa15ed9bbbeb6dc502a0291f3bff2bf1f59a950556c4c3fd3742a4097ab784c1e9a12d2209b336f2bf688b0888e13bb1b7f78219bb6d87 AUX gitlab-gitaly-0.11.2.init 631 SHA256 32257b9e72c2ee201e5104f6eafc134920237f0f5465110edda4778dd92c17a2 SHA512 a0bf57f392a75b1a2875837ec1ad47b61317c6ae530d12e60ae3f62f69b0fb8ef48499b31751fab788df1a6ab842926a73443795a5888258f62e473e2953299a WHIRLPOOL 8185d1927c021be4b3de7c4e0228c68cba558b35c0894c6b17de7f24ebc42dd771593b2d9169f27c5a1ada90e14b2fdb651521ddf39660a77dece586c7f1d348 DIST gitlab-gitaly-0.10.0.tar.bz2 693273 SHA256 44a4a68beb75b464b35fd003cf47a9bc483bb6bbcc8ab4bd4ef87a75329a3747 SHA512 1d7b2d38d68ceaacde03d0ba2cbec19f730527af6a0d56fd92c03f41a4d11c4e5db5c5cc2bd363a8ccfc0f5bf3fb678aec4b17e5996ccc7f1898a78e4598cc1a WHIRLPOOL 737ff05c6992e90eab9ba38a721cf699d87ea1ef84005dbaa16d37ef3c33cec9607571b0421412bba3efd2bf88267ff7d624e57ac92cc08b14c3b8801779c455 @@ -16,6 +17,7 @@ EBUILD gitlab-gitaly-0.35.0-r2.ebuild 1143 SHA256 f27758444fefb15b9ea55cc9be68e8 EBUILD gitlab-gitaly-0.38.0-r1.ebuild 1035 SHA256 c667625968e0cb0530679184353724687bc193c0a8166fea0d9f8a516ce6db40 SHA512 e585a18c64a2e8aca2796c45066e1b1113cba9320a47f9af638fce171ac362060edac4216e7259628433e5b5facaebbf876bf807dd99f80ebd8c88e7cb726992 WHIRLPOOL 7f329f60fce603e61ebf90cc2aa0182d58574d449f096f3cf59c4751f1db9d5eb856d1fa0ee67c565d392261e45c784e25a3b4014f9a44857c31ca04af8cb70f EBUILD gitlab-gitaly-0.43.1.ebuild 1073 SHA256 594e68b869e53fe6fbdcf8fdade3889f55883b8b4ab17a2b064b3fd12a1ef739 SHA512 e3e7f045aa0565267bb516f685685c704841b5186dcca1282274ddd9392b734ac7808cb99d587ced3c87a357dc5af02bca99056386f0db0f9ecd07bba9e6e18e WHIRLPOOL 1329e9b461fe5c7386aa127a815602c655f8411a030537de9a247ea033723cfd60eb00a38e39cb775c985607b90b0e30fe55a9ef6856b49204a2ddc8427afa1c EBUILD gitlab-gitaly-0.52.1.ebuild 1073 SHA256 594e68b869e53fe6fbdcf8fdade3889f55883b8b4ab17a2b064b3fd12a1ef739 SHA512 e3e7f045aa0565267bb516f685685c704841b5186dcca1282274ddd9392b734ac7808cb99d587ced3c87a357dc5af02bca99056386f0db0f9ecd07bba9e6e18e WHIRLPOOL 1329e9b461fe5c7386aa127a815602c655f8411a030537de9a247ea033723cfd60eb00a38e39cb775c985607b90b0e30fe55a9ef6856b49204a2ddc8427afa1c +EBUILD gitlab-gitaly-0.59.2.ebuild 1073 SHA256 a9899ddb752550e82510d101a93286cb6b872b8faa53d008e55af3ddc2d2e685 SHA512 da7ba77fe0a9234c5e4f5994a3c7fa9c11a93cdd6f9cff3ab5a658f6a9385a0bea8f00cee878a43c9580632c9837c305b293e8609f3e284b958f7b514ef10c81 WHIRLPOOL e4b12a160c2cfc08da4fd36fcbde8dcd1f383acbd5211c50dfcea1610e4e5105ca9720f9f8c34a7ab41fe2c33a77d3129ae527fd94f3b8d0259e9c2e4ec9a027 EBUILD gitlab-gitaly-0.6.0.ebuild 769 SHA256 601ca500d12250325bf6f924d53b28cb120cc75da9b9e1d83cd4c9317aa1ee91 SHA512 1263c919fb3c126a0ba5dda2b9da45b0a16b6bb703ec4260b11b40463fcfedd1249389272ab638d25ced351a63c0812c0cbc7ea035f9c2250d2eb79786424c2d WHIRLPOOL 261dfdd551dad839d687b2092027de33e95142e1ed7336fd6513742044ff219353743988aefad8e5da6850a8e1c8d5b44baf08c6702960a829673cfc5580e152 -MISC ChangeLog 4772 SHA256 b9da1dd32bc93b63482d0942a3aad179c47540793e31026f00c7b9c8c209c69b SHA512 c536758090c57f0c63bda2fcf282cc0548486adab02bcb4d638b63192a8a705c31723bf9c8764616b8a2c5ea508a58a687790144739951f336f0db086e2f1c61 WHIRLPOOL 4363a5a5625dbcec90b975d362cb55528e470b8393e47216c59931458fa376ee307103e3bbb84163ce48aabaceb3d95179aa3a7c230f010631369c3e4bee0815 +MISC ChangeLog 5020 SHA256 198eaa93db9ce37a1cb442811ad6c54c72faf6c41d730bc6d88c9d59b04644a4 SHA512 26202dbd0a5907dd6bc236551023bbdb2ee75e431b52e0309a1af85cb1ac80f59a5d68f4fe86f639276224b27582acf78ff3e8bc62387086b225b1a77ded61e8 WHIRLPOOL 88a7573a71b0ee89b1d5197c8c1fd3e8dfbff55cd8858aa1ab004e3ee860a1748f3981c19d1cce7322ae80d7c06caa1cbbb49658ab18d8f3bb5e5ec26d1e3187 MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1 diff --git a/www-servers/gitlab-gitaly/files/0002-gitlab-gitaly-0.59.2-fix-config.toml.example.patch b/www-servers/gitlab-gitaly/files/0002-gitlab-gitaly-0.59.2-fix-config.toml.example.patch new file mode 100644 index 0000000..f94333b --- /dev/null +++ b/www-servers/gitlab-gitaly/files/0002-gitlab-gitaly-0.59.2-fix-config.toml.example.patch @@ -0,0 +1,39 @@ +diff --git a/config.toml.example b/config.toml.example +index 10f8cce..09add0c 100644 +--- a/config.toml.example ++++ b/config.toml.example +@@ -1,6 +1,6 @@ + # Example Gitaly configuration file + +-socket_path = "/home/git/gitlab/tmp/sockets/private/gitaly.socket" ++socket_path = "/run/gitlab/sockets/gitaly.socket" + + # The directory where Gitaly's executables are stored + bin_dir = "/home/git/gitaly" +@@ -19,7 +19,7 @@ bin_dir = "/home/git/gitaly" + + [[storage]] + name = "default" +-path = "/home/git/repositories" ++path = "/var/lib/git/repositories" + + # # You can optionally configure more storages for this Gitaly instance to serve up + # +@@ -40,7 +40,7 @@ path = "/home/git/repositories" + + [gitaly-ruby] + # The directory where gitaly-ruby is installed +-dir = "/home/git/gitaly/ruby" ++dir = "/var/lib/gitlab-gitaly/ruby" + + # # Gitaly-ruby resident set size (RSS) that triggers a memory restart (bytes) + # max_rss = 300000000 +@@ -53,7 +53,7 @@ dir = "/home/git/gitaly/ruby" + + [gitlab-shell] + # The directory where gitlab-shell is installed +-dir = "/home/git/gitlab-shell" ++dir = "/usr/share/gitlab-shell" + + # # You can adjust the concurrency of each RPC endpoint + # [[concurrency]] diff --git a/www-servers/gitlab-gitaly/gitlab-gitaly-0.59.2.ebuild b/www-servers/gitlab-gitaly/gitlab-gitaly-0.59.2.ebuild new file mode 100644 index 0000000..f40b779 --- /dev/null +++ b/www-servers/gitlab-gitaly/gitlab-gitaly-0.59.2.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +EGIT_REPO_URI="https://gitlab.com/gitlab-org/gitaly.git" +EGIT_COMMIT="v${PV}" + +inherit eutils git-r3 user + +DESCRIPTION="Gitaly is a Git RPC service for handling all the git calls made by GitLab." +HOMEPAGE="https://gitlab.com/gitlab-org/gitaly" +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~arm" + +DEPEND=">=dev-lang/go-1.8.3 + dev-ruby/bundler" +RDEPEND="${DEPEND}" + +src_prepare() { + epatch "${FILESDIR}/0001-${PN}-0.23.0-fix-Makefile.patch" + epatch "${FILESDIR}/0002-${PN}-0.59.2-fix-config.toml.example.patch" +} + +src_install() { + # TODO fowners, fperms on config.toml.example + insinto "/etc/gitlab" + newins "config.toml.example" "gitaly-config.toml" + newconfd "${FILESDIR}/${PN}-0.11.2.conf" "gitlab-gitaly" + newinitd "${FILESDIR}/${PN}-0.11.2.init" "gitlab-gitaly" + into "/usr" + newbin "gitaly" "gitlab-gitaly" + + # install gitaly-ruby + insinto "/var/lib/gitlab-gitaly" + doins -r "ruby" + fperms 0755 /var/lib/gitlab-gitaly/ruby/bin/{gitaly-ruby,ruby-cd} +}