name: CI on: push: paths: - "**/*.go" - "**/*.js" - "**/*.py" - ".github/workflows/ci.yml" jobs: build: runs-on: ubuntu-latest container: image: archlinux:latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Install dependencies run: | pacman -Sy --noconfirm git base-devel go nodejs npm python-pip - name: Build Go run: | go build ./... - name: Lint Go run: | go vet ./... - name: Test Go run: | go test -race ./... - name: Lint JS run: | npm ci && npx eslint . - name: Lint Python run: | pip install flake8 && flake8 . - name: Run tests (Node) run: | npm test