mirror of
https://github.com/kernelkit/infix.git
synced 2026-07-22 01:13:00 +02:00
As of 4768cae6, we can use conserver/telnet to connect to the docker0
bridge IP:90XX, where XX is DUTXX. This was a great UX improvement
and this patch set aims to further the experience by:
- allow running Infamy (infix-test container) completely rootless¹
- reduce the expsed port range 50->10 (can be improved further)
- use 'podman --publish-all' ports, which allocates ten random
ports for the exposed Qemu telnet ports
- add Quick Start Guide to doc/testing.md
This restores the possiblity of running multiple "make test-sh"
instances, e.g., when multiple users share the same server.
The 'console' script included in this commit uses 'podman inspect' to
find the port number for a given DUT, and optional instance. It takes
either the console/dut number (1-N), or the dut name from the topology.
Also in this commit:
- set hostname for easy identification (for console script)
- set conatainer --name to hostname
- adjust workdir from buildroot to infix/test
- simplify PS1 and add time to prompt (when did the test finish?)
When running 'make test-sh' the prompt now tells you which instance you
are running, e.g., infmay10. Calling 'console 1 infamy10' connects to
console 1 (port 9001) on the infamy10 instance.
For more information, see the Quick Start Guide in doc/testing.md. It
shows how to use the new helper scripts: console and shell.
Fix #227
_______
¹) devs using podman, instead of docker, with slirp4netns installed, can
run the infix-test container completely rootless. We like this, and
as of today podman is our recommendation.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
36 lines
748 B
Makefile
36 lines
748 B
Makefile
export BR2_EXTERNAL := $(CURDIR)
|
|
export PATH := $(CURDIR)/bin:$(PATH)
|
|
|
|
ARCH ?= $(shell uname -m)
|
|
O ?= $(CURDIR)/output
|
|
|
|
config := $(O)/.config
|
|
bmake = $(MAKE) -C buildroot O=$(O) $1
|
|
|
|
|
|
all: $(config) buildroot/Makefile
|
|
@+$(call bmake,$@)
|
|
|
|
check dep:
|
|
@echo "Starting local check, stage $@ ..."
|
|
@make -C src $@
|
|
|
|
$(config):
|
|
@+$(call bmake,list-defconfigs)
|
|
@echo "\e[7mERROR: No configuration selected.\e[0m"
|
|
@echo "Please choose a configuration from the list above by running"
|
|
@echo "'make <board>_defconfig' before building an image."
|
|
@exit 1
|
|
|
|
%: | buildroot/Makefile
|
|
@+$(call bmake,$@)
|
|
|
|
# Workaround, see board/x86_64/board.mk
|
|
test:
|
|
@+$(call bmake,$@)
|
|
|
|
buildroot/Makefile:
|
|
@git submodule update --init
|
|
|
|
.PHONY: all check test
|