We need the ability to add arbitrary content to the sasjsbuild folder (prior to build). The content could be mocked files (eg JS) or even SAS programs, for developers who wish to add content outside of the regular compile process.
The implementation will be a single attribute at both ROOT and TARGET level as follows:
"syncFolder": "project/location/myFolder",
Any and all files & subfolders inside this will be added inside the sasjsbuild folder
Any same-named SAS programs (eg services/common/appinit.sas) will be overwritten if they exist in the syncFolder
The syncFolder content(s) should be added after the regular compile process (so will replace the compiled version if there is a conflict)
The ROOT level syncFolder is added first, then the TARGET level (if either exist). So, TARGET files will overwrite ROOT, which will overwrite COMPILED files.
sasjs compile should work for a minimal sasjsconfig.json that contains nothing else, eg:
We need the ability to add arbitrary content to the sasjsbuild folder (prior to build). The content could be mocked files (eg JS) or even SAS programs, for developers who wish to add content outside of the regular compile process.
The implementation will be a single attribute at both ROOT and TARGET level as follows:
"syncFolder": "project/location/myFolder",
services/common/appinit.sas
) will be overwritten if they exist in the syncFoldersyncFolder
content(s) should be added after the regular compile process (so will replace the compiled version if there is a conflict)syncFolder
is added first, then the TARGET level (if either exist). So, TARGET files will overwrite ROOT, which will overwrite COMPILED files.sasjs compile
should work for a minimalsasjsconfig.json
that contains nothing else, eg:In this case only the contents of
myFolder
andspecificFolder
added to thesasjsbuild
folder.Tests should include:
The schema json should also be updated.
Note - this feature should work on ALL server types (SASJS, SAS9 and SASVIYA)