From 8ea73709e88caebfcfb7a6e5f3c2ad6026e53b79 Mon Sep 17 00:00:00 2001 From: Alex Palaistras Date: Sat, 12 Aug 2023 17:14:04 +0100 Subject: [PATCH] gitea: Update to version 1.20.2, move to Quadlet --- service/gitea/Containerfile | 16 +++++++------- .../container/config/config.ini.template | 1 + service/gitea/container/run-gitea | 3 --- service/gitea/quadlet/gitea.container | 18 ++++++++++++++++ service/gitea/spec.bu | 8 ++----- service/gitea/systemd/gitea.service | 21 ------------------- 6 files changed, 28 insertions(+), 39 deletions(-) create mode 100644 service/gitea/quadlet/gitea.container delete mode 100644 service/gitea/systemd/gitea.service diff --git a/service/gitea/Containerfile b/service/gitea/Containerfile index 54db8fd..14114d2 100644 --- a/service/gitea/Containerfile +++ b/service/gitea/Containerfile @@ -1,14 +1,12 @@ -FROM docker.io/debian:bullseye-slim -ARG VERSION=1.20.1 - -RUN apt-get update -y && apt-get upgrade -y && \ - apt-get install -y --no-install-recommends curl ca-certificates gettext gosu \ - git openssh-client gnupg +FROM docker.io/debian:bookworm-slim +ARG VERSION=1.20.2 ENV PACKAGE_URL https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64 -RUN curl -L -o /usr/bin/gitea ${PACKAGE_URL} && chmod +x /usr/bin/gitea - -RUN apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false curl +RUN apt-get update -y && apt-get upgrade -y && \ + apt-get install -y --no-install-recommends curl ca-certificates gettext gosu \ + git openssh-client gnupg && \ + curl -L -o /usr/bin/gitea ${PACKAGE_URL} && chmod +x /usr/bin/gitea && \ + apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false curl RUN addgroup --system --gid 10000 git RUN adduser --system --uid 10000 --ingroup git --home /var/lib/gitea git diff --git a/service/gitea/container/config/config.ini.template b/service/gitea/container/config/config.ini.template index 2b1caca..f6f8836 100644 --- a/service/gitea/container/config/config.ini.template +++ b/service/gitea/container/config/config.ini.template @@ -1,4 +1,5 @@ APP_NAME = ${GITEA_APP_NAME} +WORK_PATH = /var/lib/gitea RUN_USER = git RUN_MODE = prod diff --git a/service/gitea/container/run-gitea b/service/gitea/container/run-gitea index bf804b7..05bd958 100755 --- a/service/gitea/container/run-gitea +++ b/service/gitea/container/run-gitea @@ -2,9 +2,6 @@ set -eu -# Export shared variables. -export GITEA_WORK_DIR=/var/lib/gitea - # Create configuration file from collected templates. envsubst < /etc/gitea/config.ini.template > /etc/gitea/config.ini diff --git a/service/gitea/quadlet/gitea.container b/service/gitea/quadlet/gitea.container new file mode 100644 index 0000000..19f8244 --- /dev/null +++ b/service/gitea/quadlet/gitea.container @@ -0,0 +1,18 @@ +[Unit] +Description=Gitea Self-Hosted Git Service +Wants=container-build@%N.service container-volume@%N.service lldap.service +After=container-build@%N.service container-volume@%N.service lldap.service + +[Container] +ContainerName=%N +EnvironmentFile=%E/coreos-home-server/%N/%N.env +Image=localhost/%N:latest +Network=internal +PublishPort=7920:7920 +Volume=%N:/var/lib/%N:z + +[Service] +Restart=on-failure + +[Install] +WantedBy=multi-user.target diff --git a/service/gitea/spec.bu b/service/gitea/spec.bu index 41833d3..9044c8f 100644 --- a/service/gitea/spec.bu +++ b/service/gitea/spec.bu @@ -4,9 +4,5 @@ storage: trees: - path: /etc/coreos-home-server/gitea local: service/gitea/ - - path: /etc/systemd/system - local: service/gitea/systemd/ -systemd: - units: - - name: gitea.service - enabled: true + - path: /etc/containers/systemd + local: service/gitea/quadlet/ diff --git a/service/gitea/systemd/gitea.service b/service/gitea/systemd/gitea.service deleted file mode 100644 index 884cc36..0000000 --- a/service/gitea/systemd/gitea.service +++ /dev/null @@ -1,21 +0,0 @@ -[Unit] -Description=Gitea Self-Hosted Git Service -Wants=container-build@%N.service container-volume@%N.service lldap.service -After=container-build@%N.service container-volume@%N.service lldap.service - -[Service] -Type=notify -NotifyAccess=all -SyslogIdentifier=%N -Restart=on-failure -Environment=PODMAN_SYSTEMD_UNIT=%n -ExecStart=/bin/podman run --replace --name %N --net internal --sdnotify=conmon \ - --env-file %E/coreos-home-server/%N/%N.env \ - --publish 7920:7920 \ - --volume %N:/var/lib/%N:z \ - localhost/%N:latest -ExecStop=/bin/podman stop --ignore --time 10 %N -ExecStopPost=/bin/podman rm --ignore --force %N - -[Install] -WantedBy=multi-user.target