Créer un utilisateur dans Jenkins via API
Je me demandais si je peux créer un nouvel utilisateur dans Jenkins à l'aide de son API. Je peux créer des emplois, mais l'API docs pour Jenkins n'ont pas tout ce qui est lié à la création d'un utilisateur.
En fait, j'ai créer un nouvel utilisateur, suivie par la création d'un nouvel emploi pour l'utilisateur, tout cela à l'aide d'un API.
source d'informationauteur shubham | 2013-07-18
Vous devez vous connecter pour publier un commentaire.
Vous avez raison, il n'est pas explicite commande CLI pour l'ajout d'un utilisateur. Mais vous pouvez utiliser le script groovy pour cela (à l'aide de la CLI pour l'exécution).
Les détails dépendent de la façon dont votre Jenkins est configuré.
Par exemple, si votre Jenkins utilise sa propre base de données d'utilisateur, vous pouvez ajouter un nouvel utilisateur à la suite de la CLI d'appel:
Cette commande shell va créer un nouvel utilisateur avec le nom d'utilisateur "user1" et le mot de passe "password123".
Ici echo alimente une ligne de code groovy à un Jenkins CLI (notez que = signifie que les CLI doivent recevoir le code à partir de STDIN).
Aussi groovy script permet de gérer les autorisations des utilisateurs, cependant, le code exact dépend de ce que l'autorisation de la stratégie est utilisée. Vous pouvez utiliser cet exemple de script comme un début.
C'est la façon de créer de l'utilisateur après l'installation:
Où c3a5dcd6bc3f45ee8d6c9f0f5abc14c0 est générée automatiquement le mot de passe actuel dans le journal ou dans le fichier (pour ubuntu): /var/lib/jenkins/secrets/initialAdminPassword
J'ai réussi à obtenir le texte suivant extrait python pour créer un utilisateur avec la commande ssh-clés:
Il est un peu comme un RESTE de l'interface, sauf que l'on a de connaître le fonctionnement interne du code et les noms des classes que les objets sont censé décoder.
Je suis en train de configurer jenkins à partir d'un ansible script (en cours d'exécution à l'extérieur, jenkins serveur); depuis la java de la cli ne prend pas en charge la création les informations d'identification de l'extrait python semble la voie à suivre.
echo et le tuyau ne fonctionne pas sur mon Windows, j'ai donc fini par utiliser un fichier de script à la place. Il est également plus facile d'ajouter plus de logique dans le fichier de script. Le script ci-dessous va vérifier utilisateur existant avant l'ajout d'un nouvel utilisateur, puis de définir l'email de l'utilisateur après la création de compte et de donner un accès en LECTURE à l'aide de la Matrice de base de la sécurité. Vous pouvez l'exécuter par d'enregistrer le script dans un fichier, disons utilisateur-création.groovy, et puis exécutez ce qui suit,
Bâtiment sur @vitaleek la réponse de la suivante permet de saisir les informations d'identification d'administrateur par défaut à partir du fichier et créer un nouvel utilisateur:
Si vous êtes comme moi et vous ne trouvez pas la jenkins-cli.jar au premier, qui peut être tirée à partir de votre serveur Jenkins comme suit: