Ich habe ein Gradle Projekt, das von einem Hauptprojekt und 2 anderen besteht die includeFlat
Richtlinie aufgenommen werden. Jedes dieser 3 Projekte hat sein eigenes Repo auf GitHub. Um es zu erstellen, checke ich alle 3 Projekte in einen gemeinsamen Top-Ordner und dann cd
in das Master-Projekt und führe gradle build
aus. Und es funktioniert super!Gebäude mehr Gradle Projekte in Jenkins mit AWS CodePipeline
Jetzt muss ich die resultierende App AWS EB (Elastic Beanstalk), die sich zudem hervorragend implementieren ist, wenn ich das Artefakt lokal produzieren und sie dann manuell bereitstellen. Ich möchte den Prozess automatisieren, also versuche ich es mit CodePipelines + Jenkins einzurichten, wie in this document beschrieben, das für Gradle angepasst wurde.
Das Problem ist, dass, wenn I angeben 3 Sources im Rohr ich mit meinen Projekten auf extrahierten Ende voneinander ein Durcheinander in Jenkins Arbeitsbereich zu schaffen. Ich muss irgendwie jedes Projekt so konfigurieren, dass es in seinem eigenen Verzeichnis innerhalb Jenkins Arbeitsbereich ausgegeben wird und ich sehe einfach keinen Weg (zumindest in UI)
Dann natürlich, auch wenn ich erreiche was ich will Ich brauche irgendwie zu cd
in das Hauptverzeichnis zu laufen gradle build
und wieder bin ich mir nicht sicher, wie man das macht
PS Große Vorschläge von @Phil aber leider scheint, dass CodePipeline does not currently support Git Submodule oder Unterbäume
Könnten Sie nicht so etwas wie git Submodule verwenden? https://git-scm.com/docs/gitsubmodules – Phil
Interessante Idee, obwohl ich viel eine flache Projektstruktur – Bostone
es vorziehen, aber noch nicht haben Sie für jedes Projekt getrennt repos? Sie könnten eine andere übergeordnete Projekt erstellen, die sie alle in ihren eigenen Verzeichnissen als Submodule und verwenden Sie diese für Ihre Build – Phil