Skip to content

Conversation

@tmetzl
Copy link
Member

@tmetzl tmetzl commented Nov 13, 2025

This pull request updates the configuration management for the e2xgrader-notebook Docker image to improve maintainability and support for different operational modes (base, student_exam, teacher). The main changes include restructuring configuration files, introducing mode-specific config handling, and adding cleanup steps for temporary files.

Configuration restructuring and base setup:

  • Moved the nbgrader configuration to configs/base/nbgrader_config.py and expanded it with detailed environment variable support, permissions, and additional options. The Dockerfile now copies this base config for all modes. [1] [2]
  • Added a new jupyter_notebook_config_override.py for base configuration, which disables the notebook banner for version 6.5.4 and is appended to the main config during build. [1] [2]

Student exam mode enhancements:

  • Added mode-specific configuration: when in student_exam mode, the Dockerfile copies and installs a jupyter_backup_config.py to enable backup features based on environment variables. [1] [2]

General improvements:

  • Added grouped comments to the Dockerfile for clearer separation of configuration steps by mode and purpose. [1] [2] [3]

Deprecation and removal:

  • Removed the old flat configs/nbgrader_config.py in favor of the new structured base config.

These changes make the configuration more modular, easier to maintain, and allow for more flexible deployment scenarios.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants