Skip to content

Merge pull request #83 from jlucarga/restore-changes #63

Merge pull request #83 from jlucarga/restore-changes

Merge pull request #83 from jlucarga/restore-changes #63

name: Test Jupyter Notebooks
on:
workflow_dispatch:
push:
branches:
- main
paths:
- '**.ipynb'
jobs:
test:
runs-on: ubuntu-latest
container:
image: us-central1-docker.pkg.dev/ucb-datahub-2018/user-images/data100-user-image:4497642d
options: --user root
credentials:
username: _json_key
password: ${{ secrets.GCP_SERVICE_ACCOUNT_KEY }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
#- name: Get changed notebooks
# id: changed-notebooks
# uses: tj-actions/changed-files@v44
# with:
# since_last_remote_commit: true
# files: |
# **.ipynb
- name: Set WORKSPACE_DIR
id: set-variables
run: |
echo GITHUB_WORKSPACE: $GITHUB_WORKSPACE
ls -a ${GITHUB_WORKSPACE}
REPO_FULL_NAME="${{ github.repository }}"
echo REPO_FULL_NAME="${REPO_FULL_NAME}"
REPO_NAME="${REPO_FULL_NAME#*/}"
echo REPO_NAME="${REPO_NAME}"
WORKSPACE_DIR="/__w/${REPO_NAME}/${REPO_NAME}"
echo "WORKSPACE_DIR=${WORKSPACE_DIR}" >> $GITHUB_ENV
ls -a ${WORKSPACE_DIR}
- name: Add debugging
run: |
echo "pwd: " `pwd`
echo ============================
echo "ls -a"
ls -a
echo ============================
echo "ls -a ${WORKSPACE_DIR}"
ls -a ${WORKSPACE_DIR}
echo ============================
- name: Execute notebooks
shell: bash
run: |
ls -a
for file in test_notebooks/* ; do
echo "Converting: '${file}'"
if [ ! -f "${file}" ]; then continue ; fi
jupyter nbconvert --to notebook --execute --inplace "$file" || echo FAILED: "${file}"
done
- name: Check for errors
shell: bash
run: |
cd $WORKSPACE_DIR
for file in test_notebooks/* ; do
if [ ! -f "${file}" ]; then continue ; fi
if grep -q "Execution failed" "$file"; then
echo "Notebook execution failed: $file"
#exit 1
fi
done
- name: Get changed files
id: changed-files-git
run: |
cd ${GITHUB_WORKSPACE}
ls -a
git status || true
CHANGED_NOTEBOOKS=$(git diff --name-only HEAD^ || true)
echo "changed_files=${CHANGED_NOTEBOOKS}" >> $GITHUB_OUTPUT