# Disable services by default
SYSTEMD_AUTO_ENABLE_pn-haproxy = "disable"
SYSTEMD_AUTO_ENABLE_pn-lighttpd = "disable"
+SYSTEMD_AUTO_ENABLE_pn-postgresql = "disable"
# networking sysv service is required
SYSTEMD_DISABLED_SYSV_SERVICES_remove = "networking"
--- /dev/null
+[Unit]
+Description=PostgreSQL database server
+After=network.target
+
+[Service]
+Type=forking
+User=postgres
+Group=postgres
+
+# Port number for server to listen on
+Environment=PGPORT=5432
+
+# Location of database directory
+Environment=PGDATA=/var/lib/postgresql/19.12
+
+# Disable OOM kill on the postmaster
+OOMScoreAdjust=-17
+
+PermissionsStartOnly=true
+ExecStart=/usr/bin/pg_ctl start -D ${PGDATA} -s -o "-p ${PGPORT}" -w -t 300
+ExecStop=/usr/bin/pg_ctl stop -D ${PGDATA} -s -m fast
+ExecReload=/usr/bin/pg_ctl reload -D ${PGDATA} -s
+
+# Give a reasonable amount of time for the server to start up/shut down
+TimeoutSec=300
+
+[Install]
+WantedBy=multi-user.target
+""
COMPUTE_IP="127.0.0.1"
CONTROLLER_IP="127.0.0.1"
+
+FILESEXTRAPATHS_prepend := "${THISDIR}/postgresql:"
+
+SRC_URI += " \
+ file://postgresql.service.update \
+ "
+
+do_install_append() {
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0755 ${WORKDIR}/postgresql.service.update ${D}${systemd_unitdir}/system/postgresql.service
+}
+
+FILES_${PN} += "${systemd_unitdir}/system/postgresql.service"