Compare commits

..
4 changed files with 27 additions and 36 deletions

View file

@ -1,10 +1,10 @@
name: Release
env:
PKG_VERSION: "2026.07.28"
PKG_VERSION: "2026.07.13"
# TODO: actions/checkout only supports GITHUB repos...
GATUS_REPO: "https://github.com/selfhoster1312/gatus"
GATUS_REF: "d65a3321f1291aa419870a04896aa65fc4c78cf4"
GATUS_REPO: "selfhoster1312/gatus"
GATUS_REF: "db022588a9923611c3b292ce1ba437753bd3bfe8"
# Preview mode: Publishes the build output as a CI artifact instead of creating
# a release, allowing for manual inspection of the output. This mode is
# activated if the CI run was triggered by events other than pushed tags, or
@ -24,6 +24,7 @@ on:
- '.github/workflows/release.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false
permissions:
@ -32,18 +33,17 @@ permissions:
jobs:
build:
name: Build gatus with pre-packaged web assets
runs-on: docker
runs-on: ubuntu-22.04
steps:
- name: Copy source repo
run: |
git clone "${{ env.GATUS_REPO }}" .
git checkout "${{ env.GATUS_REF }}"
- name: Checkout sources
uses: actions/checkout@v7
with:
repository: "${{ env.GATUS_REPO }}"
ref: "${{ env.GATUS_REF }}"
- name: Checkout sources for packaging
run: |
git clone "${{ forgejo.server_url }}/${{ forgejo.repository }}" __CI_PREBUILD__
cd __CI_PREBUILD__
git checkout "${{ forgejo.sha }}"
cd ..
uses: actions/checkout@v7
with:
path: "__CI_PREBUILD__"
- uses: actions/setup-go@v6
with:
go-version: 1.26.3
@ -56,7 +56,7 @@ jobs:
go build -o dist/gatus-amd64
cp dist/gatus-amd64 __CI_PREBUILD__/debian/gatus/usr/local/bin/gatus
- name: Build deb for amd64
uses: https://github.com/jiro4989/build-deb-action@86e86ceb88b13157fa569663d43c89346505fc3e
uses: jiro4989/build-deb-action@86e86ceb88b13157fa569663d43c89346505fc3e
with:
package: gatus
package_root: __CI_PREBUILD__/debian/gatus
@ -70,7 +70,7 @@ jobs:
GOARCH="arm64" go build -o dist/gatus-arm64
cp dist/gatus-arm64 __CI_PREBUILD__/debian/gatus/usr/local/bin/gatus
- name: Build deb for arm64
uses: https://github.com/jiro4989/build-deb-action@86e86ceb88b13157fa569663d43c89346505fc3e
uses: jiro4989/build-deb-action@86e86ceb88b13157fa569663d43c89346505fc3e
with:
package: gatus
package_root: __CI_PREBUILD__/debian/gatus
@ -78,16 +78,9 @@ jobs:
version: ${{ env.PKG_VERSION }}
arch: arm64
id: build-deb-arm64
- name: Compute deb filename
run: |
cat <<EOF >>$GITHUB_ENV
ARM64_DEB_FILENAME=$(basename ${{ steps.build-deb-arm64.outputs.file_name }})
AMD64_DEB_FILENAME=$(basename ${{ steps.build-deb-amd64.outputs.file_name }})
EOF
- name: Upload binaries to release
uses: actions/forgejo-release@v2.13.4
uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # 2.11.5
if: env.preview == 'false'
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
@ -96,7 +89,7 @@ jobs:
tag: ${{ github.ref_name }}
overwrite: true
- name: Upload amd64 deb to release
uses: actions/forgejo-release@v2.13.4
uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # 2.11.5
if: env.preview == 'false'
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
@ -104,40 +97,38 @@ jobs:
tag: ${{ github.ref_name }}
overwrite: true
- name: Upload arm64 deb to release
uses: actions/forgejo-release@v2.13.4
uses: svenstaro/upload-release-action@29e53e917877a24fad85510ded594ab3c9ca12de # 2.11.5
if: env.preview == 'false'
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
path: ${{ steps.build-deb-arm64.outputs.file_name }}
file: ${{ steps.build-deb-arm64.outputs.file_name }}
tag: ${{ github.ref_name }}
overwrite: true
- name: Upload gatus-amd64 as artifact
uses: https://code.forgejo.org/forgejo/upload-artifact@v3
uses: actions/upload-artifact@v7
if: env.preview == 'true'
with:
name: gatus-amd64
path: dist/gatus-amd64
archive: false
- name: Upload gatus-amd64 deb as artifact
uses: https://code.forgejo.org/forgejo/upload-artifact@v3
uses: actions/upload-artifact@v7
if: env.preview == 'true'
with:
name: ${{ env.AMD64_DEB_FILENAME }}
path: ${{ steps.build-deb-amd64.outputs.file_name }}
archive: false
- name: Upload gatus-arm64 as artifact
uses: https://code.forgejo.org/forgejo/upload-artifact@v3
uses: actions/upload-artifact@v7
if: env.preview == 'true'
with:
name: gatus-arm64
path: dist/gatus-arm64
archive: false
- name: Upload gatus-arm64 deb as artifact
uses: https://code.forgejo.org/forgejo/upload-artifact@v3
uses: actions/upload-artifact@v7
if: env.preview == 'true'
with:
name: ${{ env.ARM64_DEB_FILENAME }}
path: ${{ steps.build-deb-arm64.outputs.file_name }}
archive: false

View file

@ -1,4 +1,6 @@
adduser --group --system gatus
mkdir -p /var/lib/gatus
chown -R gatus: /var/lib/gatus
mkdir -p /var/run/gatus
chown -R gatus: /var/run/gatus
systemctl daemon-reload

View file

@ -1,6 +1,6 @@
use-privileged-ping: true
web:
socket: /run/gatus/gatus.sock
socket: /var/run/gatus/gatus.sock
storage:
type: "sqlite"
path: "/var/lib/gatus/gatus.sqlite"

View file

@ -8,8 +8,6 @@ Requires=network-online.target
Type=exec
User=gatus
Group=gatus
RuntimeDirectory="gatus"
RuntimeDirectoryMode=0770
Environment=GATUS_CONFIG_PATH=/etc/gatus/gatus.yaml
ExecStart=/usr/local/bin/gatus
TimeoutStopSec=5s