Wie kann ich das überschreiben der <default> branch-name in TeamCity 7.1 verwenden von Git-Verzweigungen unterstützen?
Habe ich einen CI-build ziehen Funktions-Zweige von Github und Gebäude/Verpackung Sie in einen lokalen Ordner mit einem Ordner Namenskonvention basiert auf dem Projekt -, branch-und die build-Nummer.
Benannten Zweige (feature1, feature2) das funktioniert Super.
Das problem ist, dass wenn ich einen commit auf dem master, TeamCity macht teamcity.bauen.Niederlassung als <default>
- was bedeutet, dass, wenn die build-Schritt erweitert
E:\Packages\MyProject\%teamcity.build.branch%\
es ist Ende mit E:\Packages\MyProject\<default>
- die dann den Absturz des build-Schritt, da es kein Gültiger Windows-Pfad.
Ich kann finden Sie in der master-branch name in der voll-qualifizierte build-parameter:
teamcity.build.branch <default>
teamcity.build.checkoutDir C:\TeamCity\BuildAgents\agent-mulder\work\2151838a7933464d
teamcity.build.default.checkoutDir 2151838a7933464d
teamcity.build.id 16347
teamcity.build.vcs.branch.github_myproject refs/heads/master
idealerweise aber ich brauche, um master als teamcity.bauen.Niederlassung für den Einsatz in meinem build-Schritte.
Kann ich mich verwandeln die parameter zur Laufzeit? Überschreiben Sie das Verhalten? Ich habe sogar versucht die Einstellung der VCS-Niederlassung Namen DO_NOT_USE in der Hoffnung, dass der "master" würde nicht mehr mit dem Standard - aber dies scheint nicht zu funktionieren.
- Ich habe ein ticket für Ihre YouTrack Projekt für TeamCity, leider ist es gerade betrachtet wird, als eine Frage, kein usability-problem, aber wenn wir mehr Leute kommentieren, kann es helfen: youtrack.jetbrains.com/issue/TW-23699
- warum nicht fügen Sie eine bedingte, um das build-Skript die Karten
"<default>"
zu"master"
?
Du musst angemeldet sein, um einen Kommentar abzugeben.
In teamcity 7 einfach %vcsroot.Zweig%
dass die Rendite entwickeln.
In meinem Fall habe ich
Die in der build-Parameter.
Das Zahlenformat %BuildFormatSemVer%, das ist der Stoff, oben und . {0}
Gibt
Nicht ideal, aber ich war in der Lage, um es durch die Schaffung einer neuen Niederlassung in git mit dem Namen "teamcity" und einstellen, dass als default-Zweig in TeamCity, scheint es, dass der Zweig tatsächlich vorhanden, da es funktionierte, habe ich den Zweig, aber nicht, wenn Sie gerade in eine gefälschte Namen.
Hoffentlich Sie tatsächlich dieses Problem zu lösen, denn das ist definitiv ein hack.
Wir haben dieses problem mehrere Male beim erstellen von Rohrleitungen. Es ist die am meisten sichtbar, wenn Sie versuchen, um automatisch zu erstellen-feature und release-Zweigen, die mit dem Gitflow-workflow. Das, was wir tun konnten, war der Einsatz von
teamcity.build.vcs.branch.github_myproject
und einem regulären Ausdruck, insed
zu bereinigen, die Zeichenfolge, Wann immer wir es nutzen wollen. Dies ist vor allem auf Wasserzeichen Artefakte für debugging-Zwecke.Das größere Problem, zumindest für uns, ist, dass die TeamCity 7.1.1 version nicht automatisch das Feuer aus der Abhängigkeit baut für alles, was nicht der Standard zu bauen, die in der VCS-root. Offensichtlich ist dies eine große Schmerzen zeigen, wie wir sind, jetzt gehen zu müssen, klicken Sie auf manuell in das tool. Wir haben noch nicht herausgefunden, eine saubere Art und Weise zu bekommen, um dieses andere als hooks in git die Nutzung der HTTP-API-Aufruf aus, um die richtige build-Schritt.
Ich weiß nicht, ob dies war bisher beantwortet oder nicht mehr relevant.
In TeamCity 10.0.2 erstellen Sie einen benutzerdefinierten parameter ein, wie %Git.Referenz%. Wenn Sie benötigen ein ziehen (oder schieben) von TC, git, wählen Sie "ref/Kopf/Dev" oder "ref/Kopf/yourbranch". Verwenden Sie diese in Ihrem 'VCS-root' - Referenz.