From ff49aa4da3301c8a9cdd91fba02bcae365ca7991 Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 22:10:30 +0200 Subject: [PATCH 1/6] feat: Add gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ab736a1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Nix, direnv +.direnv From 7d2df472a606c6d2aa16c07e899c2b7de8edc65d Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 22:23:41 +0200 Subject: [PATCH 2/6] feat: Add files for nix --- .envrc | 1 + default.nix | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 .envrc create mode 100644 default.nix diff --git a/.envrc b/.envrc new file mode 100644 index 0000000..1d953f4 --- /dev/null +++ b/.envrc @@ -0,0 +1 @@ +use nix diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..5226177 --- /dev/null +++ b/default.nix @@ -0,0 +1,11 @@ +{ pkgs ? (import <nixpkgs> { + config.allowUnfree = true; +}), +}: +pkgs.mkShell { + pure = true; + packages = with pkgs; [ + # Choose the build tools that you need + act + ]; +} From 9b6eabced01bf71d16e20a70fb292781df9bf28d Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 22:52:58 +0200 Subject: [PATCH 3/6] fix(ci/cd): Wrong variable name when checking for existing builds --- .gitea/workflows/build.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 0a4cf24..354bbbe 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -34,14 +34,16 @@ jobs: - name: Extract tags and labels for Docker id: meta run: | - echo "$(cd upstream && git describe --tags --abbrev=0 | cut -d 'v' -f2-)" - echo "tag=$(cd upstream && git describe --tags --abbrev=0 | cut -d 'v' -f2-)" >> $GITHUB_OUTPUT + export VERSION="$(cd upstream && git describe --tags --abbrev=0 | cut -d 'v' -f2-)" + echo "Version: ${VERSION}" + echo "tag=${VERSION}" >> $GITHUB_OUTPUT shell: bash - name: Check if the image was already built id: check-build-status run: | - if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tags }})" > /dev/null; then echo "Already existst" && exit 1; else echo "Desn't exist" && exit 0; fi + echo ${{ steps.meta.outputs.tag }} + if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tag }})" > /dev/null; then echo "Already exists" && exit 1; else echo "Desn't exist" && exit 0; fi - name: Set tag in Dockerfile run: | From c700df21c1fa54815eb681ea47f705d3ce634f93 Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 22:59:30 +0200 Subject: [PATCH 4/6] chore: Disaable jobs from upstream --- .../{cron-rebuild-trigger.yml => cron-rebuild-trigger.yml.arch} | 0 .gitea/workflows/{rebuild.yml => rebuild.yml.arch} | 0 .gitea/workflows/{zap-ds.yaml => zap-ds.yaml.arch} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename .gitea/workflows/{cron-rebuild-trigger.yml => cron-rebuild-trigger.yml.arch} (100%) rename .gitea/workflows/{rebuild.yml => rebuild.yml.arch} (100%) rename .gitea/workflows/{zap-ds.yaml => zap-ds.yaml.arch} (100%) diff --git a/.gitea/workflows/cron-rebuild-trigger.yml b/.gitea/workflows/cron-rebuild-trigger.yml.arch similarity index 100% rename from .gitea/workflows/cron-rebuild-trigger.yml rename to .gitea/workflows/cron-rebuild-trigger.yml.arch diff --git a/.gitea/workflows/rebuild.yml b/.gitea/workflows/rebuild.yml.arch similarity index 100% rename from .gitea/workflows/rebuild.yml rename to .gitea/workflows/rebuild.yml.arch diff --git a/.gitea/workflows/zap-ds.yaml b/.gitea/workflows/zap-ds.yaml.arch similarity index 100% rename from .gitea/workflows/zap-ds.yaml rename to .gitea/workflows/zap-ds.yaml.arch From d837b6f4ef3163adc1d55d64edd9b6cd36c6faa7 Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 23:05:26 +0200 Subject: [PATCH 5/6] fix(ci/cd): Cache apt packages --- .gitea/workflows/build.yml | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 354bbbe..2e489b0 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -13,19 +13,6 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 - - - name: Install Docker - run: | - apt-get update - apt-get install docker.io -y - - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - with: - platforms: linux/amd64,linux/arm64 - name: Get upstream repository run: | @@ -43,12 +30,24 @@ jobs: id: check-build-status run: | echo ${{ steps.meta.outputs.tag }} - if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tag }})" > /dev/null; then echo "Already exists" && exit 1; else echo "Desn't exist" && exit 0; fi + if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tag }})" > /dev/null; then echo "Already exists" && exit 0; else echo "Desn't exist" && exit 0; fi - name: Set tag in Dockerfile run: | sed -i "s/ARG PACKAGE_VERSION=/ARG PACKAGE_VERSION=$(echo ${{ steps.meta.outputs.tag }} | cut -d ':' -f2)/g" Dockerfile + - name: Install Docker + uses: awalsh128/cache-apt-pkgs-action@latest + with: + packages: docker.io + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + with: + platforms: linux/amd64,linux/arm64 + - name: Login to DockerHub uses: docker/login-action@v1 with: From adbba165a6a866ab5e369ed5a83e4d2c84bf45e7 Mon Sep 17 00:00:00 2001 From: jiriks74 <jiri@stefka.eu> Date: Sun, 22 Sep 2024 23:13:52 +0200 Subject: [PATCH 6/6] fix(ci/cd): Missing apt update, wrong exit code --- .gitea/workflows/build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 2e489b0..5ffeb2c 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -30,12 +30,14 @@ jobs: id: check-build-status run: | echo ${{ steps.meta.outputs.tag }} - if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tag }})" > /dev/null; then echo "Already exists" && exit 0; else echo "Desn't exist" && exit 0; fi + if curl --silent -f -lSL "https://hub.docker.com/v2/repositories/jiriks74/onlyoffice-documentserver/tags/$(echo ${{ steps.meta.outputs.tag }})" > /dev/null; then echo "Already exists" && exit 1; else echo "Desn't exist" && exit 0; fi - name: Set tag in Dockerfile run: | sed -i "s/ARG PACKAGE_VERSION=/ARG PACKAGE_VERSION=$(echo ${{ steps.meta.outputs.tag }} | cut -d ':' -f2)/g" Dockerfile + - name: Update repositories + run: sudo apt update - name: Install Docker uses: awalsh128/cache-apt-pkgs-action@latest with: