Gibt es eine Möglichkeit, auf das aktuelle Tag zuzugreifen, das in einer Github-Aktion gepusht wurde? In CircleCI können Sie mit dem auf diesen Wert zugreifen$CIRCLE_TAG
Variablen .
Mein Workflow-Yaml wird durch ein Tag wie das folgende ausgelöst:
on:
push:
tags:
- 'v*.*.*'
Und ich möchte diese Versionsnummer später im Workflow als Dateipfad verwenden.
Ich habe meine endgültige Lösung basierend auf der ausgewählten Antwort als weitere Antwort unten angegeben: https://stackoverflow.com/a/58195087/756514
refs/tags/
und nur der letzte Teil der Zeichenfolge zurückgegeben.DEST_PATH: "${{ secrets.AWS_S3_BUCKET }}/$RELEASE_VERSION"
Aber kann die Syntax nicht korrekt sein, irgendwelche Ideen? (Dies ist in einer ENV für eine Aktion eines Drittanbieters, die ich übrigens später im Yaml verwende)${GITHUB_REF:10}
ich anstelle der Filterung des Namens des Tags die Parametererweiterung verwenden würde${GITHUB_REF#refs/*/}
. Das würde erweitern ,/refs/tags/v1.0.1
umv1.0.1
wie erwartet, sondern würde auch die Arbeit mit Zweig Namen:/refs/heads/master
würden erweitertmaster
, siehe gnu.org/software/bash/manual/html_node/...Hier ist ein Workflow-Lauf, der zeigt, dass die
GITHUB_REF
Umgebungsvariable Folgendes enthältrefs/tags/v0.0.2
:https://github.com/rmunn/Testing/runs/242676390
Ich habe das ausgeführt, indem ich das Tag erstellt und dann getan habe
git push origin v0.0.2
.Hier ist ein Ausschnitt des Workflows, den Sie in diesem Protokoll sehen:
Da dieses Protokoll irgendwann gelöscht wird (ich weiß nicht, wie lange Github-Aktionsprotokolle aufbewahrt werden, aber es ist sicherlich nicht für immer), ist hier ein Screenshot als Beweis.
quelle
Dank der Hilfe von @peterevans gelang es mir, das gewünschte Ergebnis zu erzielen:
chrislennon/action-aws-cli
Aktion, um aws cli mithilfe von Geheimnissen für Schlüssel zu installierenHier ist ein Beispiel für das, was ich mit Chris Lennons Aktion ausgeführt habe:
quelle