diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 6f4202f..c25003f 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -24,11 +24,15 @@ jobs: uses: actions/setup-python@v5 with: python-version: "3.11" + cache: "pip" + cache-dependency-path: libs/openant-core/pyproject.toml - name: Set up Node.js uses: actions/setup-node@v5 with: node-version: "22" + cache: "npm" + cache-dependency-path: libs/openant-core/parsers/javascript/package-lock.json - name: Install Python dependencies working-directory: libs/openant-core @@ -38,9 +42,17 @@ jobs: working-directory: libs/openant-core run: ruff check . + - name: Cache JS parser node_modules + id: cache-node-modules + uses: actions/cache@v4 + with: + path: libs/openant-core/parsers/javascript/node_modules + key: ${{ runner.os }}-jsparser-nodemodules-${{ hashFiles('libs/openant-core/parsers/javascript/package-lock.json') }} + - name: Install JS parser dependencies + if: steps.cache-node-modules.outputs.cache-hit != 'true' working-directory: libs/openant-core/parsers/javascript - run: npm install + run: npm ci - name: Run Python and parser tests working-directory: libs/openant-core @@ -67,11 +79,15 @@ jobs: uses: actions/setup-python@v5 with: python-version: "3.11" + cache: "pip" + cache-dependency-path: libs/openant-core/pyproject.toml - name: Set up Node.js uses: actions/setup-node@v5 with: node-version: "22" + cache: "npm" + cache-dependency-path: libs/openant-core/parsers/javascript/package-lock.json - name: Vet working-directory: apps/openant-cli @@ -101,9 +117,17 @@ jobs: working-directory: libs/openant-core run: pip install -e ".[dev]" + - name: Cache JS parser node_modules + id: cache-node-modules + uses: actions/cache@v4 + with: + path: libs/openant-core/parsers/javascript/node_modules + key: ${{ runner.os }}-jsparser-nodemodules-${{ hashFiles('libs/openant-core/parsers/javascript/package-lock.json') }} + - name: Install JS parser dependencies + if: steps.cache-node-modules.outputs.cache-hit != 'true' working-directory: libs/openant-core/parsers/javascript - run: npm install + run: npm ci - name: Run Go CLI integration tests working-directory: libs/openant-core