np/.github/workflows/check_ed.yml
dependabot[bot] 3cd50625ef
Bump actions/checkout from 6 to 7
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-22 06:33:44 +00:00

123 lines
3.4 KiB
YAML

name: "Test ed template"
on:
workflow_dispatch:
push:
paths:
- 'templates/ed/**'
- 'tests/ed/**'
- '.github/workflows/check_ed.yml'
pull_request:
paths:
- 'templates/ed/**'
- 'tests/ed/**'
- '.github/workflows/check_ed.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v7
- uses: cachix/install-nix-action@v31
with:
github_access_token: ${{ github.token }}
- uses: cachix/cachix-action@v17
with:
name: rde
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
extraPullNames: rstats-on-nix, nix-community
- name: Build template
run: nix build ./templates/ed
- name: Test R script
env:
NO_NUSHELL: '1'
run: |
cd templates/ed
nix develop --command bash -c "Rscript ${{ github.workspace }}/tests/ed/test.R"
- name: Test Python script (disabled by default)
env:
NO_NUSHELL: '1'
run: |
cd templates/ed
nix develop --command bash -c "python3 ${{ github.workspace }}/tests/ed/test.py" || echo "SKIP: Python packages not enabled"
test-with-python:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: cachix/install-nix-action@v31
with:
github_access_token: ${{ github.token }}
- uses: cachix/cachix-action@v17
with:
name: rde
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
extraPullNames: rstats-on-nix, nix-community
- name: Setup test directory with Python enabled
run: |
TEST_DIR=$(mktemp -d)
cp -r templates/ed/. "$TEST_DIR/"
cd "$TEST_DIR"
sed -i 's/python[[:space:]]*=[[:space:]]*false;/python = true;/' flake.nix
grep -q "python[[:space:]]*=[[:space:]]*true;" flake.nix || {
echo "Error: Failed to enable Python in flake.nix"
exit 1
}
echo "TEST_DIR=$TEST_DIR" >> $GITHUB_ENV
- name: Build with Python enabled
run: |
cd "$TEST_DIR"
nix build
- name: Test Python packages
env:
NO_NUSHELL: '1'
run: |
cd "$TEST_DIR"
nix develop --command bash -c "python3 ${{ github.workspace }}/tests/ed/test.py"
test-with-julia:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: cachix/install-nix-action@v31
with:
github_access_token: ${{ github.token }}
- uses: cachix/cachix-action@v17
with:
name: rde
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
extraPullNames: rstats-on-nix, nix-community
- name: Setup test directory with Julia enabled
run: |
TEST_DIR=$(mktemp -d)
cp -r templates/ed/. "$TEST_DIR/"
cd "$TEST_DIR"
sed -i 's/julia[[:space:]]*=[[:space:]]*false;/julia = true;/' flake.nix
grep -q "julia[[:space:]]*=[[:space:]]*true;" flake.nix || {
echo "Error: Failed to enable Julia in flake.nix"
exit 1
}
echo "TEST_DIR=$TEST_DIR" >> $GITHUB_ENV
- name: Build with Julia enabled
run: |
cd "$TEST_DIR"
nix build
- name: Test Julia packages
env:
NO_NUSHELL: '1'
run: |
cd "$TEST_DIR"
# nix develop --command bash -c "julia ${{ github.workspace }}/tests/ed/test.jl"