File: notebooks.sh

package info (click to toggle)
neuron 8.2.6-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 34,760 kB
  • sloc: cpp: 149,571; python: 58,465; ansic: 50,329; sh: 3,510; xml: 213; pascal: 51; makefile: 35; sed: 5
file content (36 lines) | stat: -rw-r--r-- 905 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env bash
set -e

notebook_dirs=(
  "tutorials"
  "rxd-tutorials"
)

convert_notebooks() {
  set -e
  working_dir=$1
  echo "Running convert_notebooks in $1"
  (cd "$working_dir" && jupyter nbconvert --to notebook --inplace --execute *.ipynb)
}

clean_notebooks() {
  set -e
  working_dir=$1
  echo "Running clean_notebooks in $1"
  (cd "$working_dir" && jupyter nbconvert --ClearOutputPreprocessor.enabled=True --ClearMetadataPreprocessor.enabled=True --clear-output --inplace *.ipynb)
}

if [ $# -ge 1 ]; then
    echo "Cleaning notebooks output."
    for i in ${notebook_dirs[@]} ; do
      clean_notebooks "$i"
    done
else
  echo "Executing and embedding outputs inplace into jupyter notebooks."
  for i in ${notebook_dirs[@]} ; do
    convert_notebooks "$i"
  done
  echo 'Done. NOTE: remember to run target `notebooks-clean` before a PR. The `docs` target does this automatically.'
fi