restore cloudcheck tag propagation to URL/OPEN_TCP_PORT children #4401
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tests (Linux Distros) | |
| on: | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test-distros: | |
| runs-on: ubuntu-latest | |
| container: | |
| image: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: ["ubuntu:22.04", "ubuntu:24.04", "debian", "archlinux", "fedora", "kalilinux/kali-rolling"] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Install Python and uv | |
| run: | | |
| if [ -f /etc/os-release ]; then | |
| . /etc/os-release | |
| if [ "$ID" = "ubuntu" ] || [ "$ID" = "debian" ] || [ "$ID" = "kali" ]; then | |
| export DEBIAN_FRONTEND=noninteractive | |
| apt-get update | |
| apt-get -y install curl git bash build-essential docker.io libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev | |
| elif [ "$ID" = "alpine" ]; then | |
| apk add --no-cache bash gcc g++ musl-dev libffi-dev docker curl git make openssl-dev bzip2-dev zlib-dev xz-dev sqlite-dev | |
| elif [ "$ID" = "arch" ]; then | |
| pacman -Syu --noconfirm curl docker git bash base-devel | |
| elif [ "$ID" = "fedora" ]; then | |
| dnf install -y curl docker git bash gcc make patch p7zip p7zip-plugins openssl-devel bzip2-devel libffi-devel zlib-devel xz-devel tk-devel gdbm-devel readline-devel sqlite-devel python3-libdnf5 | |
| elif [ "$ID" = "gentoo" ]; then | |
| echo "media-libs/libglvnd X" >> /etc/portage/package.use/libglvnd | |
| emerge-webrsync | |
| emerge --update --newuse dev-vcs/git media-libs/mesa curl docker bash | |
| fi | |
| fi | |
| # Install uv (standalone binary, no Python prerequisite) | |
| curl -LsSf https://astral.sh/uv/install.sh | sh | |
| - name: Set OS Environment Variable | |
| run: echo "OS_NAME=${{ matrix.os }}" | sed 's|[:/]|_|g' >> $GITHUB_ENV | |
| - name: Run tests | |
| run: | | |
| export PATH="/github/home/.local/bin:$PATH" | |
| # Fix HOME to match euid (root) so rustup/cargo don't refuse to build | |
| export HOME="$(getent passwd $(whoami) | cut -d: -f6)" | |
| export BBOT_DISTRO_TESTS=true | |
| uv python install 3.12 | |
| uv python pin 3.12 | |
| uv sync --group dev | |
| uv run pytest --reruns 2 --exitfirst -o timeout_func_only=true --timeout 1200 --disable-warnings --log-cli-level=INFO . | |
| - name: Upload Debug Logs | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: pytest-debug-logs-${{ env.OS_NAME }} | |
| path: pytest_debug.log |