From 5fea8f67d0825245ac8a37f7a0b99d5c4a1d490d Mon Sep 17 00:00:00 2001 From: Admin Date: Mon, 23 Mar 2026 19:00:53 +0500 Subject: [PATCH] chore: rename workflows from ci-v3/release-v3 to ci/release --- .gitea/workflows/ci-v3.yaml | 191 ------------------ .gitea/workflows/ci.yaml | 123 +++++++++++ .../{release-v3.yaml => release.yaml} | 2 +- 3 files changed, 124 insertions(+), 192 deletions(-) delete mode 100644 .gitea/workflows/ci-v3.yaml create mode 100644 .gitea/workflows/ci.yaml rename .gitea/workflows/{release-v3.yaml => release.yaml} (99%) diff --git a/.gitea/workflows/ci-v3.yaml b/.gitea/workflows/ci-v3.yaml deleted file mode 100644 index 12a4817..0000000 --- a/.gitea/workflows/ci-v3.yaml +++ /dev/null @@ -1,191 +0,0 @@ -name: CI / v3 - -on: - push: - branches: ["main", "master"] - paths: - - "backend/**" - - "ui/**" - - "caddy/**" - - "docker-compose.yml" - - ".gitea/workflows/ci-v3.yaml" - pull_request: - branches: ["main", "master"] - paths: - - "backend/**" - - "ui/**" - - "caddy/**" - - "docker-compose.yml" - - ".gitea/workflows/ci-v3.yaml" - -concurrency: - group: ${{ gitea.workflow }}-${{ gitea.ref }} - cancel-in-progress: true - -jobs: - # ── backend: vet & test ─────────────────────────────────────────────────────── - test-backend: - name: Test backend - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-go@v5 - with: - go-version-file: backend/go.mod - cache-dependency-path: backend/go.sum - - - name: go vet - working-directory: backend - run: go vet ./... - - - name: Run tests - working-directory: backend - run: go test -short -race -count=1 -timeout=60s ./... - - # ── ui: type-check & build ──────────────────────────────────────────────────── - check-ui: - name: Check ui - runs-on: ubuntu-latest - defaults: - run: - working-directory: ui - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-node@v4 - with: - node-version: "22" - cache: npm - cache-dependency-path: ui/package-lock.json - - - name: Install dependencies - run: npm ci - - - name: Type check - run: npm run check - - - name: Build - run: npm run build - - # ── docker: backend ─────────────────────────────────────────────────────────── - docker-backend: - name: Docker / backend - runs-on: ubuntu-latest - needs: [test-backend] - if: gitea.event_name == 'push' - steps: - - uses: actions/checkout@v4 - - - uses: docker/setup-buildx-action@v3 - - - name: Log in to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: backend - target: backend - push: true - tags: | - ${{ secrets.DOCKER_USER }}/libnovel-backend:latest - ${{ secrets.DOCKER_USER }}/libnovel-backend:${{ gitea.sha }} - build-args: | - VERSION=${{ gitea.sha }} - COMMIT=${{ gitea.sha }} - cache-from: type=registry,ref=${{ secrets.DOCKER_USER }}/libnovel-backend:latest - cache-to: type=inline - - # ── docker: runner ──────────────────────────────────────────────────────────── - docker-runner: - name: Docker / runner - runs-on: ubuntu-latest - needs: [test-backend] - if: gitea.event_name == 'push' - steps: - - uses: actions/checkout@v4 - - - uses: docker/setup-buildx-action@v3 - - - name: Log in to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: backend - target: runner - push: true - tags: | - ${{ secrets.DOCKER_USER }}/libnovel-runner:latest - ${{ secrets.DOCKER_USER }}/libnovel-runner:${{ gitea.sha }} - build-args: | - VERSION=${{ gitea.sha }} - COMMIT=${{ gitea.sha }} - cache-from: type=registry,ref=${{ secrets.DOCKER_USER }}/libnovel-runner:latest - cache-to: type=inline - - # ── docker: ui ──────────────────────────────────────────────────────────────── - docker-ui: - name: Docker / ui - runs-on: ubuntu-latest - needs: [check-ui] - if: gitea.event_name == 'push' - steps: - - uses: actions/checkout@v4 - - - uses: docker/setup-buildx-action@v3 - - - name: Log in to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: ui - push: true - tags: | - ${{ secrets.DOCKER_USER }}/libnovel-ui:latest - ${{ secrets.DOCKER_USER }}/libnovel-ui:${{ gitea.sha }} - build-args: | - BUILD_VERSION=${{ gitea.sha }} - BUILD_COMMIT=${{ gitea.sha }} - cache-from: type=registry,ref=${{ secrets.DOCKER_USER }}/libnovel-ui:latest - cache-to: type=inline - - # ── docker: caddy ───────────────────────────────────────────────────────────── - docker-caddy: - name: Docker / caddy - runs-on: ubuntu-latest - if: gitea.event_name == 'push' - steps: - - uses: actions/checkout@v4 - - - uses: docker/setup-buildx-action@v3 - - - name: Log in to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_TOKEN }} - - - name: Build and push - uses: docker/build-push-action@v6 - with: - context: caddy - push: true - tags: | - ${{ secrets.DOCKER_USER }}/libnovel-caddy:latest - ${{ secrets.DOCKER_USER }}/libnovel-caddy:${{ gitea.sha }} - cache-from: type=registry,ref=${{ secrets.DOCKER_USER }}/libnovel-caddy:latest - cache-to: type=inline diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml new file mode 100644 index 0000000..9b4a7a8 --- /dev/null +++ b/.gitea/workflows/ci.yaml @@ -0,0 +1,123 @@ +name: CI + +on: + push: + branches: ["main", "master"] + paths: + - "backend/**" + - "ui/**" + - "caddy/**" + - "docker-compose.yml" + - ".gitea/workflows/ci.yaml" + pull_request: + branches: ["main", "master"] + paths: + - "backend/**" + - "ui/**" + - "caddy/**" + - "docker-compose.yml" + - ".gitea/workflows/ci.yaml" + +concurrency: + group: ${{ gitea.workflow }}-${{ gitea.ref }} + cancel-in-progress: true + +jobs: + # ── backend: vet & test ─────────────────────────────────────────────────────── + test-backend: + name: Test backend + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-go@v5 + with: + go-version-file: backend/go.mod + cache-dependency-path: backend/go.sum + + - name: go vet + working-directory: backend + run: go vet ./... + + - name: Run tests + working-directory: backend + run: go test -short -race -count=1 -timeout=60s ./... + + # ── ui: type-check & build ──────────────────────────────────────────────────── + check-ui: + name: Check ui + runs-on: ubuntu-latest + defaults: + run: + working-directory: ui + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: "22" + cache: npm + cache-dependency-path: ui/package-lock.json + + - name: Install dependencies + run: npm ci + + - name: Type check + run: npm run check + + - name: Build + run: npm run build + + # ── docker: validate Dockerfiles build (no push) ────────────────────────────── + docker-backend: + name: Docker / backend + runs-on: ubuntu-latest + needs: [test-backend] + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - name: Build + uses: docker/build-push-action@v6 + with: + context: backend + target: backend + push: false + + docker-runner: + name: Docker / runner + runs-on: ubuntu-latest + needs: [test-backend] + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - name: Build + uses: docker/build-push-action@v6 + with: + context: backend + target: runner + push: false + + docker-ui: + name: Docker / ui + runs-on: ubuntu-latest + needs: [check-ui] + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - name: Build + uses: docker/build-push-action@v6 + with: + context: ui + push: false + + docker-caddy: + name: Docker / caddy + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - name: Build + uses: docker/build-push-action@v6 + with: + context: caddy + push: false diff --git a/.gitea/workflows/release-v3.yaml b/.gitea/workflows/release.yaml similarity index 99% rename from .gitea/workflows/release-v3.yaml rename to .gitea/workflows/release.yaml index f126719..1280e9c 100644 --- a/.gitea/workflows/release-v3.yaml +++ b/.gitea/workflows/release.yaml @@ -1,4 +1,4 @@ -name: Release / v3 +name: Release on: push: