Hi, This is the way to update user access using groovy scrip:
import hudson.model.* import jenkins.security.* import hudson.security.* // For each project for(item in Hudson.instance.items) { if(item.name.equalsIgnoreCase("AuthenticationChecker_SE")) { println(item.name) println("Current USer "+User.current()); def authorizationMatrixProperty = item.getProperty(AuthorizationMatrixProperty.class) User user= User.current(); String sID= user.getId() ; authorizationMatrixProperty?.add(hudson.model.Item.CANCEL,sID) authorizationMatrixProperty?.add(Item.WORKSPACE,sID); authorizationMatrixProperty?.add(Item.BUILD,sID); authorizationMatrixProperty?.add(Run.DELETE,sID); authorizationMatrixProperty?.add(Run.UPDATE,sID); authorizationMatrixProperty?.add(Item.CONFIGURE,sID); authorizationMatrixProperty?.add(Item.DELETE,sID); authorizationMatrixProperty?.add(Item.READ,sID); item.addProperty( authorizationMatrixProperty ) item.save() } } Thanks and best regards, Achala M. Rathnathilaka Java software Enginner, Sri Lanka. On Tuesday, 12 July 2011 17:32:32 UTC+5:30, RainerW wrote: > I using a Jenkin s1.409.1 and try to change the Security Settings for > a bunch of projects via an groovy script [SCRIPT]. > > The script runs on the Master ( via "Manage Jenkins"\"Script > Console" ). All matching projects seemed to have beed modified : E.g. > the Job configuration dialog shows the changed Authorization Matrix, > and the %JOB%/config.xml file is updated. > > Only Jenkins doesn't seem to get it. The "build" user (The one now > should have rights) still isn't seeing the project. I can relogin, > reload / restart Jenkins (Winstone), nothing changes. > > When i just press the save button in the job configuration ... magic > happens. Now the the security has been updated, the build user can see > the project immediately. > > So what did i miss? Which magic does the save Button, which i'm not > doing? > > Cheers Rainer > > SCRIPT: > > import hudson.security.* > import hudson.model.* > items = hudson.model.Hudson.instance.items; > for (job in items) { > if (job.name.matches("INTER.*")) { > println("JOB: " + job) > props = job.properties; > a = new AuthorizationMatrixProperty(); > // QA group, 're-add' coz there is only one property for all > users > user = "qa" > a.add(Item.WORKSPACE,user); > a.add(Item.BUILD,user); > a.add(Run.DELETE,user); > a.add(Run.UPDATE,user); > a.add(Item.CONFIGURE,user); > a.add(Item.DELETE,user); > a.add(Item.READ,user); > // Build User > user = "build" > a.add(Item.WORKSPACE,user); > a.add(Item.BUILD,user); > // a.add(Run.DELETE,user); > a.add(Run.UPDATE,user); > a.add(Item.CONFIGURE,user); > a.add(Item.DELETE,user); > a.add(Item.READ,user); > // save it > job.addProperty( a ) > job.save() > } > } > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/b09a309b-9503-42c3-9cc5-78ff52161b57%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.