web-dev-qa-db-fra.com

Authentification de base avec Jenkins http-request-plugin

J'essaie de faire une simple requête POST avec le "Http Request Plugin". Mon problème est de faire fonctionner les informations d'identification. J'ai défini un identifiant global, user:pass.

Mais essayer cela dans mon code

withCredentials([usernameColonPassword(credentialsId: 'akamai', variable: 'akamai')]) {

    def response = httpRequest url: requestUrl, contentType: requestContentType, httpMode: requestHttpMode, requestBody: requestContent, authentication: akamai
    echo "Status: ${response.status}\nContent: ${response.content}"
}

résulte en

Java.lang.IllegalStateException: Authentication 'user:pass' doesn't exist anymore
7
Torbilicious

Plug-in de demande HTTP v1.8.18 prend désormais en charge les informations d'identification dans le plug-in d'informations d'identification (le plug-in de requête HTTP v1.8.18 dépend désormais de la version 2.1.3 du plug-in d'informations d'identification ).

Pour effectuer une demande HTTP à l'aide d'une information d'identification Jenkins, vous pouvez utiliser le code suivant:

def response = httpRequest authentication: 'credentialsID', url: "http://www.example.com"

credentialsID est l'ID des informations d'identification dans Jenkins:

enter image description here

Les informations d'identification de base sous Configurer le système> Demande HTTP indiquent maintenant que l'authentification de base/Digest est obsolète et d'utiliser à la place les informations d'identification Jenkins:

enter image description here

14
Ian A

Les pouvoirs pour le Http Request Plugin ne sont pas gérés par le plug-in d'informations d'identification, mais plutôt sous Configurer le système -> Requête HTTP comme indiqué dans l'image.

3
Torbilicious