Don't stop tests on one julia versions if second one fails #339
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Main workflow | |
on: | |
[push] | |
jobs: | |
ocaml-build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Use OCaml | |
uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: ocaml-variants.4.12.0+options,ocaml-option-flambda | |
dune-cache: true | |
- name: install dependencies | |
run: opam install . --deps-only --with-test | |
- name: build solvers | |
run: opam exec -- make | |
- name: run ocaml tests | |
run: opam exec -- dune runtest | |
- name: generate patch with new binaries | |
run: git diff --output=binaries_patch --binary | |
- name: store patch | |
uses: actions/upload-artifact@v3 | |
with: | |
name: binaries_patch | |
path: binaries_patch | |
retention-days: 1 | |
- name: remove patch | |
run: rm binaries_patch | |
- name: commit binaries | |
# This checks if the binaries in the repo are up to date and if not, | |
# create a new commit from the author of the last commit | |
run: | | |
git config --local user.email ${{ github.event.commits[0].author.email }} | |
git config --local user.name ${{ github.event.commits[0].author.name }} | |
git diff --quiet && git diff --staged --quiet || \ | |
git commit -am "${{ github.event.commits[0].message }}; update binaries" \ | |
--author=${{ github.event.commits[0].author.email }} | |
- name: Push changes | |
uses: ad-m/github-push-action@master | |
continue-on-error: true | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
branch: ${{ github.ref }} | |
create-virtualenv: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- uses: syphar/restore-pip-download-cache@v1 | |
if: steps.cache-virtualenv.outputs.cache-hit != 'true' | |
- run: pip install -r requirements.txt | |
if: steps.cache-virtualenv.outputs.cache-hit != 'true' | |
test-python: | |
runs-on: ubuntu-latest | |
needs: [create-virtualenv] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: Test with pytest | |
run: python -m pytest tests | |
test-julia: | |
name: Test julia ${{ matrix.version }} | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
version: | |
- '1.9' | |
- '1.8' | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Setup Julia | |
uses: julia-actions/setup-julia@latest | |
with: | |
version: ${{ matrix.version }} | |
- uses: julia-actions/julia-buildpkg@latest | |
with: | |
project: julia_enumerator | |
- name: set cores number | |
run: echo "JULIA_NUM_THREADS=$(getconf _NPROCESSORS_ONLN)" >> $GITHUB_ENV | |
- name: Setup redis | |
uses: zhulik/redis-action@1.1.0 | |
with: | |
redis version: '5' | |
- name: Run Julia package tests | |
uses: julia-actions/julia-runtest@latest | |
with: | |
project: julia_enumerator | |
test-julia-list: | |
name: Test julia list ${{ matrix.version }} | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
version: | |
- '1.9' | |
- '1.8' | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Setup Julia | |
uses: julia-actions/setup-julia@latest | |
with: | |
version: ${{ matrix.version }} | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- uses: julia-actions/julia-buildpkg@latest | |
with: | |
project: julia_enumerator | |
- name: set cores number | |
run: echo "JULIA_NUM_THREADS=$(getconf _NPROCESSORS_ONLN)" >> $GITHUB_ENV | |
- name: Setup redis | |
uses: zhulik/redis-action@1.1.0 | |
with: | |
redis version: '5' | |
- name: run test | |
run: python bin/list.py -t 20 -RS 5 -i 2 --solver=julia -g --primitives=julia | |
test-arc: | |
name: Test arc ${{ matrix.version }} | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
version: | |
- '1.9' | |
- '1.8' | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Setup Julia | |
uses: julia-actions/setup-julia@latest | |
with: | |
version: ${{ matrix.version }} | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- uses: syphar/restore-pip-download-cache@v1 | |
if: steps.cache-virtualenv.outputs.cache-hit != 'true' | |
- run: pip install -r requirements.txt | |
if: steps.cache-virtualenv.outputs.cache-hit != 'true' | |
- uses: julia-actions/julia-buildpkg@latest | |
with: | |
project: julia_enumerator | |
- name: set cores number | |
run: echo "JULIA_NUM_THREADS=$(getconf _NPROCESSORS_ONLN)" >> $GITHUB_ENV | |
- name: Setup redis | |
uses: zhulik/redis-action@1.1.0 | |
with: | |
redis version: '5' | |
- name: run test | |
run: python bin/arc.py -t 20 -RS 5 -i 1 | |
test-julia-recognition-list: | |
name: Test julia recognition list ${{ matrix.version }} | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
version: | |
- '1.9' | |
- '1.8' | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Setup Julia | |
uses: julia-actions/setup-julia@latest | |
with: | |
version: ${{ matrix.version }} | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- uses: julia-actions/julia-buildpkg@latest | |
with: | |
project: julia_enumerator | |
- name: set cores number | |
run: echo "JULIA_NUM_THREADS=$(getconf _NPROCESSORS_ONLN)" >> $GITHUB_ENV | |
- name: Setup redis | |
uses: zhulik/redis-action@1.1.0 | |
with: | |
redis version: '5' | |
- name: run test | |
run: python bin/list.py -t 20 -RS 5 -i 2 --solver=julia -r 0.0 --primitives=julia | |
test-list: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: python bin/list.py -t 2 -RS 5 -i 2 | |
test-text: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: python bin/text.py -t 2 -RS 5 -i 2 | |
test-logo: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
continue-on-error: true | |
run: python bin/logo.py -t 5 -RS 10 --biasOptimal -i 2 | |
test-tower: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: python bin/tower.py -t 2 -RS 5 -i 2 | |
test-graph: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: | | |
mkdir -p tests/out | |
python bin/graphs.py -i 20 --checkpoints tests/resources/kellis_list_exp.pickle --export tests/out/test.png | |
test-rational: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: python bin/rational.py -i 1 -t 1 --testingTimeout 1 | |
-RS 10 -R 10 --pseudoCounts 30 -l -1000000 --aic -1000000 -g | |
test-scientificLaws: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: | | |
mkdir experimentOutputs | |
python bin/scientificLaws.py -i 1 -t 1 -RS 10 -R 10 \ | |
--pseudoCounts 30 -l -1000000 --aic -1000000 -g | |
test-regexes: | |
needs: [ocaml-build, create-virtualenv] | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
if: false | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Download binaries patch | |
uses: actions/download-artifact@v3 | |
with: | |
name: binaries_patch | |
- name: Apply binaries patch | |
run: | | |
if [ -s binaries_patch ]; then | |
git apply binaries_patch | |
fi | |
rm binaries_patch | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.7' | |
- uses: syphar/restore-virtualenv@v1 | |
id: cache-virtualenv | |
- name: run test | |
run: python bin/regexes.py -i 1 -t 1 -RS 10 -R 10 | |
--primitives reduced --tasks new --maxTasks 256 --ll_cutoff bigram --split 0.5 --pseudoCounts 30 | |
-l -1000000 --aic -1000000 --structurePenalty 1.5 --topK 2 --arity 3 --primitives strConst | |
--use_str_const -g |