Run Go build as current user via -u flag

Remove complicated workaround in build.sh
This commit is contained in:
Bryan Boreham
2020-12-29 11:24:23 +00:00
parent 69dd8853c4
commit 833f947fb3
2 changed files with 2 additions and 11 deletions

View File

@@ -91,6 +91,7 @@ $(SCOPE_EXE) $(RUNSVINIT) lint tests shell prog/staticui/staticui.go prog/extern
$(SUDO) docker run $(RM) $(RUN_FLAGS) \
-v $(shell pwd):/go/src/github.com/weaveworks/scope \
-v $(shell pwd)/.pkg:/go/pkg \
-u $(shell id -u ${USER}):$(shell id -g ${USER}) \
--net=host \
-e GOARCH -e GOOS -e CIRCLECI -e CIRCLE_BUILD_NUM -e CIRCLE_NODE_TOTAL \
-e CIRCLE_NODE_INDEX -e COVERDIR -e SLOW -e TESTDIRS \

View File

@@ -7,14 +7,4 @@ SCOPE_SRC=$GOPATH/src/github.com/weaveworks/scope
# Mount the scope repo:
# -v $(pwd):/go/src/github.com/weaveworks/scope
# If we run make directly, any files created on the bind mount
# will have awkward ownership. So we switch to a user with the
# same user and group IDs as source directory. We have to set a
# few things up so that sudo works without complaining later on.
uid=$(stat --format="%u" "$SCOPE_SRC")
gid=$(stat --format="%g" "$SCOPE_SRC")
echo "weave:x:$uid:$gid::$SCOPE_SRC:/bin/sh" >>/etc/passwd
echo "weave:*:::::::" >>/etc/shadow
echo "weave ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
su weave -c "PATH=$PATH make -C $SCOPE_SRC BUILD_IN_CONTAINER=false $*"
make -C $SCOPE_SRC BUILD_IN_CONTAINER=false $*