summaryrefslogtreecommitdiff
path: root/bin/cleanbuild-docker.sh
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cleanbuild-docker.sh')
-rwxr-xr-xbin/cleanbuild-docker.sh15
1 files changed, 8 insertions, 7 deletions
diff --git a/bin/cleanbuild-docker.sh b/bin/cleanbuild-docker.sh
index 35fd773..a30d812 100755
--- a/bin/cleanbuild-docker.sh
+++ b/bin/cleanbuild-docker.sh
@@ -76,6 +76,7 @@ create_container() {
PACKAGE_NAME=$PACKAGE_NAME \
docker-compose run --rm -d \
--name=$name \
+ --workdir=$home/rpm/packages/$PACKAGE_NAME \
--label=cleanbuild=$PACKAGE_NAME \
cleanbuild
fi
@@ -88,7 +89,7 @@ create_container() {
if [ ! -d $topdir/rpm-build-tools ]; then
notice "Initialize rpm-build-tools"
- docker exec $name builder --init-rpm-dir
+ docker exec $name -w / builder --init-rpm-dir
fi
}
@@ -102,7 +103,7 @@ package_prepare() {
notice "Fetch package sources"
docker exec --user=root -w / $name setfacl -x u:builder /etc/resolv.conf
- docker exec $name builder -g $PACKAGE_NAME
+ docker exec -w / $name builder -g $PACKAGE_NAME
if ! $NETWORKING; then
notice "Disable networking: Prevent network access for user builder like PLD Linux builders"
@@ -110,7 +111,7 @@ package_prepare() {
fi
notice "Find latest tag on the branch"
- git_tag=$(docker exec -e GIT_DIR=$home/rpm/packages/$PACKAGE_NAME/.git $name git describe --tags --always)
+ git_tag=$(docker exec -w / -e GIT_DIR=$home/rpm/packages/$PACKAGE_NAME/.git $name git describe --tags --always)
buildlog=rpm/logs/${git_tag#auto/*/}.log
notice "Build log: $buildlog"
}
@@ -121,22 +122,22 @@ package_build() {
while true; do
notice "Install dependencies"
- docker exec -t $name builder -g -R "$@"
+ docker exec -w / -t $name builder -g -R "$@"
notice "Remove .la dependencies"
docker exec --user=root -w / $name $home/cleanbuild/bin/cleanup-la
notice "Reset findunusedbr state after deps install"
docker exec --user=root -w / $name $home/cleanbuild/bin/findunusedbr -c / $home/rpm/packages/$PACKAGE_NAME/$PACKAGE_NAME.spec
notice "Build package"
- docker exec $name cleanbuild/bin/teeboth $buildlog builder -bb --define '__spec_clean_body %{nil}' "$@" && rc=$? || rc=$?
+ docker exec -w $home $name cleanbuild/bin/teeboth $buildlog builder -bb --define '__spec_clean_body %{nil}' "$@" && rc=$? || rc=$?
# Kill processes on Ctrl+C
if [ "$rc" = 255 ]; then
- docker exec $name pkill -e -u builder
+ docker exec -w / $name pkill -e -u builder
die "Aborted" $rc
fi
findbr=$PACKAGE_NAME.findbr.log
- builddir=$(docker exec $name sh -c 'test ! -d rpm/BUILD/* || echo rpm/BUILD/*')
+ builddir=$(docker exec -w $home $name sh -c 'test ! -d rpm/BUILD/* || echo rpm/BUILD/*')
if [ -z "$builddir" ]; then
die "No build dir. Build failed?" 6
fi