diff --git a/Jenkinsfile b/Jenkinsfile
index 1c6990e..2fa1642 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -60,7 +60,7 @@ pipeline {
sh '(cd demo/simple ; bats tests ) 2>&1 | tee -a debug ; test ${PIPESTATUS[0]} -eq 0'
// sh '(cd demo/shibboleth ; bats tests ) 2>&1 | tee -a debug ; test ${PIPESTATUS[0]} -eq 0'
- sh '(cd demo/postgresql ; bats tests ) 2>&1 | tee -a debug ; test ${PIPESTATUS[0]} -eq 0'
+ // sh '(cd demo/postgresql ; bats tests ) 2>&1 | tee -a debug ; test ${PIPESTATUS[0]} -eq 0'
sh '(cd demo/complex ; bats tests ) 2>&1 | tee -a debug ; test ${PIPESTATUS[0]} -eq 0'
} catch (error) {
def error_details = readFile('./debug')
diff --git a/demo/complex/directory/container_files/seed-data/users.ldif b/demo/complex/directory/container_files/seed-data/users.ldif
index 5381f7d..09c34da 100644
--- a/demo/complex/directory/container_files/seed-data/users.ldif
+++ b/demo/complex/directory/container_files/seed-data/users.ldif
@@ -17,4 +17,14 @@ objectClass: top
objectClass: organizationalUnit
ou: Courses
+dn: ou=midpoint,ou=Groups,dc=internet2,dc=edu
+objectClass: top
+objectClass: organizationalUnit
+ou: midpoint
+
+dn: ou=Generic,ou=Groups,dc=internet2,dc=edu
+objectClass: top
+objectClass: organizationalUnit
+ou: Generic
+
diff --git a/demo/complex/grouper_data/container_files/seed-data/demo.gsh b/demo/complex/grouper_data/container_files/seed-data/demo.gsh
index e584add..0d13760 100644
--- a/demo/complex/grouper_data/container_files/seed-data/demo.gsh
+++ b/demo/complex/grouper_data/container_files/seed-data/demo.gsh
@@ -65,7 +65,7 @@ attributeAssign = group.getAttributeDelegate().retrieveAssignment(null, LoaderLd
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapQuartzCronName(), "0 * * * * ?");
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapTypeName(), "LDAP_SIMPLE");
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapFilterName(), "(cn=sysadmingroup)");
-attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapSearchDnName(), "ou=Groups");
+attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapSearchDnName(), "ou=midpoint,ou=Groups");
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapServerIdName(), "demo");
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapSourceIdName(), "ldap");
attributeAssign.getAttributeValueDelegate().assignValue(LoaderLdapUtils.grouperLoaderLdapSubjectExpressionName(), '${loaderLdapElUtils.convertDnToSpecificValue(subjectId)}');
diff --git a/demo/complex/midpoint-objects/objectTemplates/template-role-affiliation.xml b/demo/complex/midpoint-objects/objectTemplates/template-org-affiliation.xml
similarity index 90%
rename from demo/complex/midpoint-objects/objectTemplates/template-role-affiliation.xml
rename to demo/complex/midpoint-objects/objectTemplates/template-org-affiliation.xml
index 3a9c726..00abb98 100644
--- a/demo/complex/midpoint-objects/objectTemplates/template-role-affiliation.xml
+++ b/demo/complex/midpoint-objects/objectTemplates/template-org-affiliation.xml
@@ -1,7 +1,7 @@
- template-role-affiliation
+ template-org-affiliation
strong
@@ -14,4 +14,4 @@
assignment
-
\ No newline at end of file
+
diff --git a/demo/complex/midpoint-objects/objectTemplates/template-org-group.xml b/demo/complex/midpoint-objects/objectTemplates/template-org-generic-group.xml
similarity index 87%
rename from demo/complex/midpoint-objects/objectTemplates/template-org-group.xml
rename to demo/complex/midpoint-objects/objectTemplates/template-org-generic-group.xml
index 0cd047f..6e9b462 100644
--- a/demo/complex/midpoint-objects/objectTemplates/template-org-group.xml
+++ b/demo/complex/midpoint-objects/objectTemplates/template-org-generic-group.xml
@@ -1,13 +1,13 @@
- template-org-group
+ template-org-generic-group
strong
RoleType
- 48e231be-8474-4ed0-a85e-6acf4c5e8d52
+ 48e231be-8474-4ed0-a85e-6acf4c5e8d52
diff --git a/demo/complex/midpoint-objects/objectTemplates/template-role-generic-group.xml b/demo/complex/midpoint-objects/objectTemplates/template-role-midpoint-group.xml
similarity index 83%
rename from demo/complex/midpoint-objects/objectTemplates/template-role-generic-group.xml
rename to demo/complex/midpoint-objects/objectTemplates/template-role-midpoint-group.xml
index 1205f6d..62296e9 100644
--- a/demo/complex/midpoint-objects/objectTemplates/template-role-generic-group.xml
+++ b/demo/complex/midpoint-objects/objectTemplates/template-role-midpoint-group.xml
@@ -1,17 +1,17 @@
- template-role-generic-group
+ template-role-midpoint-group
strong
RoleType
- c691e15a-f30b-4e15-8445-532db07ceeeb
+ c691e15a-f30b-4e15-8445-532db07ceeeb
assignment
-
\ No newline at end of file
+
diff --git a/demo/complex/midpoint-objects/objectTemplates/template-user.xml b/demo/complex/midpoint-objects/objectTemplates/template-user.xml
index 455ccc0..288bd24 100644
--- a/demo/complex/midpoint-objects/objectTemplates/template-user.xml
+++ b/demo/complex/midpoint-objects/objectTemplates/template-user.xml
@@ -4,7 +4,7 @@
strong
- extension/grouper_group
+ extension/grouperGroup
@@ -15,14 +15,14 @@
- group
+ generic-group
true
@@ -33,7 +33,7 @@
@@ -43,7 +43,7 @@
subtype
- group
+ generic-group
@@ -55,7 +55,7 @@
diff --git a/demo/complex/midpoint-objects/orgs/org-affiliations.xml b/demo/complex/midpoint-objects/orgs/org-affiliations.xml
new file mode 100644
index 0000000..618f9ee
--- /dev/null
+++ b/demo/complex/midpoint-objects/orgs/org-affiliations.xml
@@ -0,0 +1,6 @@
+
+
+ affiliations
+ Affiliations
+
diff --git a/demo/complex/midpoint-objects/orgs/org-groups.xml b/demo/complex/midpoint-objects/orgs/org-generic-groups.xml
similarity index 65%
rename from demo/complex/midpoint-objects/orgs/org-groups.xml
rename to demo/complex/midpoint-objects/orgs/org-generic-groups.xml
index 4998a2f..fa39bbc 100644
--- a/demo/complex/midpoint-objects/orgs/org-groups.xml
+++ b/demo/complex/midpoint-objects/orgs/org-generic-groups.xml
@@ -1,6 +1,6 @@
- groups
- Groups
+ generic-groups
+ Generic groups
diff --git a/demo/complex/midpoint-objects/orgs/org-mailing-lists.xml b/demo/complex/midpoint-objects/orgs/org-mailing-lists.xml
new file mode 100644
index 0000000..136c3ee
--- /dev/null
+++ b/demo/complex/midpoint-objects/orgs/org-mailing-lists.xml
@@ -0,0 +1,6 @@
+
+
+ mailing-lists
+ Mailing lists
+
diff --git a/demo/complex/midpoint-objects/resources/ldap-main.xml b/demo/complex/midpoint-objects/resources/ldap-main.xml
index f826cc7..8277067 100644
--- a/demo/complex/midpoint-objects/resources/ldap-main.xml
+++ b/demo/complex/midpoint-objects/resources/ldap-main.xml
@@ -180,22 +180,20 @@
[ri:eduPersonAffiliation]
+
+ strong
+
+ extension/rawAffiliation
+
+
false
-
- [ri:eduPersonEntitlement]
- false
-
-
- extension/grouper_group
-
-
-
false
[ri:group]
entitlement
course-group
+ midpoint-group
generic-group
objectToSubject
ri:uniqueMember
@@ -259,6 +257,45 @@
+
+ entitlement
+ midpoint-group
+ LDAP Group
+ ri:groupOfUniqueNames
+
+ [ri:uniqueMember]
+ mr:distinguishedName
+ minimal
+
+
+ [ri:dn]
+ mr:stringIgnoreCase
+
+ strong
+ true
+
+ identifier
+
+
+
+
+
+
+
+ [ri:cn]
+ mr:stringIgnoreCase
+
+ weak
+
+ identifier
+
+
+
+
entitlement
generic-group
@@ -281,7 +318,7 @@
@@ -393,20 +430,73 @@
unmatched
+
+ midpoint-group sync
+ ri:groupOfUniqueNames
+ entitlement
+ midpoint-group
+ RoleType
+ true
+
+
+
+
+
+
+ identifier
+
+ $shadow/attributes/ri:cn
+
+
+
+ subtype
+ midpoint-group
+
+
+
+
+ linked
+ true
+
+
+ deleted
+ true
+
+ http://midpoint.evolveum.com/xml/ns/public/model/action-3#unlink
+
+
+
+ unlinked
+ true
+
+ http://midpoint.evolveum.com/xml/ns/public/model/action-3#link
+
+
+
+ unmatched
+
+
generic-group sync
ri:groupOfUniqueNames
entitlement
generic-group
- RoleType
+ OrgType
true
diff --git a/demo/complex/midpoint-objects/resources/resource-grouper.xml b/demo/complex/midpoint-objects/resources/resource-grouper.xml
index ca43a21..186e929 100644
--- a/demo/complex/midpoint-objects/resources/resource-grouper.xml
+++ b/demo/complex/midpoint-objects/resources/resource-grouper.xml
@@ -110,7 +110,7 @@
strong
- extension/grouper_group
+ extension/grouperGroup
@@ -131,7 +131,7 @@
strong
- group
+ generic-group
subtype
diff --git a/demo/complex/midpoint-objects/resources/scriptedsql-sis-courses.xml b/demo/complex/midpoint-objects/resources/scriptedsql-sis-courses.xml
index 6b5f84b..7351c7a 100644
--- a/demo/complex/midpoint-objects/resources/scriptedsql-sis-courses.xml
+++ b/demo/complex/midpoint-objects/resources/scriptedsql-sis-courses.xml
@@ -29,9 +29,9 @@
GROOVY
- /opt/midpoint/var/res/sis/SearchScript.groovy
- /opt/midpoint/var/res/sis/TestScript.groovy
- /opt/midpoint/var/res/sis/SchemaScript.groovy
+ /opt/midpoint/var/res/sis-courses/SearchScript.groovy
+ /opt/midpoint/var/res/sis-courses/TestScript.groovy
+ /opt/midpoint/var/res/sis-courses/SchemaScript.groovy
true
diff --git a/demo/complex/midpoint-objects/resources/scriptedsql-sis-persons.xml b/demo/complex/midpoint-objects/resources/scriptedsql-sis-persons.xml
index 568074d..673f6d2 100644
--- a/demo/complex/midpoint-objects/resources/scriptedsql-sis-persons.xml
+++ b/demo/complex/midpoint-objects/resources/scriptedsql-sis-persons.xml
@@ -246,85 +246,9 @@
[ri:affiliation]
strong
-
-
- RoleType
-
-
- name
-
-
-
-
-
- true
-
-
-
-
-
-
- name
-
-
-
-
-
-
-
- displayName
-
-
-
-
-
-
-
- identifier
-
-
-
-
- affiliation
-
-
- subtype
-
-
-
-
- affiliation
-
-
-
- assignment
-
-
-
-
-
-
+ extension/rawAffiliation
+
diff --git a/demo/complex/midpoint-objects/roles/metarole-affiliation.xml b/demo/complex/midpoint-objects/roles/metarole-affiliation.xml
index be64d72..cdfa819 100644
--- a/demo/complex/midpoint-objects/roles/metarole-affiliation.xml
+++ b/demo/complex/midpoint-objects/roles/metarole-affiliation.xml
@@ -9,21 +9,5 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
oid="fecae27b-d1d3-40ae-95fa-8f7e44e2ee70">
metarole-affiliation
-
-
-
-
- [ri:eduPersonAffiliation]
-
- strong
-
-
-
-
-
-
- 2
-
+
diff --git a/demo/complex/midpoint-objects/roles/metarole-group.xml b/demo/complex/midpoint-objects/roles/metarole-grouper-group.xml
similarity index 95%
rename from demo/complex/midpoint-objects/roles/metarole-group.xml
rename to demo/complex/midpoint-objects/roles/metarole-grouper-group.xml
index bdf7113..df08f51 100644
--- a/demo/complex/midpoint-objects/roles/metarole-group.xml
+++ b/demo/complex/midpoint-objects/roles/metarole-grouper-group.xml
@@ -8,7 +8,7 @@
xmlns:t="http://prism.evolveum.com/xml/ns/public/types-3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
oid="48e231be-8474-4ed0-a85e-6acf4c5e8d52">
- metarole-group
+ metarole-grouper-group
diff --git a/demo/complex/midpoint-objects/roles/metarole-generic-group.xml b/demo/complex/midpoint-objects/roles/metarole-midpoint-group.xml
similarity index 92%
rename from demo/complex/midpoint-objects/roles/metarole-generic-group.xml
rename to demo/complex/midpoint-objects/roles/metarole-midpoint-group.xml
index f0e93c5..a2a2c9a 100644
--- a/demo/complex/midpoint-objects/roles/metarole-generic-group.xml
+++ b/demo/complex/midpoint-objects/roles/metarole-midpoint-group.xml
@@ -8,12 +8,12 @@
xmlns:t="http://prism.evolveum.com/xml/ns/public/types-3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
oid="c691e15a-f30b-4e15-8445-532db07ceeeb">
- metarole-generic-group
+ metarole-midpoint-group
entitlement
- generic-group
+ midpoint-group
@@ -26,7 +26,7 @@
entitlement
- generic-group
+ midpoint-group
diff --git a/demo/complex/midpoint-objects/roles/role-grouper-sysadmin.xml b/demo/complex/midpoint-objects/roles/role-grouper-sysadmin.xml
index 5b559f8..cb81a23 100644
--- a/demo/complex/midpoint-objects/roles/role-grouper-sysadmin.xml
+++ b/demo/complex/midpoint-objects/roles/role-grouper-sysadmin.xml
@@ -10,8 +10,8 @@
oid="d48ec05b-fffd-4262-acd3-d9ff63365b62">
role-grouper-sysadmin
-
+
- generic-group
+ midpoint-group
sysadmingroup
diff --git a/demo/complex/midpoint-objects/systemConfigurations/SystemConfiguration.xml b/demo/complex/midpoint-objects/systemConfigurations/SystemConfiguration.xml
index 3c162e1..eb5f90c 100644
--- a/demo/complex/midpoint-objects/systemConfigurations/SystemConfiguration.xml
+++ b/demo/complex/midpoint-objects/systemConfigurations/SystemConfiguration.xml
@@ -91,7 +91,7 @@
- RoleType
+ OrgType
affiliation
@@ -107,12 +107,12 @@
OrgType
- group
+ generic-group
RoleType
- generic-group
+ midpoint-group
diff --git a/demo/complex/midpoint_server/container_files/mp-home/res/sis/SchemaScript.groovy b/demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/SchemaScript.groovy
similarity index 100%
rename from demo/complex/midpoint_server/container_files/mp-home/res/sis/SchemaScript.groovy
rename to demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/SchemaScript.groovy
diff --git a/demo/complex/midpoint_server/container_files/mp-home/res/sis/SearchScript.groovy b/demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/SearchScript.groovy
similarity index 100%
rename from demo/complex/midpoint_server/container_files/mp-home/res/sis/SearchScript.groovy
rename to demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/SearchScript.groovy
diff --git a/demo/complex/midpoint_server/container_files/mp-home/res/sis/TestScript.groovy b/demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/TestScript.groovy
similarity index 100%
rename from demo/complex/midpoint_server/container_files/mp-home/res/sis/TestScript.groovy
rename to demo/complex/midpoint_server/container_files/mp-home/res/sis-courses/TestScript.groovy
diff --git a/demo/complex/midpoint_server/container_files/mp-home/schema/user-schema.xsd b/demo/complex/midpoint_server/container_files/mp-home/schema/user-schema.xsd
index 329534a..00d479b 100644
--- a/demo/complex/midpoint_server/container_files/mp-home/schema/user-schema.xsd
+++ b/demo/complex/midpoint_server/container_files/mp-home/schema/user-schema.xsd
@@ -14,7 +14,8 @@
-
+
+
diff --git a/demo/complex/upload-import-sis-persons.sh b/demo/complex/upload-import-sis-persons.sh
new file mode 100755
index 0000000..4e0d56d
--- /dev/null
+++ b/demo/complex/upload-import-sis-persons.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+function upload () {
+ local filename=$1
+ local regex="midpoint-objects.*/(.*)/(.*)"
+ if [[ $filename =~ $regex ]]
+ then
+ type="${BASH_REMATCH[1]}"
+ oid=`cat $filename | sed -n 's:.*oid=\"\([A-Za-z0-9\-]*\)\".*:\1:p' | sed -n '1 p'`
+ echo "Uploading $filename ($type, $oid)"
+ curl -k --user administrator:5ecr3t -H "Content-Type: application/xml" -X PUT "https://localhost:8443/midpoint/ws/rest/$type/$oid?options=overwrite&options=raw" --data-binary @$filename
+ else
+ echo "Skipping $filename"
+ fi
+}
+
+upload midpoint-objects-manual/tasks/task-import-sis-persons.xml