-
Notifications
You must be signed in to change notification settings - Fork 248
Finalizing a Course
Ryan Holbrook edited this page Jan 22, 2021
·
1 revision
- Create a course description spreadsheet in Google Sheets with your course name as the title.
- Enter values like:
Lesson # | Tut / Ex | Description | Slug | Script ID | ? count | Lesson IDs |
---|---|---|---|---|---|---|
1 | Tut | What shows up on the course card. | lesson-name | 4 | ||
Ex |
- Create
prod.yaml
inlearntools/notebooks/course_name/
- Paste in this template:
# Rendered ipynb files and kernel metadata json files for this config will be saved at notebooks/<track>/<tag>/
tag: prod
public: false
# If true, then exercise kernels synced to kaggle will have internet enabled and will begin
# with a cell that pip installs the current learntools branch. (Useful for testing
# notebooks on Kernels without requiring image docker deploy for every learntools change)
development: false
# By itself, this flag does nothing. But it can be useful to have 'testing' cells in exercise
# notebooks (testing the checking code on various correct and incorrect solutions) whose
# inclusion in the rendered notebook is conditioned on this flag (using a macro like #%%RM_IF(PROD)%%
# where "prod" is the opposite of "testing")
testing: false
# A string to append to titles and slugs of kernels generated under this config (so that the generated
# kernels are pushed to a separate destination from the default config). If testing is true, suffix
# defaults to 'testing'
#suffix: foo
# Author username usually gets set in track_meta.py. The following optional key will overwrite
# the author for kernels generated under this particular config. (Example use case: author A
# is working on notebooks originally authored by author B. The default 'production' notebooks
# should keep their original slugs under author B's namespace. But if author A wants to push
# new testing versions of the notebook, they can set author: author_A in testing.yaml to generate
# new versions of the kernels under their own username.
#author: jane_doe
Note that public
is currently set to false
. Before the announcement email, this should be changed to true
.
- Run
learntools/notebooks/prepare_push.py course_name
. This renders the notebooks incourse_name/prod/
. - Run
learntools/notebooks/pushall.sh course_name/prod
. This pushes the notebooks to Kaggle through the Kaggle CLI. - Get the Script ID for each notebook. Using
admin.kaggle.com
, navigate to each notebook. The Script ID is in the right-hand panel under ???. Enter the Script ID for each notebook in the description spreadsheet for your course.
- TODO
- Make sure it's scheduled without conflicts.