CI: Build+Push in einem Schritt ohne Step-Output (kompatibel mit Gitea act)
Image bauen und in die Registry schieben / build (push) Successful in 6s
Image bauen und in die Registry schieben / build (push) Successful in 6s
This commit is contained in:
1 parent
53c29ae9dc
commit
25ed34e80e
1 file changed
+7
-18
@@ -25,27 +25,16 @@ jobs:
|
||||
run: echo "${{ secrets.REGISTRY_TOKEN }}" | docker login git.somantis.net -u "${{ secrets.REGISTRY_USER }}" --password-stdin
|
||||
|
||||
# Tags: main-Push -> latest + SHA; Tag-Push (v*) -> vX.Y.Z + SHA.
|
||||
# So zieht man entweder die aktuelle Version (:latest) oder eine
|
||||
# feste Version (z.B. :v1.0.0).
|
||||
- name: Image-Tags bestimmen
|
||||
id: img
|
||||
# Gebaut und gepusht wird in einem Schritt (keine Step-Outputs noetig).
|
||||
- name: Image bauen und pushen
|
||||
run: |
|
||||
IMG="git.somantis.net/j4stmarkus/trainingsplan"
|
||||
TAGS="$IMG:latest"
|
||||
TAGS=("$IMG:latest")
|
||||
if [ "${{ github.ref_type }}" = "tag" ]; then
|
||||
TAGS="$TAGS $IMG:${{ github.ref_name }}"
|
||||
TAGS+=("$IMG:${{ github.ref_name }}")
|
||||
fi
|
||||
TAGS="$TAGS $IMG:${{ github.sha }}"
|
||||
echo "tags=$TAGS" >> "$GITHUB_OUTPUT"
|
||||
echo "tags=$TAGS"
|
||||
|
||||
- name: Image bauen
|
||||
run: |
|
||||
TAGS+=("$IMG:${{ github.sha }}")
|
||||
ARGS=()
|
||||
for t in ${{ steps.img.outputs.tags }}; do
|
||||
ARGS+=("-t" "$t")
|
||||
done
|
||||
for t in "${TAGS[@]}"; do ARGS+=("-t" "$t"); done
|
||||
docker build --no-cache "${ARGS[@]}" .
|
||||
|
||||
- name: Image pushen
|
||||
run: docker push ${{ steps.img.outputs.tags }}
|
||||
for t in "${TAGS[@]}"; do docker push "$t"; done
|
||||
Reference in new issue
Block a user