1# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 2# 3# SPDX-License-Identifier: curl 4 5name: Linux torture 6 7on: 8 push: 9 branches: 10 - master 11 - '*/ci' 12 paths-ignore: 13 - '**/*.md' 14 - '**/CMakeLists.txt' 15 - '.azure-pipelines.yml' 16 - '.circleci/**' 17 - '.cirrus.yml' 18 - 'appveyor.*' 19 - 'CMake/**' 20 - 'packages/**' 21 - 'plan9/**' 22 - 'projects/**' 23 - 'winbuild/**' 24 pull_request: 25 branches: 26 - master 27 paths-ignore: 28 - '**/*.md' 29 - '**/CMakeLists.txt' 30 - '.azure-pipelines.yml' 31 - '.circleci/**' 32 - '.cirrus.yml' 33 - 'appveyor.*' 34 - 'CMake/**' 35 - 'packages/**' 36 - 'plan9/**' 37 - 'projects/**' 38 - 'winbuild/**' 39 40concurrency: 41 # Hardcoded workflow filename as workflow name above is just Linux again 42 group: torture-${{ github.event.pull_request.number || github.sha }} 43 cancel-in-progress: true 44 45permissions: {} 46 47env: 48 MAKEFLAGS: -j 5 49 50jobs: 51 autotools: 52 name: ${{ matrix.build.name }} 53 runs-on: 'ubuntu-latest' 54 timeout-minutes: 90 55 strategy: 56 fail-fast: false 57 matrix: 58 build: 59 - name: torture 60 install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev libnghttp2-dev libssh2-1-dev libc-ares-dev 61 configure: --with-openssl --enable-debug --enable-ares --enable-websockets 62 tflags: -n -t --shallow=25 !FTP 63 - name: torture-ftp 64 install: libpsl-dev libbrotli-dev libzstd-dev zlib1g-dev libnghttp2-dev libssh2-1-dev libc-ares-dev 65 configure: --with-openssl --enable-debug --enable-ares 66 tflags: -n -t --shallow=20 FTP 67 68 steps: 69 - run: | 70 sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list 71 sudo apt-get update 72 sudo apt-get install libtool autoconf automake pkg-config stunnel4 ${{ matrix.build.install }} 73 sudo python3 -m pip install impacket 74 name: 'install prereqs and impacket' 75 76 - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 77 78 - run: autoreconf -fi 79 name: 'autoreconf' 80 81 - run: ./configure --disable-dependency-tracking --enable-warnings --enable-werror ${{ matrix.build.configure }} 82 name: 'configure' 83 84 - run: make V=1 85 name: 'make' 86 87 - run: make V=1 -C tests 88 name: 'make tests' 89 90 - run: make V=1 test-torture 91 name: 'run tests' 92 env: 93 TFLAGS: "${{ matrix.build.tflags }}" 94