/midpoint-studio

Primary LanguageJavaApache License 2.0Apache-2.0

MidPoint Studio

1. Overview

Plugin for Intellij Idea to help identity engineers customize MidPoint identity management solution by Evolveum.

2. Features

  • MidPoint objects manipulation

    • Browse, upload objects

    • Execute tasks, bulk actions

    • Test resources

  • Documentation generator

  • Debugger for Groovy scripts expressions

  • IDE editor capabilities

    • Completions

    • Annotations

    • Reference integrity checks

    • Random OID generator

    • Schema documentation

    • File Templates

  • Support for multiple environments

  • Log browser

    • Local

    • Via SSH

  • Master password encryption for passwords and other secret values

3. Documentation

Documentation is available here.

4. Installation

It’s available in JetBrains Marketplace here only as Nightly. Installation steps:

  1. Start Intellij Idea (Community/Ultimate)

  2. Go to menu File → Settings (Preferences) → Plugins

  3. For full releases, they are directly available

    1. Search for "MidPoint Studio" → Install

  4. For nightly/milestone releases

    1. Go to Manage plugin repositories

    2. Add one of these repositories:

    3. Save & Close dialog

    4. Search for "MidPoint Studio" → Install

5. Issues, Bugs

You’re welcome to file bugs, new feature request or other issues in our issue tracker Jira. Please don’t forget add this information to new issue:

  • Add component Studio

  • Describe plugin version and Intellij version, OS related information

  • Attach necessary logs, e.g. idea.log ⇒ can be found using menu Help → Show log in Finder

6. Development Notes

6.1. Git Branches

  • Development branch → master

  • Nightly builds → nightly

  • Milestones → milestone

  • Releases → stable

6.2. Versions and Releases

  • Nightly builds → <MidPointMajor.MidPointMinor>-<BuildNumber>-nightly, e.g. 4.2-150-nightly

  • Milestones → <MidPointMajor.MidPointMinor>-<BuildNumber>, e.g. 4.2-150

  • Releases → <MidPointMajor.MidPointMinor>, e.g. 4.3

Versioning scheme aligns to MidPoint releases. For example, MidPoint version 4.3 will correspond to MidPoint Studio release 4.3. 4.3-SNAPSHOT builds produced by maven will equal to 4.2-XXX-[nightly] versions.

Whole build & publish process is managed by Jenkins CI using git branches. There are two jobs:

  • midpoint-studio-master → polls git repository and build master branch periodically

  • midpoint-studio-release → manual job, that’s used to publish new builds to JetBrains Marketstore. It Accepts two options:

    • PUBLISH - boolean, whether build should be published to JetBrains Marketstore

    • PUBLISH_BRANCH - which release (nightly/milestone/stable) should be built. Builds will trigger cascade, e.g. stablemilestonenightly

Each type of release (nightly, milestone, stable) is published to JetBrains Marketplace.

6.3. Logging settings

Intellij Idea logs to file studio-idea-plugin/build/idea-sandbox/system/log/idea.log. Logging settings can be changed during runtime via top menu Help/Debug Log Settings by adding packages/classes on each line in format:

  • #LOGGER to log LOGGER (package or class) on DEBUG level

  • #LOGGER:trace to log LOGGER (package or class) on TRACE level

7. License

Project is licensed under Apache Licence 2.0.