SBT Veröffentlichen nur, wenn die Version nicht existiert

8

Ich habe also einen Job in meiner CI-App, der bei Nexus veröffentlicht wird, wenn sich eine Änderung an einer App entwickelt.

Gibt es eine Möglichkeit, ./sbt idempotent zu veröffentlichen? Weil wir gelegentlich den Job aufgrund eines temporären Problems erneut ausführen wollen und es mit folgendem Fehler ausgeht:

%Vor%

Weil wir die Versionsnummer nicht gestoßen haben. Im Moment gehe ich mit einem Hacky:

./sbt publish || true

Der Job beendet also nicht 1 und der Fehler in CI. Gibt es einen besseren Weg?

    
Peter Souter 17.12.2014, 16:42
quelle

2 Antworten

11

Sie können

verwenden %Vor%

Dies erlaubt nur das Überschreiben einer Datei. Es scheint wahrscheinlich, dass sich dieses Verhalten in der Zukunft ändern kann.

    
user1879313 18.12.2014 20:57
quelle
0

Sie können die Version entweder immer als Teil Ihres Builds angeben oder Nexus über die REST-API abfragen, um herauszufinden, ob die Version bereits existiert, bevor Sie mit einem Build fortfahren.

    
Manfred Moser 18.12.2014 02:55
quelle

Tags und Links