version: 2.1 orbs: slack: circleci/slack@4.1.4 executors: default: docker: - image: easycryptpa/ec-build-box working_directory: ~/easycrypt commands: setup: steps: - checkout - run: name: Update Dependencies command: | opam update opam pin add -n easycrypt . opam install --deps-only easycrypt build: steps: - run: name: Compile EasyCrypt command: opam config exec -- make check: parameters: target: type: string steps: - run: name: Compile EasyCrypt Library (<< parameters.target >>) command: opam config exec -- make << parameters.target >> notify: steps: - slack/notify: event: fail template: basic_fail_1 jobs: build: executor: default steps: - setup - build - notify check: executor: default parameters: target: type: string steps: - setup - build - check: target: << parameters.target >> - notify - store_artifacts: path: report.log destination: report-<< parameters.target >>.log workflows: matrix-tests: jobs: - build: context: slack - check: requires: [build] context: slack matrix: parameters: target: [check, examples]