I have managed to solve some of the above problems:
1) It seems that the "copy" grunt task will copy files from a plugin's "required" folder to the root.
2) The build script for the AT is in the "server-build" task of the framework grunt script (grunt/tasks/server-build.js). The placeholders are filled in by the "replace" grunt task (grunt/config/replace.js).
Which alse answers the questions about whether the AT uses grunt scripts. It seems to be the same scripts used for CLI builds, except for the part that checks json-files (as they are generated by the AT from the database).
The TEMP folder on the AT server seems to work like this:
- The TEMP folder contains a folder for each tenant (using the tenant's ID for folder name).
- The tenant ID folder contains an "adapt_framework" folder with the current framework and plugins.
- The "adapt_framework" folder contains a "courses" folder.
- The "courses" folder contains a folder for each tenant (using the tenant's ID for folder name).
- This tenant ID folder contains a folder for each course (using the course's ID for folder name).
- This course ID folder contains a "build" folder with the built course (and a zip-file for download, if course has been downloaded).
If anyone knows it is not so, please write..!