endif
FORCE_BUILD?=true
-BUILD_AS:=$(strip $(shell echo $${SUDO_USER:-$${USER:-root}}))
# privileged is needed for "ip netns" otherwise we are not able to create namespace
DOCKER_CAPABILITIES:=--privileged
@go run github.com/onsi/ginkgo/v2/ginkgo --dry-run -v --no-color --seed=2 | head -n -1 | grep 'test.go' | \
sed 's/^/* /; s/\(Suite\) /\1\//g'
-.PHONY: build-msg
-build-msg:
- @echo "Building VPP as '$(BUILD_AS)'"
- @echo "****************************************************************"
- @echo "If you wish to build VPP as root, use 'make ... BUILD_AS=root'"
- @echo "or"
- @echo "'[sudo] SUDO_USER=root make ...'"
- @echo "****************************************************************"
-
.PHONY: build-vpp-release
-build-vpp-release: build-msg
- @sudo -u $(BUILD_AS) $(MAKE) -C ../.. build-release
+build-vpp-release:
+ @$(MAKE) -C ../.. build-release
.PHONY: build-vpp-debug
-build-vpp-debug: build-msg
- @sudo -u $(BUILD_AS) $(MAKE) -C ../.. build
+build-vpp-debug:
+ @$(MAKE) -C ../.. build
.PHONY: build-vpp-gcov
-build-vpp-gcov: build-msg
- @sudo -u $(BUILD_AS) $(MAKE) -C ../.. build-gcov
+build-vpp-gcov:
+ @$(MAKE) -C ../.. build-gcov
.build.ok: build
@touch .build.ok
.PHONY: build
build: .deps.ok build-vpp-release
@rm -f .build.ok
- bash ./script/build_hst.sh release $(FORCE_BUILD) $(BUILD_AS)
+ bash ./script/build_hst.sh release $(FORCE_BUILD)
@touch .build.ok
.PHONY: build-cov
build-cov: .deps.ok build-vpp-gcov
@rm -f .build.cov.ok
- bash ./script/build_hst.sh gcov $(FORCE_BUILD) $(BUILD_AS)
+ bash ./script/build_hst.sh gcov $(FORCE_BUILD)
@touch .build.cov.ok
.PHONY: build-debug
build-debug: .deps.ok build-vpp-debug
@rm -f .build.ok
- bash ./script/build_hst.sh debug $(FORCE_BUILD) $(BUILD_AS)
+ bash ./script/build_hst.sh debug $(FORCE_BUILD)
@touch .build.ok
.deps.ok:
exit 2
fi
-sudo_user="${SUDO_USER:-${USER:-root}}"
-args="$args -sudo_user $sudo_user"
+args="$args -whoami $(whoami)"
if [ $leak_check_set -eq 1 ]; then
if [ $focused_test -eq 0 ]; then
var IsCoverage = flag.Bool("coverage", false, "use coverage run config")
var IsPersistent = flag.Bool("persist", false, "persists topology config")
var IsVerbose = flag.Bool("verbose", false, "verbose test output")
-var SudoUser = flag.String("sudo_user", "root", "what user ran hs-test with sudo")
+var WhoAmI = flag.String("whoami", "root", "what user ran hs-test")
var ParallelTotal = flag.Lookup("ginkgo.parallel.total")
var IsVppDebug = flag.Bool("debug", false, "attach gdb to vpp")
var DryRun = flag.Bool("dryrun", false, "set up containers but don't run tests")
s.initPods()
s.loadDockerImages()
var err error
- if *SudoUser == "root" {
+ if *WhoAmI == "root" {
s.KubeconfigPath = "/.kube/config"
} else {
- s.KubeconfigPath = "/home/" + *SudoUser + "/.kube/config"
+ s.KubeconfigPath = "/home/" + *WhoAmI + "/.kube/config"
}
- s.Log("User: '%s'", *SudoUser)
+ s.Log("User: '%s'", *WhoAmI)
s.Log("Config path: '%s'", s.KubeconfigPath)
s.Config, err = clientcmd.BuildConfigFromFlags("", s.KubeconfigPath)
#!/usr/bin/env bash
-BUILD_AS=$3
-
if [ "$(lsb_release -is)" != Ubuntu ]; then
echo "Host stack test framework is supported only on Ubuntu"
exit 1
rm -rf vpp-data/lib/* || true
declare -i res=0
-sudo -u $BUILD_AS cp ${VPP_BUILD_ROOT}/bin/* ${bin}
+cp ${VPP_BUILD_ROOT}/bin/* ${bin}
res+=$?
-sudo -u $BUILD_AS cp -r ${VPP_BUILD_ROOT}/lib/"${OS_ARCH}"-linux-gnu/* ${lib}
+cp -r ${VPP_BUILD_ROOT}/lib/"${OS_ARCH}"-linux-gnu/* ${lib}
res+=$?
if [ "$res" -ne 0 ]; then
echo "Failed to copy VPP files. Is VPP built? Try running 'make build' in VPP directory."