Skip to content

Sync ako/mxcli: LIST FOLDERS, OData publishing + external entities, test-runner cleanup, check-rule corrections #1518

Sync ako/mxcli: LIST FOLDERS, OData publishing + external entities, test-runner cleanup, check-rule corrections

Sync ako/mxcli: LIST FOLDERS, OData publishing + external entities, test-runner cleanup, check-rule corrections #1518

Workflow file for this run

name: Build, Test & Lint
on: [push, pull_request]
permissions:
contents: read
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-go@v7
with:
go-version: '1.26.5'
- name: Cache ANTLR4 JAR
uses: actions/cache@v6
with:
path: ~/.m2/repository/org/antlr/antlr4
key: antlr4-4.13.2
- name: Install ANTLR4
run: pip install 'antlr4-tools==0.2.2'
- name: Generate parser
run: make grammar
env:
ANTLR4_TOOLS_ANTLR_VERSION: '4.13.2'
- name: Build
run: make build
- name: Test
run: make test
- name: Check MDL example scripts
# Single source of truth: `make check-mdl` covers BOTH doctype-tests/ and
# bug-tests/ (skipping *.test.mdl, inverting *.fail.mdl negative tests, and
# honouring the pre-existing-failure SKIP list). Previously this step only
# iterated doctype-tests/, so bug-test regression fixtures had no CI gate.
run: make check-mdl
- name: Check skill MDL blocks
run: ./scripts/check-skill-mdl.sh ./bin/mxcli .claude/skills/mendix
- name: Check docs-site MDL blocks
run: ./scripts/check-skill-mdl.sh ./bin/mxcli docs-site/src
- name: Setup mxbuild
run: ./bin/mxcli setup mxbuild --version 11.12.2
- name: Integration tests
run: make test-integration
timeout-minutes: 30
- name: Lint Go
run: make lint-go
- name: Vulnerability scan
run: |
go install golang.org/x/vuln/cmd/govulncheck@latest
govulncheck ./...