Commit 362f437
committed
feat: Implement submission file system with configurable storage
- Replace SubmissionFileProcessor with direct file handling in create_external_grader_detail
- Implement flexible storage configuration via EDX_SUBMISSIONS['MEDIA'] dictionary
- Support dynamic backend loading with proper Django settings conventions
- Add cached storage implementation with serialization-safe public interface
- Configure InMemoryStorage for tests to ensure reliable test execution
- Update tests to accommodate new storage patterns and configuration
- Ensure backward compatibility with existing file operations
This implementation follows Django best practices for storage configuration
while maintaining performance through caching and avoiding serialization
issues with migrations.1 parent 108a7a9 commit 362f437
5 files changed
Lines changed: 153 additions & 123 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
62 | | - | |
| 62 | + | |
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
| 78 | + | |
77 | 79 | | |
78 | 80 | | |
79 | 81 | | |
| 82 | + | |
80 | 83 | | |
81 | 84 | | |
82 | 85 | | |
83 | 86 | | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
84 | 99 | | |
85 | 100 | | |
86 | 101 | | |
| |||
98 | 113 | | |
99 | 114 | | |
100 | 115 | | |
101 | | - | |
102 | | - | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
103 | 125 | | |
104 | 126 | | |
105 | 127 | | |
| |||
111 | 133 | | |
112 | 134 | | |
113 | 135 | | |
114 | | - | |
| 136 | + | |
115 | 137 | | |
116 | | - | |
| 138 | + | |
117 | 139 | | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
170 | | - | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
171 | 144 | | |
172 | 145 | | |
173 | 146 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
714 | 715 | | |
715 | 716 | | |
716 | 717 | | |
717 | | - | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
718 | 725 | | |
719 | 726 | | |
720 | 727 | | |
721 | 728 | | |
722 | 729 | | |
723 | | - | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
724 | 733 | | |
725 | 734 | | |
726 | 735 | | |
727 | 736 | | |
728 | 737 | | |
729 | 738 | | |
730 | 739 | | |
731 | | - | |
732 | 740 | | |
733 | 741 | | |
734 | 742 | | |
735 | 743 | | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
736 | 747 | | |
737 | 748 | | |
738 | 749 | | |
739 | 750 | | |
740 | 751 | | |
741 | | - | |
742 | | - | |
| 752 | + | |
743 | 753 | | |
744 | | - | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
745 | 760 | | |
746 | 761 | | |
747 | | - | |
| 762 | + | |
748 | 763 | | |
749 | 764 | | |
750 | 765 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
993 | 993 | | |
994 | 994 | | |
995 | 995 | | |
996 | | - | |
| 996 | + | |
997 | 997 | | |
998 | | - | |
| 998 | + | |
999 | 999 | | |
1000 | 1000 | | |
1001 | 1001 | | |
1002 | 1002 | | |
1003 | | - | |
1004 | | - | |
1005 | | - | |
1006 | | - | |
1007 | | - | |
1008 | | - | |
1009 | | - | |
1010 | | - | |
1011 | | - | |
1012 | | - | |
1013 | | - | |
1014 | | - | |
1015 | | - | |
1016 | | - | |
1017 | | - | |
| 1003 | + | |
| 1004 | + | |
| 1005 | + | |
| 1006 | + | |
| 1007 | + | |
| 1008 | + | |
| 1009 | + | |
| 1010 | + | |
1018 | 1011 | | |
1019 | | - | |
1020 | | - | |
| 1012 | + | |
| 1013 | + | |
1021 | 1014 | | |
1022 | 1015 | | |
1023 | 1016 | | |
1024 | 1017 | | |
1025 | 1018 | | |
1026 | 1019 | | |
1027 | 1020 | | |
1028 | | - | |
1029 | | - | |
1030 | | - | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
| 1032 | + | |
| 1033 | + | |
| 1034 | + | |
| 1035 | + | |
1031 | 1036 | | |
1032 | 1037 | | |
1033 | | - | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
| 1055 | + | |
| 1056 | + | |
| 1057 | + | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
1034 | 1061 | | |
1035 | 1062 | | |
1036 | 1063 | | |
| |||
1039 | 1066 | | |
1040 | 1067 | | |
1041 | 1068 | | |
1042 | | - | |
| 1069 | + | |
1043 | 1070 | | |
1044 | 1071 | | |
1045 | | - | |
| 1072 | + | |
1046 | 1073 | | |
1047 | | - | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
1048 | 1088 | | |
1049 | | - | |
| 1089 | + | |
| 1090 | + | |
1050 | 1091 | | |
1051 | | - | |
| 1092 | + | |
1052 | 1093 | | |
1053 | 1094 | | |
1054 | 1095 | | |
| |||
1059 | 1100 | | |
1060 | 1101 | | |
1061 | 1102 | | |
1062 | | - | |
1063 | | - | |
1064 | | - | |
1065 | | - | |
1066 | | - | |
1067 | | - | |
1068 | | - | |
| 1103 | + | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
1069 | 1110 | | |
1070 | 1111 | | |
1071 | 1112 | | |
1072 | | - | |
| 1113 | + | |
1073 | 1114 | | |
1074 | 1115 | | |
1075 | | - | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
0 commit comments