web-dev-qa-db-fra.com

Comment analyser la réponse JSON dans une étape construite de jenkins

Pour industrialiser les déploiements d’un produit IBM, je vais utiliser ses interfaces API REST. Je prévois d’utiliser jenkins pour orchestrer les appels au REST API. Je me demande toujours si c'est une bonne idée ...? Si oui, existe-t-il un moyen simplement d'analyser les réponses JSON afin de pouvoir en produire conditions dans les marches? Merci.

4
user3258116

Vous n'avez pas dit pour quoi vous utilisez l'API, mais si vous avez le plugin Groovy , vous pouvez utiliser JsonSlurper

Quelque chose comme

import groovy.json.JsonSlurper
URL apiUrl = "https://some.website/api/someFunction".toURL()
List json = new JsonSlurper().parse(apiUrl.newReader())

// do stuff with the json object

Je ne sais pas trop comment vous allez utiliser cela et l'utiliser directement pour les étapes de construction conditionnelles pendant l'exécution du travail , cependant.

Une autre approche consiste à générer un ensemble de tâches avec les étapes appropriées en fonction de la réponse de l’API, à l’aide du plug-in Job DSL Plugin . Ce genre de choses peut être utilisé pour des tâches telles que la lecture d’une liste de branches de la gestion de la chaîne logistique et la création d’emplois pour chacune d’elles. Ce peut être ou ne pas être ce que vous essayez de faire.

6
badgerr

JQ https://stedolan.github.io/jq/ est un analyseur JSON pour bash. Je l'ai utilisé dans le passé et c'est magnifique. 

Vous pouvez télécharger JQ sur votre serveur Jenkins, puis appeler JQ dans vos scripts de bash

2
Somaiah Kumbera

Si vous utilisez Pipeline Job, vous serez satisfait de Plug-in Pipeline Utility Steps

0
Yevhen