Dev-Tools for JCasC
Goal: IDE integrations for JCasC, along with a better testing architecture for the JSON schema, and addition of configuration extension points
Status: completed
Team
Student: Sladyn Nunes
Mentor(s): Tim Jacomb Joseph Petersen
Development tools for Jenkins configuration as code (JCasC) are incomplete and not as helpful as they could be. IDE autocompletion does not work as expected in the leading IDE’s (IntelliJ, Visual Studio Code, and Atom).
This project will improve Jenkins configuration as code development tools through a CommunityBridge project. It is the first CommunityBridge project in the Jenkins community. It will be used as an experiment with CommunityBridge and as a project to improve development tools for Jenkins configuration as code.
Solutions
-
[NEW] Fix existing JSON schema issues
-
[NEW] Rewrite schema in Java if JSON fixes are infeasible
Phase 1: Fix the JSON Schema Generator
-
Validate generated schema with a few plugins installed (see issue 760)
-
Validate generated schema with Jenkins 2.176.2 suggested plugins installed
Resources
For more details, see this Google Doc - Proposal
Phase 2: IDE Autocompletion For JCasC
-
IntelliJ IDE autocompletion with error detection for the yaml files
-
Visual Studio Code autocompletion with error detection for the yaml files
-
Atom autocompletion with error detection for the yaml files