mirror of https://github.com/micromata/borgbackup-butler.git

Kai Reinhard
19.30.2021 7a9de4f71100a3809532ae02c642d48edd38cd72
environment.sh is now created by BorgButlerApplicaiton, only for docker installations. BorgCache will now be initialized on startup, so shutdown will not fail.
3 files modified
35 ■■■■■ changed files
borgbutler-core/src/main/kotlin/de/micromata/borgbutler/config/ConfigurationHandler.kt 12 ●●●●● patch | view | raw | blame | history
borgbutler-docker/app/entrypoint.sh 2 ●●● patch | view | raw | blame | history
borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/BorgButlerApplication.kt 21 ●●●●● patch | view | raw | blame | history
borgbutler-core/src/main/kotlin/de/micromata/borgbutler/config/ConfigurationHandler.kt
@@ -93,10 +93,6 @@
            log.info("Creating borg-butlers backup directory: " + configBackupDir.absolutePath)
            configBackupDir.mkdirs()
        }
        val environmentFile = File(workingDir, ENVIRONMENT_FILE)
        if (!environmentFile.exists()) {
            environmentFile.writeText(ENVIRONMENT_FILE_INITIAL_CONTENT)
        }
        read()
    }
@@ -146,13 +142,5 @@
            val yaml = FileUtils.readFileToString(configFile, Definitions.STD_CHARSET)
            return YamlUtils.fromYaml(configClazz, yaml)
        }
        private const val ENVIRONMENT_FILE = "environment.sh"
        private const val ENVIRONMENT_FILE_INITIAL_CONTENT = "#!/bin/bash\n\n" +
                "# Set the java options here:\n" +
                "#export JAVA_OPTS=-DXmx4g\n" +
                "export JAVA_OPTS=\n\n" +
                "# Set your options here (will be used for starting\n" +
                "export JAVA_ARGS=\n"
    }
}
borgbutler-docker/app/entrypoint.sh
@@ -61,7 +61,7 @@
#Trap SIGTERM
trap cleanup INT SIGTERM
echo "Starting java ${JAVA_OPTS} -cp app/web/*:app/lib/* -DBorgButlerHome=/BorgButler/ -Dserver.address=0.0.0.0 ${JAVA_MAIN} ${JAVA_ARGS}"
echo "Starting java ${JAVA_OPTS} -cp app/web/*:app/lib/* -DBorgButlerHome=/BorgButler/ -Dserver.address=0.0.0.0 -Ddocker=true ${JAVA_MAIN} ${JAVA_ARGS}"
java $JAVA_OPTS -cp app/web/*:app/lib/* -DBorgButlerHome=/BorgButler/ -Dserver.address=0.0.0.0 -Ddocker=true $JAVA_MAIN $JAVA_ARGS &
borgbutler-server/src/main/kotlin/de/micromata/borgbutler/server/BorgButlerApplication.kt
@@ -55,9 +55,16 @@
        }
        SpringApplication.run(BorgButlerApplication::class.java, *args)
        if (borgButlerHome != null) {
            init(borgButlerHome)
        init(borgButlerHome)
        if (RunningMode.dockerMode) {
            val workingDir = File(borgButlerHome)
            val environmentFile = File(workingDir, ENVIRONMENT_FILE)
            if (!environmentFile.exists()) {
                log.info { "Creating environment file for java options (docker): ${environmentFile.absolutePath}" }
                environmentFile.writeText(ENVIRONMENT_FILE_INITIAL_CONTENT)
            }
        }
        // create Options object
        val options = Options()
        options.addOption(
@@ -134,6 +141,7 @@
            System.err.println("Parsing failed.  Reason: " + ex.message)
            printHelp(options)
        }
        ButlerCache.getInstance() // Force initialization (otherwise shutdown may fail if cache isn't used beof).
    }
    @EventListener(ApplicationReadyEvent::class)
@@ -201,5 +209,14 @@
            }
            // 2018-12-04T22:44:58.924642
        }
        private const val ENVIRONMENT_FILE = "environment.sh"
        private const val ENVIRONMENT_FILE_INITIAL_CONTENT = "#!/bin/bash\n\n" +
                "# Set the java options here (for docker installation only):\n" +
                "#export JAVA_OPTS=-DXmx4g\n" +
                "export JAVA_OPTS=\n\n" +
                "# Set your options here (will be used for starting\n" +
                "export JAVA_ARGS=\n"
    }
}