JSON na linha de comando com jq em Jenkins

0

Eu usei o comando jq -r '.version' package.json para filtrar a versão do arquivo package.json usando o terminal.

Podemos usar o comando jq no shell do Jenkins sem instalá-lo localmente?

    
por Janith 09.11.2018 / 06:59

1 resposta

0

Para responder à sua pergunta diretamente, não, você não pode gastar com jq se ela não estiver instalada.

No entanto, dependendo exatamente do que você está fazendo, você não precisa nem mesmo de jq .

Se você estiver executando um trabalho do Jenkins Pipeline:

def version = readJSON(file: 'package.json').version

Se você estiver executando um script do Groovy usando a interface da Web do Groovy Script ou usando o cli.jar baseado no Groovy (eu não testei isso, então ele provavelmente precisa de alguma depuração):

import groovy.json.*

def jsonSlurper = new JsonSlurper()
def reader = new BufferedReader(new InputStreamReader(new FileInputStream('package.json'), 'UTF-8'))
def package = jsonSlurper.parse(reader)  

def version = package.version
    
por 13.11.2018 / 18:31