Simple deploy script based on a webhook for my website reboot.li
  • TypeScript 85.3%
  • Dockerfile 14.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-17 22:36:42 +02:00
config.example.json make configurable WIP 2026-08-13 21:04:30 +02:00
config.json make configurable WIP 2026-08-13 21:04:30 +02:00
deno.json init 2026-08-12 02:35:53 +02:00
deno.lock make configurable WIP 2026-08-13 21:04:30 +02:00
docker-compose-example.yml make configurable WIP 2026-08-13 21:04:30 +02:00
Dockerfile set deno UID to 1000 to match host 2026-08-17 22:36:42 +02:00
main.ts Revert "restore ownership after deploy" 2026-08-17 22:05:33 +02:00
README.md make configurable WIP 2026-08-13 21:04:30 +02:00

reboot.li-webhook

A lightweight Deno-based webhook listener for auto-deploying the reboot.li static site.

How it works

This service listens for POST requests (webhooks) from Forgejo/Gitea. When a push to the main branch is detected, it:

  1. Performs a git pull in the target project directory.
  2. Runs deno task build in the target project directory.

Setup

  1. Configure the environment variables in docker-compose.yml (copy from docker-compose-example.yml):
    • PORT: The port to listen on (default: 8080).
    • WEBHOOK_SECRET: The secret token for verification (matches X-Gitea-Token).
    • REPO_URL: The URL to clone the repository from if the project directory is empty.
    • PROJECT_PATH: The path to the project directory inside the container.
  2. Ensure the volume mapping in docker-compose.yml points to your deployment directory on the host.
  3. Run docker compose up -d --build.

Forgejo Configuration

  • Target URL: http://your-server-ip:8080
  • HTTP Method: POST
  • Secret: Your WEBHOOK_SECRET
  • Trigger: Push Events (main branch)