Skip to content

Build and Package TLA Proof Manager #212

Build and Package TLA Proof Manager

Build and Package TLA Proof Manager #212

Workflow file for this run

name: Build and Package TLA Proof Manager
on:
push:
schedule:
- cron: '42 5 5 * *'
jobs:
test:
name: Build TLAPS installer and test it
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [
macos-latest,
ubuntu-latest]
ocaml-compiler: [
'0',
'1',
'2',
]
steps:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.10'
- uses: actions/checkout@v2
- name: Get OCaml version
run: |
INDEX=${{ matrix.ocaml-compiler }}
OCAML_VERSION=\
`python .github/workflows/ocaml_versions.py $INDEX`
echo "OCAML_VERSION=$OCAML_VERSION" \
>> $GITHUB_ENV
echo "OCAML_VERSION = $OCAML_VERSION"
- uses: ocaml/setup-ocaml@v2
with:
ocaml-compiler: ${{ env.OCAML_VERSION }}
- name: Build installer of TLAPS
run: |
eval $(opam env)
./configure
cd tools/installer
./tlaps-release.sh
- name: Define TLAPS-related env vars
run: |
python .github/workflows/setup_shell_env.py \
>> $GITHUB_ENV
- name: Run installer of TLAPS
run: |
./tools/installer/\
${{ env.INSTALLER }} -d .
- name: Install dependencies for testing
run: |
opam install kaputt
- name: Run a subset of `tlapm` tests
run: |
eval $(opam env)
PATH=$(pwd)/bin:$(pwd)/lib/tlaps/bin:$PATH make test
- name: Run all `tlapm` tests
if: >-
matrix.operating-system == 'ubuntu-latest' &&
matrix.ocaml-compiler == '2'
run: |
ls -lah
eval $(opam env)
ocaml --version
make
PATH=$(pwd)/bin:$(pwd)/lib/tlaps/bin:$PATH which tlapm
PATH=$(pwd)/bin:$(pwd)/lib/tlaps/bin:$PATH which zenon
PATH=$(pwd)/bin:$(pwd)/lib/tlaps/bin:$PATH tlapm --version
PATH=$(pwd)/bin:$(pwd)/lib/tlaps/bin:$PATH make testall
- name: Print Test Results
if: matrix.operating-system == 'ubuntu-latest'
run: |
cat test/tests.log