2016-05-10 10 views
0

Ich arbeite mit Jenkins 2 und versuche, Artefakte zwischen Jobs und wiederum in einen S3-Bucket zu kopieren.Wie kopiert man den Inhalt des Unterverzeichnisses ohne eine benutzerdefinierte Ant-Aufgabe?

Ich habe eine einfache Web-Build, die Artefakte in /dist/public erzeugt, die ich in den S3-Bucket hochladen möchte.

Sobald der Job abgeschlossen ist, habe ich einen Ordner/dist im Arbeitsbereich root. Jenkins gibt Ihnen die Möglichkeit, Artefakte zwischen Jobs zu kopieren, die Ant's fileset nutzt.

Das Problem, das ich habe ist, dass dies eine eingeschränkte Teilmenge von Ant ist und alles, was Sie zur Verfügung gestellt werden, sind & auszuschließen Pfade.

Ich kann dist/public/**/** verwenden, aber dies kopiert auch die übergeordneten Verzeichnisse.

Was würde ich es vorziehen, nur den Inhalt von public/ zu kopieren, aber nachdem einige tun das Lesen scheint es dies schwierig sein kann, ohne eine benutzerdefinierte Ant-Tasks, etc. zu tun

Antwort

0

Wenn Sie Dateien von Ant kopieren, sollten Sie Set:

<fileset dir="/dist/public"/> 

an Sie kopieren Aufgabe, oder Sie können flatten attribute verwenden.

Wenn Sie Jenkins Artefaktsammler (wie ich) verwenden, denke ich jetzt müssen Sie diese Dateien in den Arbeitsbereich root kopieren (siehe: Copy Artifact Plugin).