Skip to content

[Bugfix:System] Move autograding_containers.json config#12926

Merged
bmcutler merged 64 commits into
mainfrom
move_usr_configs
Jun 19, 2026
Merged

[Bugfix:System] Move autograding_containers.json config#12926
bmcutler merged 64 commits into
mainfrom
move_usr_configs

Conversation

@bmcutler

Copy link
Copy Markdown
Member

Why is this Change Important & Necessary?

A May 2026 change for Apache and php-fpm security has made the '/usr'
directory read-only for php. Any configuration files that will be
edited through Submitty web pages / GUI need to be moved out of '/usr'.

Currently, this is just the autograding_containers.json file, which is
edited by the docker UI page to add/revise docker containers assigned
to each capability (worker VMs are committed to support capabilities
in the autograding_workers.json file.)

This change is related to issue #12869 and PR #12867

What is the New Behavior?

The docker UI page now allows edits to the containers assigned to each
capability as this autograding_containers.json configuration file has been
moved to /var where it can be edited from the web UI.

What steps should a reviewer take to reproduce or test the bug or new feature?

Visit the DockerUI page from the side bar of the instructor or administrator user.

Automated Testing & Documentation

Hopefully this will fix the Cypress DockerUI failure that has been occuring consistently
since this change was made in Apache.

Other information

Further system edits are likely necessary -- issue #12869 is still unresolved.

@github-project-automation github-project-automation Bot moved this to Seeking Reviewer in Submitty Development Jun 17, 2026
@bmcutler bmcutler moved this from Seeking Reviewer to Work in Progress in Submitty Development Jun 17, 2026
@bmcutler
bmcutler marked this pull request as draft June 17, 2026 23:27
@codecov

codecov Bot commented Jun 17, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 50.00000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 21.50%. Comparing base (2bb39b3) to head (9198bb0).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##               main   #12926      +/-   ##
============================================
+ Coverage     21.45%   21.50%   +0.04%     
  Complexity     9896     9896              
============================================
  Files           268      268              
  Lines         36967    36968       +1     
  Branches        495      495              
============================================
+ Hits           7933     7951      +18     
+ Misses        28543    28526      -17     
  Partials        491      491              
Flag Coverage Δ
autograder 21.32% <ø> (ø)
js 2.01% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.54% <50.00%> (+0.05%) ⬆️
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 91.13% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@bmcutler bmcutler changed the title [Bugfix:System] Move autograding_containers.json config file [Bugfix:System] Move autograding_containers.json config Jun 18, 2026

@IDzyre IDzyre left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes seem reasonable, all code seems like it is similar or same as the old paths, just updated with the data path instead of the install path. I don't see an issue, if the permissions are what you want them to be.

@github-project-automation github-project-automation Bot moved this from Seeking Reviewer to Awaiting Maintainer Review in Submitty Development Jun 19, 2026

@NicholasCiuica NicholasCiuica left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I read through the changes and everything looked good, except for one issue I found.

Comment thread site/tests/app/controllers/DockerInterfaceControllerTester.php
@github-project-automation github-project-automation Bot moved this from Awaiting Maintainer Review to Work in Progress in Submitty Development Jun 19, 2026
@bmcutler
bmcutler merged commit 7073f7c into main Jun 19, 2026
18 of 27 checks passed
@bmcutler
bmcutler deleted the move_usr_configs branch June 19, 2026 19:05
@github-project-automation github-project-automation Bot moved this from Work in Progress to Done in Submitty Development Jun 19, 2026
bmcutler added a commit that referenced this pull request Jun 25, 2026
### Why is this Change Important & Necessary?
PR #12926 moved the location of autograding_containers.json from 
/usr/local/submitty/config to /var/local/submitty/config.

The recreate_sample_courses script was missed during this change.

### What is the New Behavior?
The configuration file is saved & restored correctly.

### What steps should a reviewer take to reproduce or test the bug or
new feature?
On a working vagrant development system, run the recreate_sample_courses
script:

https://submitty.org/developer/development_instructions/index#re-creating-all-sample-course-data

The system should still work normally after the script is finished.

Co-authored-by: Barb Cutler <Barb Cutler>
jndlansh pushed a commit to jndlansh/Submitty that referenced this pull request Jul 1, 2026
…#12952)

### Why is this Change Important & Necessary?
PR Submitty#12926 moved the location of autograding_containers.json from 
/usr/local/submitty/config to /var/local/submitty/config.

The recreate_sample_courses script was missed during this change.

### What is the New Behavior?
The configuration file is saved & restored correctly.

### What steps should a reviewer take to reproduce or test the bug or
new feature?
On a working vagrant development system, run the recreate_sample_courses
script:

https://submitty.org/developer/development_instructions/index#re-creating-all-sample-course-data

The system should still work normally after the script is finished.

Co-authored-by: Barb Cutler <Barb Cutler>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants