woodpecker-ci
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
#!/bin/sh
|
||||
|
||||
# PROVIDE: woodpecker_agent
|
||||
# REQUIRE: DAEMON NETWORKING postgresql
|
||||
# KEYWORD: shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="woodpecker_agent"
|
||||
rcvar="woodpecker_agent_enable"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
: ${woodpecker_agent_enable:="NO"}
|
||||
: ${woodpecker_agent_user:="root"}
|
||||
: ${woodpecker_agent_group:="wheel"}
|
||||
: ${woodpecker_agent_bin:="/usr/local/bin/woodpecker-agent"}
|
||||
: ${woodpecker_agent_dir:="/usr/local/etc/woodpecker"}
|
||||
|
||||
# Pfad zu deiner .env Datei (pass ihn ggf. an, wenn sie in /root liegt!)
|
||||
: ${woodpecker_agent_envfile:="${woodpecker_agent_dir}/agent.env"}
|
||||
|
||||
pidfile="/var/run/${name}.pid"
|
||||
command="/usr/sbin/daemon"
|
||||
|
||||
# Hier ist die Änderung: Wir überschreiben das Standard-Start-Kommando
|
||||
start_cmd="woodpecker_agent_start"
|
||||
|
||||
woodpecker_agent_start() {
|
||||
echo "Starting woodpecker_agent with environment from ${woodpecker_agent_envfile}..."
|
||||
|
||||
# Prüfen, ob die Datei existiert
|
||||
if [ ! -f "${woodpecker_agent_envfile}" ]; then
|
||||
echo "Error: .env file not found at ${woodpecker_agent_envfile}"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Die .env Datei laden und alle Zeilen exportieren
|
||||
# Wir filtern Kommentare (#) und leere Zeilen aus
|
||||
export $(grep -v '^#' "${woodpecker_agent_envfile}" | xargs)
|
||||
|
||||
# Jetzt den Daemon starten
|
||||
/usr/sbin/daemon -f -P ${pidfile} -r ${woodpecker_agent_bin}
|
||||
}
|
||||
|
||||
run_rc_command "$1"
|
||||
@@ -0,0 +1,46 @@
|
||||
#!/bin/sh
|
||||
|
||||
# PROVIDE: woodpecker_server
|
||||
# REQUIRE: DAEMON NETWORKING postgresql
|
||||
# KEYWORD: shutdown
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="woodpecker_server"
|
||||
rcvar="woodpecker_server_enable"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
: ${woodpecker_server_enable:="NO"}
|
||||
: ${woodpecker_server_user:="root"}
|
||||
: ${woodpecker_server_group:="wheel"}
|
||||
: ${woodpecker_server_bin:="/usr/local/bin/woodpecker-server"}
|
||||
: ${woodpecker_server_dir:="/usr/local/etc/woodpecker"}
|
||||
|
||||
# Pfad zu deiner .env Datei (pass ihn ggf. an, wenn sie in /root liegt!)
|
||||
: ${woodpecker_server_envfile:="${woodpecker_server_dir}/server.env"}
|
||||
|
||||
pidfile="/var/run/${name}.pid"
|
||||
command="/usr/sbin/daemon"
|
||||
|
||||
# Hier ist die Änderung: Wir überschreiben das Standard-Start-Kommando
|
||||
start_cmd="woodpecker_server_start"
|
||||
|
||||
woodpecker_server_start() {
|
||||
echo "Starting woodpecker_server with environment from ${woodpecker_server_envfile}..."
|
||||
|
||||
# Prüfen, ob die Datei existiert
|
||||
if [ ! -f "${woodpecker_server_envfile}" ]; then
|
||||
echo "Error: .env file not found at ${woodpecker_server_envfile}"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Die .env Datei laden und alle Zeilen exportieren
|
||||
# Wir filtern Kommentare (#) und leere Zeilen aus
|
||||
export $(grep -v '^#' "${woodpecker_server_envfile}" | xargs)
|
||||
|
||||
# Jetzt den Daemon starten
|
||||
/usr/sbin/daemon -f -P ${pidfile} -r ${woodpecker_server_bin}
|
||||
}
|
||||
|
||||
run_rc_command "$1"
|
||||
@@ -0,0 +1,14 @@
|
||||
# Die Adresse deines Woodpecker-Servers (interner Port 9000 ist Standard für gRPC)
|
||||
WOODPECKER_SERVER=localhost:9000
|
||||
|
||||
# Das Secret MUSS exakt dasselbe sein wie in deiner Server-.env
|
||||
WOODPECKER_AGENT_SECRET=geheimes_token_123
|
||||
|
||||
# Wichtig für FreeBSD: Explizit auf 'local' setzen
|
||||
WOODPECKER_BACKEND=local
|
||||
|
||||
# Optional: Wie viele Jobs gleichzeitig laufen dürfen
|
||||
WOODPECKER_MAX_WORKFLOWS=2
|
||||
|
||||
# Name des Agenten (erscheint im UI)
|
||||
WOODPECKER_AGENT_NAME=freebsd-jail-agent
|
||||
@@ -0,0 +1,21 @@
|
||||
# .env
|
||||
# Die URL, unter der Woodpecker im Browser aufgerufen wird
|
||||
WOODPECKER_HOST=https://woodpecker.familie-berner.de
|
||||
|
||||
# Ein geheimes Passwort, das Server und Agent teilen (frei wählbar)
|
||||
WOODPECKER_AGENT_SECRET=geheimes_token_123
|
||||
|
||||
# Gitea Anbindung (Zwingend erforderlich für Login!)
|
||||
WOODPECKER_GITEA=true
|
||||
WOODPECKER_GITEA_URL=https://git.familie-berner.de
|
||||
# Diese beiden Werte musst du in Gitea unter "Einstellungen -> Anwendungen" erstellen:
|
||||
WOODPECKER_GITEA_CLIENT=2baedfc7-399c-4d04-aa5c-396673dbf76f
|
||||
WOODPECKER_GITEA_SECRET=gto_u2lu27q5bajvku6eacl2bjznripjmoymegjgbbnkirkuoe67u3tq
|
||||
|
||||
# Dein Gitea-Username als Admin
|
||||
WOODPECKER_ADMIN=matthiasberner
|
||||
|
||||
WOODPECKER_DATABASE_DRIVER=postgres
|
||||
WOODPECKER_DATABASE_DATASOURCE="postgres://woodpecker@localhost:5432/woodpecker?sslmode=disable"
|
||||
|
||||
WOODPECKER_OPEN=true
|
||||
Reference in New Issue
Block a user