Cum să obțineți conținut, după care rulează readFile în Jenkins

0

Problema

Am si eu o intrebare despre cum să obțineți conținut, după care rulează readFile în Jenkins.

Am imprima conținut după readFile metoda de groovy în Jenkins

conținutul se pare ca acest lucru


Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: asdfasdf
Team: {org=org1, team=team1}
ABCD: {org=org2, team=team2}
ABCDE: {org=org3, team=team3}
Bundle-Vendor: xxxxx

Vreau doar pentru a obține această linie în conținutul

Team: {org=org1, team=team1}
ABCD: {org=org2, team=team2}
ABCDE: {org=org3, team=team3}

dar cum????

orice Soluții?

groovy jenkins
2021-11-23 07:08:27
1

Cel mai bun răspuns

0

Conținutul de fișierul dvs. se pare ca este un proprietăți de fișier, astfel încât să puteți utiliza readProperties cheie care este parte a Conductei Utility Pașii pentru a citi fișierul într-o hartă, permițându-vă acces ușor la toate valorile:

readProperties: Citește proprietăți de fișiere în spațiul de lucru sau text.
Citește un fișier în directorul curent de lucru sau un Șir ca un text simplu Java Properties. Obiectul returnat este o Hartă normală cu Șirul de chei. Harta poate fi, de asemenea, pre încărcate cu valori implicite înainte de a citi/parsarea datelor.

Acum aveți acces usor la chei și valori.
În cazul tău se poate arata ca:

def props = readProperties file: 'YOUR_FILE_PATH'

// You can now access all values from the props map
def content = "Team: ${props.Team}" 

Dacă doriți doar linia bazat pe analiza de conținut de fișiere puteți citi fișierul, split conținutul de linii noi și de a folosi ceva de genul următor:

def lines = readFile('YOUR_FILE_PATH').split("\n").trim()

// Get a constant line
def content = lines[4]

// Get a line by prefix
def content = lines.find{ it.startsWith('Team')}
2021-11-23 09:05:03

asta este fișierul Manifest, nu sunt sigur ce tip de acest fișier este.
user1938143

Manifest fișierele pot veni în diferite formate. Oricum, puteți folosi de-a doua parte a răspunsului.
Noam Helmer

Salut, multumesc pentru solutie, am reeditat la întrebarea mea. poți să-mi dai o soluție?
user1938143

prima soluție cu readproperties cred că este cea mai bună soluție, dar am reediet meu de fișier manifest, vreau doar pentru a obține toate cheie și valoare, dacă valoarea {orga: echipa: } este
user1938143

@user1938143 nu sunt sigur ce s-a schimbat în cauză, dar puteți utiliza în continuare ambele opțiuni în răspunsul...
Noam Helmer

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................