#!/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 install -d "$arg_mountpoint/var/lib/eclipse/.ssh" ln -s /etc/umorpha-secrets/eclipse-sshkey.priv "$arg_mountpoint/var/lib/eclipse/.ssh/id_ed25519" ln -s /etc/umorpha-secrets/eclipse-sshkey.pub "$arg_mountpoint/var/lib/eclipse/.ssh/id_ed25519.pub" install -Dm644 /dev/stdin "$arg_mountpoint/etc/tmpfiles.d/eclipse-ssh.conf" <<-'EOF' # Copyright (C) 2024 Umorpha Systems # SPDX-License-Identifier: AGPL-3.0-or-later Z /var/lib/eclipse - eclipse eclipse EOF 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 systemctl --root="$arg_mountpoint" enable eclipse-follower.service }