37 lines
1.1 KiB
YAML
37 lines
1.1 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
build-test:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install build tools
|
|
run: sudo apt-get update && sudo apt-get install -y gcc make python3
|
|
- name: Build
|
|
run: make
|
|
- name: Run tests
|
|
run: ./claro test
|
|
- name: Run current release validation
|
|
run: ./claro validate
|
|
- name: Validate typecheck diagnostics
|
|
run: python3 tools/validate_typecheck_diagnostics.py
|
|
- name: Validate version convention
|
|
run: python3 tools/validate_version_convention.py
|
|
- name: Validate package security
|
|
run: python3 tools/validate_package_security.py
|
|
- name: Validate compiler warnings
|
|
run: python3 tools/validate_compiler_warnings.py
|
|
- name: Validate CI workflow coverage
|
|
run: python3 tools/validate_ci_workflow.py
|
|
- name: Check lessons
|
|
run: |
|
|
./claro check lessons/01_hello.claro
|
|
./claro check lessons/03_variables.claro
|
|
./claro check lessons/08_functions.claro
|
|
- name: Validate RC3
|
|
run: python3 tools/validate_rc3.py
|