f535537f |
1 | name: facebook/zstd/nightly |
2 | on: |
3 | schedule: |
4 | - cron: 0 0 * * * |
5 | push: |
6 | branches: |
7 | - release |
8 | - dev |
9 | - master |
10 | permissions: read-all |
11 | jobs: |
12 | regression-test: |
13 | runs-on: ubuntu-latest |
14 | services: |
15 | docker: |
16 | image: fbopensource/zstd-circleci-primary:0.0.1 |
17 | options: --entrypoint /bin/bash |
18 | env: |
19 | CIRCLE_ARTIFACTS: "/tmp/circleci-artifacts" |
20 | steps: |
21 | - uses: actions/checkout@v4 |
22 | - uses: actions/cache@v4 |
23 | with: |
24 | key: regression-cache-{{ checksum "tests/regression/data.c" }}-v0 |
25 | path: tests/regression/cache |
26 | restore-keys: regression-cache-{{ checksum "tests/regression/data.c" }}-v0 |
27 | - uses: actions/upload-artifact@v4 |
28 | with: |
29 | path: "/tmp/circleci-artifacts" |
30 | - name: Install Dependencies |
31 | run: | |
32 | sudo apt-get update |
33 | sudo apt-get install libcurl4-gnutls-dev |
34 | - name: Regression Test |
35 | run: | |
36 | make -C programs zstd |
37 | make -C tests/regression test |
38 | mkdir -p $CIRCLE_ARTIFACTS |
39 | ./tests/regression/test \ |
40 | --cache tests/regression/cache \ |
41 | --output $CIRCLE_ARTIFACTS/results.csv \ |
42 | --zstd programs/zstd |
43 | echo "NOTE: The new results.csv is uploaded as an artifact to this job" |
44 | echo " If this fails, go to the Artifacts pane in CircleCI, " |
45 | echo " download /tmp/circleci-artifacts/results.csv, and if they " |
46 | echo " are still good, copy it into the repo and commit it." |
47 | echo "> diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv" |
48 | diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv |
49 | |
50 | # Longer tests |
51 | #- make -C tests test-zstd-nolegacy && make clean |
52 | #- pyenv global 3.4.4; make -C tests versionsTest && make clean |
53 | #- make zlibwrapper && make clean |
54 | #- gcc -v; make -C tests test32 MOREFLAGS="-I/usr/include/x86_64-linux-gnu" && make clean |
55 | #- make uasan && make clean |
56 | #- make asan32 && make clean |
57 | #- make -C tests test32 CC=clang MOREFLAGS="-g -fsanitize=address -I/usr/include/x86_64-linux-gnu" |
58 | # Valgrind tests |
59 | #- CFLAGS="-O1 -g" make -C zlibWrapper valgrindTest && make clean |
60 | #- make -C tests valgrindTest && make clean |
61 | # ARM, AArch64, PowerPC, PowerPC64 tests |
62 | #- make ppctest && make clean |
63 | #- make ppc64test && make clean |
64 | #- make armtest && make clean |
65 | #- make aarch64test && make clean |