Skip to content

Don't stop tests on one julia versions if second one fails #339

Don't stop tests on one julia versions if second one fails

Don't stop tests on one julia versions if second one fails #339

Workflow file for this run

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