mirror of https://github.com/OISF/suricata
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			103 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			YAML
		
	
			
		
		
	
	
			103 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			YAML
		
	
name: commit-check
 | 
						|
 | 
						|
on:
 | 
						|
  - pull_request
 | 
						|
 | 
						|
permissions: read-all
 | 
						|
 | 
						|
env:
 | 
						|
  DEBIAN_FRONTEND: "noninteractive"
 | 
						|
 | 
						|
jobs:
 | 
						|
 | 
						|
  check-commits:
 | 
						|
    name: Commit Check
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    container: ubuntu:20.04
 | 
						|
    steps:
 | 
						|
      - name: Caching ~/.cargo
 | 
						|
        uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7
 | 
						|
        with:
 | 
						|
          path: ~/.cargo
 | 
						|
          key: commit-check-cargo
 | 
						|
      - name: Install dependencies
 | 
						|
        run: |
 | 
						|
          apt update
 | 
						|
          apt -y install \
 | 
						|
                libpcre2-dev \
 | 
						|
                build-essential \
 | 
						|
                autoconf \
 | 
						|
                automake \
 | 
						|
                cargo \
 | 
						|
                curl \
 | 
						|
                git \
 | 
						|
                jq \
 | 
						|
                libtool \
 | 
						|
                libpcap-dev \
 | 
						|
                libnet1-dev \
 | 
						|
                libyaml-0-2 \
 | 
						|
                libyaml-dev \
 | 
						|
                libcap-ng-dev \
 | 
						|
                libcap-ng0 \
 | 
						|
                libmagic-dev \
 | 
						|
                libnetfilter-queue-dev \
 | 
						|
                libnetfilter-queue1 \
 | 
						|
                libnfnetlink-dev \
 | 
						|
                libnfnetlink0 \
 | 
						|
                libhiredis-dev \
 | 
						|
                libjansson-dev \
 | 
						|
                libevent-dev \
 | 
						|
                libevent-pthreads-2.1-7 \
 | 
						|
                libjansson-dev \
 | 
						|
                libpython2.7 \
 | 
						|
                libssl-dev \
 | 
						|
                make \
 | 
						|
                parallel \
 | 
						|
                pkg-config \
 | 
						|
                python3-yaml \
 | 
						|
                rustc \
 | 
						|
                software-properties-common \
 | 
						|
                zlib1g \
 | 
						|
                zlib1g-dev          
 | 
						|
      - run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH
 | 
						|
      - name: Installing sccache
 | 
						|
        run: |
 | 
						|
          (cd /tmp && curl -OL https://github.com/mozilla/sccache/releases/download/0.2.13/sccache-0.2.13-x86_64-unknown-linux-musl.tar.gz)
 | 
						|
          mkdir -p "$HOME/.cargo/bin"
 | 
						|
          (cd "$HOME/.cargo/bin" && tar xvf /tmp/sccache-0.2.13-x86_64-unknown-linux-musl.tar.gz --strip-components=1 --wildcards '*/sccache')
 | 
						|
          echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV          
 | 
						|
      - name: Install cbindgen
 | 
						|
        run: |
 | 
						|
          cd $HOME/.cargo/bin
 | 
						|
          curl -OL https://github.com/eqrion/cbindgen/releases/download/v0.24.3/cbindgen
 | 
						|
          chmod 755 cbindgen          
 | 
						|
      - uses: actions/checkout@v3.3.0
 | 
						|
        with:
 | 
						|
          fetch-depth: 0
 | 
						|
      # The action above is supposed to do this for us, but it doesn't appear to stick.
 | 
						|
      - run: /usr/bin/git config --global --add safe.directory /__w/suricata/suricata
 | 
						|
      - run: git fetch
 | 
						|
      - run: git clone https://github.com/OISF/libhtp -b 0.5.x
 | 
						|
      - name: Building all commits
 | 
						|
        run: |
 | 
						|
          echo "Building commits from ${GITHUB_BASE_REF}."
 | 
						|
          for rev in $(git rev-list --reverse origin/${GITHUB_BASE_REF}...); do
 | 
						|
              git checkout $rev
 | 
						|
              echo "Building rev ${rev}" | tee -a build_log.txt
 | 
						|
              ./autogen.sh >> build_log.txt 2>&1
 | 
						|
              CC="sccache gcc" ./configure --enable-unittests >> build_log.txt 2>&1
 | 
						|
              if ! make -j2 >> build_log.txt 2>&1; then
 | 
						|
                  echo "::error ::Failed to build rev ${rev}"
 | 
						|
                  tail -n 50 build_log.txt
 | 
						|
                  exit 1
 | 
						|
              fi
 | 
						|
              make -ik distclean > /dev/null
 | 
						|
          done          
 | 
						|
      - run: sccache -s
 | 
						|
      - uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce
 | 
						|
        name: Uploading build log
 | 
						|
        if: always()
 | 
						|
        with:
 | 
						|
          name: build_log
 | 
						|
          path: build_log.txt
 |