Files
EventHubFrontAdmin/.gitea/workflows/ci.yml
T
aleksey 6d3e7a9315
CI / test (push) Failing after 8m51s
CI: build and push admin-ui image in CI; deploy-ift SSH-only.
Move docker build/push from deploy-ift to CI (EventHubBack pattern).
Deploy no longer needs docker.sock on the WSL runner.
Add ensure-docker-daemon.sh for Docker Desktop on host runner.
2026-07-10 23:04:11 +03:00

74 lines
2.1 KiB
YAML

name: CI
on:
push:
branches: [master, main]
pull_request:
workflow_dispatch:
# Один runner (DESKTOP-SIR8B3R): параллельные workflow ломают кэш act/actions.
concurrency:
group: eventhub-frontadmin-ci-${{ github.ref }}
cancel-in-progress: false
env:
BUILDKIT_PROGRESS: quiet
DOCKER_BUILDKIT: 1
REGISTRY: git.sabilin.com/eventhub
jobs:
test:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
- run: npm ci
- run: npm run lint
- run: npm run build
- name: Wait for Docker daemon
if: github.event_name == 'push'
run: bash scripts/ensure-docker-daemon.sh 240
- name: Set up Docker Buildx
if: github.event_name == 'push'
uses: docker/setup-buildx-action@v3
- name: Build admin-ui image
if: github.event_name == 'push'
run: |
set -euo pipefail
bash scripts/retry-docker-build.sh 5 60 -- \
docker buildx build \
--network=host \
--file Dockerfile \
--tag eventhub-admin-ui:local \
--load \
--provenance=false \
--sbom=false \
.
- name: Login to registry
if: github.event_name == 'push'
uses: docker/login-action@v2
with:
registry: git.sabilin.com
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Push admin-ui image
if: github.event_name == 'push'
run: |
set -euo pipefail
TAG="sha-${GITHUB_SHA:0:12}"
docker tag eventhub-admin-ui:local "${REGISTRY}/eventhub-admin-ui:${TAG}"
docker tag eventhub-admin-ui:local "${REGISTRY}/eventhub-admin-ui:ift"
bash scripts/retry-docker-build.sh 5 30 -- docker push "${REGISTRY}/eventhub-admin-ui:${TAG}"
bash scripts/retry-docker-build.sh 5 30 -- docker push "${REGISTRY}/eventhub-admin-ui:ift"