forked from ISTI-ansible-roles/ansible-roles
25 lines
795 B
Groovy
25 lines
795 B
Groovy
|
#!groovy
|
||
|
import java.util.logging.Level
|
||
|
import java.util.logging.Logger
|
||
|
import hudson.security.*
|
||
|
import jenkins.model.*
|
||
|
|
||
|
def instance = Jenkins.getInstance()
|
||
|
def logger = Logger.getLogger(Jenkins.class.getName())
|
||
|
|
||
|
logger.log(Level.INFO, "Ensuring that local user '{{ jenkins_admin_user }}' is created.")
|
||
|
|
||
|
if (!instance.isUseSecurity()) {
|
||
|
logger.log(Level.INFO, "Creating local admin user '{{ jenkins_admin_user }}'.")
|
||
|
|
||
|
def strategy = new FullControlOnceLoggedInAuthorizationStrategy()
|
||
|
strategy.setAllowAnonymousRead(false)
|
||
|
|
||
|
def hudsonRealm = new HudsonPrivateSecurityRealm(false)
|
||
|
hudsonRealm.createAccount("{{ jenkins_admin_user }}", "{{ jenkins_admin_pwd }}")
|
||
|
|
||
|
instance.setSecurityRealm(hudsonRealm)
|
||
|
instance.setAuthorizationStrategy(strategy)
|
||
|
instance.save()
|
||
|
}
|