X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=deps%2Flibchdr%2Fdeps%2Fzstd-1.5.5%2F.circleci%2Fconfig.yml;fp=deps%2Flibchdr%2Fdeps%2Fzstd-1.5.5%2F.circleci%2Fconfig.yml;h=621ac49ffeb63d1d989f6fd75ffe5702782a30b2;hb=648db22b0750712da893c306efcc8e4b2d3a4e3c;hp=0000000000000000000000000000000000000000;hpb=e2fb1389dc12376acb84e4993ed3b08760257252;p=pcsx_rearmed.git diff --git a/deps/libchdr/deps/zstd-1.5.5/.circleci/config.yml b/deps/libchdr/deps/zstd-1.5.5/.circleci/config.yml new file mode 100644 index 00000000..621ac49f --- /dev/null +++ b/deps/libchdr/deps/zstd-1.5.5/.circleci/config.yml @@ -0,0 +1,123 @@ +version: 2 + +jobs: + # the first half of the jobs are in this test + short-tests-0: + # TODO: Create a small custom docker image with all the dependencies we need + # preinstalled to reduce installation time. + docker: + - image: fbopensource/zstd-circleci-primary:0.0.1 + steps: + - checkout + - run: + name: Test + command: | + ./tests/test-license.py + cc -v + CFLAGS="-O0 -Werror -pedantic" make allmost; make clean + make c99build; make clean + make c11build; make clean + make -j regressiontest; make clean + make shortest; make clean + make cxxtest; make clean + # the second half of the jobs are in this test + short-tests-1: + docker: + - image: fbopensource/zstd-circleci-primary:0.0.1 + steps: + - checkout + - run: + name: Test + command: | + make gnu90build; make clean + make gnu99build; make clean + make ppc64build V=1; make clean + make ppcbuild V=1; make clean + make armbuild V=1; make clean + make aarch64build V=1; make clean + make -C tests test-legacy test-longmatch; make clean + make -C lib libzstd-nomt; make clean + # This step should only be run in a cron job + regression-test: + docker: + - image: fbopensource/zstd-circleci-primary:0.0.1 + environment: + CIRCLE_ARTIFACTS: /tmp/circleci-artifacts + steps: + - checkout + # Restore the cached resources. + - restore_cache: + # We try our best to bust the cache when the data changes by hashing + # data.c. If that doesn't work, simply update the version number here + # and below. If we fail to bust the cache, the regression testing will + # still work, since it has its own stamp, but will need to redownload + # everything. + keys: + - regression-cache-{{ checksum "tests/regression/data.c" }}-v0 + - run: + name: Regression Test + command: | + make -C programs zstd + make -C tests/regression test + mkdir -p $CIRCLE_ARTIFACTS + ./tests/regression/test \ + --cache tests/regression/cache \ + --output $CIRCLE_ARTIFACTS/results.csv \ + --zstd programs/zstd + echo "NOTE: The new results.csv is uploaded as an artifact to this job" + echo " If this fails, go to the Artifacts pane in CircleCI, " + echo " download /tmp/circleci-artifacts/results.csv, and if they " + echo " are still good, copy it into the repo and commit it." + echo "> diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv" + diff tests/regression/results.csv $CIRCLE_ARTIFACTS/results.csv + # Only save the cache on success (default), since if the failure happened + # before we stamp the data cache, we will have a bad cache for this key. + - save_cache: + key: regression-cache-{{ checksum "tests/regression/data.c" }}-v0 + paths: + - tests/regression/cache + - store_artifacts: + path: /tmp/circleci-artifacts + + +workflows: + version: 2 + commit: + jobs: + # Run the tests in parallel + - short-tests-0 + - short-tests-1 + - regression-test + + nightly: + triggers: + - schedule: + cron: "0 0 * * *" + filters: + branches: + only: + - release + - dev + - master + jobs: + # Run daily regression tests + - regression-test + + + + # Longer tests + #- make -C tests test-zstd-nolegacy && make clean + #- pyenv global 3.4.4; make -C tests versionsTest && make clean + #- make zlibwrapper && make clean + #- gcc -v; make -C tests test32 MOREFLAGS="-I/usr/include/x86_64-linux-gnu" && make clean + #- make uasan && make clean + #- make asan32 && make clean + #- make -C tests test32 CC=clang MOREFLAGS="-g -fsanitize=address -I/usr/include/x86_64-linux-gnu" + # Valgrind tests + #- CFLAGS="-O1 -g" make -C zlibWrapper valgrindTest && make clean + #- make -C tests valgrindTest && make clean + # ARM, AArch64, PowerPC, PowerPC64 tests + #- make ppctest && make clean + #- make ppc64test && make clean + #- make armtest && make clean + #- make aarch64test && make clean