# HG changeset patch # User Luke Hoersten # Date 1625499990 18000 # Node ID 5c8335b57353f912cefc8a70901fc8b5e7d6ad59 # Parent 12e90527dfdcce5bd15531c74746243b29582248 Added lnd channel backup to s3 role. diff -r 12e90527dfdc -r 5c8335b57353 lnd-channel-s3-backup/files/lnd-channel-s3-backup.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lnd-channel-s3-backup/files/lnd-channel-s3-backup.sh Mon Jul 05 10:46:30 2021 -0500 @@ -0,0 +1,12 @@ +#!/bin/bash + +BUCKET=$1 +CHAN_BACKUP=$2 + +aws s3 mb "s3://$BUCKET/" +aws s3api put-bucket-versioning --bucket "$BUCKET" --versioning-configuration Status=Enabled + +while true; do + inotifywait $CHAN_BACKUP + aws s3 cp $CHAN_BACKUP "s3://$BUCKET/" +done diff -r 12e90527dfdc -r 5c8335b57353 lnd-channel-s3-backup/handlers/main.yaml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lnd-channel-s3-backup/handlers/main.yaml Mon Jul 05 10:46:30 2021 -0500 @@ -0,0 +1,5 @@ +--- + +- name: reload s3 backup service + systemd: name="lnd-channel-s3-backup@{{lnd_channel_s3_backup_bucket}}.service" enabled="yes" daemon_reload="yes" + become: yes diff -r 12e90527dfdc -r 5c8335b57353 lnd-channel-s3-backup/meta/main.yaml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lnd-channel-s3-backup/meta/main.yaml Mon Jul 05 10:46:30 2021 -0500 @@ -0,0 +1,4 @@ +--- + +dependencies: + - aws-s3-backup diff -r 12e90527dfdc -r 5c8335b57353 lnd-channel-s3-backup/tasks/main.yaml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lnd-channel-s3-backup/tasks/main.yaml Mon Jul 05 10:46:30 2021 -0500 @@ -0,0 +1,25 @@ +--- + +# https://gist.github.com/alexbosworth/2c5e185aedbdac45a03655b709e255a3 + +- name: install lnd-channel s3 backup apt packages + become: yes + apt: name="inotify-tools" + +- name: create lnd-channel s3 backup shell script + become: yes + copy: + src: "lnd-channel-s3-backup.sh" + dest: "/usr/local/bin/lnd-channel-s3-backup.sh" + mode: "0755" + +- name: configure lnd-channel s3 backup systemd service + become: yes + template: + src: "lnd-channel-s3-backup@.service.j2" + dest: "/lib/systemd/system/lnd-channel-s3-backup@{{lnd_channel_s3_backup_bucket}}.service" + notify: reload s3 backup service + +- name: ensure lnd-channel s3 backup service is started + become: yes + systemd: name="lnd-channel-s3-backup@{{lnd_channel_s3_backup_bucket}}.service" enabled="yes" diff -r 12e90527dfdc -r 5c8335b57353 lnd-channel-s3-backup/templates/lnd-channel-s3-backup@.service.j2 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lnd-channel-s3-backup/templates/lnd-channel-s3-backup@.service.j2 Mon Jul 05 10:46:30 2021 -0500 @@ -0,0 +1,10 @@ +[Unit] +Description=LND channel s3 backup for "%I" + +[Service] +ExecStart=/usr/local/bin/lnd-channel-s3-backup.sh %i "{{lnd_channel_s3_backup}}" +Restart=always +RestartSec=1 + +[Install] +WantedBy=multi-user.target