Make cplace-asc parsing a new project descriptor and get rid of IDEa files
Closed this issue · 2 comments
As one major topic of the transformation to a new build system (Gradle) is to get rid of any dependencies of the build and runtime of cplace to IDEA, a new file describing the module (or better, plugin) will replace the iml-s.
Right now this is named pluginDescriptor.json
, located directly in the modules directory:
.
── cf.cplace.api.jaxws.base
│ ├── build
│ ├── config
│ ├── lib
│ ├── pluginDescriptor.json <---
│ ├── src
│ └── templates
── cf.cplace.apiToken
│ ├── build
│ ├── config
│ ├── pluginDescriptor.json <---
│ ├── src
│ └── templates
...
As it can be generated for each build, it contents for test and prod will differ.
Production (NO testDependencies):
{
"name": "cf.cplace.workspaceBackground",
"dependencies": [
"cf.cplace.platform"
]
}
Test (including empty testDependencies):
main/cf.cplace.tocWidget/pluginDescriptor.json
{
"name": "cf.cplace.tocWidget",
"dependencies": [
"cf.cplace.platform"
],
"testDependencies": [
]
}
Test (including testDependencies):
main/cf.cplace.training.extended/pluginDescriptor.json
{
"name": "cf.cplace.training.extended",
"dependencies": [
"cf.cplace.platform",
"cf.cplace.handsOnTable",
"cf.cplace.pageViewHeadline",
"cf.cplace.layoutTabsWidget",
"cf.cplace.asposeReporting",
"cf.cplace.appGenerator"
],
"testDependencies": [
"cf.cplace.appGenerator"
]
}
I got the slight feeling, that the folder resolution for less compilation will need some consideration as well (current release version of asc):
⟲ [cf.cplace.appGenerator] starting LESS compilation...
✗ FileError: '../../../../main/cf.cplace.platform/assets/less/includes' wasn't found. Tried - /home/circleci/collaborationFactory/main/cf.cplace.platform/assets/less/includes.less,../../../../main/cf.cplace.platform/assets/less/includes.less in /home/circleci/collaborationFactory/cplace/cf.cplace.appGenerator/assets/less/plugin.less on line 4, column 1:
3
4 @import '@{plugin-path-cf-cplace-platform}/assets/less/includes';
5
✗ Error: [cf.cplace.appGenerator] LESS compilation failed
✗ COMPILATION FAILED - please check errors in output above
> Task :asc FAILED
FAILURE: Build failed with an exception.
see circle ci build
... but please not that this could be also a problem of the gradle build itself.
The LESS problem can be worked around by replacing the first line of the LESS files as done in the old Ant-based build in packaging/build.xml:554