Skip to content
Snippets Groups Projects
prepare_notebooks.sh 1.29 KiB
Newer Older
  • Learn to ignore specific revisions
  • #! /bin/sh
    #
    # create_installer.sh
    # Copyright (C) 2019 Uwe Schitt <uwe.schmitt@id.ethz.ch>
    #
    # Distributed under terms of the MIT license.
    #
    
    set -e
    
    # files to include for installation:
    NOTEBOOKS=??_*.ipynb
    
    LOCAL_BUILD_FOLDER=$(pwd)/build
    rm -rf ${LOCAL_BUILD_FOLDER}
    
    # create fresh folder structure to build archive with notebooks
    rm -rf ${LOCAL_BUILD_FOLDER}
    mkdir -p ${LOCAL_BUILD_FOLDER}/course
    mkdir -p ${LOCAL_BUILD_FOLDER}/solutions
    
    cp ../custom.html ${LOCAL_BUILD_FOLDER}/course
    cp ../custom.html ${LOCAL_BUILD_FOLDER}/solutions
    
    # cp -r ../data ${LOCAL_BUILD_FOLDER}/course
    # cp -r ../data ${LOCAL_BUILD_FOLDER}/solutions
    
    cp -r ../images ${LOCAL_BUILD_FOLDER}/course
    cp -r ../images ${LOCAL_BUILD_FOLDER}/solutions
    
    # create solution notebooks, copy originals and solutions
    # to build folder
    pushd .. >/dev/null
    
    for NOTEBOOK in ${NOTEBOOKS}; do
        echo process ${NOTEBOOK}
        jupyter nbconvert --ClearOutputPreprocessor.enabled=True --inplace ${NOTEBOOK}
    
        TARGET=${LOCAL_BUILD_FOLDER}/course/${NOTEBOOK}
        echo ${TARGET}
        nb-filter-cells -i $NOTEBOOK -t solution | nb-filter-cells -t TODO -o ${TARGET}
    
        TARGET=${LOCAL_BUILD_FOLDER}/solutions/${NOTEBOOK%.ipynb}-with-solutions.ipynb
        nb-filter-cells -i $NOTEBOOK -t TODO -o ${TARGET}
        # cp $NOTEBOOK ${TARGET}
    done
    
    popd >/dev/null
    echo