windows - Sådan arkiverer du artefakter af parametrieret bygning i Jenkins-ci

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har et Jenkins-byggeprojekt, der bygger et Windows-drivermodul til 3-akse konfiguration (xp, w2k8, w2k3, w7, vista) vs (x86, x64) vs (fri, tjekket). [9]


Hvordan kan jeg arkivere artefakterne herunder de pdb filer intelligent. Hvis jeg inkludere filerne i jenkins-indstillingen, får jeg en fejl, at der ikke findes noget, der matcher *.pdb, på gratis builds.


Endnu bedre, hvordan kan jeg oprette cmd script, der finder alle *.sys og *.pdb filer i (vbery deep) undermapper og kopierer dem til en bestemt mappe?

Bedste reference


Så længe du har mindst en anden artefakt, kan du skrive et script til at kopiere det og alle andre artefakter til et foruddefineret sted i din arbejdskopi (f.eks. En mappe indtastet af BUILD\_ID, fx foo\_${BUILD\_ID}\_bar; du opretter det dynamisk i scriptet, selvfølgelig). Derefter som et post-build-trin i Jenkins udpeger alt (${BUILD\_ID}/**/*) i denne mappe som artefakter. Det vil give dig en advarsel på konfigurationssiden (da mappen ikke eksisterer endnu), men vil køre fint.


Da hver underbygning i matrixen har sit eget arbejdsområde, bliver artefakterne ikke blandet. Et problem, du skal overveje, er hvordan du rydder op i dit arbejdsområde.