# This is a basic workflow to help you get started with Actions name: CI # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the master branch on: push: branches: [ master ] pull_request: branches: [ master ] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" build: # The type of runner that the job will run on runs-on: ubuntu-latest # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - name: Opam modules cache uses: actions/cache@v1 env: cache-name: cache-opam-modules with: # OCaml cache files are stored in `~/.opam` on Linux/macOS path: ~/.opam key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('catala.opam', 'legifrance_catala.opam') }} restore-keys: | ${{ runner.os }}-build-${{ env.cache-name }}- ${{ runner.os }}-build- ${{ runner.os }}- - name: Set up OCaml uses: avsm/setup-ocaml@v1.1.3 with: # Version of the OCaml compiler to initialise ocaml-version: 4.09.1 - name: Install dependencies run: | eval $(opam env) make install-dependencies sudo apt update sudo apt install python3-dev python3-setuptools man2html rsync colordiff sudo python3 -m pip install --upgrade pip sudo python3 -m pip install virtualenv - name: Make compiler run: | eval $(opam env) make build - name: Run tests run: | eval $(opam env) make tests - name: Make assets and documentation run: | eval $(opam env) make website-assets doc