The solution was made up the following:
- Ensure nothing executes during configuration phase. This phase can set properties and configure projects. Anything else needs to happen in a target in doFirst or doLast blocks
- Use gradle buildCache (even if it is just local) - repository managers like Nexus and Artifactory can work with the cache too. The speed up for the cache large (4m to 40s)
- Enable parallel in gradle.properties
- Use the daemon - even on a single use jenkins ECS node for it improves speed - especially if running multiple gradle executions within a parallel jenkins pipeline block
Thanks to @jjustinic for the feedback and suggestions.