From 746d3376c6b11a2202d3c19745bc45ea76c20a94 Mon Sep 17 00:00:00 2001
From: Kai Reinhard <K.Reinhard@micromata.de>
Date: Tue, 15 Jan 2019 07:35:33 +0000
Subject: [PATCH] Auto-install borg...

---
 borgbutler-server/src/main/java/de/micromata/borgbutler/server/BorgVersion.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/BorgVersion.java b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/BorgVersion.java
index 629ee82..318d0a7 100644
--- a/borgbutler-server/src/main/java/de/micromata/borgbutler/server/BorgVersion.java
+++ b/borgbutler-server/src/main/java/de/micromata/borgbutler/server/BorgVersion.java
@@ -6,9 +6,44 @@
 
 public class BorgVersion {
     @Getter
+    private String binariesDownloadVersion = "1.1.8";
+    @Getter
+    private String binariesDownloadUrl = "https://github.com/borgbackup/borg/releases/download/" + binariesDownloadVersion + "/";
+    @Getter
+    private String[][] borgBinaries = {
+            {"freebsd64", "FreeBSD 64"},
+            {"linux32", "Linux 32"},
+            {"linux64", "Linux 64"},
+            {"macosx64", "MacOS X 64"}};
+
+    @Getter
+    private String minimumRequiredBorgVersion = "1.1.8";
+
+    /**
+     * One of the values "macosx64", "linux64" etc. for using a binary provided by BorgButler or null / "manual" for
+     * using a manual installed borg version.
+     */
+    @Getter
+    private String borgBinary;
+    /**
+     * The path of the borg command to use.
+     */
+    @Getter
+    @Setter
+    private String borgCommand;
+
+    @Getter
     @Setter(AccessLevel.PACKAGE)
     private boolean versionOK = false;
     @Getter
     @Setter(AccessLevel.PACKAGE)
     private String version;
+
+    public BorgVersion copyFrom(BorgVersion other) {
+        this.borgCommand = other.borgCommand;
+        this.borgBinary = other.borgBinary;
+        this.versionOK = other.versionOK;
+        this.version = other.version;
+        return this;
+    }
 }

--
Gitblit v1.10.0