Skip to content

Commit c4de5e8

Browse files
committed
ci(docker): разделена сборка образа и публикация по тегу
Вынесена публикация образа по тегу в отдельный workflow docker-tags.yml. Упрощена конфигурация docker.yml — сборка только для ветки main.
1 parent 39f6093 commit c4de5e8

2 files changed

Lines changed: 39 additions & 9 deletions

File tree

.github/workflows/docker-tags.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
2+
name: Build and Push Docker Tag
3+
4+
on:
5+
push:
6+
tags:
7+
- "*.*"
8+
9+
jobs:
10+
publish-tags:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout code
14+
uses: actions/checkout@v3
15+
16+
- name: Set up Docker Buildx
17+
uses: docker/setup-buildx-action@v3
18+
19+
- name: Login to DockerHub
20+
uses: docker/login-action@v3
21+
with:
22+
username: ${{ secrets.DOCKER_USERNAME }}
23+
password: ${{ secrets.DOCKER_PASSWORD }}
24+
25+
- name: Extract version from tag
26+
id: vars
27+
run: |
28+
VERSION=${GITHUB_REF#refs/tags/}
29+
VERSION=${VERSION//[!a-zA-Z0-9._-]/}
30+
echo "::set-output name=version::$VERSION"
31+
32+
- name: Publish Docker tag
33+
uses: docker/build-push-action@v5
34+
with:
35+
push: true
36+
tags: |
37+
${{ secrets.DOCKER_USERNAME }}/passkey:${{ steps.vars.outputs.version }}

.github/workflows/docker.yml

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1+
12
name: Build and Push Docker image
23

34
on:
45
push:
56
branches:
67
- main
7-
tags:
8-
- "*.*"
98

109
jobs:
1110
docker:
@@ -23,14 +22,8 @@ jobs:
2322
username: ${{ secrets.DOCKER_USERNAME }}
2423
password: ${{ secrets.DOCKER_PASSWORD }}
2524

26-
- name: Extract version from tag
27-
id: vars
28-
run: echo "::set-output name=version::${GITHUB_REF#refs/tags/}"
29-
3025
- name: Build and push
3126
uses: docker/build-push-action@v5
3227
with:
3328
push: true
34-
tags: |
35-
${{ secrets.DOCKER_USERNAME }}/passkey:latest
36-
${{ secrets.DOCKER_USERNAME }}/passkey:${{ steps.vars.outputs.version }}
29+
tags: ${{ secrets.DOCKER_USERNAME }}/passkey:latest

0 commit comments

Comments
 (0)