I get asked quite a bit on how to do some routine things in Customers environments. You’d think the simple task of increasing a users File quota would be pretty straight forward. Unfortunately, it’s more complex and convoluted then it should be. I can only hope the upcoming versions of Connections start integrating the great Administration tools that are available from BP’s out there into the Core product.
Overview of the process
- Create a policy – refer to this blog on how to create a policy.
- Find the user
- Find the library belonging to the user
- Apply the policy to the Library
Start up wsadmin on the Deployment manager
D:\>cd IBM\WebSphere\AppServer\profiles\Dmgr01\bin
D:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin>wsadmin.bat -lang jython -user <connectionsadminuser> -password <connectionsadminuserpassword>-port 8879
WASX7209I: Connected to process “dmgr” on node CellManager01 using SOAP connector; The type of process is: DeploymentManager
WASX7031I: For help, enter: “print Help.help()”
Start Files Administration, and connect to a node
wsadmin>execfile(“filesAdmin.py”)
1: WebSphere:name=FilesSchedulerMBean,process=Cluster2_server1,platform=dynamicproxy,node=Node01,version=8.0.0.5,type=LotusConnections,mbeanIdentifier=FilesSchedulerMBean,cell=Cell01,spec=1.0
2: WebSphere:name=FilesSchedulerMBean,process=Cluster2_server2,platform=dynamicproxy,node=Node01,version=8.0.0.5,type=LotusConnections,mbeanIdentifier=FilesSchedulerMBean,cell=Cell01,spec=1.0
Which service do you want to connect to?
1
Connecting to WebSphere:name=FilesAdminService,type=LotusConnections,cell=Cell01,node=Node01,*
Files Administration initialized.
Find the users ID, notated below in bold by using their email address.
wsadmin>FilesMemberService.getByEmail(“userwhoneedsmorespace@blah.com”)
{directoryGroupLastUpdate=Tue Sep 09 12:48:02 EST 2014, lastVisit=Tue Sep 09 12:46:01 EST 2014, communityLastUpdate=Tue Sep 09 12:48:02 EST 2014, createDate=Thu Jul 04 16:50:43 EST
2013, id=97ea886e-fa34-415f-9883-2658af528bb6, name=User Who, email=userwhoneedsmorespace@blah.com, directoryLastUpdate=Tue Sep 09 12:46:01 EST 2014, isOprhan=false}
Take note of the value in “id=” . This is the internal representation of the user in the Files Application.
In this case it is “id=97ea886e-fa34-415f-9883-2658af528bb6″
Use the ID, and find the users Library ID
wsadmin>FilesLibraryService.getPersonalByOwnerId(“97ea886e-fa34-415f-9883-2658af528bb6”)
{maximumSize=524288000, size=524174032, percentUsed=0.9997826232910156, summary=, createDate=Thu Jul 04 16:50:43 EST 2013, policyId=00000000-0000-0000-0000-000000000000, externalContainerId=null, themeName=, label=036841EC-8E19-4118-986A-B55B53BA663A, title=User Who, ownerUserId=97ea886e-fa34-415f-9883-2658af528bb6, type=personal, id=021b4d54-c47a-41ca-97d3-46b301b3bc34, externalInstanceId=null, lastUpdate=Thu Jul 04 16:50:43 EST 2013}
Note that some pretty interesting information is displayed, i.e Policy currently applied “policyId”, Current percent used “percentUsed” etc. The bit we are interested in is the id of the Library, which in this case is “id=021b4d54-c47a-41ca-97d3-46b301b3bc34″.
Assign the policy to the Library
I had already created a policy for 1GB, and taken note of it’s ID. For completeness, it was “d60abd07-5d86-45b3-8500-20ce95596bd5”
Syntax of the command is FilesLibraryService.assignPolicy(“LibraryID”,”PolicyID”)
wsadmin>FilesLibraryService.assignPolicy(“021b4d54-c47a-41ca-97d3-46b301b3bc34″,”d60abd07-5d86-45b3-8500-20ce95596bd5”)
If complete, you’ll get a confirmation, like below.
The policy with the id d60abd07-5d86-45b3-8500-20ce95596bd5 is now assigned to the library with the id 021b4d54-c47a-41ca-97d3-46b301b3bc34″)