Skip to content

Commit 91b952d

Browse files
committed
Continuous Verification Framework
1 parent c152b63 commit 91b952d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

81 files changed

+728
-6884
lines changed

.github/workflows/deploy.yml

Lines changed: 13 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,6 @@ jobs:
1717
with:
1818
python-version: ${{ matrix.python-version }}
1919

20-
- name: Configure system for container mode
21-
run: |
22-
echo "Enabling unprivileged user namespaces..."
23-
sudo sysctl kernel.unprivileged_userns_clone=1
24-
sudo sysctl -w user.max_user_namespaces=10000
25-
26-
- name: Install system dependencies
27-
run: |
28-
echo "Installing required packages..."
29-
sudo apt-get update
30-
sudo apt-get install -y openjdk-17-jdk
31-
echo "Configuring Java 17 as default..."
32-
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1
33-
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-17-openjdk-amd64/bin/javac 1
34-
sudo update-alternatives --set java /usr/lib/jvm/java-17-openjdk-amd64/bin/java
35-
sudo update-alternatives --set javac /usr/lib/jvm/java-17-openjdk-amd64/bin/javac
36-
echo "JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64" >> $GITHUB_ENV
37-
3820
- name: Install Python dependencies
3921
run: |
4022
python3 -m pip install --upgrade pip
@@ -44,19 +26,8 @@ jobs:
4426
run: |
4527
echo "Building and deploying CV..."
4628
make install -j"$(nproc)" DEPLOY_DIR=build
47-
make install-cif-compiled -j"$(nproc)" DEPLOY_DIR=build
48-
49-
- name: Run integration tests
50-
run: |
51-
echo "Running integration tests..."
52-
cp -r docs/examples/sources/ build/
53-
cd build
54-
python3 ./scripts/launch.py -c configs/it.json
5529
56-
echo "Verifying results..."
57-
grep "it;smg;no_memory_leak_caller;TRUE;SUCCESS" results/report_launches_it_*.csv || exit 1
58-
grep "it;smg;memory_leak_caller;FALSE;SUCCESS" results/report_launches_it_*.csv || exit 1
59-
build-visualizer:
30+
build-witness-visualizer:
6031
runs-on: ubuntu-latest
6132
strategy:
6233
matrix:
@@ -75,8 +46,8 @@ jobs:
7546
run: |
7647
DEPLOY_DIR=build make install-benchmark-visualizer -j$(nproc)
7748
cd build
78-
python3 ./scripts/visualize_witnesses.py -r results/ -d ../docs/examples/witnesses/violation/
79-
python3 ./scripts/visualize_witnesses.py -r results/ -d ../docs/examples/witnesses/correctness/
49+
python3 ./cv/witness_visualizer.py -r results/ -d ../docs/examples/witnesses/violation/
50+
python3 ./cv/witness_visualizer.py -r results/ -d ../docs/examples/witnesses/correctness/
8051
build-mea:
8152
runs-on: ubuntu-latest
8253
strategy:
@@ -96,8 +67,8 @@ jobs:
9667
run: |
9768
DEPLOY_DIR=build make install-mea -j$(nproc)
9869
cd build
99-
python3 ./scripts/filter.py -d ../docs/examples/witnesses/violation/
100-
build-frama-c-cil:
70+
python3 ./cv/mea.py -d ../docs/examples/witnesses/violation/
71+
deploy-cvv:
10172
runs-on: ubuntu-latest
10273
strategy:
10374
matrix:
@@ -108,6 +79,12 @@ jobs:
10879
uses: actions/setup-python@v3
10980
with:
11081
python-version: ${{ matrix.python-version }}
111-
- name: Deployment of Frama-C CIL
82+
- name: Install dependencies
83+
run: |
84+
python3 -m pip install --upgrade pip
85+
pip3 install -r requirements.txt
86+
- name: Deployment of MEA
11287
run: |
113-
DEPLOY_DIR=build make install-frama-c-cil -j$(nproc)
88+
DEPLOY_DIR=build make deploy-cvv -j$(nproc)
89+
cd build/cvv
90+
deploys/deployment.sh

.gitignore

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
__pycache__/
2-
work_dir*
2+
work_dir
33
results
4-
tools/
5-
buildbot/
6-
plugin/
4+
tools

.pylintrc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,18 @@
11
[MESSAGES CONTROL]
22

33
disable=
4-
wildcard-import,
5-
unused-wildcard-import,
64
too-many-instance-attributes,
75
too-many-locals,
86
too-many-arguments,
97
broad-exception-caught,
108
fixme,
119
logging-fstring-interpolation,
1210
too-many-branches,
13-
unused-import,
1411
import-error,
1512
too-many-statements,
1613
too-many-nested-blocks,
1714
import-outside-toplevel,
1815
no-member,
1916
duplicate-code,
2017
too-few-public-methods,
21-
unnecessary-lambda,
22-
no-name-in-module,
2318
line-too-long
24-

.reuse/dep5

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2+
Upstream-Name: CV-common
3+
Upstream-Contact: Vitalii Mordan <mordan@ispras.ru>
4+
Source: https://github.com/ispras/cv
5+
6+
# Sample paragraph, commented out:
7+
#
8+
# Files: cv/*
9+
# Copyright: $YEAR $NAME <$CONTACT>
10+
# License: ...

.reuse/templates/header.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Continuous Verification Framework provides processing and managing verification results.
2+
https://github.com/ispras/cv
3+
4+
{% for copyright_line in copyright_lines %}
5+
{{ copyright_line }}
6+
{% endfor %}
7+
8+
{% for expression in spdx_expressions %}
9+
SPDX-License-Identifier: {{ expression }}
10+
{% endfor %}

0 commit comments

Comments
 (0)