Merge branch 'master' into 89-add-ebuild-for-gitlab-ci-multi-runner-9-0

This commit is contained in:
Manuel Friedli 2017-05-29 13:54:09 +02:00
commit 6db502b32b
43 changed files with 2748 additions and 67 deletions

View file

@ -1,7 +1,11 @@
AUX gitlab-shell-4.1.1-config-paths.patch 2152 SHA256 e789f0c8a8b7ec8a840ce26dd63d6e5386a149f619d7ad5a6788577d897c4826 SHA512 6ae5af0c364061af4c9675804e2f6d6b662ed4891ed4c80bc1be39e9da6343db372e58bf04a0d3c8a4fc218daeb8cda45636e0da0c67ec801168e84004d05b86 WHIRLPOOL b8136b81ef943c15feeca303d1d7f0d55c85ff7f7ec82bfceea026ce334ca24fce0dfb599946562bd0aceb89a2216bcfaa894235c43f41e3031a305f85e756b4
DIST gitlab-shell-4.1.1.tar.gz 78829 SHA256 61f684b4528b0b789aad80efbfd8f9870d113f6e2794e589e0db9e74e6737e1d SHA512 17b929da1c6148a9af2787ca4a18081e3108622a40c6fb3f02f36f4ba41f2a1d61cf83509ace849093334af8f4ad74d8a36393bf9fca7ab21163d2f48b499879 WHIRLPOOL cfd258e93abeae4a33c1578114d56186c81a7c5894a3ccb9b690dd9a78051746916f3bac2b7146b8378534d5e177ba4cacb4c2011b64011328b056d4d397967e
DIST gitlab-shell-5.0.0.tar.gz 78585 SHA256 7611fdf0b64592365bdb6ba442a4263d129b05c280d5105ea641baec7a0b45ab SHA512 84c86c42e0ff6029ddcdd9a93410b261f4f5a1e8cdb0fd114db2eab56b1fc63f4f8ed6d0cc0c6016d0f02413d6d213aab7a995adadb186c0dfe49e49b762e904 WHIRLPOOL ddaf25f837dbbdbfd6578062b89a8102ffbe0dc88f51890a38f59add61653368b0ad0ea146a8a7eac52fa482f7316aae712f53075f750db02fa8e8ce370f76e6
DIST gitlab-shell-5.0.2.tar.gz 79009 SHA256 bb5125f12f2f3fbbb93aa78f6810cd62f97bda564d01112a831bf41d4e42ef34 SHA512 c960e1e2c3c9f35927255442f4e20b82af8881d123c3edeffe7ebdc6523fe2456ae1e7149527255eb5e3d2d369b4f70b7c902314d881a20b893fea9fac968f73 WHIRLPOOL dc5be75f111074c8e9f018533ddcef64edcded4c5f3003a3f7297d9153469894f4c8a3e387419055a3e51732daa9db8a3b936984a24f3b4d1a9e0cbc968a7119
DIST gitlab-shell-5.0.4.tar.gz 626142 SHA256 9947c9cf7e7f2e1c2af696cf4610c6e2ad256dcae42e95cc0c8dc387ad5d07e3 SHA512 2718e99a43ad934dfb6d8b3df47bab0b957fa362c84510434fdd07ed994bf53ab059569ff0da106c8bd5ebc49cc460694ad5fb2fec57f0fb0cbb297609a00d97 WHIRLPOOL 6666d2dcb06c156686080b6a0f489ef03d331bc8f20eeb996fe5ce51aeb25d2f334002c15e235c1ad21d808eee8617aa178a5ad974ea99ec8f89bd2478f7f9eb
EBUILD gitlab-shell-4.1.1.ebuild 3653 SHA256 06702f4658b8ac1bada6b322b833f65270656730417d8c9bb000ab1fb23af8f0 SHA512 dc63160d98dabfcbaa9982fe841fd581a1b1b2a968e7c7bd1ee336e449214fa89da33477f0d4744941ee3ecb8688386883a5923e78025bdcfd1556e68ea7371c WHIRLPOOL cd59e133d1d02f082f10312b358c6c8718898aa008a967fc85934656500ceefc44a6affae286123c481aa902fa51cdb7e7f98788057fdd08304ed99f643ef27c
EBUILD gitlab-shell-5.0.0.ebuild 3653 SHA256 47e19d88939c146c5a7826ca538dba2caee3bc32944eab5b80d54ddbd4c196fc SHA512 1765624d95c14e2888f3e12be05ee727bae036265fc3c9bcfe17b509c0656de72728dcb580952d2a666b3fc99c3640f43862a9ea449599aeaa7cdb2509406347 WHIRLPOOL 2b935404098f288e729c3957007cc663afc3e76a4e04f536d5c7373cbae6857abb5a5cbd2d226355777e4af954a032e9b17211657d83a71bd2eef847028aea64
EBUILD gitlab-shell-5.0.2.ebuild 3653 SHA256 9ed7d4b6dc1ca2d6ee0c928cfd9f33da45a09a070f781d33f217a4dc80296c5a SHA512 571e8c8cd6782f7d955d8d7ff481424c8aa2bea6ab2d702036f991065f75d8e08f26b1004a91a88e2a6add8d64018cec3bb7de131635b264ad7990c392467e1c WHIRLPOOL 491af5dd4248e2728048e51d21a12768966201a93731df7743baa24ccde12228c15c9288be7cefb9b29f3ed83f27729a6f1146506365ef14d3d516b7acaf6862
EBUILD gitlab-shell-5.0.4.ebuild 3653 SHA256 c3e2b2dbb4c6b29bf46442791caee2116be2c698a9cbec9d91ac58b1a5d98adb SHA512 035508013085da402a5926faa5da6b6ac6ac726169122766e381096b316b13e887e99f178a8980d831d0a788549e26b07bdae284bc3a90b3a21b534071239581 WHIRLPOOL 807caff4227ea9fdb853a0e5622dea4d4e8b66c3c8dd86d98aedc14f20f00eeabdc1620ffded43cdb4c6b4009e96528bf1dae784256e40f034cd78d6460348b5
MISC ChangeLog 2968 SHA256 d1febc13ae1f441766c488effc41cb4d3434d2c8874ce6f8665c71f3f7a94f55 SHA512 e67b8f8785660a0b9d9fb6849f0b14880ca90532b6b22a1ab7efc1be70ca166918364f938b3b1ad8efcb12e544ab9cdac7e0f279df9651dd51ba729ad435f233 WHIRLPOOL fb16d2699a95323ef28c2f97fd67f1882172688b11d1a63c29e5d8e01737b2af0dcf02d96122e0d2a0a751cf5acfa9ca5f0e487a2b2fa8ad4f4ff8f333c5093b
MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1

View file

@ -0,0 +1,130 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
USE_RUBY="ruby21 ruby23"
inherit eutils ruby-ng user
MY_PV="v${PV/_/-}"
MY_GIT_COMMIT="3d22504d1cebecdfe778e3ee10b9a380efea80dd"
DESCRIPTION="SSH access and repository management for GitLab"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-shell"
SRC_URI="https://gitlab.com/gitlab-org/gitlab-shell/repository/archive.tar.gz?ref=${MY_PV} -> ${P}.tar.gz"
RUBY_S="${PN}-${MY_PV}-${MY_GIT_COMMIT}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
IUSE=""
DEPEND=""
RDEPEND="
>=dev-vcs/git-2.7.4
dev-db/redis
virtual/ssh"
ruby_add_bdepend "
virtual/ruby-ssl"
MERGE_TYPE="binary"
RUBY_PATCHES=(
"${PN}-4.1.1-config-paths.patch"
)
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
}
all_ruby_prepare() {
# 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"
}
all_ruby_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"
# 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}."
}

View file

@ -0,0 +1,130 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
USE_RUBY="ruby21 ruby23"
inherit eutils ruby-ng user
MY_PV="v${PV/_/-}"
MY_GIT_COMMIT="285c061ed8933c0d94a9ad027f99653039673324"
DESCRIPTION="SSH access and repository management for GitLab"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-shell"
SRC_URI="https://gitlab.com/gitlab-org/gitlab-shell/repository/archive.tar.gz?ref=${MY_PV} -> ${P}.tar.gz"
RUBY_S="${PN}-${MY_PV}-${MY_GIT_COMMIT}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
IUSE=""
DEPEND=""
RDEPEND="
>=dev-vcs/git-2.7.4
dev-db/redis
virtual/ssh"
ruby_add_bdepend "
virtual/ruby-ssl"
MERGE_TYPE="binary"
RUBY_PATCHES=(
"${PN}-4.1.1-config-paths.patch"
)
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
}
all_ruby_prepare() {
# 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"
}
all_ruby_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"
# 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}."
}

View file

@ -1,13 +0,0 @@
AUX fix-Makefile-1.2.1.patch 354 SHA256 7cb067ad7465e0e72eb503edb4f56e2b080806cb66826b2890a492add86d41df SHA512 0616061973d6cd9a5871095fe7ec1a7a80054399e6926bea8ac36b1196c1a962459eefffcd18a9a080d9bfa1a195aa504ad50642a117e9bace28fe6cad638e24 WHIRLPOOL 428a0db0e0696ceb8931bd89bcfcf476039e8cd7eb04d7bedf39af41338ce72d495fa572ab050c8747026ff9d28c59b15baf8c6c3ac5b9ca198e20bbd702622e
AUX fix-Makefile-1.3.0.patch 354 SHA256 777616d246eb99b2189f68df3eaac9b538845884fda25f879738268f2ecd3112 SHA512 44052c8b90beef243ffc59cabf5c58d84c7e5482022a036ee59f9b4ef392ac5c5df9e36bf0ee8229943d5139da99367dba860622ac1b0e71e5065bdb1d1759d5 WHIRLPOOL 67e27b31dd279dffca80fc79c409f0696430f75dae7a57433d5b913e4b60b99fbdee50089edc70cae69e0e0d95d4602d03975b9b48fa7678ccdeca3b1d0d9c76
AUX fix-Makefile-1.4.1.patch 354 SHA256 c7b2810895c92a1303a69c719d3b21990c5d4d7111e10cc30914ca619ada0525 SHA512 5b3abe642ca3e9e862d8ea6cf8e3af40c6cc6e89728402bc78760ac709effd0f31c7dfe4e5ff855fa0eb4b9c9d2de5baf000fffa13e4b2c905776a85ebcea442 WHIRLPOOL e089f12164da308887e675a5c08e2fc6faefae199403a972d6508e139ccb0aa6166c1d7dcfbd126876dfb1f674689fd5212e88504af5b7574feddc40658a4562
AUX gitlab-workhorse-0.8.2.conf 297 SHA256 8bb99a78197ad22892e4c85496101a39f2c82f6c537f44da8185af54dbb44a38 SHA512 d143489c165ef5e68810bb10d5e97da7ad3be6d53618380231706ec16c3fd8bc3eedbc78a09949479a408646e32aae4cdceaca9b271ba3b816e3449b792c5406 WHIRLPOOL 649d34b60afab816dac559989c9a3b0cb9620c2ac2a7617cfcae8bcc2c421791fa612571f83e6611ec8ab8c26c9c79f9832f4e6a70396497dfc5a40d99bbbef9
AUX gitlab-workhorse-0.8.2.init 681 SHA256 bf3f94853781251629daae935d04294febf317061536624e2c01188dd6688ae7 SHA512 6275abe0910e7327f952dba36827a9083264f76753605767cc11ee7b162fdecef3170783800263bf8acbe891d41e6be9e27b5fcca2a4f035b990c9865aa02647 WHIRLPOOL bc983d0413c0743ef0843a3abb46ee2be78ac6e18b56f96de63b4ea8cb9242f8ef6a96f2d593dbcda33a0a60b7f941f27bd704b7f64a85db7379ef0b42233527
DIST gitlab-workhorse-1.2.1.tar.bz2 381033 SHA256 b9e0bf7c2b3ad1378c59def86d59726e988ee31db94b96d3e907aeae402ce1bd SHA512 de50574b39f84ea980c64cf54e7e0aa5bc94ed933bcb550f5712d07a8d60e4843fcf97993e285bd67361f931dd9a63f5cbde98a96478444b8381f23491635493 WHIRLPOOL 7cea252ada82a4d7281bbdd002fffbc3bebbcffe20748b8e4b8e4e8aa6fcee852bc18076c9ea4761849e24b5291b4552ef3e8ea812f1156ab980f476ded59b7a
DIST gitlab-workhorse-1.3.0.tar.bz2 384385 SHA256 b0acbd61a7ccf37512b569dc50625ff89dec9e181f8d5ed0b6115c81ef611032 SHA512 e2ea0183666e48795d97f19117995ce0191ce6d3a3810ceabb9c365b359839d8603b65608d754fd54b41a50fa2375eb64312203d58988aabfe81026f520d2f8f WHIRLPOOL 35e8eee022fc12e7d281656cdb65f35b23eb45fff739bd6fad05e594be56578043445cd6c5fd0ac3d3b097a4d0215a19cff0cc54c2d0d5dbec6dc5df3398fdaf
DIST gitlab-workhorse-1.4.1.tar.bz2 624717 SHA256 fb15cfd4cc2215b1a1f67f31f091a0d56c61951cf63f99dadcc5dd8c4b50b121 SHA512 2c70e08abff111f9614c0f6b64ac4b189a3b259c429f9e64dacce48bede3ae5241f44361d753787c7b11c6ee0819790843e7db0da2f0680229ee910e5e6d9c55 WHIRLPOOL f4b4a82823a061918bdea2ffac54491c40b4975fbe67dca1581bfe3790a8fbc825a8a2d8900d8aab242be6c8a720af2aea7e82aff3b97f66e7ab792496984955
EBUILD gitlab-workhorse-1.2.1.ebuild 950 SHA256 7a3dd2657fb3a3224d57170d4ac416f1d5b74512b9ca84ff0f1d73dc07929994 SHA512 3002655f560b8d15d5cb32e0cf0ba96ae404c160649d9c41deb76e094a21b9e302701a627b26651ef8368374510ddcf416df4079fb034a72c298a0c8ba59317a WHIRLPOOL d75356d647620369083b579d3246f23a97a37490759fc84ea10dfe93636330c77d1a4832151d56d677b05fe8a026dcb9e44686c9c042db66cacf9191c644af2b
EBUILD gitlab-workhorse-1.3.0.ebuild 950 SHA256 3b6ac03d566350a703e5822dab7dcbf8348b355abc9fd093db460ae58a442349 SHA512 065b393b1ad002b69ed5641016f92971fd57dc6ebf5c8619b59fcb9948ab8ea8b6c42eb211a12d1dda4b84a700134d5b582abb72c3450a07effe6e5e735c537e WHIRLPOOL 4d99f80727a225ee8164be6f9df1fbdd80d88ac407d12bd65d0463735f36fec713a1aacfdde14190b3a3510d4bdffad8409467a6b12112f71a26d43c8ab71a52
EBUILD gitlab-workhorse-1.4.1.ebuild 950 SHA256 04edb77a3bdb3d621c791420bdaec7a86b4a7cabe0f62be5dcae654ddce0c937 SHA512 6c5288f6dc7a40e48ab03e676cb2556cc0e292e151e31a79d1f9383985f6651f0d7a8cef8f27543547aaa1222f927f3ae4d5e37515310ccdef5f08b681fe4173 WHIRLPOOL abe0f660ead583934ee0c10c7ea29e31a2fb9e968148ddfaa95bd89faaf698e9f7e4bee3f81a2098a16b940175a706c203b3340ca1becb81b38f05a791c796cd
MISC ChangeLog 5900 SHA256 49d961a01451aab8f4f957321ea72fc355e21015f1ed33e2187aad0e5bbf03c3 SHA512 5e33d882093a5cefda6b73de1aeb95ceaa834b1a7bd630d6550c67155eae97034bf5c069141c1b06c0ac63327f4cbc880b34d2c7366e5ccf7d8ca3e5e04c75a8 WHIRLPOOL 606ee7ded79b722b72aace9e789f7eeedc3bf2ed7abcc187590c0c97993dd47f868928334ae16b0a9452fc4b489ee9058ff6f3e012bd859987fd9e07e1d2ed65
MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1

View file

@ -1,12 +0,0 @@
diff --git a/Makefile b/Makefile
index 3f6ac91..663ffbb 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-PREFIX=/usr/local
-VERSION=$(shell git describe)-$(shell date -u +%Y%m%d.%H%M%S)
+PREFIX=${DESTDIR}/usr
+VERSION=v1.2.1-$(shell date -u +%Y%m%d.%H%M%S)
BUILD_DIR = $(shell pwd)
export GOPATH=${BUILD_DIR}/_build
export GO15VENDOREXPERIMENT=1

View file

@ -1,12 +0,0 @@
diff --git a/Makefile b/Makefile
index 3f6ac91..663ffbb 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
-PREFIX=/usr/local
-VERSION=$(shell git describe)-$(shell date -u +%Y%m%d.%H%M%S)
+PREFIX=${DESTDIR}/usr
+VERSION=v1.3.0-$(shell date -u +%Y%m%d.%H%M%S)
BUILD_DIR = $(shell pwd)
export GOPATH=${BUILD_DIR}/_build
export GO15VENDOREXPERIMENT=1

1
profiles/updates/2Q-2017 Normal file
View file

@ -0,0 +1 @@
move dev-vcs/gitlab-workhorse www-servers/gitlab-workhorse

View file

@ -1,3 +1,32 @@
*gitlab-ce-9.0.7 (25 May 2017)
25 May 2017; Manuel Friedli <manuel@fritteli.ch> +gitlab-ce-9.0.7.ebuild:
www-apps/gitlab-ce: added ebuild for Gitlab CE 9.0.7
*gitlab-ce-9.0.2 (30 Mar 2017)
30 Mar 2017; Manuel Friedli <manuel@fritteli.ch> +gitlab-ce-9.0.2.ebuild:
www-apps/gitlab-ce: added ebuild for Gitlab CE 9.0.2
30 Mar 2017; Manuel Friedli <manuel@fritteli.ch> gitlab-ce-9999.ebuild:
www-apps/gitlab-ce: brought the ebuild for the GIT version (9999) up to speed
in terms of dependencies.
*gitlab-ce-9.0.1-r1 (30 Mar 2017)
30 Mar 2017; Manuel Friedli <manuel@fritteli.ch> +gitlab-ce-9.0.1-r1.ebuild,
-gitlab-ce-9.0.0.ebuild, -gitlab-ce-9.0.1.ebuild, gitlab-ce-9999.ebuild:
www-apps/gitlab-ce: updated dependency on Ruby to ruby-2.3 for Gitlab CE >=9;
removed ebuild for version 9.0.0, as version 9.0.1 is out.
*gitlab-ce-9.0.1 (29 Mar 2017)
29 Mar 2017; Manuel Friedli <manuel@fritteli.ch> +gitlab-ce-9.0.1.ebuild,
metadata.xml:
www-apps/gitlab-ce: Added ebuild for Gitlab CE 9.0.1; this is the first one
with the gitaly USE flag; though that is not supported yet, it must therefore
be disabled at the moment.
28 Mar 2017; Manuel Friedli <manuel@fritteli.ch> gitlab-ce-9.0.0.ebuild,
gitlab-ce-9999.ebuild:
www-apps/gitlab-ce: Moved warning about MySQL migrations to the postinst

View file

@ -3,6 +3,7 @@ AUX 02-gitlab-ce-8.11.0-fix-redis-config-path.patch 423 SHA256 4878d37082c7e5c0a
AUX 02-gitlab-ce-9.0.0-fix-redis-config-path.patch 423 SHA256 9de3711c1f06a0561001166f2a44b4c1dc5fa3fa57a5230eb1dcc2b5d394449c SHA512 ae89fa3c6fde777e844e777862415450787ebf83653435cea329d66810c5805d2126d41cb1ce40b15c42371543bc182a59305b8b1b6a7433121340a625300370 WHIRLPOOL d97962907bb1fc610ebc52665a6ce51f40ee932e7ac715279f3c0554f2880a7b220ecbac2c4c97bd4d3dac22b9a025aa729805221ed5e6d15f04f6cd8e210d22
AUX 03-gitlab-ce-8.14.0-database.yml.patch 2172 SHA256 8435bf632aab03057342d5d6d75f016b006da00157c0cce2661416b752f8b75d SHA512 048aa5877ef30e702727b917cf7fb6bd534c497a7c24ab55640635598af293b0567bb9f356c4b91d55291341ced50847909f117f46d3fc9962c2f7a0f7b6bfb9 WHIRLPOOL 87b62f5e326211c2ff9001742a04b71bd94b21f4851778a513f7e1981da193dc16718559be42a0ba21aaa0c2f5b65a2571bc20174c063aa13e6436f0b422f057
AUX 03-gitlab-ce-8.17.0-database.yml.patch 2238 SHA256 c5ec9e8a11fb60a7749b9f8cf553949e78aacf9a8233b39c4986980851196c8e SHA512 1668e2c1d00ef485d2bc5af8d343c9be19f291a627d0041d42b268ec1ad8aedecba99336998e6b1b3ac2f4cd617556d17ab5f1f11f95d696205e3d10d6b74e1c WHIRLPOOL c91a6604f050113c9f584d7bf34ebe660263beb88879382873952d6b1b136ad5b576b813bf9f2f66ee49d6656fb1d24437dca395c2574bd7dab07cd1a3a36a99
AUX 03-gitlab-ce-9.2.2-database.yml.patch 2342 SHA256 870cddca799897d249773d0b0e58d30b1290475e3c313faa6bbc307c73f80d4b SHA512 257ff2cf3bd090dd08a8f03baa6c06d130313bf46b21ac61a606aaa0f0cf1eaacd3ad231761989448e4dc28aeda01b03192290314582db002c32c65eed4134aa WHIRLPOOL 94d95a9e6d15d48c6e786521b04eb43b12a003feae0a464122f51cdf2a5215b2c025134373842a6633d0adf73ceea1db9fb32e36236391bdf9e750565f908591
AUX 04-gitlab-ce-8.12.7-fix-check-task.patch 917 SHA256 e1adffbd59a418d5e14cbd51ae14d5c1f0364af759c77b6cb485079e0233e90f SHA512 226c3892768dc526dbc9f109aaecdee1eb27c0acb5060ba6db8222410c500336ebcf7184437228480da04ce5de149a14bbb5c1471aed853a280d7f371f271d88 WHIRLPOOL 3ec22dc4d12b5025bddfccdea27a816aca1f818d5138b3dc9a6362e56ec4cd14e5c38c76b64b468f3797e0d2718d38aad4f910abf3f3328a7983832babb7f231
AUX 05-gitlab-ce-8.12.7-replace-sys-filesystem.patch 2387 SHA256 dd0e9987ed4bb3a9c73c6aee1d89434afc51ff663fef2ee4ac93adf1b73b944a SHA512 afa82fb8c8d57633c99373f31678760fa6ecca5e459a9059f5b460b458d1dbf3230108a6b4f394780c26a697881c9b2319f15804cb8d04ad3139127e7c0f4ff8 WHIRLPOOL 90ce708f8cde0a4bcaef9fc002ca00b97a1211559bcabf5481ec71c608bc5b772ecd518ff07a8d626a27e4b21c0f0f51fa37a65503e79664ececd78d5f19e87b
AUX 05-gitlab-ce-8.16.0-replace-sys-filesystem.patch 2379 SHA256 cf5e0ea55c99996744422312a46914a8e54b6ab68ac5e67abda444e1170bcd4b SHA512 eb5ea3a9f040c3df64bd8ebb20ed873fb6af17322867c0f5714e3d9ad5ac26b79e9ffaaa4720617513123b651ceccedeb992b64c87b9b945338614c9eeec1468 WHIRLPOOL 2591c1d439447f3e08fe413ab8127b9945f8e4813480093af1da796675903bbb2b8a2205bd1480d383402ef861c348cfa0bd45305e7c1fa20458bfd6b6b327a5
@ -18,13 +19,21 @@ AUX gitlab.conf 27 SHA256 cd9be088bbb67a5400407fc6f63c061eb224f16748b7d0812ff2c1
DIST gitlab-ce-8.15.8.tar.gz 20035995 SHA256 9fafd6478a6d165ab6acd6f89f169fe72d46df547efe1bf3ac8d3a5bc4ffec11 SHA512 db287ea59d94eacd3c1219f458a403239f7aa39bea0d5e82fac80afc7216b96ac394740ab717c3ed26068617e1234105144820e41b0825511e1adc29e8891bfb WHIRLPOOL b03faf4b30b5c82535c0e148edec7fb5ff26405cfa8587b4bd287e834bb5f3eb6ddabd0b5f1472672b4108bdcb6066d63eb1a117e35fedf2c94d63348186afd6
DIST gitlab-ce-8.16.8.tar.gz 20907499 SHA256 b6ca6aebb5facb7b0bf792ac36fa6643098ddcbfd5364bf966311b48a2a0e68e SHA512 a5b77e39133078bc98a5c2d0b463e31c99eaaa44c28c70921546a8dfd45e24ff64bc310f8d067c40b609c3b19d13761afbc6068866e00297cb14b0e343b1a00c WHIRLPOOL 150c5b396703007e3b91f73407f5558045dcf4be74c2a12850e65bb7b5280582a8907312f5c09febb17649f98dbe40dd18968e69ef66d6026d3f69b79e6515c0
DIST gitlab-ce-8.17.4.tar.gz 22825573 SHA256 daa0d5d75295a896f7aa230bd965e12e8525a52c96ec0456ee405d083180e091 SHA512 4d9244c2575e8c4e26515ef55e478b459b24f3d53426a8d2e7cd253a879c9ae2a770e92e0e4a74cc88242b5b3ec81f6081c789426553ee9c8ff161abd138fb45 WHIRLPOOL a3131dc319b4aaa98c81c2c5104672363f16fb393ee0f21e8be670c9df6788c383f5fba8459352a37b49467f42307a1be291eff5b9d550390df04d9004514986
DIST gitlab-ce-9.0.0.tar.gz 26260333 SHA256 73012a8d31b2d92a49f0957c78525069e11d5d7bf19ca67bcbabd44b37c8c36a SHA512 b8a48bf538691d0bb1b636f4be6b71010583b4784093ec5f5b3196bebeefd9e7fcfc05cfd48523eb2139ff9e0bd458e20e8174d8c8892cb510d55c2fb154ee32 WHIRLPOOL 5d10e6fed7a9de5db7513afaf29940cadf41a37397249a78b2f3dc0aadde25f73e9f4eb3d18f913c8ad13cbdfecec811cf2246c2ef377017dfe3f021b09a2125
DIST gitlab-ce-9.0.0_rc4.tar.gz 26270878 SHA256 f47ddcf6f4f0336228dd1ef03085c9ea6116157887e8216038d23b69cf7a4d89 SHA512 f4694ebf4ffe38e6c5495f3658eb8003d28b3ac5d67f4533ddc1932afca412a40ea786cd8d99e2891fdf9bacd7b198b29493b97d6d02455d4f4139d4e60a0d63 WHIRLPOOL 81f47820043445e9ff69ae0ad3bcd1e094ab1e3527eec279096ae16a767cec5451b2d94af4dd87cd2939eb2e64368a1a0e543ce40e0e9fd5a716eeef04741c54
EBUILD gitlab-ce-8.15.8.ebuild 11982 SHA256 755bfd6fa532a308d3f458db1456f8de4f2c5f599ab76c18653aad9e038d0697 SHA512 9aa439da7dc61687f1cdce5ff693dd1c8c4edc54aaed288ad0368aa1b64d577a7f3752dee149c200c4d98b43a6347c77251cac9f6d3316b5a6d799a17c3ed583 WHIRLPOOL 02393bfd983341632663096e8b293e3611ac5328a58a50a1c7e800e348e866f37aff53ebe447507a84d5966e019265fde94a30716f43b50228437e04abcd932c
EBUILD gitlab-ce-8.16.8.ebuild 11982 SHA256 31537d4a6aeb9ff14ab14c9a27dca51a056e94ee75506ad855a1289f32468694 SHA512 01d536fcfb53a7b39943314a34eeeb9c5b5660604a2fb1a1c2dcd1d7e87d19ab0bbc5bc650feaa1db812047c3783a324d7c8a8bce7dd7381033c3d1ca2e64828 WHIRLPOOL 0f3402e30164ee6d5058c51554cc916d91d5975f438074e3193bf3bdb4e323bca4279c19f00cd7bacd01c2eb6cf13e41a0badabd958e9be58d319224f53403b0
EBUILD gitlab-ce-8.17.4.ebuild 12928 SHA256 f748d42058293ba4f593fbb36be34ecde332d896d04c610fd3b7e91288c18fbb SHA512 3c2736f9b7df066bb105faffef6ce2b6276fe60a686a7462c630a1b7c7c0296d94e33c7ea25a9f24aa814628f318e2430a3e5ca149783c86ef3fb1132dd01877 WHIRLPOOL cd629ba993df3eaef9c9ec1bf1649aa4cfea5f3787d2207a7016c092bff67175d79c6782d643d4c80b3b5971a98858feaa279a184abc4fd936c7e5c8b291dd28
EBUILD gitlab-ce-9.0.0.ebuild 13008 SHA256 3b390e22aa0eda10dafe4c37cc4ccb2ff7e9b4cbbeeba6a64df7255e3440daf6 SHA512 d9f659414d380af24f4fb871f3c50062056b2aebef8f8fae7203b49a9102e55acc6c4be0840575de0953317d3a4fe6b4a4603121072b59cb0459927236cd9434 WHIRLPOOL 667ac5e2ba8ac7406dbd30e84ae13370eb3b55855e0319073d9295b9d8fbaa5f1e4f47b8ed2603394d77744d797512c653894c55a55ae676b87938d122fcdb5a
EBUILD gitlab-ce-9.0.0_rc4.ebuild 12910 SHA256 8851160b4454845fb33ce0b9a9dd3e070bed07d3a0e5c5f753c77b0ef301ded0 SHA512 9d109a3ea8fa7a7bb33440b4b21bf988745c4eefb62b834ad88825f3ffa28881eceaf402ec09241b74d91e778258c1a18daae6c86254625af4f54bf6189b32f2 WHIRLPOOL 67aa480b4cf1209a3d7af3bffb1f7f774bf2c6d18bf40960478e13459813ebb9472adc5aec3b84252157b0c3e74f9e7f74cb0d57395983c02ba4c976ffae106f
EBUILD gitlab-ce-9999.ebuild 12949 SHA256 29d8125cbb7bd6d80623f54e1de2c18f7fde2301f5b94238853e2d717f920ad8 SHA512 c537716f9288e09c79508db89d21641424e36f491914aef8102734e8edd12a239f0b839d1ecfdaaf28b6bd19dd324479da3478db74611f97d875b6d5156cbac9 WHIRLPOOL 0a8403ad5f4284e5ec742eec5b6b83124f4a218adacee63cd413e3889934d1511f229d42502d50977cb2b9881f86c0e73e57c4a5421b119c5c44f56f9f8f3a92
MISC ChangeLog 16689 SHA256 2d5d8b27ed34fa65b56108d2376b4bab7bf363831ade050675139e59b3b41652 SHA512 c2e27a088aa56a1a0cd0697449676b265eb43cd6b914c01913bc747384aa7dfa4ef90499333e257282d8c500cd1fc7e9bcfe85aed381dda315db17fe849f52b2 WHIRLPOOL 80c5160dc809f4f71a9c8c09a34ab5e69947889afce6d965969309b1a5e14de935521f4e277dfcc4e5c7a7abf37793d365ba537e9cc699f94152c5801f928dbf
MISC metadata.xml 665 SHA256 2a0cd67ad42f0cc6d8b88391cf6e3153a9883dab31aae8227c57c95f3f68890d SHA512 64b8fbae373d0a057f705f64c1d097dbfab893bd585e1db65ccdb06cda9569211c9b63fa168ac8de9f6d512a17759ecd20b54d818d2790a6f4c99d0ca73fddc3 WHIRLPOOL a81b21bb46aad9757a502628033eba546c686b83bbf1d651ecabba273c454cfb64574affc180db8358ced87eb638e8ad13d7c79c4cfb9a31e72c577d21ab433e
DIST gitlab-ce-9.0.1.tar.gz 26350693 SHA256 94549d69650383347256b9f3f0c11f200e0e4f29118a54a99e137d895db083ed SHA512 b7eed360beab1459da5c56b911e527335f2ec7bf595649c8d0327255488d765971a612987d7b3d10f2b017bf93adfb52f739a20c6d3e251552d82f04ddcf1bea WHIRLPOOL e061946cf9831daa61809b14d71e907717e0840cc8263b5461813795871cd2bd479ddff0d3c4afeda06edfca9f819c333e0be1a0961a1dbf9c86c9d8e0315ee1
DIST gitlab-ce-9.0.2.tar.gz 26349628 SHA256 2b8913a1ed5f49c59314ce1aa5874d917d38c3c663a981aac3374ced8a123629 SHA512 563450eb22dc2eb7d8aec52b7fb2ec58339bf59f0b46e59fa2a98ff8e2634d95948b9872afc1e64bff840985ed15b8efd588661f075c27cdb984c125ea41624e WHIRLPOOL 3660dde5cadb279f48d2c43e4fb3ba47b7d7a07c38e25940d55b8cb8bf4d750ca97088db73d1f808b3ff5ef8b3867d45ec0289e1ff1e0c5e362994ed38fc9eb9
DIST gitlab-ce-9.0.7.tar.gz 26358937 SHA256 e70d1f3926f3b7e872353da2d21a7a6b44ed51a3b145e237f4768f8190eaeb08 SHA512 c3f28ef81eb546727f895d92a120e1e459b8eceb1c1068888ec9972444355c02d441bd8d85c360e684f0389b0c6f2ffae57a69a220639fa9ffe7f8c63730daad WHIRLPOOL 04380783f5074fcfe905b129e6e457da44e9dbd1d6d43d70309ea0f55fa8f916af28f52460dc68b1b588feb8d99b8ba543e52bffdee93f3115efa3473c8728ce
DIST gitlab-ce-9.1.4.tar.gz 30512187 SHA256 36e5e41c89e215ec4b25c4129a9a47878b1e4e6104c54b0cdf8981d3f39f070a SHA512 d29f2d805c14cc98f0851c4877e91ab6785bbe487341b2bf3392ee293bc683bf00dd455e400d2c3a27b8dc0a6ffa020768cbd11ec9ee029b5f0f2ccfcbfb3a4e WHIRLPOOL a05f4c66c20df274d42ea3c76491fd7ba28561ffe4f7fc97c542bd79c54bbea09646be3f7a8d5b896023e6cd1e4e13ad40915f58e91519e04dedc8939f2a405e
DIST gitlab-ce-9.2.2.tar.gz 30969181 SHA256 6d8a1ab6c808c53bccc2c3f3b4dc052cf9e8e7d1a47d5c83ef799afad5304815 SHA512 c047d8f471e360abe913bccde07a8604153dbe064df69a5797ab5f82f4aa7f7191f5ba26444d846364518a8575a48c5be6111df4516f961b714257d58c5ca730 WHIRLPOOL 246b24d44b8654ff9ad1750c930f8a885c0db1c579b28944e71f6aa9c081b940b8f3fa418d0bb7c42fcf517b1837e4782ea5388000be262d29aa703b086316c2
EBUILD gitlab-ce-8.15.8.ebuild 11986 SHA256 6c86e66d4b568b88dd44ec52401e25c33b2d5e61d9a76e77180320d40ef57132 SHA512 91e1dc1cd8b9b77ea039e7e194b06c44900511b9e7787a714faec14746f96da6d00aa66bd16763732c468d8a46815e29fe761349a0a0d712db21bd4a12d31e06 WHIRLPOOL 50923df1fdda85abf7c7984a49d73d6486628439612de18ec3914274f3a053ce98ffbffec0f6ca9f2f9ba1ca9491467de0762d2d4a31ea480f32eb68222c79f9
EBUILD gitlab-ce-8.16.8.ebuild 11986 SHA256 0d5bdaf00e45fd5f48af3873cf4c9782d038338e8aa0e3a5a6fdb00ae868f771 SHA512 973a44e9d631203bf33596cfd5be1c999bbbff1ce25ff0cddd2707e59c9d98321c5efe0bbc2d62995b7b4f32c7a75b43f4bb4b3cfb10e25a64eaef5319b8ddf2 WHIRLPOOL 367b66c83a8a9356d5b76a2a03f1bd8e38714f8d7c4228d9b2f019f6ec63bff66be93c2ce657c43ae970bc693ed94fdd5b2e32488222dcae0cacbfcc15b3cb1b
EBUILD gitlab-ce-8.17.4.ebuild 12932 SHA256 17cb7cc858d71085d69e6ccca5b3802244e4db92bb5092e0717b53f21564e50b SHA512 3ee082772b29b6efbd90870bf92bdf9bd2ca8821bdba724574a2c58b39e5acbc5fa8bfa4463c1ab350f5633c8f821f2f7a90952b765aacf7ff381bb7ce77b9b7 WHIRLPOOL dded31fed93b7c2a553a6a8cc07a883302a76df85d804b03ae6dfce6be447b090c54f639d9894c6d56819c409b32a8ccd1280a054ec48120b2eb58ea0890c731
EBUILD gitlab-ce-9.0.0_rc4.ebuild 12914 SHA256 72a4b8dfc10acbef389c4af00dcdc8012fe7a5607f526e04e33e1625447302bf SHA512 d7888cd9a460c5d334309799b2d036678f0efca8acd516d968089331f51d8d5e812edc4b8c597ef6950f298586ec54fac698901c66b6ddba0207cc9e8010147c WHIRLPOOL 177ad04e770355f9cba863a6f6f4012f9d16e96aefc7148ae1bf9b2994691a49ef593122d7fbc8b937f207ea31d9b67d965b651d4267ca1df9f25a9c136c372b
EBUILD gitlab-ce-9.0.1-r1.ebuild 13087 SHA256 4dda1de15a8fb05d2fc5b97a99113fe93bb1feddbe46dc97ef3c945aa1715841 SHA512 1f44da05e954cbe8e50acc217e4c6f098f5e7aa5e31f0faf97e48df800e5b6d560b7911aaf0bf0e86bb1f267d7674895f93d908f2e9f4544fadab32d5d2b7e23 WHIRLPOOL b02d9d5d48a695e25fc6d422c49436b191a57807da5eb36ccff78287e4f38175d6958e9ae8a965433d42d26b84607beb833db79822068a4dd0a0d9bb4b60d463
EBUILD gitlab-ce-9.0.2.ebuild 13087 SHA256 f8705f07c62a4988b10b1c83ddb743032d1838f24b562a0f69df72ba690ed1f3 SHA512 c0cf1b1228e5499c7643811f80db010dce67d20da5aefd6a40ef2a537bb4ed7b589e8f878307a06ec1fb8d053a3e2ea00a97c66a7edb6e4845f92b493fad9b82 WHIRLPOOL 2df17352ea8ea15fbb74a10b1941b369d642f65453d10599d599925cc46d5f71e9a6149dc56acf15a501750228dc1eecceeb19d72890f3835a514c891f84dcc6
EBUILD gitlab-ce-9.0.7.ebuild 13087 SHA256 68f0d2d7c8cde9b07bb280bb2f6b6d3fea4de6791571f27aaf619853940d2d30 SHA512 21545e878a2f60d082b132256fb09c72a5cc1d252115f448770432fd98becc5aeef42281f00fa55642a1a0866f41f107903b33160e52c61bc4c6d7811f5a06fe WHIRLPOOL 6ad81da17812721b94e8fcfc2328a24355a1f777d067ff2f557f0928ea2f4af55f0edb8587b8fe004f5481254cd72a520a7a77a6a601afc12315d8d37773f5c8
EBUILD gitlab-ce-9.1.4-r1.ebuild 13243 SHA256 ab673fa216da6c964b7c1a49bdc4b0225f437f0e9635022c165694ef9cdb3be3 SHA512 c664cca08eb02d069878dc0d9bb03a6470164cb85e6f0f47bde566eba1ee3c829d255851f4703016415b311595257d8b4da7e22eee2a96b33a7436a8a55776d8 WHIRLPOOL a564ed0ef3c3faba21bdbe29dd7e6a0a13384a26de1addf2292e7c9069b8c19c2e573d8940603f598088b5ea44d4af38b0e9527dcfdbfb0c575dfc5919487e1b
EBUILD gitlab-ce-9.2.2.ebuild 12988 SHA256 a1ec15fafbe7031dbb71859497f3d334d9b062d75126b4ff5e6ab4f911e816ef SHA512 ac3fb3d10dc34f07d43a700e9dc4453138e11284d5f26a93e0e1cc59160faca75fa979390f9ac293538172c97523a8fe6f99812084bc94ac5181a17fd9110483 WHIRLPOOL e1a8afacad18607af2cc2a1abf9222657d85b3694a37280c05904ded91226fdcba3c7df6a705dde8ace85bebfd6dc8e07e547469dc6616c94e12b5d21d4efb9e
EBUILD gitlab-ce-9999.ebuild 13029 SHA256 b4a010ff86baa4f2a7cf1349e74f49e763b88bb675f01acdbaf16c204597859d SHA512 6cdfdbf27a3ccec276ce06c25dc5a76cba6fb25f807650f5e2e5ed600fd03e487a60de3481719c53fffb43d3f7d2a0e8258a41dd0e461be1e82252eb59105372 WHIRLPOOL 0994bab6308ac1c466e17d53b7057f51e472b4b5cc0ca1d91b11217d0caf9448d3a69d769732c2acb4194f3eb5a94b8bb3c98441ec99ca94066900c7fe5e85ac
MISC ChangeLog 17848 SHA256 d57ce2fbafb6a62a30a4bf02feff9c37f33b94f8158f6b50c87053d8422307b2 SHA512 3b83ca4c32949ff08d1d59131388f3f59497c7831c5b09d1fd10a36445f1c383dbf04e91ddeff6c9b6c5131578450afb354b03819ddba80f7249b0ddd0b4f2e9 WHIRLPOOL d5ab8749e2c7d6a18adf2d63a7c7a69b40d93357d3e5714f131ec7cacca6008ca41f23a2c2bb8ece1ba10aaebf47b5f1363a2c4a29bbbe45672d06904e82f614
MISC metadata.xml 801 SHA256 3dc7486a12903f47f65968d524c93500ba30a4a09fa57e5a9dacf356509b44bb SHA512 e132754b72e64246531fa883400a0cf1a473ac5a6a49623db58ccf118a038b7cf37df03d9550f37b4a25f9ddbb1dcc5652ec9a4f2259d8e3ce202692c4025f41 WHIRLPOOL e9d961681fd790008eaf80fa07ce2c55a00a58f2e920d759793783ca8c8f508602a777e94c0cb65fe87c7dbef0cabdf26e4f4082584421097d939cbab20c4ac6

View file

@ -0,0 +1,102 @@
diff --git a/config/database.yml.mysql b/config/database.yml.mysql
index db1b712..a3b5ecc 100644
--- a/config/database.yml.mysql
+++ b/config/database.yml.mysql
@@ -3,42 +3,12 @@
#
production:
adapter: mysql2
- encoding: utf8
- collation: utf8_general_ci
+ encoding: utf8mb4
+ collation: utf8mb4_general_ci
reconnect: false
- database: gitlabhq_production
+ database: gitlab
pool: 10
username: git
password: "secure password"
# host: localhost
- # socket: /tmp/mysql.sock
-
-#
-# Development specific
-#
-development:
- adapter: mysql2
- encoding: utf8
- collation: utf8_general_ci
- reconnect: false
- database: gitlabhq_development
- pool: 5
- username: root
- password: "secure password"
- # host: localhost
- # socket: /tmp/mysql.sock
-
-# Warning: The database defined as "test" will be erased and
-# re-generated from your development database when you run "rake".
-# Do not set this db to the same as development or production.
-test: &test
- adapter: mysql2
- encoding: utf8mb4
- collation: utf8mb4_general_ci
- reconnect: false
- database: gitlabhq_test
- pool: 5
- username: root
- password:
- # host: localhost
- # socket: /tmp/mysql.sock
+ # socket: /run/mysqld/mysqld.sock
diff --git a/config/database.yml.postgresql b/config/database.yml.postgresql
index c517a4c..28f7993 100644
--- a/config/database.yml.postgresql
+++ b/config/database.yml.postgresql
@@ -4,45 +4,9 @@
production:
adapter: postgresql
encoding: unicode
- database: gitlabhq_production
+ database: gitlab
pool: 10
# username: git
# password:
# host: localhost
# port: 5432
-
-#
-# Development specific
-#
-development:
- adapter: postgresql
- encoding: unicode
- database: gitlabhq_development
- pool: 5
- username: postgres
- password:
- # host: localhost
-
-#
-# Staging specific
-#
-staging:
- adapter: postgresql
- encoding: unicode
- database: gitlabhq_staging
- pool: 5
- username: postgres
- password:
- # host: localhost
-
-# Warning: The database defined as "test" will be erased and
-# re-generated from your development database when you run "rake".
-# Do not set this db to the same as development or production.
-test: &test
- adapter: postgresql
- encoding: unicode
- database: gitlabhq_test
- pool: 5
- username: postgres
- password:
- # host: localhost

View file

@ -56,7 +56,7 @@ COMMON_DEPEND="
${GEMS_DEPEND}
~dev-vcs/gitlab-shell-4.1.1
>=dev-vcs/git-2.8.4
~dev-vcs/gitlab-workhorse-1.2.1
~www-servers/gitlab-workhorse-1.2.1
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )"
DEPEND="

View file

@ -56,7 +56,7 @@ COMMON_DEPEND="
${GEMS_DEPEND}
~dev-vcs/gitlab-shell-4.1.1
>=dev-vcs/git-2.8.4
~dev-vcs/gitlab-workhorse-1.3.0
~www-servers/gitlab-workhorse-1.3.0
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )"
DEPEND="

View file

@ -60,7 +60,7 @@ COMMON_DEPEND="
${GEMS_DEPEND}
~dev-vcs/gitlab-shell-${GITLAB_SHELL_VERSION}
>=dev-vcs/git-2.8.4
~dev-vcs/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
~www-servers/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
>=net-libs/nodejs-4.3.0
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )

View file

@ -61,7 +61,7 @@ COMMON_DEPEND="
${GEMS_DEPEND}
~dev-vcs/gitlab-shell-${GITLAB_SHELL_VERSION}
>=dev-vcs/git-2.8.4
~dev-vcs/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
~www-servers/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )"

View file

@ -11,16 +11,17 @@ EAPI="5"
# difficult to maintain them via ebuilds.
#
USE_RUBY="ruby21 ruby23"
USE_RUBY="ruby23"
inherit eutils ruby-ng user systemd
MY_PV="v${PV/_/-}"
MY_GIT_COMMIT="cf020e66dff606f6ea2d2dbaeb7bef43d446c536"
MY_GIT_COMMIT="0fa55cc3027beea8c670bfa44c82cbb1ef9d52fc"
GITALY_VERSION="0.3.0"
GITLAB_PAGES_VERSION="0.4.0"
GITLAB_SHELL_VERSION="5.0.0"
GITLAB_WORKHORSE_VERSION="1.4.1"
GITLAB_WORKHORSE_VERSION="1.4.2"
DESCRIPTION="GitLab is a free project and repository management application"
HOMEPAGE="https://about.gitlab.com/"
@ -32,7 +33,7 @@ RESTRICT="mirror"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm64"
IUSE="kerberos mysql +postgres +unicorn systemd pages rugged_use_system_libraries"
IUSE="kerberos mysql +postgres +unicorn systemd pages -gitaly rugged_use_system_libraries"
## Gems dependencies:
# charlock_holmes dev-libs/icu
@ -61,10 +62,11 @@ COMMON_DEPEND="
${GEMS_DEPEND}
~dev-vcs/gitlab-shell-${GITLAB_SHELL_VERSION}
>=dev-vcs/git-2.8.4
~dev-vcs/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
~www-servers/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )"
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( ~www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"

View file

@ -0,0 +1,423 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
# 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="3e59fd2d9746e1ec666e1ea1228b47bba1c40f24"
GITALY_VERSION="0.3.0"
GITLAB_PAGES_VERSION="0.4.0"
GITLAB_SHELL_VERSION="5.0.0"
GITLAB_WORKHORSE_VERSION="1.4.2"
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 -gitaly 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-util/ragel
>=net-libs/nodejs-4.3.0
>=sys-apps/yarn-0.17.0
postgres? ( >=dev-db/postgresql-9.1:* )
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/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( ~www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"
RDEPEND="
${COMMON_DEPEND}
>=dev-db/redis-2.8
virtual/mta
systemd? ( sys-apps/systemd:0= )"
# required bundler >= 1.14.2
ruby_add_bdepend "
virtual/rubygems
>=dev-ruby/bundler-1.13.7"
#
# 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
#
RUBY_PATCHES=(
"01-${PN}-8.7.5-fix-sendmail-config.patch"
"02-${PN}-9.0.0-fix-redis-config-path.patch"
"03-${PN}-8.17.0-database.yml.patch"
"04-${PN}-8.12.7-fix-check-task.patch"
"05-${PN}-9.0.0-replace-sys-filesystem.patch"
"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
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/|" \
config/gitlab.yml.example || die "failed to filter gitlab.yml.example"
local run_path=/run/${MY_NAME}
sed -i -E \
-e "s|/home/git/gitlab/tmp/(pids\|sockets)|${run_path}|" \
-e "s|/home/git/gitlab/log|${LOGS_DIR}|" \
-e "s|/home/git/gitlab|${DEST_DIR}|" \
config/unicorn.rb.example || die "failed to filter unicorn.rb.example"
sed -i \
-e "s|/home/git/gitlab/tmp/sockets|${run_path}|" \
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}"/
# 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-8.13.3-sidekiq.init
use unicorn && rcscript=gitlab-8.13.3-unicorn.init
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|" \
-e "s|@GITLAB_BASE@|${dest}|" \
-e "s|@LOGS_DIR@|${logs}|" \
"${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 "PLEASE also read this document about needed migrations on MySQL:"
ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md"
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
## Initialize app ##
local RAILS_ENV="production"
local RUBY=${RUBY:-/usr/bin/ruby}
local BUNDLE="${RUBY} /usr/bin/bundle"
# FIXME: this line existed in older ebuilds, but the variable is
# never used. what was it for!?
# local dbname="$(ryaml ${CONF_DIR}/database.yml production database)"
if [ "${update}" = 'true' ]; then
einfo "Migrating database ..."
exec_rake db:migrate
# https://github.com/gitlabhq/gitlabhq/issues/5311#issuecomment-31656496
einfo "Migrating iids ..."
exec_rake migrate_iids
einfo "Installing npm modules ..."
exec_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 "Installing npm modules ..."
exec_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 $@"
}
exec_yarn() {
local command="yarn $@ --${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 yarn $@"
}

View file

@ -0,0 +1,423 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
# 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="810cc51be37e03ebbe99711a53663956e4ffde8c"
GITALY_VERSION="0.3.0"
GITLAB_PAGES_VERSION="0.4.0"
GITLAB_SHELL_VERSION="5.0.0"
GITLAB_WORKHORSE_VERSION="1.4.2"
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 -gitaly 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-util/ragel
>=net-libs/nodejs-4.3.0
>=sys-apps/yarn-0.17.0
postgres? ( >=dev-db/postgresql-9.1:* )
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/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( ~www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"
RDEPEND="
${COMMON_DEPEND}
>=dev-db/redis-2.8
virtual/mta
systemd? ( sys-apps/systemd:0= )"
# required bundler >= 1.14.2
ruby_add_bdepend "
virtual/rubygems
>=dev-ruby/bundler-1.13.7"
#
# 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
#
RUBY_PATCHES=(
"01-${PN}-8.7.5-fix-sendmail-config.patch"
"02-${PN}-9.0.0-fix-redis-config-path.patch"
"03-${PN}-8.17.0-database.yml.patch"
"04-${PN}-8.12.7-fix-check-task.patch"
"05-${PN}-9.0.0-replace-sys-filesystem.patch"
"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
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/|" \
config/gitlab.yml.example || die "failed to filter gitlab.yml.example"
local run_path=/run/${MY_NAME}
sed -i -E \
-e "s|/home/git/gitlab/tmp/(pids\|sockets)|${run_path}|" \
-e "s|/home/git/gitlab/log|${LOGS_DIR}|" \
-e "s|/home/git/gitlab|${DEST_DIR}|" \
config/unicorn.rb.example || die "failed to filter unicorn.rb.example"
sed -i \
-e "s|/home/git/gitlab/tmp/sockets|${run_path}|" \
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}"/
# 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-8.13.3-sidekiq.init
use unicorn && rcscript=gitlab-8.13.3-unicorn.init
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|" \
-e "s|@GITLAB_BASE@|${dest}|" \
-e "s|@LOGS_DIR@|${logs}|" \
"${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 "PLEASE also read this document about needed migrations on MySQL:"
ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md"
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
## Initialize app ##
local RAILS_ENV="production"
local RUBY=${RUBY:-/usr/bin/ruby}
local BUNDLE="${RUBY} /usr/bin/bundle"
# FIXME: this line existed in older ebuilds, but the variable is
# never used. what was it for!?
# local dbname="$(ryaml ${CONF_DIR}/database.yml production database)"
if [ "${update}" = 'true' ]; then
einfo "Migrating database ..."
exec_rake db:migrate
# https://github.com/gitlabhq/gitlabhq/issues/5311#issuecomment-31656496
einfo "Migrating iids ..."
exec_rake migrate_iids
einfo "Installing npm modules ..."
exec_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 "Installing npm modules ..."
exec_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 $@"
}
exec_yarn() {
local command="yarn $@ --${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 yarn $@"
}

View file

@ -0,0 +1,426 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
# 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="fed799ae87ba5a95cf46d8426e96ad621940d0a7"
# Gitaly is optional in Gitlab 9.1, and it is not yet supported by this
# ebuild. But the version declaration is already here.
GITALY_VERSION="0.6.0"
GITLAB_PAGES_VERSION="0.4.1"
GITLAB_SHELL_VERSION="5.0.2"
GITLAB_WORKHORSE_VERSION="1.4.3"
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 -gitaly 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-util/ragel
>=net-libs/nodejs-4.3.0
>=sys-apps/yarn-0.17.0
postgres? ( >=dev-db/postgresql-9.1:* )
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/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( ~www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"
RDEPEND="
${COMMON_DEPEND}
>=dev-db/redis-2.8
virtual/mta
systemd? ( sys-apps/systemd:0= )"
# required bundler >= 1.14.2
ruby_add_bdepend "
virtual/rubygems
>=dev-ruby/bundler-1.13.7"
#
# 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
#
RUBY_PATCHES=(
"01-${PN}-8.7.5-fix-sendmail-config.patch"
"02-${PN}-9.0.0-fix-redis-config-path.patch"
"03-${PN}-8.17.0-database.yml.patch"
"04-${PN}-8.12.7-fix-check-task.patch"
"05-${PN}-9.0.0-replace-sys-filesystem.patch"
"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
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/|" \
config/gitlab.yml.example || die "failed to filter gitlab.yml.example"
local run_path=/run/${MY_NAME}
sed -i -E \
-e "s|/home/git/gitlab/tmp/(pids\|sockets)|${run_path}|" \
-e "s|/home/git/gitlab/log|${LOGS_DIR}|" \
-e "s|/home/git/gitlab|${DEST_DIR}|" \
config/unicorn.rb.example || die "failed to filter unicorn.rb.example"
sed -i \
-e "s|/home/git/gitlab/tmp/sockets|${run_path}|" \
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-8.13.3-sidekiq.init
use unicorn && rcscript=gitlab-8.13.3-unicorn.init
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|" \
-e "s|@GITLAB_BASE@|${dest}|" \
-e "s|@LOGS_DIR@|${logs}|" \
"${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 "PLEASE also read this document about needed migrations on MySQL:"
ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md"
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
## Initialize app ##
local RAILS_ENV="production"
local RUBY=${RUBY:-/usr/bin/ruby}
local BUNDLE="${RUBY} /usr/bin/bundle"
# FIXME: this line existed in older ebuilds, but the variable is
# never used. what was it for!?
# local dbname="$(ryaml ${CONF_DIR}/database.yml production database)"
if [ "${update}" = 'true' ]; then
einfo "Migrating database ..."
exec_rake db:migrate
# https://github.com/gitlabhq/gitlabhq/issues/5311#issuecomment-31656496
einfo "Migrating iids ..."
exec_rake migrate_iids
einfo "Installing npm modules ..."
exec_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 "Installing npm modules ..."
exec_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 $@"
}
exec_yarn() {
local command="yarn $@ --${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 yarn $@"
}

View file

@ -0,0 +1,415 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="5"
# 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="cbde95c281af5cdd6b4dee3bdb1bdb360eb71d2c"
# Gitaly is optional in Gitlab 9.2, and it is not yet supported by this
# ebuild. But the version declaration is already here.
GITALY_VERSION="0.10.0"
GITLAB_PAGES_VERSION="0.4.2"
GITLAB_SHELL_VERSION="5.0.4"
GITLAB_WORKHORSE_VERSION="2.0.0"
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 -gitaly 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-util/ragel
>=net-libs/nodejs-4.3.0
>=sys-apps/yarn-0.17.0
postgres? ( >=dev-db/postgresql-9.1:* )
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/24 )
pages? ( ~www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( ~www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"
RDEPEND="
${COMMON_DEPEND}
>=dev-db/redis-2.8
virtual/mta
systemd? ( sys-apps/systemd:0= )"
# required bundler >= 1.14.2
ruby_add_bdepend "
virtual/rubygems
>=dev-ruby/bundler-1.13.7"
#
# 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
#
RUBY_PATCHES=(
"01-${PN}-8.7.5-fix-sendmail-config.patch"
"02-${PN}-9.0.0-fix-redis-config-path.patch"
"03-${PN}-9.2.2-database.yml.patch"
"04-${PN}-8.12.7-fix-check-task.patch"
"05-${PN}-9.0.0-replace-sys-filesystem.patch"
"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
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/|" \
config/gitlab.yml.example || die "failed to filter gitlab.yml.example"
local run_path=/run/${MY_NAME}
sed -i -E \
-e "s|/home/git/gitlab/tmp/(pids\|sockets)|${run_path}|" \
-e "s|/home/git/gitlab/log|${LOGS_DIR}|" \
-e "s|/home/git/gitlab|${DEST_DIR}|" \
config/unicorn.rb.example || die "failed to filter unicorn.rb.example"
sed -i \
-e "s|/home/git/gitlab/tmp/sockets|${run_path}|" \
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-8.13.3-sidekiq.init
use unicorn && rcscript=gitlab-8.13.3-unicorn.init
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|" \
-e "s|@GITLAB_BASE@|${dest}|" \
-e "s|@LOGS_DIR@|${logs}|" \
"${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 "PLEASE also read this document about needed migrations on MySQL:"
ewarn "https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md"
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
## Initialize app ##
local RAILS_ENV="production"
local RUBY=${RUBY:-/usr/bin/ruby}
local BUNDLE="${RUBY} /usr/bin/bundle"
# FIXME: this line existed in older ebuilds, but the variable is
# never used. what was it for!?
# local dbname="$(ryaml ${CONF_DIR}/database.yml production database)"
if [ "${update}" = 'true' ]; then
einfo "Migrating database ..."
exec_rake db:migrate
# 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 "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 $@"
}

View file

@ -11,7 +11,7 @@ EAPI="5"
# difficult to maintain them via ebuilds.
#
USE_RUBY="ruby21 ruby23"
USE_RUBY="ruby23"
inherit eutils git-r3 ruby-ng user systemd
@ -19,9 +19,10 @@ EGIT_REPO_URI="https://gitlab.com/gitlab-org/${PN}.git"
EGIT_BRANCH="master"
EGIT_CHECKOUT_DIR="${WORKDIR}/all"
GITALY_VERSION="0.3.0"
GITLAB_PAGES_VERSION="0.4.0"
GITLAB_SHELL_VERSION="5.0.0"
GITLAB_WORKHORSE_VERSION="1.4.1"
GITLAB_WORKHORSE_VERSION="1.4.2"
DESCRIPTION="GitLab is a free project and repository management application"
HOMEPAGE="https://about.gitlab.com/"
@ -31,7 +32,7 @@ RESTRICT="mirror"
LICENSE="MIT"
SLOT="0"
KEYWORDS=""
IUSE="kerberos mysql +postgres +unicorn systemd pages rugged_use_system_libraries"
IUSE="kerberos mysql +postgres +unicorn systemd pages -gitaly rugged_use_system_libraries"
## Gems dependencies:
# charlock_holmes dev-libs/icu
@ -60,10 +61,11 @@ COMMON_DEPEND="
${GEMS_DEPEND}
>=dev-vcs/gitlab-shell-${GITLAB_SHELL_VERSION}
>=dev-vcs/git-2.8.4
>=dev-vcs/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
>=www-servers/gitlab-workhorse-${GITLAB_WORKHORSE_VERSION}
kerberos? ( !app-crypt/heimdal )
rugged_use_system_libraries? ( net-libs/http-parser dev-libs/libgit2:0/24 )
pages? ( >=www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )"
pages? ( >=www-servers/gitlab-pages-${GITLAB_PAGES_VERSION} )
gitaly? ( >=www-servers/gitaly-${GITALY_VERSION} )"
DEPEND="
${CDEPEND}
${COMMON_DEPEND}"

View file

@ -8,6 +8,7 @@
<use>
<flag name="unicorn">Use the Unicorn web server. Never tested the package without it, so disable at your own risk.</flag>
<flag name="pages">Use the GitLab Pages feature. See https://gitlab.com/gitlab-org/gitlab-pages/</flag>
<flag name="gitaly">Use Gitaly Server to speed up git operations. Not yet supported. See https://gitlab.com/gitlab-org/gitaly/</flag>
<flag name="rugged_use_system_libraries">Use dev-libs/libgit2 from the system instead of the bundled libgit. The bundled library sometimes causes build breakages.</flag>
</use>
</pkgmetadata>

View file

@ -0,0 +1,8 @@
*gitaly-0.3.0 (29 Mar 2017)
29 Mar 2017; Manuel Friedli <manuel@fritteli.ch> +gitaly-0.3.0.ebuild,
+metadata.xml:
www-servers/gitaly: Added dummy-ebuild for gitaly-0.3.0. This will not build,
but instead just show an error message upon installation. It is a mere
placeholder for the future. It is needed so that the gitaly USE-flag could be
added to the gitlab-ce-9.0.1 ebuild.

View file

@ -0,0 +1,8 @@
DIST gitaly-0.10.0.tar.bz2 693273 SHA256 44a4a68beb75b464b35fd003cf47a9bc483bb6bbcc8ab4bd4ef87a75329a3747 SHA512 1d7b2d38d68ceaacde03d0ba2cbec19f730527af6a0d56fd92c03f41a4d11c4e5db5c5cc2bd363a8ccfc0f5bf3fb678aec4b17e5996ccc7f1898a78e4598cc1a WHIRLPOOL 737ff05c6992e90eab9ba38a721cf699d87ea1ef84005dbaa16d37ef3c33cec9607571b0421412bba3efd2bf88267ff7d624e57ac92cc08b14c3b8801779c455
DIST gitaly-0.3.0.tar.bz2 621097 SHA256 60404ae78b6551e7258a30fa615d7d8c200b84f161ecf904e034db3839391766 SHA512 ad50d15f4a97bf5dd2cc64830840041d8537bd251176eb8964cda3fdb6ef6e1bf3c8b7773516c6e1d51005cc0a718a1bc3ca95fc9ee5d0826c3f9690e1235bb6 WHIRLPOOL 364cdc3407d5fef6ac48a67f8bdd477b75300069be2cbf2567aa73ea7406256ea3c15a27c7a13f92d17c6b63f5923d4e737437bdd3a1e8b808de1832cc9c1af8
DIST gitaly-0.6.0.tar.bz2 687192 SHA256 ead87c0da129c075011a55e5b2138febf11fd5146dd62763fc9d4b5d8725840d SHA512 f1e8e337192af02b42087604eb90fab3af73ef3753a07af368b1784462a0c1f8b1d166952b8d4e9c25c93228625195be42b4d3dfad0a70bea0520956acf2522f WHIRLPOOL 283899fb6c3fed332731d06ea42cf76ee5de433849b0784eb78b76391d15ca5feeb36fa9d28f3a90962f378c1c485eb0653a62090dbb6aae8bc87965d534da34
EBUILD gitaly-0.10.0.ebuild 1593 SHA256 34636529bd1a4523d246062b7218c99b495efd2420287b975bcf6049a1da63ab SHA512 fabbe8f46bf84198d594b3601219996def2461eba6237144cbcc73d71659b3cd29c14487a8bf3cfb3de4c5dafbb93bb9d51ade907ffc76e88bccf22bf7a1859d WHIRLPOOL c6b59a27626121cb5a88aa14f9159edeec6f4e69b9a64851a21c0a9826d00010283a218767090825452abb4ad6ba47381e57b2665c6ef4511224edbf7b988e6e
EBUILD gitaly-0.3.0.ebuild 1593 SHA256 f07387ac6ec3c68d2c4aa8894804caf5a456b8e12e15937d82fda4d2ed864185 SHA512 95d19b0e799195fa5e3d8cc2879c1017503f68aa586a074119441fbbcff28d2cd9d538830a3a2b40a542bdbfa99518f9afd09232907ac7e763d500cf00abe32f WHIRLPOOL 1e3c778ac33e385865a610dfef5ee07841e9a7b91800b94a3a88714caf38084584524b2f120553a9f13ee2df57309fbd8e9b1e119cdbfd2f6cc1749e25f14bcf
EBUILD gitaly-0.6.0.ebuild 1593 SHA256 34636529bd1a4523d246062b7218c99b495efd2420287b975bcf6049a1da63ab SHA512 fabbe8f46bf84198d594b3601219996def2461eba6237144cbcc73d71659b3cd29c14487a8bf3cfb3de4c5dafbb93bb9d51ade907ffc76e88bccf22bf7a1859d WHIRLPOOL c6b59a27626121cb5a88aa14f9159edeec6f4e69b9a64851a21c0a9826d00010283a218767090825452abb4ad6ba47381e57b2665c6ef4511224edbf7b988e6e
MISC ChangeLog 392 SHA256 c85d6fb8a93d47762d1a6279f7523138234a5951a71700a0abb5bd6c69405704 SHA512 ff7a8dc6e0457f88e22c93ae062fb7c4da834cf679e0742f276465060164dbb510573b55bab7471ae851e5380cc60fece093ef973d4c0da4413ce0f8f3c99263 WHIRLPOOL d3b4cf6e3182e5be74aa8689b2ea5b3baf53bbf2ff2ad56bc60429d89627aad8d148877c285cc1ed0e8960ad5e02344901c3554e7e78c2e2a3a1fca9c5533825
MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1

View file

@ -0,0 +1,67 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="661135a"
DESCRIPTION="Stop relying on NFS for horizontal scaling. Speed up Git access using caching."
HOMEPAGE="https://gitlab.com/gitlab-org/gitaly"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
#MY_USER="gitlab_pages"
pkg_setup() {
eerror "This ebuild is but a dummy placeholder. Gitaly is not yet supported."
die "Gitaly is not yet supported."
}
#pkg_setup() {
# enewgroup ${MY_USER}
# enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
#}
#src_prepare() {
# epatch "${FILESDIR}/0001-fix-Makefile-${PV}.patch"
#
# sed -i -E \
# -e "s/@@REVISION@@/${MY_GIT_HASH}/" \
# src/gitlab.com/gitlab-org/${PN}/Makefile
#
# eapply_user
#}
#src_compile() {
# emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
#}
#src_install() {
# golang-build_src_install
# dobin bin/*
# dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
#
# # rc script
# local rcscript="${PN}-0.3.2.init"
#
# cp "${FILESDIR}/${rcscript}" "${T}" || die
# sed -i \
# -e "s|@USER@|${MY_USER}|g" \
# "${T}/${rcscript}" \
# || die "failed to filter ${rcscript}"
#
# newinitd "${T}/${rcscript}" "${PN}"
# newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
#}

View file

@ -0,0 +1,67 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="fdcb2c9"
DESCRIPTION="Stop relying on NFS for horizontal scaling. Speed up Git access using caching."
HOMEPAGE="https://gitlab.com/gitlab-org/gitaly"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
#MY_USER="gitlab_pages"
pkg_setup() {
eerror "This ebuild is but a dummy placeholder. Gitaly is not yet supported."
die "Gitaly is not yet supported."
}
#pkg_setup() {
# enewgroup ${MY_USER}
# enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
#}
#src_prepare() {
# epatch "${FILESDIR}/0001-fix-Makefile-${PV}.patch"
#
# sed -i -E \
# -e "s/@@REVISION@@/${MY_GIT_HASH}/" \
# src/gitlab.com/gitlab-org/${PN}/Makefile
#
# eapply_user
#}
#src_compile() {
# emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
#}
#src_install() {
# golang-build_src_install
# dobin bin/*
# dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
#
# # rc script
# local rcscript="${PN}-0.3.2.init"
#
# cp "${FILESDIR}/${rcscript}" "${T}" || die
# sed -i \
# -e "s|@USER@|${MY_USER}|g" \
# "${T}/${rcscript}" \
# || die "failed to filter ${rcscript}"
#
# newinitd "${T}/${rcscript}" "${PN}"
# newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
#}

View file

@ -0,0 +1,67 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="661135a"
DESCRIPTION="Stop relying on NFS for horizontal scaling. Speed up Git access using caching."
HOMEPAGE="https://gitlab.com/gitlab-org/gitaly"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
#MY_USER="gitlab_pages"
pkg_setup() {
eerror "This ebuild is but a dummy placeholder. Gitaly is not yet supported."
die "Gitaly is not yet supported."
}
#pkg_setup() {
# enewgroup ${MY_USER}
# enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
#}
#src_prepare() {
# epatch "${FILESDIR}/0001-fix-Makefile-${PV}.patch"
#
# sed -i -E \
# -e "s/@@REVISION@@/${MY_GIT_HASH}/" \
# src/gitlab.com/gitlab-org/${PN}/Makefile
#
# eapply_user
#}
#src_compile() {
# emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
#}
#src_install() {
# golang-build_src_install
# dobin bin/*
# dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
#
# # rc script
# local rcscript="${PN}-0.3.2.init"
#
# cp "${FILESDIR}/${rcscript}" "${T}" || die
# sed -i \
# -e "s|@USER@|${MY_USER}|g" \
# "${T}/${rcscript}" \
# || die "failed to filter ${rcscript}"
#
# newinitd "${T}/${rcscript}" "${PN}"
# newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
#}

View file

@ -4,8 +4,13 @@ AUX gitlab-pages-0.3.2.conf 148 SHA256 2b1d40d38d729a4e705455a2fbe745618c573cdc7
AUX gitlab-pages-0.3.2.init 698 SHA256 6751226148f5c8b53bdf3422053115ed6bb6ac3d7795b605617a7733a2b84437 SHA512 10e299febee0a66f03e8debe3f20ad635b52b5238a2ad23f585d30f14d5c0f591825bd892119f564f427e93a539184e39424c8cdc78200b2dbb5d0f588738176 WHIRLPOOL 7142b6a056a0d0a90bb18d1fdc5995c07156e05216b9e5779548427ad6f7aed4cf8eb090acfcbd0a7cc07826c0b6dfc5276ca176a80783d40405d2011a253fe0
DIST gitlab-pages-0.3.2.tar.bz2 205531 SHA256 392b0620871ab36a362f8b8b9008c266eda465e6f32611ccbdbe640cd77ae7b5 SHA512 e452af8a9d2032ccba827a7a165abf324008c585369f74d14a47524eaaa3255a92c38f102e8cf63a86012650da6265aa1a28f0ade5131ebb1df51e6202be0edc WHIRLPOOL d47459d214d1ed9818de534885ea806f092fe2fb02b2aa08b00b95fb9c3f2693b7c9b8d3e5723be55535888e1276ba4dbc24ead2f659677a43d326dcff9f3925
DIST gitlab-pages-0.4.0.tar.bz2 205924 SHA256 b26a00050d3558e793c070cda2fe50dc1bd76ea305902e4885746280755c3ea0 SHA512 9ff1d51655c0af93eca0b3a7e5cf250ce9a6787b3bc5eabcb59207ca3af13b6972bbebbc9c4a05bc1056cd12d6ad4c4bc30700efb656a2b9cfedf71ef57666e2 WHIRLPOOL 064625dfbfd428da5ecbf7ceb0532ff16e61ef9fbdbe1f4f72824e06ca21a93266a3d5eeec730f6423cb9d5d26d99fc6dbb568f30a79c4a691a0fdb08301c1cf
DIST gitlab-pages-0.4.1.tar.bz2 206039 SHA256 ed856e1d549597b5f1b7aa5d006538aa4def240206b4756728aaeeefa49734c7 SHA512 e6dc7c73ec0601ebe53c54aa8d0978954c24450e488776bef1bb2483efd2db14d23188ee10660f6833f44bbbb50f462f8b9568a77cd4ff970300c604856319a0 WHIRLPOOL c8abfaf677f935b752be24c7ce703c49dcc23061a24f2137ea18df33a96d42233e7e00de120a812df58b84bf3db0739e97a1e37fc04367d370ef2558986d73fa
DIST gitlab-pages-0.4.2.tar.bz2 209079 SHA256 391301c4f5cc288ed1a6a451e5273899518b83529c787c0a5f724161005ca786 SHA512 74e4cd810712d1506b927f75b63dc4fca09802097579d456cfada94f06c59b05f5e11309dc6fbd0f4c701243933688afa89ef8c1cf921f15536f505c7dec99f4 WHIRLPOOL 0f352db3977565b7c41609dcbed9161fcc99398fc56aa535255a69d12169b75b985410964a9adce60ed9eb8b88a68128dac9a9528f85ec62bae468fb8907e182
EBUILD gitlab-pages-0.3.2-r1.ebuild 1968 SHA256 947c1a842bf512d712a73c723adc9db7651041e740a575050ea636b43948d294 SHA512 c7330aaee4252d6c0bde0440d4dace061e59802459efb3da71148c100e71fe6231bb694a5aaf57e8372d5c8fca2ca84a3d359ce86dcb8c918e12fca92ca22757 WHIRLPOOL 68762bc267f336c0ac866c8e782f878d1ad5dd7066fd85bb0d5ed506b8ea9b57f28a801d6e2535869912b93fa2143f13b0155771b3ee0a31cedd3b64a01169bd
EBUILD gitlab-pages-0.3.2.ebuild 1951 SHA256 c3617997d32d94ac44131e048a71f9e99db0243223f3158089154317cb4a3fc6 SHA512 123890a3c2c24d45be2a0e5d5042d8b3fe95fc6a7a51d447056fc08363a4414e47624b9c0744cba922f642fec3cc35952efdfc43bc4c5cbaac24deeb8554b3e1 WHIRLPOOL 7e09a647a1748c41da4120fdf8fd66bdd0a0adbc09a7462ffc7e3c9e5fdadf9036fa27c48272baef45d23977bf004df712aa3b4f11ecee113c4ffc306acbcc18
EBUILD gitlab-pages-0.4.0.ebuild 1944 SHA256 9ea918e126d4edc0fb785eae43f618a7744bd0fb4bd342f09725633b3cbd9f3d SHA512 7b7364e999fbabe7ef48da010ed6b799c9b4af8ee83f32d4b138cc6ac16acdcd5ed980bf217ff405c03a9ef9bf589ce95c3cad64a101d8b0f6eb0d869e0ef014 WHIRLPOOL 2ce6e870eaaf8b7522c1ec7bbf91a843a94a278de77d44bbbe4d74f8ff36aa56dd912eae2e520bac82550a4352c5366098749d7cf1893e5e50be6b708ad1aaa3
EBUILD gitlab-pages-0.4.1.ebuild 1944 SHA256 f489ea11f220c84e099cff1ce0e960c02498846e90e22de23a3126d4cc9e883d SHA512 18391744f540507bbaee676854ca6b264eb08dcc93fe0a0c6f3bdcc34f3ee505ecb4db7f45f98a7ac2efa722f42f0aab3f174024f5c6a6f7e206fa0e08b6ebee WHIRLPOOL 182e67c00c30485fcb69d1061c397e16e18bfa62a82d729647fd795b36a5ae486a93c5d28f86ceed1b7230f3807732b241bf37532ccae0f789e90fa89ecbfc53
EBUILD gitlab-pages-0.4.2-r1.ebuild 1434 SHA256 477a4be7f099ed542dc7f69b2008c08d00593225e63a7c652139b4ff1e1feb46 SHA512 88923ff7da8bbb21eca3044bfaf8a59dd9a6fedc96bbeb1739a591ba2054ff1e0d789aeee7b634a70eb1627cfe3ad50361577555ccc5fedb1523e6af3518a4af WHIRLPOOL d94e14712020c5542a5b41c8450a80824fc42d585859a9527812ecb53a452101977f973badce04e2fdb239d87ad465d4ca81a848dbfde67044031b6df0f4a039
EBUILD gitlab-pages-0.4.2.ebuild 1944 SHA256 d390ef3f08bf8b37d3d3f16dc883b2af94d85eba3080cf8c6b47022f521cef4f SHA512 8cdf433b49167202a65dff518615299d0454a1f5bdf3ab566ad5e92ccfbe9ea8e229faf84a249becff39beeedea2951eaaa0700e6a968e15e5bc9f994d3e864c WHIRLPOOL 7127fc54d17f575a1f628adbf5151be4989d1e97f94d13b4bfd427a374563ef489bd83e8f14e1a0b830caccd25704f3e8a869e223b29d639ce2c0cd0e8f6ecc1
MISC ChangeLog 1198 SHA256 20adea92aa197d2774657be760b12b92a18a668e73adb7bebaf909bd34c9745e SHA512 13c40fd3574847af8c92b7a8758fc91001e9b82ac53c2a0f6259f494676e7dfc6a0e87c4717a0b287676164562dbe5abd61c62bfbceb1067da9a02c265d7c619 WHIRLPOOL 3778bbfd3436fca31f4a802ecc9893e31657e633720180d2f295a7e6b2616beba0e21a29ecb48c65b8da93ac83b256380bcff51aa84f76bb9041562950165efa
MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1

View file

@ -0,0 +1,78 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="043be6d"
DESCRIPTION="Simple HTTP server written in Go made to serve GitLab Pages with CNAMEs and SNI"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-pages"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
MY_USER="gitlab_pages"
pkg_setup() {
enewgroup ${MY_USER}
enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
}
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile-0.3.2.patch"
sed -i -E \
-e "s/@@REVISION@@/${MY_GIT_HASH}/" \
src/gitlab.com/gitlab-org/${PN}/Makefile
eapply_user
}
src_compile() {
emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
}
src_install() {
golang-build_src_install
dobin bin/*
dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
# rc script
local rcscript="${PN}-0.3.2.init"
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|g" \
"${T}/${rcscript}" \
|| die "failed to filter ${rcscript}"
newinitd "${T}/${rcscript}" "${PN}"
newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
}
pkg_postinst() {
elog
elog "If this is a fresh install of GitLab CI Multi Runner, please configure it"
elog "with the following command:"
elog " emerge --config \"=${CATEGORY}/${PF}\""
}
pkg_config() {
einfo "You need to register the runner with your GitLab CI instance. Please"
einfo "Follow the instructions at"
einfo
einfo "https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/install/linux-manually.md"
einfo
einfo "Perhaps I'll improve the ebuild later ... kthxbye."
}

View file

@ -0,0 +1,62 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="dccd0f2"
DESCRIPTION="Simple HTTP server written in Go made to serve GitLab Pages with CNAMEs and SNI"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-pages"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
MY_USER="gitlab_pages"
pkg_setup() {
enewgroup ${MY_USER}
enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
}
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile-0.3.2.patch"
sed -i -E \
-e "s/@@REVISION@@/${MY_GIT_HASH}/" \
src/gitlab.com/gitlab-org/${PN}/Makefile
eapply_user
}
src_compile() {
emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
}
src_install() {
golang-build_src_install
dobin bin/*
dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
# rc script
local rcscript="${PN}-0.3.2.init"
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|g" \
"${T}/${rcscript}" \
|| die "failed to filter ${rcscript}"
newinitd "${T}/${rcscript}" "${PN}"
newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
}

View file

@ -0,0 +1,78 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
inherit eutils golang-build golang-vcs-snapshot user
EGO_PN="gitlab.com/gitlab-org/gitlab-pages/..."
MY_PV="v${PV/_/-}"
MY_GIT_HASH="dccd0f2"
DESCRIPTION="Simple HTTP server written in Go made to serve GitLab Pages with CNAMEs and SNI"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-pages"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
LICENSE="MIT"
SLOT="0/${PVR}"
DEPEND=">=dev-lang/go-1.5"
RESTRICT="test mirror"
MY_USER="gitlab_pages"
pkg_setup() {
enewgroup ${MY_USER}
enewuser ${MY_USER} -1 -1 -1 ${MY_USER}
}
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile-0.3.2.patch"
sed -i -E \
-e "s/@@REVISION@@/${MY_GIT_HASH}/" \
src/gitlab.com/gitlab-org/${PN}/Makefile
eapply_user
}
src_compile() {
emake GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" RELEASE=true -C src/${EGO_PN%/*} all
}
src_install() {
golang-build_src_install
dobin bin/*
dodoc src/${EGO_PN%/*}/README.md src/${EGO_PN%/*}/CHANGELOG
# rc script
local rcscript="${PN}-0.3.2.init"
cp "${FILESDIR}/${rcscript}" "${T}" || die
sed -i \
-e "s|@USER@|${MY_USER}|g" \
"${T}/${rcscript}" \
|| die "failed to filter ${rcscript}"
newinitd "${T}/${rcscript}" "${PN}"
newconfd "${FILESDIR}/${PN}-0.3.2.conf" "${PN}"
}
pkg_postinst() {
elog
elog "If this is a fresh install of GitLab CI Multi Runner, please configure it"
elog "with the following command:"
elog " emerge --config \"=${CATEGORY}/${PF}\""
}
pkg_config() {
einfo "You need to register the runner with your GitLab CI instance. Please"
einfo "Follow the instructions at"
einfo
einfo "https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/install/linux-manually.md"
einfo
einfo "Perhaps I'll improve the ebuild later ... kthxbye."
}

View file

@ -1,3 +1,18 @@
*gitlab-workhorse-1.2.1-r1 (29 Mar 2017)
*gitlab-workhorse-1.3.0-r1 (29 Mar 2017)
*gitlab-workhorse-1.4.1-r1 (29 Mar 2017)
*gitlab-workhorse-1.4.2 (29 Mar 2017)
29 Mar 2017; Manuel Friedli <manuel@fritteli.ch>
+files/0001-fix-Makefile.patch, +gitlab-workhorse-1.2.1-r1.ebuild,
+gitlab-workhorse-1.3.0-r1.ebuild, +gitlab-workhorse-1.4.1-r1.ebuild,
+gitlab-workhorse-1.4.2.ebuild, -files/fix-Makefile-1.2.1.patch,
-files/fix-Makefile-1.3.0.patch, -files/fix-Makefile-1.4.1.patch,
-gitlab-workhorse-1.2.1.ebuild, -gitlab-workhorse-1.3.0.ebuild,
-gitlab-workhorse-1.4.1.ebuild:
dev-vcs/gitlab-workhorse: Added ebuild for gitlab-workhorse-1.4.2 and finally
cleaned up the fix-makefile-patch mess.
*gitlab-workhorse-1.4.1 (13 Mar 2017)
13 Mar 2017; Manuel Friedli <manuel@fritteli.ch>

View file

@ -0,0 +1,17 @@
AUX 0001-fix-Makefile.patch 360 SHA256 7dfdf28c0124c5054d452a9ff33b7f8f9b818f8aac63f26c8c3b567c919e0930 SHA512 d4a54811aadf330a31a562a78a99e34abaea83b647c8002de72fe27c6b58155879f8238f6382979cdc34370f5a81f979cab6d0f54a8ec8e529ca22a118901d3a WHIRLPOOL 19d77424ff65b51b120e88e9c7bd9f9520213d42cf70aa436e339beb402d528ca5efaf14009ecd2b01e9de1a8bb350b82f52541e885265e5649d869df80a7659
AUX gitlab-workhorse-0.8.2.conf 297 SHA256 8bb99a78197ad22892e4c85496101a39f2c82f6c537f44da8185af54dbb44a38 SHA512 d143489c165ef5e68810bb10d5e97da7ad3be6d53618380231706ec16c3fd8bc3eedbc78a09949479a408646e32aae4cdceaca9b271ba3b816e3449b792c5406 WHIRLPOOL 649d34b60afab816dac559989c9a3b0cb9620c2ac2a7617cfcae8bcc2c421791fa612571f83e6611ec8ab8c26c9c79f9832f4e6a70396497dfc5a40d99bbbef9
AUX gitlab-workhorse-0.8.2.init 681 SHA256 bf3f94853781251629daae935d04294febf317061536624e2c01188dd6688ae7 SHA512 6275abe0910e7327f952dba36827a9083264f76753605767cc11ee7b162fdecef3170783800263bf8acbe891d41e6be9e27b5fcca2a4f035b990c9865aa02647 WHIRLPOOL bc983d0413c0743ef0843a3abb46ee2be78ac6e18b56f96de63b4ea8cb9242f8ef6a96f2d593dbcda33a0a60b7f941f27bd704b7f64a85db7379ef0b42233527
DIST gitlab-workhorse-1.2.1.tar.bz2 381033 SHA256 b9e0bf7c2b3ad1378c59def86d59726e988ee31db94b96d3e907aeae402ce1bd SHA512 de50574b39f84ea980c64cf54e7e0aa5bc94ed933bcb550f5712d07a8d60e4843fcf97993e285bd67361f931dd9a63f5cbde98a96478444b8381f23491635493 WHIRLPOOL 7cea252ada82a4d7281bbdd002fffbc3bebbcffe20748b8e4b8e4e8aa6fcee852bc18076c9ea4761849e24b5291b4552ef3e8ea812f1156ab980f476ded59b7a
DIST gitlab-workhorse-1.3.0.tar.bz2 384385 SHA256 b0acbd61a7ccf37512b569dc50625ff89dec9e181f8d5ed0b6115c81ef611032 SHA512 e2ea0183666e48795d97f19117995ce0191ce6d3a3810ceabb9c365b359839d8603b65608d754fd54b41a50fa2375eb64312203d58988aabfe81026f520d2f8f WHIRLPOOL 35e8eee022fc12e7d281656cdb65f35b23eb45fff739bd6fad05e594be56578043445cd6c5fd0ac3d3b097a4d0215a19cff0cc54c2d0d5dbec6dc5df3398fdaf
DIST gitlab-workhorse-1.4.1.tar.bz2 624717 SHA256 fb15cfd4cc2215b1a1f67f31f091a0d56c61951cf63f99dadcc5dd8c4b50b121 SHA512 2c70e08abff111f9614c0f6b64ac4b189a3b259c429f9e64dacce48bede3ae5241f44361d753787c7b11c6ee0819790843e7db0da2f0680229ee910e5e6d9c55 WHIRLPOOL f4b4a82823a061918bdea2ffac54491c40b4975fbe67dca1581bfe3790a8fbc825a8a2d8900d8aab242be6c8a720af2aea7e82aff3b97f66e7ab792496984955
DIST gitlab-workhorse-1.4.2.tar.bz2 625125 SHA256 4df4d93bc59102c312ad2a642d7f1ca463357c60d440a11fa72cfcbd4363a8e6 SHA512 1fa23991b463136565185982c1d10d17ecccd44f18138dc27cd0ef8ba0c63abc84347475d295fb71de9aaf8ad3de5747bb656c53c87769d3bce5db67571f89e2 WHIRLPOOL 3e5f2d311d96124546492d3b1da0740e70b8418f3a58f2dae2d457fb15a61d3ebdceea0e67c5a474a00ad7ac67575931a9d6ec8a4cc74572bc5549783b76304d
DIST gitlab-workhorse-1.4.3.tar.bz2 655746 SHA256 5b621887aa8b6c0cb1b5b1aae6edd4d4cc60de77ef70f263a5968e56899da9ca SHA512 bdf62b8d5925fb45d439d2b9caf4cd2c175129bc3fe3bc24b8914dd128c1b6fc8ed700ad20513ee272e24698964c2daa7657e7bae86d58ae53cbe0e7ef44b89f WHIRLPOOL 507ba152b90db9b9459ef3f939780d39e7af17c6f2081a53c9affe621e4c624c46259993a6d94b218b476a2908ee9e3ff882f27c4d8f29e5ebc98f9bc4d878a7
DIST gitlab-workhorse-2.0.0.tar.bz2 656360 SHA256 4e9864b7885b1102d9eb18e9c4bd3baf6021b4d3b64adbf5e9ba70b49aea8d8b SHA512 f439affafc54a090f105897de3ee5fcf2864c26dfd5f87299097c6827b9563f5ec0f7ebc9b1abfc90d6f88f864a640620c58b8a004aa230789ea5e27cf3a2e4c WHIRLPOOL a8488fcb95d06f88eef01e7d1f045fcab766c439738e44fb523b5198d29531b230bd8a1ac27e53fc668a0ba034773cf44477fce623489afe268be9b110ad04f3
EBUILD gitlab-workhorse-1.2.1-r1.ebuild 1019 SHA256 59a9b9fef8350811a1ebeb8824b8bacdfc2c145b88367841c82fe327729b63a2 SHA512 e708d5bc395b4eb8760ba218559e65059dcb499ebc45b33360da2b4b738f51fbb81ad1a2f6eb909d0d40025b45faf4c3be8fb84c945f231de0c635c2770bdbc2 WHIRLPOOL b536bb41b413beb5af648e406dc285c2e8d8b2dc8fd2803296753734feca0856219f560817c58c538b0207c4392e3c73142a8c701646033af9218023c1ca7471
EBUILD gitlab-workhorse-1.3.0-r1.ebuild 1019 SHA256 c89fb85c3f9be066b78dc3eb7eeff6b2a93e5036e526688fe19bfa7c4242795b SHA512 69db5fd2700f3ff5ee8513c60d3a704b7de82757f2c3e8d8162606873aeec05655a30169ce53ca036d52e71507f4d1e39ca1f7520abba3bd9955c5d2408d8a7f WHIRLPOOL 96890317f566dc9775eeb85d231ed92a65979d12adb8dace28bcd52bd1b0e3d5ff3acb852def13edd0d8e797922e82d0fb20b41112933496216578ab92417f97
EBUILD gitlab-workhorse-1.4.1-r1.ebuild 1019 SHA256 c46bd4235e80fcef8c35ff96638795dcc94cd4398724d94ed362a30f79353035 SHA512 70c9f57d7601abf3b0e9de9970b8aad1c3da9c818781ada3a93cf627f888dec27439cf45a53e87a415eced4c378403b2ee129799775c4cb8b142a2905e2b6e56 WHIRLPOOL 398d56fbc5b47071e68bbf97a6dfee7c0752ea9040d9209435665eaf0167c8d5f7fe4fb2cc8f7826e2961fd5ac4b87388538e4d16d7bce5a87490698f647e2d8
EBUILD gitlab-workhorse-1.4.2.ebuild 1019 SHA256 12e00f04075eb815e41640f4ca906ce1aaa833104e79c43f19c1a34c4454ce2c SHA512 8b430448c28ea695502f08928626f628657d58582439c3458370a56dc134c108c24f266a3fe2353b1ecd5082d2e53b985fa998b8919b60f81836579c884555e3 WHIRLPOOL ff37a454aa77734d4cd15b6bc4181a5dc8f1ead2d03710fdc59a514cbaa0a67202ded330021f2c6f763797763b8de94e2ffe86c90cba2336903479abcdfc3437
EBUILD gitlab-workhorse-1.4.3.ebuild 1019 SHA256 9f04f9b9a1af3b6a14af32fc27143ef98cf8d5ea297c754e2af2f75faab90cf9 SHA512 f38aee3ae9318d4db08a6f5bf55a7d25944ca65d132f23e5638e670a31745381d93a39d9489409ee75de943edf80af555638b2748d3eb7b1b8b0d65d8c02d6e7 WHIRLPOOL 60491062d73591e137a7a6d6875174a7f7c31c6972d104c2dd856ef8513276617e1be97f18679853b86638d92ba87152ca5b3f17c43dee79db2918e3e3139584
EBUILD gitlab-workhorse-2.0.0.ebuild 1019 SHA256 6b5b1af7f4bb91d6f38b5160ea4a1711392ba42ae296388c72ceeb1e19dabf99 SHA512 aa607720a13052e2fa5e086d3f5fa2bac42dc9a1028940c6c42e9307596439bb89f6405d23a8f2c216ff9a15e2d83be373adddb6598ed84b7b00af872cd8efc3 WHIRLPOOL 9cd700793dbad67c8a88bf7794bc1273e809b8435702c4359b12c25006fa1a08c8d5963ab76ac75bd46d520442b3195a79659718f8c7bca49d7fb5b4c0d9d6b1
MISC ChangeLog 6613 SHA256 cb006b86036d17d1a77bd16ee43b701a4bcb245851299fb73181e92fb10cc787 SHA512 e891fd757198a066c82a2f8843911ae836fc962d661d5d5569b82b00b9ce732f015ff5712f32c7ffe71e6ed2091f376ec621cbdfca21d5d0e7e6f85db3be49d1 WHIRLPOOL a6f6b6d975f2d0f73ff17de76c82166a5f106ab869ea15ebd31f15fd4161121c18dd4a1b216884a66e76a2bcf05083d8d6d3105b4c0dcd7dbc13c631a9c0922d
MISC metadata.xml 248 SHA256 7b43be15755627edf5c12cf1b50c607d781558640bf8375d685d51d7ade99a32 SHA512 29f9b96b0a77546cce6a8bffd82fae2fd0939d32a7a05ffd0d91f9250a019a3ddaa599b93988c82daabb9c4c4b284dd947e2c47f6ca7727b8539cffa91bcb8c2 WHIRLPOOL 993013c9878ead35469db13d3072f694a341ee654182e0c31d0678f5dd6de4bdc8d59a0b7bb6d685dc41ea6b55dac518cd8034131baea8002170c680e50304d1

View file

@ -6,7 +6,7 @@ index 3f6ac91..663ffbb 100644
-PREFIX=/usr/local
-VERSION=$(shell git describe)-$(shell date -u +%Y%m%d.%H%M%S)
+PREFIX=${DESTDIR}/usr
+VERSION=v1.4.1-$(shell date -u +%Y%m%d.%H%M%S)
+VERSION=v@@VERSION@@-$(shell date -u +%Y%m%d.%H%M%S)
BUILD_DIR = $(shell pwd)
export GOPATH=${BUILD_DIR}/_build
export GO15VENDOREXPERIMENT=1

View file

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -20,7 +20,11 @@ KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
PATCHES=( "${FILESDIR}/fix-Makefile-${PV}.patch" )
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin

View file

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@ -20,7 +20,11 @@ KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
PATCHES=( "${FILESDIR}/fix-Makefile-${PV}.patch" )
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin

View file

@ -20,7 +20,11 @@ KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
PATCHES=( "${FILESDIR}/fix-Makefile-${PV}.patch" )
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin

View file

@ -0,0 +1,43 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="6"
inherit eutils user
DESCRIPTION="This is the new backend for Git-over-HTTP communication needed for GitLab >= 8.4"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-workhorse"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
MY_GIT_COMMIT="a0f050c8fc680faa2c758c11ad2815cfe367db44"
S="${WORKDIR}/${PN}-v${PV}-${MY_GIT_COMMIT}"
RESTRICT="mirror"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin
diropts -m755
dodir ${dest}
exeinto ${dest}
for f in "${PN}" gitlab-zip-cat gitlab-zip-metadata ; do
doexe "${S}/${f}"
done
## RC script ##
newinitd "${FILESDIR}/${PN}-0.8.2.init" "${PN}"
newconfd "${FILESDIR}/${PN}-0.8.2.conf" "${PN}"
}

View file

@ -0,0 +1,43 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="6"
inherit eutils user
DESCRIPTION="This is the new backend for Git-over-HTTP communication needed for GitLab >= 8.4"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-workhorse"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
MY_GIT_COMMIT="97d3583a6b36f8c267680c826bced98a43ba95f7"
S="${WORKDIR}/${PN}-v${PV}-${MY_GIT_COMMIT}"
RESTRICT="mirror"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin
diropts -m755
dodir ${dest}
exeinto ${dest}
for f in "${PN}" gitlab-zip-cat gitlab-zip-metadata ; do
doexe "${S}/${f}"
done
## RC script ##
newinitd "${FILESDIR}/${PN}-0.8.2.init" "${PN}"
newconfd "${FILESDIR}/${PN}-0.8.2.conf" "${PN}"
}

View file

@ -0,0 +1,43 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI="6"
inherit eutils user
DESCRIPTION="This is the new backend for Git-over-HTTP communication needed for GitLab >= 8.4"
HOMEPAGE="https://gitlab.com/gitlab-org/gitlab-workhorse"
SRC_URI="https://gitlab.com/gitlab-org/${PN}/repository/archive.tar.bz2?ref=v${PV} -> ${P}.tar.bz2"
MY_GIT_COMMIT="eacd5b7aff7cc1b51a2409d8645dfc61904f308c"
S="${WORKDIR}/${PN}-v${PV}-${MY_GIT_COMMIT}"
RESTRICT="mirror"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm ~arm64"
DEPEND=">=dev-lang/go-1.5.1"
src_prepare() {
epatch "${FILESDIR}/0001-fix-Makefile.patch"
sed -i -e "s/@@VERSION@@/${PV}/" Makefile
eapply_user
}
src_install() {
local dest=/usr/bin
diropts -m755
dodir ${dest}
exeinto ${dest}
for f in "${PN}" gitlab-zip-cat gitlab-zip-metadata ; do
doexe "${S}/${f}"
done
## RC script ##
newinitd "${FILESDIR}/${PN}-0.8.2.init" "${PN}"
newconfd "${FILESDIR}/${PN}-0.8.2.conf" "${PN}"
}

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>manuel@fritteli.ch</email>
<name>Manuel Friedli</name>
</maintainer>
</pkgmetadata>