/ .github / workflows / ci.yml
ci.yml
 1  # SPDX-License-Identifier: AGPL-3.0-or-later
 2  name: CI
 3  
 4  on:
 5    push:
 6      branches: [main]
 7    pull_request:
 8      branches: [main]
 9  
10  permissions: read-all
11  
12  jobs:
13    build:
14      runs-on: ubuntu-latest
15  
16      steps:
17        - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
18  
19        - name: Install GNAT and GPRbuild
20          run: |
21            sudo apt-get update
22            sudo apt-get install -y gnat gprbuild
23  
24        - name: Build
25          run: gprbuild -P bitfuckit.gpr
26  
27        - name: Smoke test
28          run: bin/bitfuckit --help
29  
30    verify:
31      runs-on: ubuntu-latest
32  
33      steps:
34        - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
35  
36        - name: Install GNAT, GPRbuild, and GNATprove
37          run: |
38            sudo apt-get update
39            sudo apt-get install -y gnat gprbuild gnatprove || true
40  
41        - name: SPARK verification (best effort)
42          run: gnatprove -P bitfuckit.gpr --mode=check || echo "SPARK verification requires full toolchain"
43          continue-on-error: true