blob: dda2e7fde3e06553f73d3de0fc9d5d9144b01898 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
#!/usr/bin/env janet
(use sh)
(def user "fnurk")
(def host "samuelw.dev")
(def bin-dir "/opt/tinygram/")
(def asset-dir "/srv/tinygram/")
(def service-dir "/etc/systemd/system/")
(def ssh-target (string user "@" host))
(def bin-target (string ssh-target ":" bin-dir))
(def asset-target (string ssh-target ":" asset-dir))
(def service-target (string ssh-target ":" service-dir))
(def rsync-path ["--rsync-path" "sudo -u tinygram rsync"])
(def rsync-path-sudo ["--rsync-path" "sudo rsync"])
(def rsync-bin-args [;rsync-path "tinygram" bin-target])
(def rsync-asset-args [;rsync-path "-r" "assets" asset-target])
(def rsync-service-args [;rsync-path-sudo "service/tinygram.service" service-target])
(def rsync-service [;rsync-path "-r" "assets" asset-target])
(print "-- building templ --")
($ templ generate)
(print "-- building go --")
($ go build ".")
(print "-- syncing binary --")
($ rsync ;rsync-bin-args)
(print "-- syncing assets --")
($ rsync ;rsync-asset-args)
(print "-- syncing service --")
($ rsync ;rsync-service-args)
(print "-- cleaning up binary --")
($ rm "tinygram")
(print "-- restarting service --")
($ ssh ,ssh-target "sudo systemctl daemon-reload")
($ ssh ,ssh-target "sudo systemctl restart tinygram.service")
(print "done!")
|