header "Sending data between $from and $to"
- ip netns exec "$from" \
- iperf3 --time 1 --client "${addr[$to]}"
+ # Try twice in case tinc hasn't finished PMTU discovery yet
+ ip netns exec "$from" iperf3 --time 1 --client "${addr[$to]}" ||
+ ip netns exec "$from" iperf3 --time 1 --client "${addr[$to]}"
}
test_sign_verify() {
apk upgrade
apk add \
- git pkgconf gcc linux-headers shadow libgcrypt-dev gzip \
+ git pkgconf gcc linux-headers shadow libgcrypt-dev gzip iproute2 iputils-ping iputils-arping mount \
openssl-dev zlib-dev lzo-dev ncurses-dev readline-dev musl-dev lz4-dev vde2-dev cmocka-dev \
"$@"
fi
apt install --no-install-recommends -y \
- iproute2 \
+ iproute2 iputils-ping iputils-arping \
python3-cryptography \
build-essential \
binfmt-support binutils \
pkgconf:"$HOST" \
"$@"
- apt install --no-install-recommends systemd-dev || \
+ apt install --no-install-recommends systemd-dev ||
apt install --no-install-recommends libsystemd-dev
if [ -n "$HOST" ]; then
dir=$(realpath "$(dirname "$0")")
-logs="$GITHUB_WORKSPACE/sanitizer"
+logs="sanitizer"
case "$SANITIZER" in
undefined)
timeout-minutes: 30
container:
image: debian:stable-slim
+ options: --privileged
env:
CI: 1
steps:
+ - name: Install Git
+ run: apt update; apt install -y --no-install-recommends git
+
- name: Checkout code
uses: actions/checkout@v6
- name: Install tools
run: |
- apt install --no-install-recommends -y astyle clang-tidy-$CLANG shellcheck shfmt black pylint mypy
+ apt install --no-install-recommends -y astyle clang-tidy-$CLANG shellcheck shfmt black pylint mypy python3-venv
update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-$CLANG 100
update-alternatives --install /usr/bin/run-clang-tidy run-clang-tidy /usr/bin/run-clang-tidy-$CLANG 100
python3 -m venv /tmp/venv
SANITIZER: "${{ matrix.sanitizer }}"
steps:
- - name: Install Git
- run: apt update; apt install -y --no-install-recommends git
-
- name: Checkout code
uses: actions/checkout@v6
- name: Install deps
- run: .ci/deps.sh iputils-arping clang libclang-rt-dev
+ run: .ci/deps.sh clang libclang-rt-dev
- name: Prepare the system
run: .ci/test/prepare.sh
log.info("stopping tinc through '%s'", pidfile)
foo.cmd("--pidfile", pidfile, "stop")
- check.success(tincd.wait())
+ tincd.wait()
# Leave behind as debugging aid if there's an exception
shutil.rmtree(shortcut)