From b611421102629282ab209cfe57cd9e05e7566fa9 Mon Sep 17 00:00:00 2001 From: zzw <1464003642@qq.com> Date: Mon, 31 Aug 2026 11:31:17 +0800 Subject: [PATCH] fix: ci merge test --- .gitea/workflows/ci.yml | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 3e73b26..95f19da 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -59,25 +59,21 @@ jobs: matrix="[" first=true for svc in $SERVICES; do - should_build=false + build=false if [ "$build_all" = true ]; then - should_build=true + build=true elif echo "$changed" | grep -qE "$(pattern_for "$svc")"; then - should_build=true + build=true fi - if [ "$should_build" = true ]; then - df=$(dockerfile_for "$svc") - if [ "$first" = true ]; then - first=false - else - matrix="$matrix," - fi - matrix="$matrix{\"name\":\"$svc\",\"dockerfile\":\"$df\"}" - echo "$svc=true" + df=$(dockerfile_for "$svc") + if [ "$first" = true ]; then + first=false else - echo "$svc=false" + matrix="$matrix," fi + matrix="$matrix{\"name\":\"$svc\",\"dockerfile\":\"$df\",\"build\":\"$build\"}" + echo "$svc=$build" done matrix="$matrix]" @@ -86,8 +82,8 @@ jobs: docker: needs: changes - if: needs.changes.outputs.matrix != '[]' runs-on: runner + name: ${{ matrix.name }} strategy: fail-fast: false matrix: @@ -95,21 +91,26 @@ jobs: env: NAME: lone/${{ matrix.name }} steps: + - name: Skip + if: matrix.build != 'true' + run: echo "skip ${{ matrix.name }} (no changes)" + - name: Checkout + if: matrix.build == 'true' uses: https://git.ailuowan.com/deploy/checkout@v4 - name: Login Registry + if: matrix.build == 'true' run: | echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ vars.REGISTRY }} -u "${{ vars.REGISTRY_USERNAME }}" --password-stdin - name: Docker build + if: matrix.build == 'true' run: | docker buildx use default - docker buildx build --builder default --load \ - -f ${{ matrix.dockerfile }} \ - -t ${{ vars.REGISTRY }}/$NAME:latest \ - . + docker buildx build --builder default --load -f "${{ matrix.dockerfile }}" -t "${{ vars.REGISTRY }}/$NAME:latest" . - name: Docker push + if: matrix.build == 'true' run: | docker push ${{ vars.REGISTRY }}/$NAME:latest