role-strategy-plugin - No signature of method: com.michelin.cio.hudson.plugins.rolestrategy.Role.addPermissionEntry()

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      The issue might have been introduced by change: https://issues.jenkins.io/browse/JENKINS-68755. The GitHub change reference is: https://github.com/jenkinsci/role-strategy-plugin/pull/230

      We installed the latest role-strategy-plugin (670.vc71a_a_c00039e) and tried to use the example in the Readme but we are getting the following:

      groovy.lang.MissingMethodException: No signature of method: com.michelin.cio.hudson.plugins.rolestrategy.Role.addPermissionEntry() is applicable for argument types: (com.michelin.cio.hudson.plugins.rolestrategy.PermissionEntry) values: [PermissionEntry{type=USER, sid='admin'}]
              at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:71)
              at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:48)
              at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
              at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
              at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128) 

      Code snip:

      import com.michelin.cio.hudson.plugins.rolestrategy.AuthorizationType
      import com.michelin.cio.hudson.plugins.rolestrategy.PermissionEntry
      import com.michelin.cio.hudson.plugins.rolestrategy.RoleBasedAuthorizationStrategy
      import com.michelin.cio.hudson.plugins.rolestrategy.Role
      import com.synopsys.arc.jenkins.plugins.rolestrategy.RoleType
      import hudson.security.Permission
      import jenkins.model.Jenkins
      
      
      Jenkins jenkins = Jenkins.get()
      def rbas = new RoleBasedAuthorizationStrategy()
      
      /* create admin role */
      Set<Permission> permissions = new HashSet<>();
      permissions.add(Jenkins.ADMINISTER)
      Role adminRole = new Role("admin", permissions)
      
      /* assign admin role to user 'admin' */
      adminRole.addPermissionEntry(new PermissionEntry(AuthorizationType.USER, 'admin'))
      /* assign admin role to group 'administrators' */
      adminRole.addPermissionEntry(new PermissionEntry(AuthorizationType.GROUP, 'administrators'))
      
      globalRoleMap = rbas.getRoleMap(RoleType.Global)
      globalRoleMap.addRole(adminRole)
      
      jenkins.setAuthorizationStrategy(rbas)
      
      jenkins.save() 

            Assignee:
            Markus Winter
            Reporter:
            Andrea Lai
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: