diff --git a/.gitea/workflows/build-and-push.yml b/.gitea/workflows/build-and-push.yml index 2782ce9..d9b7006 100644 --- a/.gitea/workflows/build-and-push.yml +++ b/.gitea/workflows/build-and-push.yml @@ -36,29 +36,38 @@ jobs: fi - name: Patch DNS for Local Network - if: steps.version_check.outputs.changed == 'true' run: | # Записываем IP Synology прямо в контейнер сборки echo "192.168.50.55 dungeonsiege.synology.me" | sudo tee -a /etc/hosts - - name: Log in to Gitea Registry - if: steps.version_check.outputs.changed == 'true' - run: | - echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin - - - name: Build and Push + - name: Build Docker Image id: build - if: steps.version_check.outputs.changed == 'true' run: | REGISTRY="dungeonsiege.synology.me/poignatov/play-life" VER="${{ steps.version_check.outputs.current }}" echo "Building Docker image..." echo "Registry: $REGISTRY" - echo "Tags: latest, $VER" + echo "Tag: latest" - # Собираем один раз - docker build -t $REGISTRY:latest -t $REGISTRY:$VER . + # Собираем образ + docker build -t $REGISTRY:latest . + + echo "✅ Successfully built image: $REGISTRY:latest" + + - name: Log in to Gitea Registry + if: steps.version_check.outputs.changed == 'true' + run: | + echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin + + - name: Push Docker Image + if: steps.version_check.outputs.changed == 'true' + run: | + REGISTRY="dungeonsiege.synology.me/poignatov/play-life" + VER="${{ steps.version_check.outputs.current }}" + + # Тегируем образ версией + docker tag $REGISTRY:latest $REGISTRY:$VER # Пушим оба тега echo "Pushing image to registry..." @@ -69,16 +78,33 @@ jobs: echo " - $REGISTRY:latest" echo " - $REGISTRY:$VER" - - name: Send Telegram notification (success) + - name: Send Telegram notification (build success) + if: success() && steps.version_check.outputs.changed == 'false' + uses: appleboy/telegram-action@master + with: + to: ${{ secrets.TELEGRAM_TO }} + token: ${{ secrets.TELEGRAM_TOKEN }} + format: markdown + message: | + **play-life** + *${{ steps.version_check.outputs.commit_message }}* + + Сборка: ✅ + Публикация: ⏭️ + + - name: Send Telegram notification (publish success) if: success() && steps.version_check.outputs.changed == 'true' uses: appleboy/telegram-action@master with: to: ${{ secrets.TELEGRAM_TO }} token: ${{ secrets.TELEGRAM_TOKEN }} + format: markdown message: | - ✅ Успешная публикация play-life! + **play-life** + *${{ steps.version_check.outputs.commit_message }}* - ${{ steps.version_check.outputs.commit_message }} + Сборка: ✅ + Публикация: ✅ - name: Send Telegram notification (failure) if: failure() @@ -86,18 +112,10 @@ jobs: with: to: ${{ secrets.TELEGRAM_TO }} token: ${{ secrets.TELEGRAM_TOKEN }} + format: markdown message: | - ❌ Ошибка сборки или публикации play-life! + **play-life** + *${{ steps.version_check.outputs.commit_message }}* - ${{ steps.version_check.outputs.commit_message }} - - - name: Send Telegram notification (skipped) - if: steps.version_check.outputs.changed == 'false' - uses: appleboy/telegram-action@master - with: - to: ${{ secrets.TELEGRAM_TO }} - token: ${{ secrets.TELEGRAM_TOKEN }} - message: | - ℹ️ Пропущена публикация play-life - - ${{ steps.version_check.outputs.commit_message }} \ No newline at end of file + Сборка: ❌ + Публикация: ❌ \ No newline at end of file