Skip to content

unicore-life/unity-grid-content

Repository files navigation

unity-grid-content

The goal of this project is to provide fast and easy initialization of Unity IDM content for the use with UNICORE middleware. It helps to setup all attributes, groups and server entities together with statements, because some UNICORE security logs are misleading especially for newbies.

Build Status Download

Installation

Plugin can be downloaded from Bintray maven repository. In case of latest release version download archive using command:

curl -O https://dl.bintray.com/unicore-life/maven/pl/edu/icm/unity/unity-grid-content/1.0.0/unity-grid-content-1.0.0.jar

and place it in lib/ directory of Unity IDM installation (in case of RPM distribution it is /usr/share/unity-idm/lib/).

Plugin version depends on Unity IDM version which show compatibility table below.

Unity IDM version Plugin version Documentation Link
1.8.0 0.1.x unicore-grid-contents-0.1.8
1.9.x 0.2.x unity-grid-contents-0.2.4
2.1.x 1.0.x unity-grid-content-1.0.0

Configuration

All identities are added with requirements Empty requirement, so first, be sure to has such in Unity IDM. One way of accomplish that is to add lines:

unityServer.core.credentialRequirements.1.credentialReqName=Empty requirement
unityServer.core.credentialRequirements.1.credentialReqDescription=Empty credential requirement

in configuration file unityServer.conf.

Next, copy script gridContentInitializer.groovy into Unity IDM configuration directory, change grid content JSON configuration file, and add properties in file unityServer.conf:

unityServer.core.script.5.file=/etc/unity-idm/scripts/gridContentInitializer.groovy
unityServer.core.script.5.trigger=pre-init

to be executed when Unity IDM starts. Examples of grid content JSON files:

Note, that defaultContentInitializer.groovy and unicoreContentInitializer.groovy initialization scripts shipped with Unity IDM distribution have to enabled. THey should be run before gridContentInitializer.groovy script. Check Unity IDM documentation how to do that in unityServer.conf file.

Logging

To enable more exhaustive logs simply configure appropriate logger in file log4j2.xml located in Unity IDM configuration directory. Setting full logging needs adding a line:

<Logger name="grid.content" level="TRACE"/>

in Loggers section.

Development

Building

Just clone the project and run Gradle command presented below.

./gradlew build

Releasing

To see current version of the sources use Gradle task currentVersion (it is stored as a git tag).

./gradlew currentVersion

To release a new version use release task. Later, for uploading artifact to Bintray maven repository use bintrayUpload task. Sample commands are presented below.

./gradlew release
./gradlew bintrayUpload -PdryRun=false

Remember to configure Bintray user and key by using parameters -PbintrayUser=BINTRAY_USERNAME -PbintrayKey=BINTRAY_KEY or just put them in gradle.properties file.

Links