feat: implement CDN source preview functionality and enhance data handling. Add a new endpoint for previewing CDN sources, allowing users to fetch and parse CIDR prefixes from specified URLs. Update OpenAPI documentation to include new request and response schemas, and modify internal logic to support JSON parsing with prefix path traversal. Enhance UI components to accommodate new preview features, improving user experience and data management.
CI / changes (push) Successful in 6s
CI / openapi (push) Successful in 25s
CI / go (push) Successful in 29s
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, , evobgp-web) (push) Successful in 1m1s
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, evobgp-all, evobgp-web-all) (push) Successful in 1m1s
CI / docker-bird (push) Successful in 42s
CI / bird2 (push) Successful in 14s
CI / docker-go-prime (push) Successful in 1m22s
CI / docker-go (deploy/docker/evobgp-agent/Dockerfile, , evobgp-agent) (push) Successful in 58s
CI / docker-go (evobgp-all, 1, deploy/docker/gobinary/Dockerfile, , evobgp-all) (push) Successful in 2m0s
CI / docker-go (evobgp-api, 1, deploy/docker/gobinary/Dockerfile, , evobgp-api) (push) Successful in 1m16s
CI / docker-go (evobgp-deploy, 0, deploy/docker/gobinary/Dockerfile, , evobgp-deploy) (push) Successful in 1m14s
CI / docker-go (evobgp-ingest, 0, deploy/docker/gobinary/Dockerfile, , evobgp-ingest) (push) Successful in 1m17s
CI / docker-go (evobgp-node, 0, deploy/docker/gobinary/Dockerfile, , evobgp-node) (push) Successful in 1m2s
CI / docker-go (evobgp-render, 0, deploy/docker/gobinary/Dockerfile, , evobgp-render) (push) Successful in 1m15s
CI / docker-go (evobgp-scheduler, 0, deploy/docker/gobinary/Dockerfile, , evobgp-scheduler) (push) Successful in 1m15s

This commit is contained in:
Denozordec
2026-04-06 15:08:17 +07:00
parent a2cbfacd45
commit e20c9f3113
16 changed files with 543 additions and 74 deletions
+50 -1
View File
@@ -186,8 +186,11 @@ jobs:
# Docker: Go-бинарники (api, all, scheduler, ingest, render, deploy, node, agent).
# Запускается если изменился Go-код или Go-Dockerfile.
# Если Go-код менялся — требуем успех go-тестов; если только Dockerfile — go skipped, ОК.
#
# docker-go-prime: один раз собирает stage `deps` (go mod download) и пишет BuildKit cache
# в registry — матрица docker-go не качает модули восемь раз подряд.
# ---------------------------------------------------------------------------
docker-go:
docker-go-prime:
needs: [changes, go]
if: >-
always() &&
@@ -197,6 +200,49 @@ jobs:
(github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master') &&
(needs.changes.outputs.go == 'true' || needs.changes.outputs.docker_go == 'true')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Prepare image metadata
id: meta
run: |
set -euo pipefail
owner_lc="$(echo '${{ github.repository_owner }}' | tr '[:upper:]' '[:lower:]')"
echo "owner_lc=$owner_lc" >> "$GITHUB_OUTPUT"
- name: Log in to Gitea Registry
uses: docker/login-action@v3
with:
registry: git.shts.su
username: ${{ gitea.actor }}
password: ${{ secrets.ACTIONS_PAT || gitea.token }}
- name: Prime Go module layer (deps)
env:
OWNER_LC: ${{ steps.meta.outputs.owner_lc }}
run: |
set -euxo pipefail
WS="${{ github.workspace }}"
CACHE_REF="git.shts.su/${OWNER_LC}/evobgp-buildcache:go-buildcache"
cd "$WS"
docker buildx build \
--platform linux/amd64 \
--file deploy/docker/gobinary/Dockerfile \
--target deps \
--cache-from "type=registry,ref=${CACHE_REF}" \
--cache-to "type=registry,ref=${CACHE_REF},mode=max" \
"$WS"
docker-go:
needs: [changes, go, docker-go-prime]
if: >-
always() &&
needs.changes.result == 'success' &&
needs.go.result != 'failure' &&
needs.docker-go-prime.result == 'success' &&
github.event_name == 'push' &&
(github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master') &&
(needs.changes.outputs.go == 'true' || needs.changes.outputs.docker_go == 'true')
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
@@ -271,6 +317,7 @@ jobs:
WS="${{ github.workspace }}"
cd "$WS"
CACHE_REF="git.shts.su/${OWNER_LC}/evobgp-buildcache:go-buildcache"
IMG="git.shts.su/${OWNER_LC}/${IMAGE}"
BUILD_ARGS=()
if [ -n "${BIN:-}" ]; then
@@ -285,6 +332,8 @@ jobs:
--platform linux/amd64 \
--file "$DF" \
"${BUILD_ARGS[@]}" \
--cache-from "type=registry,ref=${CACHE_REF}" \
--cache-to "type=registry,ref=${CACHE_REF},mode=max" \
--tag "${IMG}:latest" \
--tag "${IMG}:${SHORT_SHA}" \
--tag "${IMG}:sha-${{ github.sha }}" \