diff options
| author | Luke Hoersten <[email protected]> | 2023-09-15 22:45:51 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2023-09-15 22:45:51 -0500 |
| commit | 0ffbe5e388e160e21381c2101949d29ca73ec68a (patch) | |
| tree | dc16aa307b73205716a7dce59ca29ddd3124e88c | |
| parent | 171a95fca6d8e93a7b970901b3e8da3a342a6297 (diff) | |
Moved lnurld from my general ansible roles repo to the btc specific repo.
| -rw-r--r-- | lnurld/build/defaults/main.yaml | 5 | ||||
| -rw-r--r-- | lnurld/build/tasks/main.yaml | 37 | ||||
| -rw-r--r-- | lnurld/server/defaults/main.yaml | 5 | ||||
| -rw-r--r-- | lnurld/server/handlers/main.yaml | 5 | ||||
| -rw-r--r-- | lnurld/server/tasks/main.yaml | 50 | ||||
| -rw-r--r-- | lnurld/server/templates/config.yaml.j2 | 18 | ||||
| -rw-r--r-- | lnurld/server/templates/lnurld.service.j2 | 21 |
7 files changed, 141 insertions, 0 deletions
diff --git a/lnurld/build/defaults/main.yaml b/lnurld/build/defaults/main.yaml new file mode 100644 index 0000000..bdb9473 --- /dev/null +++ b/lnurld/build/defaults/main.yaml @@ -0,0 +1,5 @@ +--- + +lnurld_git: "https://github.com/yanascz/lnurld.git" +lnurld_build_dir: "/tmp/lnurld" +lnurld_srv_dir: "/var/www/build" diff --git a/lnurld/build/tasks/main.yaml b/lnurld/build/tasks/main.yaml new file mode 100644 index 0000000..593a6c9 --- /dev/null +++ b/lnurld/build/tasks/main.yaml @@ -0,0 +1,37 @@ +--- + +- name: install golang + become: yes + apt: name="golang-go" + +- name: git checkout lnurld + git: + repo: "{{lnurld_git}}" + dest: "{{lnurld_build_dir}}" + +- name: check if build exists + stat: + path: "{{lnurld_build_dir}}/lnurld" + register: build_file + +- name: build + command: "go build" + args: + chdir: "/tmp/lnurld/" + when: not build_file.stat.exists + +- name: create build server dir + become: yes + file: + path: "{{lnurld_srv_dir}}" + mode: "0755" + state: "directory" + when: not build_file.stat.exists + +- name: copy bin to build server dir + become: yes + copy: + remote_src: yes + src: "{{lnurld_build_dir}}/lnurld" + dest: "{{lnurld_srv_dir}}/lnurld" + when: not build_file.stat.exists diff --git a/lnurld/server/defaults/main.yaml b/lnurld/server/defaults/main.yaml new file mode 100644 index 0000000..82afffb --- /dev/null +++ b/lnurld/server/defaults/main.yaml @@ -0,0 +1,5 @@ +--- + +lnurld_user: "bitcoin" +lnurld_host: "127.0.0.1" +lnurld_port: "8088" diff --git a/lnurld/server/handlers/main.yaml b/lnurld/server/handlers/main.yaml new file mode 100644 index 0000000..2935e95 --- /dev/null +++ b/lnurld/server/handlers/main.yaml @@ -0,0 +1,5 @@ +--- + +- name: restart lnurld service + become: yes + systemd: name="lnurld.service" state="restarted" daemon_reload="yes" diff --git a/lnurld/server/tasks/main.yaml b/lnurld/server/tasks/main.yaml new file mode 100644 index 0000000..04e5232 --- /dev/null +++ b/lnurld/server/tasks/main.yaml @@ -0,0 +1,50 @@ +--- + +- name: add lnurld user + become: yes + user: name="{{lnurld_user}}" shell="/bin/false" system="yes" + +- name: install lnurld bin + become: yes + get_url: + url: "{{lnurld_bin_url}}" + dest: "/usr/local/bin/lnurld" + mode: "0755" + notify: restart lnurld service + +- name: create lnurld data dir + become: yes + file: + path: "{{lnurld_data_dir}}" + mode: "0710" + owner: "{{lnurld_user}}" + group: "{{lnurld_user}}" + state: "directory" + +- name: create lnurld etc dir + become: yes + file: + path: "/etc/lnurld/" + mode: "0755" + state: "directory" + +- name: install lnurld config + become: yes + template: + src: "config.yaml.j2" + dest: "/etc/lnurld/config.yaml" + owner: "{{lnurld_user}}" + group: "{{lnurld_user}}" + mode: "0600" + notify: restart lnurld service + +- name: install lnurld systemd service + become: yes + template: + src: "lnurld.service.j2" + dest: "/lib/systemd/system/lnurld.service" + notify: restart lnurld service + +- name: ensure service is started + become: yes + systemd: name="lnurld.service" enabled="yes" state="started" diff --git a/lnurld/server/templates/config.yaml.j2 b/lnurld/server/templates/config.yaml.j2 new file mode 100644 index 0000000..9377ecd --- /dev/null +++ b/lnurld/server/templates/config.yaml.j2 @@ -0,0 +1,18 @@ +listen: {{lnurld_host}}:{{lnurld_port}} +data-dir: {{lnurld_data_dir}} +credentials: + admin: {{lnurld_admin_pass}} +lnd: + cert-file: {{lnurld_lnd_cert_file}} + macaroon-file: {{lnurld_lnd_invoice_macaroon}} +accounts: +{% for account in lnurld_accounts %} + {{account.name}}: + currency: usd + description: {{account.desc}} + is-also-email: {{account.is_email|default(false)}} + comment-allowed: 210 + min-sendable: 1 + max-sendable: 1_000_000 +{% else %} [] +{% endfor %} diff --git a/lnurld/server/templates/lnurld.service.j2 b/lnurld/server/templates/lnurld.service.j2 new file mode 100644 index 0000000..499fdba --- /dev/null +++ b/lnurld/server/templates/lnurld.service.j2 @@ -0,0 +1,21 @@ +[Unit] +Description=LNURL Daemon +Wants=lnd.service +After=lnd.service + +[Service] +Environment="GIN_MODE=release" +ExecStart=/usr/local/bin/lnurld + +User={{lnurld_user}} +Group={{lnurld_user}} + +Type=simple +KillMode=process +LimitNOFILE=128000 +TimeoutSec=240 +Restart=always +RestartSec=60 + +[Install] +WantedBy=multi-user.target |
