This PR handles the case where multiple files in webcontent folders at various depths within a course package folder end up in the same location at the now flattened webcontent folder structure. The solution is to first sort by file path, then insert a guid into the file path at any subsequent path collision.
Example for the file structure below
package_name
--webcontent
----repl.js
--secondary_level
----webcontent
------repl.js
There resulting flattened webcontent folder would be
webcontent
--repl.js
--457383 (guid)
----repl.js
This PR fixes two other bugs.
Torus ingest failing due to expecting the objective object to be a map instead of a list
Sets mime-type of files uploaded into S3. This allows files such as .css style files to work on browser
This PR handles the case where multiple files in webcontent folders at various depths within a course package folder end up in the same location at the now flattened webcontent folder structure. The solution is to first sort by file path, then insert a guid into the file path at any subsequent path collision.
Example for the file structure below package_name --webcontent ----repl.js --secondary_level ----webcontent ------repl.js
There resulting flattened webcontent folder would be webcontent --repl.js --457383 (guid) ----repl.js
This PR fixes two other bugs.