31 lines
1.0 KiB
Bash
Executable File
31 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -eu
|
|
|
|
REPO_DIR=${REPO_DIR:-/repo}
|
|
GIT_LFS_BUILD_DIR=${GIT_LFS_BUILD_DIR:-/tmp/docker_run/git-lfs}
|
|
SRC_DIR=${SRC_DIR:-/src}
|
|
|
|
|
|
mkdir -p $(dirname "${GIT_LFS_BUILD_DIR}")
|
|
cp -r -T "${SRC_DIR}" "${GIT_LFS_BUILD_DIR}"
|
|
|
|
cd "${GIT_LFS_BUILD_DIR}"
|
|
git clean -xdf . || ./rpm/clean.bsh #clean is needed when git isn't alread installed
|
|
"${GIT_LFS_BUILD_DIR}"/rpm/build_rpms.bsh
|
|
rpmbuild --define "_topdir ${GIT_LFS_BUILD_DIR}/rpm/" --target=i686 -bb "${GIT_LFS_BUILD_DIR}"/rpm/SPECS/git-lfs.spec
|
|
if [ "${REPO_HOSTNAME-}" != "" ]; then
|
|
sed -r -i 's/(^baseurl=https?:\/\/)[^/]*/\1'"${REPO_HOSTNAME}"'/' ./rpm/SOURCES/git-lfs.repo
|
|
fi
|
|
|
|
rpmbuild --define "_topdir ${GIT_LFS_BUILD_DIR}/rpm" -ba ${GIT_LFS_BUILD_DIR}/rpm/SPECS/git-lfs-repo-release.spec
|
|
|
|
if [ -s /tmp/signing.key ]; then
|
|
gpg --allow-secret-key-import --import /tmp/signing.key || :
|
|
find ${GIT_LFS_BUILD_DIR}/rpm/{RPMS,SRPMS} -name \*.rpm | xargs /tmp/rpm_sign.exp
|
|
fi
|
|
|
|
rsync -ra ${GIT_LFS_BUILD_DIR}/rpm/{SRPMS,RPMS} ${REPO_DIR}
|
|
createrepo ${REPO_DIR}/SRPMS
|
|
createrepo ${REPO_DIR}/RPMS
|