Update nushell script
authorGreg Burri <greg.burri@gmail.com>
Wed, 12 Mar 2025 22:44:34 +0000 (23:44 +0100)
committerGreg Burri <greg.burri@gmail.com>
Wed, 12 Mar 2025 22:44:34 +0000 (23:44 +0100)
deploy.nu

index a30499b..6505c47 100644 (file)
--- a/deploy.nu
+++ b/deploy.nu
@@ -1,14 +1,11 @@
-# 'zigbuild' is needed to build for target 'x86_64-unknown-linux-gnu' on linux:
-# https://github.com/rust-cross/cargo-zigbuild
-
 def main [host: string, destination: string, ssh_key: path] {
     let ssh_args = [-i $ssh_key $host]
     let scp_args = [-r -i $ssh_key]
-    let target = "x86_64-unknown-linux-gnu"
+    let target = "x86_64-unknown-linux-musl"
     let app_name = "rpi_keep_alive"
     let build = "release" # "debug" or "release".
 
-    def invoke_ssh [command: string] {
+    def invoke_ssh [command: list] {
         let args = $ssh_args ++ $command
         print $"Executing: ssh ($args)"
         ssh ...$args
@@ -22,14 +19,14 @@ def main [host: string, destination: string, ssh_key: path] {
 
     # Don't know how to dynamically pass variable arguments.
     if $build == "release" {
-        cargo zigbuild --target $target --release
+        cargo build --target $target --release
     } else {
-        cargo zigbuild --target $target
+        cargo build --target $target
     }
 
-    # invoke_ssh $"systemctl stop ($app_name)"
+    invoke_ssh [sudo systemctl stop ($app_name)]
     copy_ssh ./target/($target)/($build)/($app_name) $destination
-    invoke_ssh $"chmod u+x ($destination)/($app_name)"
-    # invoke_ssh $"systemctl start ($app_name)"
+    invoke_ssh [chmod u+x $"($destination)/($app_name)"]
+    invoke_ssh [sudo systemctl start ($app_name)]
     print "Deployment finished"
 }
\ No newline at end of file