1 1.1 christos name: facebook/zstd/commit 2 1.1 christos on: 3 1.1 christos push: 4 1.1 christos branches: 5 1.1 christos - dev 6 1.1 christos permissions: read-all 7 1.1 christos jobs: 8 1.1 christos short-tests-0: 9 1.1 christos runs-on: ubuntu-latest 10 1.1 christos services: 11 1.1 christos docker: 12 1.1 christos image: fbopensource/zstd-circleci-primary:0.0.1 13 1.1 christos options: --entrypoint /bin/bash 14 1.1 christos steps: 15 1.1 christos - uses: actions/checkout@v4 16 1.1 christos - name: Install Dependencies 17 1.1 christos run: | 18 1.1 christos sudo apt-get update 19 1.1 christos sudo apt-get install libcurl4-gnutls-dev 20 1.1 christos - name: Test 21 1.1 christos run: | 22 1.1 christos ./tests/test-license.py 23 1.1 christos cc -v 24 1.1 christos CFLAGS="-O0 -Werror -pedantic" make allmost; make clean 25 1.1 christos make c99build; make clean 26 1.1 christos make c11build; make clean 27 1.1 christos make -j regressiontest; make clean 28 1.1 christos make shortest; make clean 29 1.1 christos make cxxtest; make clean 30 1.1 christos short-tests-1: 31 1.1 christos runs-on: ubuntu-latest 32 1.1 christos services: 33 1.1 christos docker: 34 1.1 christos image: fbopensource/zstd-circleci-primary:0.0.1 35 1.1 christos options: --entrypoint /bin/bash 36 1.1 christos steps: 37 1.1 christos - uses: actions/checkout@v4 38 1.1 christos - name: Install Dependencies 39 1.1 christos run: | 40 1.1 christos sudo apt-get update 41 1.1 christos sudo apt-get install gcc-powerpc-linux-gnu gcc-arm-linux-gnueabi gcc-aarch64-linux-gnu libc6-dev-ppc64-powerpc-cross libcurl4-gnutls-dev lib64gcc-11-dev-powerpc-cross 42 1.1 christos - name: Test 43 1.1 christos run: |- 44 1.1 christos make gnu90build; make clean 45 1.1 christos make gnu99build; make clean 46 1.1 christos make ppc64build V=1; make clean 47 1.1 christos make ppcbuild V=1; make clean 48 1.1 christos make armbuild V=1; make clean 49 1.1 christos make aarch64build V=1; make clean 50 1.1 christos make -C tests test-legacy test-longmatch; make clean 51 1.1 christos make -C lib libzstd-nomt; make clean 52 1.1 christos regression-test: 53 1.1 christos runs-on: ubuntu-latest 54 1.1 christos services: 55 1.1 christos docker: 56 1.1 christos image: fbopensource/zstd-circleci-primary:0.0.1 57 1.1 christos options: --entrypoint /bin/bash 58 1.1 christos env: 59 1.1 christos CIRCLE_ARTIFACTS: "/tmp/circleci-artifacts" 60 1.1 christos steps: 61 1.1 christos - uses: actions/checkout@v4 62 1.1 christos - name: restore_cache 63 1.1 christos uses: actions/cache@v4 64 1.1 christos with: 65 1.1 christos key: regression-cache-{{ checksum "tests/regression/data.c" }}-v0 66 1.1 christos path: tests/regression/cache 67 1.1 christos restore-keys: regression-cache-{{ checksum "tests/regression/data.c" }}-v0 68 1.1 christos - name: Install Dependencies 69 1.1 christos run: | 70 1.1 christos sudo apt-get update 71 1.1 christos sudo apt-get install libcurl4-gnutls-dev 72 1.1 christos - name: Regression Test 73 1.1 christos run: | 74 1.1 christos make -C programs zstd 75 1.1 christos make -C tests/regression test 76 1.1 christos mkdir -p $CIRCLE_ARTIFACTS 77 1.1 christos ./tests/regression/test \ 78 1.1 christos --cache tests/regression/cache \ 79 1.1 christos --output $CIRCLE_ARTIFACTS/results.csv \ 80 1.1 christos --zstd programs/zstd 81 1.1 christos echo "NOTE: The new results.csv is uploaded as an artifact to this job" 82 1.1 christos echo " If this fails, go to the Artifacts pane in CircleCI, " 83 1.1 christos echo " download /tmp/circleci-artifacts/results.csv, and if they " 84 1.1 christos echo " are still good, copy it into the repo and commit it." 85 1.1 christos echo "> diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv" 86 1.1 christos diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv 87 1.1 christos - uses: actions/upload-artifact@v4 88 1.1 christos with: 89 1.1 christos path: "/tmp/circleci-artifacts" 90