In version 3.4 midPoint has got a really nice GUI. It is well suited for operational tasks. However, it lacks some features to support development and maintenance of really complex midPoint deployments. Main pain points are perhaps missing integration with git (or other version control systems) and limited support for editing complex XML objects. Because of this we’ve recently created a prototype of MidPoint Development Tools for Eclipse.
This product provides the following functionality:
- Browsing objects on midPoint server, allowing users to selectively show, download, and manage them.
- Transfer of objects between local workspace and midPoint server: uploading, downloading, reloading, and comparing objects.
- Executing locally-written bulk actions on midPoint server. Immediately accessing the outcomes: log fragment, console/data output, operation result.
- Use macro expansion facility to parameterize objects (typically, resource definitions) for various midPoint environments – like development, testing, production.
- Viewing server log (currently from local servers only) in automatically updated console view. Displaying and analyzing these logs in a custom log viewer. Quickly change logging levels on a server.
It is not meant as a replacement of midPoint web GUI. It is expected to be used by midPoint deployment engineers mainly to create and maintain configuration objects (resource objects, object templates, roles, meta roles, system configuration, and so on), and to prepare and execute one-time bulk actions e.g. during migration or data consolidation.
A few screenshots of MidPoint Development Tools
Defining servers
Browsing objects
Downloading and editing objects
Comparing local and remote objects
Installation and use
This tool is implemented in a form of Eclipse plugin. It can be installed from https://evolveum.com/downloads/midpoint-eclipse-plugin/ (with detailed installation guide here – beware of possible certification issues).
The plugin requires at least midPoint 3.4.1, although full functionality requires midPoint 3.5 which is under development now. (Current midPoint 3.5-SNAPSHOT is OK in this respect.)
More information about the plugin – how to use it, current status and limitations – can be found in the wiki HOWTO page.
Conclusion
MidPoint Development Tools for Eclipse are currently in a prototype (preview) stage. We are experimenting with the user interface in order to find what to add, remove, or rearrange in order to provide a powerful developer/deployer tool. However, even now the tool should be stable enough in order to be used by experienced – and little bit tolerant – people, with a bit of caution.
Your comments, suggestions and experiences (either here or on the mailing list) are more than welcome.