Обновлен файл docker-build-local.yml для использования переменных окружения напрямую в скрипте генерации тегов. Удалена переменная REGISTRY из секции env, что упрощает код и улучшает читаемость. Также обновлено отображение информации о реестре в сводке сборки. Эти изменения повышают удобство и поддерживаемость CI/CD процесса.
This commit is contained in:
parent
ef11a4613a
commit
278986b6e0
@ -19,7 +19,6 @@ on:
|
|||||||
default: 'latest'
|
default: 'latest'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
REGISTRY: ${{ secrets.DOCKER_REGISTRY_URL }}
|
|
||||||
IMAGE_NAME: salvagedb/salvagedb-bot
|
IMAGE_NAME: salvagedb/salvagedb-bot
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
@ -44,19 +43,22 @@ jobs:
|
|||||||
- name: Generate tags
|
- name: Generate tags
|
||||||
id: tags
|
id: tags
|
||||||
run: |
|
run: |
|
||||||
|
REGISTRY="${{ secrets.DOCKER_REGISTRY_URL }}"
|
||||||
|
IMAGE_NAME="${{ env.IMAGE_NAME }}"
|
||||||
|
|
||||||
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
|
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
|
||||||
echo "tags=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.event.inputs.tag }}" >> $GITHUB_OUTPUT
|
echo "tags=${REGISTRY}/${IMAGE_NAME}:${{ github.event.inputs.tag }}" >> $GITHUB_OUTPUT
|
||||||
elif [[ "${{ github.event_name }}" == "pull_request" ]]; then
|
elif [[ "${{ github.event_name }}" == "pull_request" ]]; then
|
||||||
pr_number=${{ github.event.number }}
|
pr_number=${{ github.event.number }}
|
||||||
echo "tags=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:pr-${pr_number}" >> $GITHUB_OUTPUT
|
echo "tags=${REGISTRY}/${IMAGE_NAME}:pr-${pr_number}" >> $GITHUB_OUTPUT
|
||||||
elif [[ "${{ github.ref_type }}" == "tag" ]]; then
|
elif [[ "${{ github.ref_type }}" == "tag" ]]; then
|
||||||
tag=${GITHUB_REF#refs/tags/}
|
tag=${GITHUB_REF#refs/tags/}
|
||||||
echo "tags=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${tag},${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> $GITHUB_OUTPUT
|
echo "tags=${REGISTRY}/${IMAGE_NAME}:${tag},${REGISTRY}/${IMAGE_NAME}:latest" >> $GITHUB_OUTPUT
|
||||||
elif [[ "${{ github.ref_name }}" == "main" ]]; then
|
elif [[ "${{ github.ref_name }}" == "main" ]]; then
|
||||||
echo "tags=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest,${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:main" >> $GITHUB_OUTPUT
|
echo "tags=${REGISTRY}/${IMAGE_NAME}:latest,${REGISTRY}/${IMAGE_NAME}:main" >> $GITHUB_OUTPUT
|
||||||
else
|
else
|
||||||
branch_name=$(echo "${{ github.ref_name }}" | sed 's/[^a-zA-Z0-9]/-/g')
|
branch_name=$(echo "${{ github.ref_name }}" | sed 's/[^a-zA-Z0-9]/-/g')
|
||||||
echo "tags=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${branch_name}" >> $GITHUB_OUTPUT
|
echo "tags=${REGISTRY}/${IMAGE_NAME}:${branch_name}" >> $GITHUB_OUTPUT
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Build and push Docker image
|
- name: Build and push Docker image
|
||||||
@ -78,7 +80,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
echo "## Docker Build Summary" >> $GITHUB_STEP_SUMMARY
|
echo "## Docker Build Summary" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Event:** ${{ github.event_name }}" >> $GITHUB_STEP_SUMMARY
|
echo "- **Event:** ${{ github.event_name }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Registry:** ${{ env.REGISTRY }}" >> $GITHUB_STEP_SUMMARY
|
echo "- **Registry:** ${{ secrets.DOCKER_REGISTRY_URL }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Image:** ${{ env.IMAGE_NAME }}" >> $GITHUB_STEP_SUMMARY
|
echo "- **Image:** ${{ env.IMAGE_NAME }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Tags:** ${{ steps.tags.outputs.tags }}" >> $GITHUB_STEP_SUMMARY
|
echo "- **Tags:** ${{ steps.tags.outputs.tags }}" >> $GITHUB_STEP_SUMMARY
|
||||||
echo "- **Commit:** ${{ github.sha }}" >> $GITHUB_STEP_SUMMARY
|
echo "- **Commit:** ${{ github.sha }}" >> $GITHUB_STEP_SUMMARY
|
||||||
|
|||||||
16
TEST_DOCKER_FIX.md
Normal file
16
TEST_DOCKER_FIX.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# Тестирование исправления Docker тегов
|
||||||
|
|
||||||
|
## Исправленная проблема:
|
||||||
|
- ❌ Ошибка: `ERROR: invalid tag "***/salvagedb/salvagedb-bot:latest": invalid reference format`
|
||||||
|
- ✅ Решение: Прямое использование secrets в bash переменных вместо env
|
||||||
|
|
||||||
|
## Изменения:
|
||||||
|
1. Удалена проблематичная env переменная `REGISTRY`
|
||||||
|
2. Теги формируются напрямую в bash скрипте
|
||||||
|
3. Secrets используются непосредственно без промежуточных env
|
||||||
|
|
||||||
|
## Дата тестирования:
|
||||||
|
2025-06-07 (исправление тегов)
|
||||||
|
|
||||||
|
---
|
||||||
|
Удалить после успешного тестирования workflow.
|
||||||
Loading…
x
Reference in New Issue
Block a user