Freestyle projects are powerful and have been the status quo for many years. However, it is found lacking in several areas:
- When Hudson, Jenkins' predecessor, was written, using a UI for configuration was the norm. However, in the last few years, the ecosystem has moved towards Configuration-as-Code (CaC), where the configuration can be tracked in source control.
- Jenkins saves the configurations files for freestyle projects on the Jenkins server under /var/lib/jenkins/jobs/. This means if the Jenkins server is destroyed, all the configuration settings would be lost. Furthermore, the configuration file is written in XML and is hard to read.
- While it is possible to chain multiple freestyle projects together using post-build actions, ...