59 lines
1.3 KiB
Bash
59 lines
1.3 KiB
Bash
#!/hint/bash -euE
|
|
# Copyright (C) 2024 Umorpha Systems
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
packages+=(
|
|
make
|
|
pandoc-cli
|
|
wdiff
|
|
git
|
|
lua
|
|
)
|
|
|
|
post_install+=(20:eclipse-follower:post_install)
|
|
eclipse-follower:post_install() {
|
|
local arg_mountpoint=$1
|
|
|
|
touch "$arg_mountpoint/etc/eclipse/follower.key"
|
|
|
|
install -Dm755 /dev/stdin "$arg_mountpoint/etc/eclipse/follower.sh" <<-'EOF'
|
|
#!/bin/sh
|
|
# Copyright (C) 2024 Umorpha Systems
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
set -ex
|
|
job=$(eclipse-pick)
|
|
eclipse-run "$job"
|
|
EOF
|
|
|
|
install -Dm755 /dev/stdin "$arg_mountpoint/etc/systemd/system/eclipse-follower.service" <<-'EOF'
|
|
# Copyright (C) 2024 Umorpha Systems
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
[Unit]
|
|
Description=Eclipse CI follower process
|
|
Wants=network-online.target
|
|
After=network-online.target
|
|
|
|
[Service]
|
|
User=eclipse
|
|
Group=eclipse
|
|
Type=oneshot
|
|
Environment="GIT_SSH_COMMAND=ssh -i /etc/umorpha-secrets/eclipse-sshkey.priv"
|
|
ExecStart=/etc/eclipse/follower.sh
|
|
Restart=always
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
EOF
|
|
|
|
install -Dm644 /dev/stdin "$arg_mountpoint/etc/sysusers.d/eclipse-follower.conf" <<-'EOF'
|
|
# Copyright (C) 2024 Umorpha Systems
|
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
u eclipse - "Eclipse CI"
|
|
EOF
|
|
|
|
systemctl --root="$arg_mountpoint" enable eclipse-follower.service
|
|
}
|