Update .gitea/workflows/build-image.yml
This commit is contained in:
@@ -1,9 +1,6 @@
|
||||
name: Build et push Docker
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
@@ -20,24 +17,43 @@ jobs:
|
||||
REPOSITORY_LOWER="$(printf '%s' "$GITHUB_REPOSITORY" \
|
||||
| tr '[:upper:]' '[:lower:]')"
|
||||
|
||||
SHORT_SHA="$(printf '%s' "$GITHUB_SHA" | cut -c1-12)"
|
||||
BRANCH_NAME="${GITHUB_REF_NAME:-${GITHUB_REF#refs/heads/}}"
|
||||
|
||||
BRANCH_SLUG="$(printf '%s' "$BRANCH_NAME" \
|
||||
| tr '[:upper:]' '[:lower:]' \
|
||||
| sed -E 's#[^a-z0-9._-]+#-#g; s#^[._-]+##; s#[._-]+$##')"
|
||||
|
||||
CALVER="$(date -u +'%y.%m')"
|
||||
|
||||
echo "REGISTRY=git.jst.ovh" >> "$GITHUB_ENV"
|
||||
echo "IMAGE_NAME=git.jst.ovh/$REPOSITORY_LOWER" >> "$GITHUB_ENV"
|
||||
echo "SHORT_SHA=$SHORT_SHA" >> "$GITHUB_ENV"
|
||||
echo "IMAGE_NAME=git.jst.ovh/$REPOSITORY_LOWER/$BRANCH_SLUG" >> "$GITHUB_ENV"
|
||||
echo "BRANCH_NAME=$BRANCH_NAME" >> "$GITHUB_ENV"
|
||||
echo "BRANCH_SLUG=$BRANCH_SLUG" >> "$GITHUB_ENV"
|
||||
echo "CALVER=$CALVER" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Afficher les informations
|
||||
shell: bash
|
||||
run: |
|
||||
echo "Branche : $BRANCH_NAME"
|
||||
echo "Version CalVer : $CALVER"
|
||||
echo "Image : $IMAGE_NAME:$CALVER"
|
||||
|
||||
- name: Vérifier Docker
|
||||
shell: bash
|
||||
run: |
|
||||
docker version
|
||||
echo "Image : $IMAGE_NAME"
|
||||
echo "Commit : $SHORT_SHA"
|
||||
docker info
|
||||
|
||||
- name: Connexion au registre
|
||||
shell: bash
|
||||
env:
|
||||
REGISTRY_TOKEN: ${{ secrets.REGISTRY_TOKEN }}
|
||||
run: |
|
||||
if [ -z "$REGISTRY_TOKEN" ]; then
|
||||
echo "Le secret REGISTRY_TOKEN est absent"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
printf '%s' "$REGISTRY_TOKEN" \
|
||||
| docker login "$REGISTRY" \
|
||||
--username "$GITHUB_ACTOR" \
|
||||
@@ -48,16 +64,19 @@ jobs:
|
||||
run: |
|
||||
docker build \
|
||||
--pull \
|
||||
--tag "$IMAGE_NAME:$CALVER" \
|
||||
--tag "$IMAGE_NAME:latest" \
|
||||
--tag "$IMAGE_NAME:sha-$SHORT_SHA" \
|
||||
.
|
||||
|
||||
- name: Publier l'image latest
|
||||
- name: Publier les images
|
||||
shell: bash
|
||||
run: |
|
||||
docker push "$IMAGE_NAME:$CALVER"
|
||||
docker push "$IMAGE_NAME:latest"
|
||||
|
||||
- name: Publier l'image du commit
|
||||
- name: Résumé
|
||||
shell: bash
|
||||
run: |
|
||||
docker push "$IMAGE_NAME:sha-$SHORT_SHA"
|
||||
echo "Images publiées :"
|
||||
echo " $IMAGE_NAME:$CALVER"
|
||||
echo " $IMAGE_NAME:latest"
|
||||
Reference in New Issue
Block a user