From 4d191c448d7decb450aa821b2e24765a813701fa Mon Sep 17 00:00:00 2001 From: kennyboy55 Date: Fri, 31 Jul 2026 20:30:47 +0200 Subject: [PATCH] Add gitea workflow --- .dockerignore | 3 +- .gitea/workflows/build-docker.yaml | 89 ++++++++++++++++++++++++++++++ Dockerfile | 2 +- 3 files changed, 92 insertions(+), 2 deletions(-) create mode 100644 .gitea/workflows/build-docker.yaml diff --git a/.dockerignore b/.dockerignore index 5171c54..8cf95b6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,2 +1,3 @@ node_modules -npm-debug.log \ No newline at end of file +npm-debug.log +.gitea/ \ No newline at end of file diff --git a/.gitea/workflows/build-docker.yaml b/.gitea/workflows/build-docker.yaml new file mode 100644 index 0000000..79b5b32 --- /dev/null +++ b/.gitea/workflows/build-docker.yaml @@ -0,0 +1,89 @@ +name: Build dev docker image + +on: + push: + branches: + - main + tags: + - '*' + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + + steps: + + # Checkout repository for build + - name: Checkout beer-inventory repository + uses: actions/checkout@v4 + with: + ref: ${{ gitea.ref }} + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: 22 + cache: npm + + # Install NPM packages + - name: Install NPM packages + run: npm ci + + # Build project + - name: Build project + run: | + npx zenstack generate + npx remix vite:build + + # Login to registry + - name: Gitea package registry login + run: | + echo "${{ secrets.ACCESS_TOKEN }}" | docker login gitea.furb.it \ + -u "${{ secrets.USERNAME }}" \ + --password-stdin + + # Build image + - name: Build Docker image - gitea.furb.it/${{ gitea.repository }}:${{ gitea.ref_name }} + run: | + docker build \ + -f Dockerfile \ + --label beer-inventory.ref=${{ gitea.ref_name }} \ + -t gitea.furb.it/${{ gitea.repository }}:${{ gitea.ref_name }} \ + . + + - name: Tag Docker image - gitea.furb.it/${{ gitea.repository }}:latest + if: startsWith(gitea.ref, 'refs/tags/') + run: | + docker image tag \ + gitea.furb.it/${{ gitea.repository }}:${{ gitea.ref_name }} \ + gitea.furb.it/${{ gitea.repository }}:latest + + # Push images + - name: Push Docker image + run: | + docker push gitea.furb.it/${{ gitea.repository }}:${{ gitea.ref_name }} + + - name: Push Docker image :latest + if: startsWith(gitea.ref, 'refs/tags/') + run: | + docker push gitea.furb.it/${{ gitea.repository }}:latest + + release: + runs-on: ubuntu-latest + needs: build + if: startsWith(gitea.ref, 'refs/tags/') + steps: + # Create release using gitea-release-action + - name: Create release + uses: akkuman/gitea-release-action@v1 + with: + server: "https://gitea.furb.it" + token: ${{ secrets.ACCESS_TOKEN }} + repository: ${{ gitea.repository }} + tag_name: ${{ gitea.ref_name }} + name: ${{ gitea.ref_name }} + body: | + "## Docker images" + "`gitea.furb.it/${{ gitea.repository }}:${{ gitea.ref_name }}`" + "`gitea.furb.it/${{ gitea.repository }}:latest`" \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index f3ef864..677ff92 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ FROM node:22-alpine -MAINTAINER Kenneth van Ewijk (kennyboy55) +LABEL maintainer="Kenneth van Ewijk (kennyboy55)" WORKDIR /usr/src/app