aboutsummaryrefslogtreecommitdiff
path: root/internal/misc/deploy.go
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-04-06 00:42:11 +0800
committerRunxi Yu <me@runxiyu.org>2025-04-06 00:42:26 +0800
commitf5ebe96649a30658bb8a8bee4cb2ac1b45823b28 (patch)
tree980c5fb915da731335baa30860d2e660bcffa407 /internal/misc/deploy.go
parentLMTP: Fix sed mistake (diff)
downloadforge-f5ebe96649a30658bb8a8bee4cb2ac1b45823b28.tar.gz
forge-f5ebe96649a30658bb8a8bee4cb2ac1b45823b28.tar.zst
forge-f5ebe96649a30658bb8a8bee4cb2ac1b45823b28.zip
Hooks, git2d: Simplify deployment logicv0.1.27
Diffstat (limited to 'internal/misc/deploy.go')
-rw-r--r--internal/misc/deploy.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/internal/misc/deploy.go b/internal/misc/deploy.go
new file mode 100644
index 0000000..80a1dec
--- /dev/null
+++ b/internal/misc/deploy.go
@@ -0,0 +1,17 @@
+package misc
+
+import (
+ "io"
+ "io/fs"
+ "os"
+)
+
+func DeployBinary(src fs.File, dst string) (err error) {
+ var dstFile *os.File
+ if dstFile, err = os.OpenFile(dst, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0o755); err != nil {
+ return err
+ }
+ defer dstFile.Close()
+ _, err = io.Copy(dstFile, src)
+ return err
+}