Skip to content

add group attribute example for midPoint and bump Grouper to 4.7.2 #168

Merged
merged 1 commit into from Oct 13, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -60,6 +60,7 @@ db.midPoint.user = grouper

# provisioner midpoint
provisioner.midPoint.class = edu.internet2.middleware.grouper.app.midpointProvisioning.MidPointProvisioner
provisioner.midPoint.configureMetadata = true
provisioner.midPoint.customizeEntityCrud = true
provisioner.midPoint.customizeGroupCrud = true
provisioner.midPoint.customizeMembershipCrud = true
Expand All @@ -73,17 +74,24 @@ provisioner.midPoint.deleteMemberships = true
provisioner.midPoint.deleteMembershipsIfNotExistInGrouper = false
provisioner.midPoint.deleteMembershipsIfGrouperDeleted = true
provisioner.midPoint.makeChangesToEntities = true
provisioner.midPoint.metadata.0.name = md_grouper_emailListName
provisioner.midPoint.metadata.0.showForGroup = true
provisioner.midPoint.midPointDeletedColumnName = deleted
provisioner.midPoint.midPointLastModifiedColumnName = last_modified
provisioner.midPoint.midPointLastModifiedColumnType = long
provisioner.midPoint.midPointTablesPrefix = gr
provisioner.midPoint.numberOfGroupAttributes = 1
provisioner.midPoint.numberOfMetadata = 1
provisioner.midPoint.operateOnGrouperEntities = true
provisioner.midPoint.operateOnGrouperGroups = true
provisioner.midPoint.operateOnGrouperMemberships = true
provisioner.midPoint.provisioningType = membershipObjects
provisioner.midPoint.selectAllEntities = true
provisioner.midPoint.startWith = this is start with read only
provisioner.midPoint.subjectSourcesToProvision = ldap
provisioner.midPoint.targetGroupAttribute.0.name = emailListName
provisioner.midPoint.targetGroupAttribute.0.translateExpression = \u0024{grouperProvisioningGroup.retrieveAttributeValueString('md_grouper_emailListName')}
provisioner.midPoint.targetGroupAttribute.0.translateExpressionType = translationScript

# changeLog/FullSync midPoint
changeLog.consumer.midPoint.class = edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer
Expand Down
@@ -0,0 +1,3 @@
md_grouper_emailListName_midPoint_description = Enter the email list description
md_grouper_emailListName_midPoint_label = Email list name

10 changes: 9 additions & 1 deletion Workbench/docker-compose.yml
Expand Up @@ -43,6 +43,9 @@ services:
- type: bind
source: ./configs-and-secrets/grouper/application/subject.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/subject.properties
- type: bind
source: ./configs-and-secrets/grouper/application/grouper.text.en.us.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/grouperText/grouper.text.en.us.properties
grouper_ui:
build:
context: ./grouper_ui/
Expand Down Expand Up @@ -107,6 +110,9 @@ services:
- type: bind
source: ./configs-and-secrets/grouper/application/subject.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/subject.properties
- type: bind
source: ./configs-and-secrets/grouper/application/grouper.text.en.us.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/grouperText/grouper.text.en.us.properties
grouper_ws:
build: ./grouper_ws/
command: bash -c "while ! nc -z grouper_data 5432; do echo waiting for pgsql to start; sleep 3; done; while ! nc -z directory 389; do echo waiting for ldap to start; sleep 3; done; exec ws"
Expand Down Expand Up @@ -157,7 +163,9 @@ services:
- type: bind
source: ./configs-and-secrets/grouper/application/subject.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/subject.properties

- type: bind
source: ./configs-and-secrets/grouper/application/grouper.text.en.us.properties
target: /opt/grouper/grouperWebapp/WEB-INF/classes/grouperText/grouper.text.en.us.properties
grouper_data:
build: ./grouper_data/
networks:
Expand Down
2 changes: 1 addition & 1 deletion Workbench/grouper_daemon/Dockerfile
@@ -1,4 +1,4 @@
FROM i2incommon/grouper:4.7.1
FROM i2incommon/grouper:4.7.2

LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>"

Expand Down
2 changes: 1 addition & 1 deletion Workbench/grouper_data/Dockerfile
@@ -1,4 +1,4 @@
FROM i2incommon/grouper:4.7.1
FROM i2incommon/grouper:4.7.2

LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>"

Expand Down
15 changes: 15 additions & 0 deletions Workbench/grouper_data/container_files/bootstrap/set-prov.gsh
Expand Up @@ -24,7 +24,22 @@ def setProvOnGroup(grouperSession,provisioner_name,group_name) {

}

def setProvOnGroupWithMailListAttr(grouperSession,provisioner_name,group_name,email_list_name) {
AttributeAssign attributeAssignMarker = null;
attributeAssignMarker = new AttributeAssignSave(grouperSession).assignOwnerGroupName(group_name).assignNameOfAttributeDefName("etc:provisioning:provisioningMarker").save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningDirectAssign").addValue("true").save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningDoProvision").addValue(provisioner_name).save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningStemScope").addValue("sub").save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningTarget").addValue(provisioner_name).save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningMetadataJson").addValue("{\"destination\":\"midpoint\",\"actor\":\"initial load\"}").save();
new AttributeAssignSave(grouperSession).assignOwnerAttributeAssign(attributeAssignMarker).assignNameOfAttributeDefName("etc:provisioning:provisioningMetadataJson").addValue("{\"md_grouper_emailListName\":\"" + email_list_name + "\"}").save();

}


setProvOnStem(grouperSession,provisioner_name,"app")
setProvOnGroupWithMailListAttr(grouperSession,provisioner_name,"app:mailinglist:chess","chessclub@example.edu")
setProvOnGroupWithMailListAttr(grouperSession,provisioner_name,"app:mailinglist:idm-fans","idmfans@example.edu")
setProvOnStem(grouperSession,provisioner_name,"test")
setProvOnStem(grouperSession,provisioner_name,"ref:dept")
setProvOnStem(grouperSession,provisioner_name,"ref:course")
Expand Down
2 changes: 1 addition & 1 deletion Workbench/grouper_ui/Dockerfile
@@ -1,4 +1,4 @@
FROM i2incommon/grouper:4.7.1
FROM i2incommon/grouper:4.7.2

LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>"

Expand Down
2 changes: 1 addition & 1 deletion Workbench/grouper_ws/Dockerfile
@@ -1,4 +1,4 @@
FROM i2incommon/grouper:4.7.1
FROM i2incommon/grouper:4.7.2

LABEL author="tier-packaging@internet2.edu <tier-packaging@internet2.edu>"

Expand Down
2 changes: 1 addition & 1 deletion Workbench/webproxy/container_files/httpd/index.html
Expand Up @@ -9,7 +9,7 @@ <h3>Welcome to the InCommon TAP Workbench!</h3>
The system contains the following TAP components (click the links to access each component in its own tab):

<ul>
<li><a href="https://__CSPHOSTNAME__/grouper" target="TAP-WB-GROUPER">Grouper (4.7.1)</a></li>
<li><a href="https://__CSPHOSTNAME__/grouper" target="TAP-WB-GROUPER">Grouper (4.7.2)</a></li>
<li><a href="https://__CSPHOSTNAME__/midpoint" target="TAP-WB-MIDPOINT">midPoint (4.7.2)</a></li>
<ul><li><a href="https://__CSPHOSTNAME__/midPoint-doc.html" target="TAP-WB-MIDPOINT-CONFIG">Technical doc on midPoint's configuration</a></li></ul>
<li><a href="https://__CSPHOSTNAME__/registry" target="TAP-WB-COMANAGE">COmanage Registry (4.1.0)</a></li>
Expand Down